Version Description
- Fixed : Separate checkbox was displayed for cap->edit_published_posts even if it was defined to the be same as cap->edit_posts
- Press Permit integration: automatically store a backup copy of each role's last saved capability set so they can be reinstated if necessary (currently for bbPress)
Download this release
Release Info
Developer | kevinB |
Plugin | ![]() |
Version | 1.4.3 |
Comparing to | |
See all releases |
Code changes from version 1.4.2 to 1.4.3
- capsman-enhanced.php +3 -3
- includes/admin.php +20 -14
- includes/manager.php +7 -0
- readme.txt +7 -3
capsman-enhanced.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Capability Manager Enhanced
|
4 |
Plugin URI: http://presspermit.com/capability-manager
|
5 |
Description: Manage WordPress role definitions. Organizes available capabilities by post type, status and source.
|
6 |
-
Version: 1.4.
|
7 |
Author: Jordi Canals, Kevin Behrens
|
8 |
Author URI: http://agapetry.net
|
9 |
*/
|
@@ -32,8 +32,8 @@ Author URI: http://agapetry.net
|
|
32 |
*/
|
33 |
|
34 |
if ( ! defined( 'CAPSMAN_VERSION' ) ) {
|
35 |
-
define( 'CAPSMAN_VERSION', '1.4.
|
36 |
-
define( 'CAPSMAN_ENH_VERSION', '1.4.
|
37 |
}
|
38 |
|
39 |
if ( cme_is_plugin_active( 'capsman.php' ) ) {
|
3 |
Plugin Name: Capability Manager Enhanced
|
4 |
Plugin URI: http://presspermit.com/capability-manager
|
5 |
Description: Manage WordPress role definitions. Organizes available capabilities by post type, status and source.
|
6 |
+
Version: 1.4.3
|
7 |
Author: Jordi Canals, Kevin Behrens
|
8 |
Author URI: http://agapetry.net
|
9 |
*/
|
32 |
*/
|
33 |
|
34 |
if ( ! defined( 'CAPSMAN_VERSION' ) ) {
|
35 |
+
define( 'CAPSMAN_VERSION', '1.4.3' );
|
36 |
+
define( 'CAPSMAN_ENH_VERSION', '1.4.3' );
|
37 |
}
|
38 |
|
39 |
if ( cme_is_plugin_active( 'capsman.php' ) ) {
|
includes/admin.php
CHANGED
@@ -270,22 +270,28 @@ if( defined('PP_VERSION') ) {
|
|
270 |
if ( ! empty($type_obj->cap->$prop) && ( in_array( $type_obj->name, array( 'post', 'page' ) )
|
271 |
|| ! in_array( $type_obj->cap->$prop, $default_caps )
|
272 |
|| ( ( 'manage_categories' == $type_obj->cap->$prop ) && ( 'manage_terms' == $prop ) && ( 'category' == $type_obj->name ) ) ) ) {
|
273 |
-
$cap_name = $type_obj->cap->$prop;
|
274 |
|
275 |
-
if
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
} else {
|
281 |
-
$title_text = $cap_name;
|
282 |
-
$disabled = '';
|
283 |
-
$checked = checked(1, ! empty($rcaps[$cap_name]), false );
|
284 |
-
}
|
285 |
|
286 |
-
|
287 |
-
|
288 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
289 |
}
|
290 |
}
|
291 |
$row .= '</td>';
|
270 |
if ( ! empty($type_obj->cap->$prop) && ( in_array( $type_obj->name, array( 'post', 'page' ) )
|
271 |
|| ! in_array( $type_obj->cap->$prop, $default_caps )
|
272 |
|| ( ( 'manage_categories' == $type_obj->cap->$prop ) && ( 'manage_terms' == $prop ) && ( 'category' == $type_obj->name ) ) ) ) {
|
|
|
273 |
|
274 |
+
// if edit_published or edit_private cap is same as edit_posts cap, don't display a checkbox for it
|
275 |
+
if ( ( ! in_array( $prop, array( 'edit_published_posts', 'edit_private_posts' ) ) || ( $type_obj->cap->$prop != $type_obj->cap->edit_posts ) )
|
276 |
+
&& ( ! in_array( $prop, array( 'delete_published_posts', 'delete_private_posts' ) ) || ( $type_obj->cap->$prop != $type_obj->cap->delete_posts ) )
|
277 |
+
) {
|
278 |
+
$cap_name = $type_obj->cap->$prop;
|
|
|
|
|
|
|
|
|
|
|
279 |
|
280 |
+
if ( $is_administrator || current_user_can($cap_name) ) {
|
281 |
+
if ( ! empty($pp_metagroup_caps[$cap_name]) ) {
|
282 |
+
$title_text = sprintf( __( '%s: assigned by Permit Group', 'pp' ), $cap_name );
|
283 |
+
$disabled = 'disabled="disabled"';
|
284 |
+
$checked = ' checked="checked"';
|
285 |
+
} else {
|
286 |
+
$title_text = $cap_name;
|
287 |
+
$disabled = '';
|
288 |
+
$checked = checked(1, ! empty($rcaps[$cap_name]), false );
|
289 |
+
}
|
290 |
+
|
291 |
+
$row .= '<input id=caps[' . $cap_name . '] type="checkbox" title="' . $title_text . '" name="caps[' . $cap_name . ']" value="1" ' . $checked . $disabled . ' />';
|
292 |
+
$type_caps [$cap_name] = true;
|
293 |
+
$display_row = true;
|
294 |
+
}
|
295 |
}
|
296 |
}
|
297 |
$row .= '</td>';
|
includes/manager.php
CHANGED
@@ -357,6 +357,13 @@ class CapabilityManager extends akPluginAbstract
|
|
357 |
$this->saveRoleCapabilities($post['current'], $post['caps'], $post['level']);
|
358 |
$this->current = $post['current'];
|
359 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
360 |
// Select a new role.
|
361 |
if ( isset($post['Load']) && __('Load', $this->ID) == $post['Load'] ) {
|
362 |
$this->current = $post['role'];
|
357 |
$this->saveRoleCapabilities($post['current'], $post['caps'], $post['level']);
|
358 |
$this->current = $post['current'];
|
359 |
|
360 |
+
if ( defined( 'PP_VERSION' ) ) { // log customized role caps for subsequent restoration
|
361 |
+
$plugins = get_option('active_plugins');
|
362 |
+
$customized_roles = (array) pp_get_option( 'customized_roles' );
|
363 |
+
$customized_roles[$post['role']] = (object) array( 'caps' => $post['caps'], 'plugins' => $plugins );
|
364 |
+
pp_update_option( 'customized_roles', $customized_roles );
|
365 |
+
}
|
366 |
+
|
367 |
// Select a new role.
|
368 |
if ( isset($post['Load']) && __('Load', $this->ID) == $post['Load'] ) {
|
369 |
$this->current = $post['role'];
|
readme.txt
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
=== Capability Manager Enhanced===
|
2 |
Contributors: txanny, kevinB
|
3 |
Help link: http://wordpress.org/tags/capsman-enhanced
|
4 |
-
Tags: roles, capabilities, manager, rights, role, capability, types, taxonomies
|
5 |
-
Requires at least:
|
6 |
Tested up to: 3.4.1
|
7 |
Stable tag: trunk
|
8 |
|
@@ -96,6 +96,10 @@ You should have received a copy of the GNU General Public License along with thi
|
|
96 |
|
97 |
== Changelog ==
|
98 |
|
|
|
|
|
|
|
|
|
99 |
= 1.4.2 =
|
100 |
* Language: updated .pot file
|
101 |
* Press Permit integration: roles can be marked for supplemental assignment only (and suppressed from WP role assignment dropdown, requires PP 1.0-beta1.4)
|
@@ -109,7 +113,7 @@ You should have received a copy of the GNU General Public License along with thi
|
|
109 |
* Editing UI separates WP core capabilities and 3rd party capabilities
|
110 |
* Clarified sidebar captions
|
111 |
* Don't allow a non-Administrator to add or remove a capability they don't have
|
112 |
-
* Fixed PHP Warnings for unchecked capabilities
|
113 |
* Press Permit integration: externally (dis)enable Post Types, Taxonomies for PP filtering (which forces type-specific capability definitions)
|
114 |
* Show capabilities which Press Permit adds to the role by supplemental type-specific role assignment
|
115 |
* Reduce memory usage by loading framework and plugin code only when needed
|
1 |
=== Capability Manager Enhanced===
|
2 |
Contributors: txanny, kevinB
|
3 |
Help link: http://wordpress.org/tags/capsman-enhanced
|
4 |
+
Tags: roles, capabilities, manager, editor, rights, role, capability, types, taxonomies
|
5 |
+
Requires at least: 3.1
|
6 |
Tested up to: 3.4.1
|
7 |
Stable tag: trunk
|
8 |
|
96 |
|
97 |
== Changelog ==
|
98 |
|
99 |
+
= 1.4.3 =
|
100 |
+
* Fixed : Separate checkbox was displayed for cap->edit_published_posts even if it was defined to the be same as cap->edit_posts
|
101 |
+
* Press Permit integration: automatically store a backup copy of each role's last saved capability set so they can be reinstated if necessary (currently for bbPress)
|
102 |
+
|
103 |
= 1.4.2 =
|
104 |
* Language: updated .pot file
|
105 |
* Press Permit integration: roles can be marked for supplemental assignment only (and suppressed from WP role assignment dropdown, requires PP 1.0-beta1.4)
|
113 |
* Editing UI separates WP core capabilities and 3rd party capabilities
|
114 |
* Clarified sidebar captions
|
115 |
* Don't allow a non-Administrator to add or remove a capability they don't have
|
116 |
+
* Fixed : PHP Warnings for unchecked capabilities
|
117 |
* Press Permit integration: externally (dis)enable Post Types, Taxonomies for PP filtering (which forces type-specific capability definitions)
|
118 |
* Show capabilities which Press Permit adds to the role by supplemental type-specific role assignment
|
119 |
* Reduce memory usage by loading framework and plugin code only when needed
|