Version Description
- 30.07.2015
- It is possible to assign to the user multiple roles directly through a user profile edit page.
- Custom SQL-query (checked if the role is in use and slow on the huge data) was excluded and replaced with WordPress built-in function call. Thanks to Aaron.
- Bulk role assignment to the users without role was rewritten for cases with a huge quant of users. It processes just 50 users without role for the one request to return the answer from the server in the short time. The related code was extracted to the separate class.
- Code to fix JavaScript and CSS compatibility issues introduced by other plugins and themes, which load its stuff globally, was extracted into the separate class.
- Custom filters were added: 'ure_full_capabilites' - takes 1 input parameter, array with a full list of user capabilities visible at URE, 'ure_built_in_wp_caps' - takes 1 input parameter, array with a list of WordPress core user capabilities. These filters may be useful if you give access to the URE for some not administrator user, and wish to change the list of capabilities which are available to him at URE.
- Dutch translation was updated. Thanks to Gerhard Hoogterp.
Download this release
Release Info
Developer | shinephp |
Plugin | User Role Editor |
Version | 4.19 |
Comparing to | |
See all releases |
Code changes from version 4.18.4 to 4.19
- css/multiple-select.css +163 -0
- css/multiple-select.png +0 -0
- includes/class-ajax-processor.php +7 -3
- includes/class-assign-role.php +91 -0
- includes/class-known-js-css-compatibility-issues.php +89 -0
- includes/class-ure-lib.php +70 -105
- includes/class-user-other-roles.php +341 -0
- includes/class-user-role-editor.php +94 -298
- includes/misc-support-stuff.php +14 -1
- js/jquery.multiple.select.js +332 -0
- js/ure-user-profile-other-roles.js +49 -0
- lang/ure-de_DE.mo +0 -0
- lang/ure-de_DE.po +1167 -0
- lang/ure-nl.mo +0 -0
- lang/ure-nl_NL.mo +0 -0
- lang/{ure-nl.po → ure-nl_NL.po} +912 -921
- readme.txt +13 -4
- user-role-editor.php +12 -8
css/multiple-select.css
ADDED
@@ -0,0 +1,163 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @author zhixin wen <wenzhixin2010@gmail.com>
|
3 |
+
*/
|
4 |
+
|
5 |
+
.ms-parent {
|
6 |
+
display: inline-block;
|
7 |
+
position: relative;
|
8 |
+
vertical-align: middle;
|
9 |
+
}
|
10 |
+
|
11 |
+
.ms-choice {
|
12 |
+
display: block;
|
13 |
+
height: 26px;
|
14 |
+
padding: 0;
|
15 |
+
overflow: hidden;
|
16 |
+
position: relative;
|
17 |
+
cursor: pointer;
|
18 |
+
border: 1px solid #aaa;
|
19 |
+
white-space: nowrap;
|
20 |
+
line-height: 26px;
|
21 |
+
color: #444;
|
22 |
+
text-decoration: none;
|
23 |
+
-webkit-border-radius: 4px;
|
24 |
+
-moz-border-radius: 4px;
|
25 |
+
border-radius: 4px;
|
26 |
+
background-color: #fff;
|
27 |
+
}
|
28 |
+
|
29 |
+
.ms-choice.disabled {
|
30 |
+
background-color: #f4f4f4;
|
31 |
+
background-image: none;
|
32 |
+
border: 1px solid #ddd;
|
33 |
+
cursor: default;
|
34 |
+
}
|
35 |
+
|
36 |
+
.ms-choice > span {
|
37 |
+
white-space: nowrap;
|
38 |
+
overflow: hidden;
|
39 |
+
text-overflow: ellipsis;
|
40 |
+
display: block;
|
41 |
+
float: left;
|
42 |
+
padding-left: 8px;
|
43 |
+
}
|
44 |
+
|
45 |
+
.ms-choice > span.placeholder {
|
46 |
+
color: #999;
|
47 |
+
}
|
48 |
+
|
49 |
+
.ms-choice > div {
|
50 |
+
float: right;
|
51 |
+
width: 20px;
|
52 |
+
height: 25px;
|
53 |
+
background: url('multiple-select.png') right top no-repeat;
|
54 |
+
}
|
55 |
+
|
56 |
+
.ms-choice > div.open {
|
57 |
+
background: url('multiple-select.png') left top no-repeat;
|
58 |
+
}
|
59 |
+
|
60 |
+
.ms-drop {
|
61 |
+
overflow: hidden;
|
62 |
+
display: none;
|
63 |
+
margin-top: -1px;
|
64 |
+
padding: 0;
|
65 |
+
position: absolute;
|
66 |
+
z-index: 1000;
|
67 |
+
top: 100%;
|
68 |
+
background: #fff;
|
69 |
+
color: #000;
|
70 |
+
border: 1px solid #aaa;
|
71 |
+
-webkit-border-radius: 4px;
|
72 |
+
-moz-border-radius: 4px;
|
73 |
+
border-radius: 4px;
|
74 |
+
-webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
75 |
+
-moz-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
76 |
+
box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
77 |
+
}
|
78 |
+
|
79 |
+
|
80 |
+
.ms-search {
|
81 |
+
display: inline-block;
|
82 |
+
margin: 0;
|
83 |
+
min-height: 26px;
|
84 |
+
padding: 4px;
|
85 |
+
position: relative;
|
86 |
+
white-space: nowrap;
|
87 |
+
width: 100%;
|
88 |
+
z-index: 10000;
|
89 |
+
}
|
90 |
+
|
91 |
+
.ms-search input {
|
92 |
+
width: 100%;
|
93 |
+
height: auto !important;
|
94 |
+
min-height: 24px;
|
95 |
+
padding: 0 20px 0 5px;
|
96 |
+
margin: 0;
|
97 |
+
outline: 0;
|
98 |
+
font-family: sans-serif;
|
99 |
+
font-size: 1em;
|
100 |
+
border: 1px solid #aaa;
|
101 |
+
-webkit-border-radius: 0;
|
102 |
+
-moz-border-radius: 0;
|
103 |
+
border-radius: 0;
|
104 |
+
-webkit-box-shadow: none;
|
105 |
+
-moz-box-shadow: none;
|
106 |
+
box-shadow: none;
|
107 |
+
background: #fff url('multiple-select.png') no-repeat 100% -22px;
|
108 |
+
background: url('multiple-select.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
109 |
+
background: url('multiple-select.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
110 |
+
background: url('multiple-select.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
111 |
+
background: url('multiple-select.png') no-repeat 100% -22px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
112 |
+
background: url('multiple-select.png') no-repeat 100% -22px, -ms-linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
113 |
+
background: url('multiple-select.png') no-repeat 100% -22px, linear-gradient(top, #ffffff 85%, #eeeeee 99%);
|
114 |
+
}
|
115 |
+
|
116 |
+
.ms-search, .ms-search input {
|
117 |
+
-webkit-box-sizing: border-box;
|
118 |
+
-khtml-box-sizing: border-box;
|
119 |
+
-moz-box-sizing: border-box;
|
120 |
+
-ms-box-sizing: border-box;
|
121 |
+
box-sizing: border-box;
|
122 |
+
}
|
123 |
+
|
124 |
+
.ms-drop ul {
|
125 |
+
overflow: auto;
|
126 |
+
margin: 0;
|
127 |
+
padding: 5px 8px;
|
128 |
+
}
|
129 |
+
|
130 |
+
.ms-drop ul > li {
|
131 |
+
list-style: none;
|
132 |
+
display: list-item;
|
133 |
+
background-image: none;
|
134 |
+
position: static;
|
135 |
+
}
|
136 |
+
|
137 |
+
.ms-drop ul > li .disabled {
|
138 |
+
opacity: .35;
|
139 |
+
filter: Alpha(Opacity=35);
|
140 |
+
}
|
141 |
+
|
142 |
+
.ms-drop ul > li.multiple {
|
143 |
+
display: block;
|
144 |
+
float: left;
|
145 |
+
}
|
146 |
+
|
147 |
+
.ms-drop ul > li.group {
|
148 |
+
clear: both;
|
149 |
+
}
|
150 |
+
|
151 |
+
.ms-drop ul > li.multiple label {
|
152 |
+
white-space: nowrap;
|
153 |
+
overflow: hidden;
|
154 |
+
text-overflow: ellipsis;
|
155 |
+
}
|
156 |
+
|
157 |
+
.ms-drop ul > li label.optgroup {
|
158 |
+
font-weight: bold;
|
159 |
+
}
|
160 |
+
|
161 |
+
.ms-drop input[type="checkbox"] {
|
162 |
+
vertical-align: middle;
|
163 |
+
}
|
css/multiple-select.png
ADDED
Binary file
|
includes/class-ajax-processor.php
CHANGED
@@ -40,8 +40,9 @@ class URE_Ajax_Processor {
|
|
40 |
}
|
41 |
|
42 |
}
|
|
|
43 |
|
44 |
-
|
45 |
protected function get_users_without_role() {
|
46 |
global $wp_roles;
|
47 |
|
@@ -50,8 +51,10 @@ class URE_Ajax_Processor {
|
|
50 |
$answer = array('result'=>'failure', 'message'=>'Provide new role');
|
51 |
return $answer;
|
52 |
}
|
|
|
|
|
53 |
if ($new_role==='no_rights') {
|
54 |
-
$
|
55 |
}
|
56 |
|
57 |
if (!isset($wp_roles)) {
|
@@ -61,8 +64,9 @@ class URE_Ajax_Processor {
|
|
61 |
$answer = array('result'=>'failure', 'message'=>'Selected new role does not exist');
|
62 |
return $answer;
|
63 |
}
|
|
|
|
|
64 |
|
65 |
-
$users = $this->lib->get_users_without_role();
|
66 |
$answer = array('result'=>'success', 'users'=>$users, 'new_role'=>$new_role, 'message'=>'success');
|
67 |
|
68 |
return $answer;
|
40 |
}
|
41 |
|
42 |
}
|
43 |
+
// end of ajax_check_permissions()
|
44 |
|
45 |
+
|
46 |
protected function get_users_without_role() {
|
47 |
global $wp_roles;
|
48 |
|
51 |
$answer = array('result'=>'failure', 'message'=>'Provide new role');
|
52 |
return $answer;
|
53 |
}
|
54 |
+
|
55 |
+
$assign_role = $this->lib->get_assign_role();
|
56 |
if ($new_role==='no_rights') {
|
57 |
+
$assign_role->create_no_rights_role();
|
58 |
}
|
59 |
|
60 |
if (!isset($wp_roles)) {
|
64 |
$answer = array('result'=>'failure', 'message'=>'Selected new role does not exist');
|
65 |
return $answer;
|
66 |
}
|
67 |
+
|
68 |
+
$users = $assign_role->get_users_without_role($new_role);
|
69 |
|
|
|
70 |
$answer = array('result'=>'success', 'users'=>$users, 'new_role'=>$new_role, 'message'=>'success');
|
71 |
|
72 |
return $answer;
|
includes/class-assign-role.php
ADDED
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Project: User Role Editor plugin
|
4 |
+
* Author: Vladimir Garagulya
|
5 |
+
* Author email: support@role-editor.com
|
6 |
+
* Author URI: https://www.role-editor.com
|
7 |
+
* Greetings: some ideas and code samples for long runing cron job was taken from the "Broken Link Checker" plugin (Janis Elst).
|
8 |
+
* License: GPL v2+
|
9 |
+
*
|
10 |
+
* Assign role to the users without role stuff
|
11 |
+
*/
|
12 |
+
class URE_Assign_Role {
|
13 |
+
|
14 |
+
const MAX_USERS_TO_PROCESS = 50;
|
15 |
+
|
16 |
+
protected $lib = null;
|
17 |
+
|
18 |
+
|
19 |
+
function __construct($lib) {
|
20 |
+
|
21 |
+
$this->lib = $lib;
|
22 |
+
}
|
23 |
+
// end of __construct()
|
24 |
+
|
25 |
+
|
26 |
+
public function create_no_rights_role() {
|
27 |
+
global $wp_roles;
|
28 |
+
|
29 |
+
$role_id = 'no_rights';
|
30 |
+
$role_name = 'No rights';
|
31 |
+
|
32 |
+
if (!isset($wp_roles)) {
|
33 |
+
$wp_roles = new WP_Roles();
|
34 |
+
}
|
35 |
+
if (isset($wp_roles->roles[$role_id])) {
|
36 |
+
return;
|
37 |
+
}
|
38 |
+
add_role($role_id, $role_name, array());
|
39 |
+
|
40 |
+
}
|
41 |
+
// end of create_no_rights_role()
|
42 |
+
|
43 |
+
|
44 |
+
private function get_where_condition() {
|
45 |
+
global $wpdb;
|
46 |
+
|
47 |
+
$usermeta = $this->lib->get_usermeta_table_name();
|
48 |
+
$id = get_current_blog_id();
|
49 |
+
$blog_prefix = $wpdb->get_blog_prefix($id);
|
50 |
+
$where = "where not exists (select user_id from {$usermeta}
|
51 |
+
where user_id=users.ID and meta_key='{$blog_prefix}capabilities') or
|
52 |
+
exists (select user_id from {$usermeta}
|
53 |
+
where user_id=users.ID and meta_key='{$blog_prefix}capabilities' and meta_value='a:0:{}')";
|
54 |
+
|
55 |
+
return $where;
|
56 |
+
}
|
57 |
+
// end of get_where_condition()
|
58 |
+
|
59 |
+
|
60 |
+
public function count_users_without_role() {
|
61 |
+
|
62 |
+
global $wpdb;
|
63 |
+
|
64 |
+
$where = $this->get_where_condition();
|
65 |
+
$query = "select count(ID) from {$wpdb->users} users {$where}";
|
66 |
+
$users_quant = $wpdb->get_var($query);
|
67 |
+
|
68 |
+
return $users_quant;
|
69 |
+
}
|
70 |
+
// end of count_users_without_role()
|
71 |
+
|
72 |
+
|
73 |
+
public function get_users_without_role($new_role='') {
|
74 |
+
|
75 |
+
global $wpdb;
|
76 |
+
|
77 |
+
$top_limit = self::MAX_USERS_TO_PROCESS;
|
78 |
+
$id = get_current_blog_id();
|
79 |
+
$blog_prefix = $wpdb->get_blog_prefix($id);
|
80 |
+
$where = $this->get_where_condition();
|
81 |
+
$query = "select ID from {$wpdb->users} users
|
82 |
+
{$where}
|
83 |
+
limit 0, {$top_limit}";
|
84 |
+
$users0 = $wpdb->get_col($query);
|
85 |
+
|
86 |
+
return $users0;
|
87 |
+
}
|
88 |
+
// end of get_users_without_role()
|
89 |
+
|
90 |
+
}
|
91 |
+
// end of URE_Assign_Role class
|
includes/class-known-js-css-compatibility-issues.php
ADDED
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class URE_Known_JS_CSS_Compatibility_Issues {
|
4 |
+
|
5 |
+
public static function fix($hook_suffix, $ure_hook_suffixes) {
|
6 |
+
|
7 |
+
$ure_hook_suffixes[] = 'users.php';
|
8 |
+
$ure_hook_suffixes[] = 'profile.php';
|
9 |
+
|
10 |
+
if (!in_array($hook_suffix, $ure_hook_suffixes)) {
|
11 |
+
return;
|
12 |
+
}
|
13 |
+
|
14 |
+
self::unload_techgostore($hook_suffix);
|
15 |
+
self::unload_musicplay($hook_suffix);
|
16 |
+
self::unload_conflict_plugins_css($hook_suffix);
|
17 |
+
|
18 |
+
}
|
19 |
+
// end of fix()
|
20 |
+
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Unload WP TechGoStore theme JS and CSS to exclude compatibility issues with URE
|
24 |
+
*/
|
25 |
+
private static function unload_techgostore($hook_suffix) {
|
26 |
+
|
27 |
+
if (!defined('THEME_SLUG') || THEME_SLUG !== 'techgo_') {
|
28 |
+
return;
|
29 |
+
}
|
30 |
+
|
31 |
+
wp_deregister_script('jqueryform');
|
32 |
+
wp_deregister_script('tab');
|
33 |
+
wp_deregister_script('shortcode_js');
|
34 |
+
wp_deregister_script('fancybox_js');
|
35 |
+
wp_deregister_script('bootstrap-colorpicker');
|
36 |
+
wp_deregister_script('logo_upload');
|
37 |
+
wp_deregister_script('js_wd_menu_backend');
|
38 |
+
|
39 |
+
wp_deregister_style('config_css');
|
40 |
+
wp_deregister_style('fancybox_css');
|
41 |
+
wp_deregister_style('colorpicker');
|
42 |
+
wp_deregister_style('font-awesome');
|
43 |
+
wp_deregister_style('css_wd_menu_backend');
|
44 |
+
}
|
45 |
+
// end of unload_techgostore()
|
46 |
+
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Unload MusicPlay theme CSS to exclude compatibility issues with URE
|
50 |
+
*
|
51 |
+
*/
|
52 |
+
private static function unload_musicplay($hook_suffix) {
|
53 |
+
if (!in_array($hook_suffix, array('users.php', 'profile.php')) ) {
|
54 |
+
return;
|
55 |
+
}
|
56 |
+
|
57 |
+
if (defined('THEMENAME') && THEMENAME!=='MusicPlay') {
|
58 |
+
return;
|
59 |
+
}
|
60 |
+
|
61 |
+
wp_deregister_style('atpadmin');
|
62 |
+
wp_deregister_style('appointment-style');
|
63 |
+
wp_deregister_style('atp-chosen');
|
64 |
+
wp_deregister_style('atp_plupload');
|
65 |
+
wp_deregister_style('atp-jquery-timepicker-addon');
|
66 |
+
wp_deregister_style('atp-jquery-ui');
|
67 |
+
|
68 |
+
}
|
69 |
+
// end of unload_music_play()
|
70 |
+
|
71 |
+
|
72 |
+
private static function unload_conflict_plugins_css($hook_suffix) {
|
73 |
+
global $wp_styles;
|
74 |
+
|
75 |
+
if (!in_array($hook_suffix, array('users.php', 'profile.php')) ) {
|
76 |
+
return;
|
77 |
+
}
|
78 |
+
|
79 |
+
// remove conflict CSS from responsive-admin-maintenance-pro plugin
|
80 |
+
if (isset($wp_styles->registered['admin-page-css'])) {
|
81 |
+
wp_deregister_style('admin-page-css');
|
82 |
+
}
|
83 |
+
}
|
84 |
+
// end of unload_conflict_plugins_css()
|
85 |
+
|
86 |
+
|
87 |
+
|
88 |
+
}
|
89 |
+
// end of URE_Fix_Known_JS_CSS_Compatibility_Issues
|
includes/class-ure-lib.php
CHANGED
@@ -33,17 +33,19 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
33 |
protected $role_select_html = '';
|
34 |
protected $role_delete_html = '';
|
35 |
protected $capability_remove_html = '';
|
36 |
-
protected $advert = null;
|
|
|
37 |
|
38 |
|
39 |
/** class constructor
|
40 |
*
|
41 |
-
* @param string $
|
42 |
*
|
43 |
*/
|
44 |
public function __construct($options_id) {
|
45 |
|
46 |
parent::__construct($options_id);
|
|
|
47 |
|
48 |
$this->upgrade();
|
49 |
}
|
@@ -651,6 +653,16 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
651 |
// end of get_last_role_id()
|
652 |
|
653 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
654 |
/**
|
655 |
* Check if user has "Administrator" role assigned
|
656 |
*
|
@@ -665,7 +677,7 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
665 |
return false;
|
666 |
}
|
667 |
|
668 |
-
$table_name =
|
669 |
$meta_key = $wpdb->prefix . 'capabilities';
|
670 |
$query = "SELECT count(*)
|
671 |
FROM $table_name
|
@@ -878,15 +890,12 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
878 |
* @global wpdb $wpdb - WP database object
|
879 |
* @return array
|
880 |
*/
|
881 |
-
protected function get_roles_can_delete()
|
882 |
-
{
|
883 |
-
global $wpdb;
|
884 |
|
885 |
-
$table_name = (!$this->multisite && defined('CUSTOM_USER_META_TABLE')) ? CUSTOM_USER_META_TABLE : $wpdb->usermeta;
|
886 |
-
$meta_key = $wpdb->prefix . 'capabilities';
|
887 |
$default_role = get_option('default_role');
|
888 |
$standard_roles = array('administrator', 'editor', 'author', 'contributor', 'subscriber');
|
889 |
$roles_can_delete = array();
|
|
|
890 |
foreach ($this->roles as $key => $role) {
|
891 |
$can_delete = true;
|
892 |
// check if it is default role for new users
|
@@ -902,27 +911,8 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
902 |
if ($this->role_contains_caps_not_allowed_for_simple_admin($key)) {
|
903 |
continue;
|
904 |
}
|
905 |
-
|
906 |
-
|
907 |
-
$query = "SELECT DISTINCT meta_value
|
908 |
-
FROM $table_name
|
909 |
-
WHERE meta_key='$meta_key' AND meta_value like '%$key%'";
|
910 |
-
$roles_used = $wpdb->get_results($query);
|
911 |
-
if ($roles_used && count($roles_used > 0)) {
|
912 |
-
foreach ($roles_used as $role_used) {
|
913 |
-
$role_name = unserialize($role_used->meta_value);
|
914 |
-
foreach ($role_name as $key1 => $value1) {
|
915 |
-
if ($key == $key1) {
|
916 |
-
$can_delete = false;
|
917 |
-
break;
|
918 |
-
}
|
919 |
-
}
|
920 |
-
if (!$can_delete) {
|
921 |
-
break;
|
922 |
-
}
|
923 |
-
}
|
924 |
-
}
|
925 |
-
if ($can_delete) {
|
926 |
$roles_can_delete[$key] = $role['name'] . ' (' . $key . ')';
|
927 |
}
|
928 |
}
|
@@ -1011,6 +1001,8 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
1011 |
$caps['manage_network_options'] = 1;
|
1012 |
}
|
1013 |
|
|
|
|
|
1014 |
return $caps;
|
1015 |
}
|
1016 |
// end of get_built_in_wp_caps()
|
@@ -1664,6 +1656,9 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
1664 |
|
1665 |
unset($this->built_in_wp_caps);
|
1666 |
asort($this->full_capabilities);
|
|
|
|
|
|
|
1667 |
}
|
1668 |
// end of init_full_capabilities()
|
1669 |
|
@@ -1848,7 +1843,7 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
1848 |
*/
|
1849 |
protected function multisite_update_roles() {
|
1850 |
|
1851 |
-
if (
|
1852 |
$time_shot = microtime();
|
1853 |
}
|
1854 |
|
@@ -1858,7 +1853,7 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
1858 |
$result = $this->wp_api_network_roles_update();
|
1859 |
}
|
1860 |
|
1861 |
-
if (
|
1862 |
echo '<div class="updated fade below-h2">Roles updated for ' . ( microtime() - $time_shot ) . ' milliseconds</div>';
|
1863 |
}
|
1864 |
|
@@ -2437,42 +2432,6 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
2437 |
// end of remove_capability()
|
2438 |
|
2439 |
|
2440 |
-
/**
|
2441 |
-
* Returns list of user roles, except 1st one, and bbPress assigned as they are shown by WordPress and bbPress theirselves.
|
2442 |
-
*
|
2443 |
-
* @param type $user WP_User from wp-includes/capabilities.php
|
2444 |
-
* @return array
|
2445 |
-
*/
|
2446 |
-
public function other_user_roles($user) {
|
2447 |
-
|
2448 |
-
global $wp_roles;
|
2449 |
-
|
2450 |
-
if (!is_array($user->roles) || count($user->roles) <= 1) {
|
2451 |
-
return '';
|
2452 |
-
}
|
2453 |
-
|
2454 |
-
// get bbPress assigned user role
|
2455 |
-
if (function_exists('bbp_filter_blog_editable_roles')) {
|
2456 |
-
$bb_press_role = bbp_get_user_role($user->ID);
|
2457 |
-
} else {
|
2458 |
-
$bb_press_role = '';
|
2459 |
-
}
|
2460 |
-
|
2461 |
-
$roles = array();
|
2462 |
-
foreach ($user->roles as $key => $value) {
|
2463 |
-
if (!empty($bb_press_role) && $bb_press_role === $value) {
|
2464 |
-
// exclude bbPress assigned role
|
2465 |
-
continue;
|
2466 |
-
}
|
2467 |
-
$roles[] = $value;
|
2468 |
-
}
|
2469 |
-
array_shift($roles); // exclude primary role which is shown by WordPress itself
|
2470 |
-
|
2471 |
-
return $roles;
|
2472 |
-
}
|
2473 |
-
// end of ure_other_user_roles()
|
2474 |
-
|
2475 |
-
|
2476 |
/**
|
2477 |
* Returns text presentation of user roles
|
2478 |
*
|
@@ -2714,44 +2673,7 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
2714 |
|
2715 |
}
|
2716 |
// end of show_other_default_roles()
|
2717 |
-
|
2718 |
-
|
2719 |
-
public function create_no_rights_role() {
|
2720 |
-
global $wp_roles;
|
2721 |
-
|
2722 |
-
$role_id = 'no_rights';
|
2723 |
-
$role_name = 'No rights';
|
2724 |
-
|
2725 |
-
if (!isset($wp_roles)) {
|
2726 |
-
$wp_roles = new WP_Roles();
|
2727 |
-
}
|
2728 |
-
if (isset($wp_roles->roles[$role_name])) {
|
2729 |
-
return;
|
2730 |
-
}
|
2731 |
-
add_role($role_id, $role_name, array());
|
2732 |
-
|
2733 |
-
}
|
2734 |
-
// end of create_no_rights_role()
|
2735 |
-
|
2736 |
-
|
2737 |
-
public function get_users_without_role() {
|
2738 |
-
|
2739 |
-
global $wpdb;
|
2740 |
-
|
2741 |
-
$id = get_current_blog_id();
|
2742 |
-
$blog_prefix = $wpdb->get_blog_prefix($id);
|
2743 |
-
$query = "select ID from {$wpdb->users} users
|
2744 |
-
where not exists (select user_id from {$wpdb->usermeta}
|
2745 |
-
where user_id=users.ID and meta_key='{$blog_prefix}capabilities') or
|
2746 |
-
exists (select user_id from {$wpdb->usermeta}
|
2747 |
-
where user_id=users.ID and meta_key='{$blog_prefix}capabilities' and meta_value='a:0:{}') ;";
|
2748 |
-
$users = $wpdb->get_col($query);
|
2749 |
-
|
2750 |
-
return $users;
|
2751 |
-
|
2752 |
-
}
|
2753 |
-
// end of get_users_without_role()
|
2754 |
-
|
2755 |
|
2756 |
public function get_current_role() {
|
2757 |
|
@@ -2772,5 +2694,48 @@ class Ure_Lib extends Garvs_WP_Lib {
|
|
2772 |
}
|
2773 |
// end of get_edit_user_caps_mode()
|
2774 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2775 |
}
|
2776 |
// end of URE_Lib class
|
33 |
protected $role_select_html = '';
|
34 |
protected $role_delete_html = '';
|
35 |
protected $capability_remove_html = '';
|
36 |
+
protected $advert = null;
|
37 |
+
public $debug = false;
|
38 |
|
39 |
|
40 |
/** class constructor
|
41 |
*
|
42 |
+
* @param string $options_id
|
43 |
*
|
44 |
*/
|
45 |
public function __construct($options_id) {
|
46 |
|
47 |
parent::__construct($options_id);
|
48 |
+
$this->debug = defined('URE_DEBUG') && (URE_DEBUG==1 || URE_DEBUG==true);
|
49 |
|
50 |
$this->upgrade();
|
51 |
}
|
653 |
// end of get_last_role_id()
|
654 |
|
655 |
|
656 |
+
public function get_usermeta_table_name() {
|
657 |
+
global $wpdb;
|
658 |
+
|
659 |
+
$table_name = (!$this->multisite && defined('CUSTOM_USER_META_TABLE')) ? CUSTOM_USER_META_TABLE : $wpdb->usermeta;
|
660 |
+
|
661 |
+
return $table_name;
|
662 |
+
}
|
663 |
+
// end of get_usermeta_table_name()
|
664 |
+
|
665 |
+
|
666 |
/**
|
667 |
* Check if user has "Administrator" role assigned
|
668 |
*
|
677 |
return false;
|
678 |
}
|
679 |
|
680 |
+
$table_name = $this->get_usermeta_table_name();
|
681 |
$meta_key = $wpdb->prefix . 'capabilities';
|
682 |
$query = "SELECT count(*)
|
683 |
FROM $table_name
|
890 |
* @global wpdb $wpdb - WP database object
|
891 |
* @return array
|
892 |
*/
|
893 |
+
protected function get_roles_can_delete() {
|
|
|
|
|
894 |
|
|
|
|
|
895 |
$default_role = get_option('default_role');
|
896 |
$standard_roles = array('administrator', 'editor', 'author', 'contributor', 'subscriber');
|
897 |
$roles_can_delete = array();
|
898 |
+
$users = count_users();
|
899 |
foreach ($this->roles as $key => $role) {
|
900 |
$can_delete = true;
|
901 |
// check if it is default role for new users
|
911 |
if ($this->role_contains_caps_not_allowed_for_simple_admin($key)) {
|
912 |
continue;
|
913 |
}
|
914 |
+
|
915 |
+
if (!isset($users['avail_roles'][$key])) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
916 |
$roles_can_delete[$key] = $role['name'] . ' (' . $key . ')';
|
917 |
}
|
918 |
}
|
1001 |
$caps['manage_network_options'] = 1;
|
1002 |
}
|
1003 |
|
1004 |
+
$caps = apply_filters('ure_built_in_wp_caps', $caps);
|
1005 |
+
|
1006 |
return $caps;
|
1007 |
}
|
1008 |
// end of get_built_in_wp_caps()
|
1656 |
|
1657 |
unset($this->built_in_wp_caps);
|
1658 |
asort($this->full_capabilities);
|
1659 |
+
|
1660 |
+
$this->full_capabilities = apply_filters('ure_full_capabilites', $this->full_capabilities);
|
1661 |
+
|
1662 |
}
|
1663 |
// end of init_full_capabilities()
|
1664 |
|
1843 |
*/
|
1844 |
protected function multisite_update_roles() {
|
1845 |
|
1846 |
+
if ($this->debug) {
|
1847 |
$time_shot = microtime();
|
1848 |
}
|
1849 |
|
1853 |
$result = $this->wp_api_network_roles_update();
|
1854 |
}
|
1855 |
|
1856 |
+
if ($this->debug) {
|
1857 |
echo '<div class="updated fade below-h2">Roles updated for ' . ( microtime() - $time_shot ) . ' milliseconds</div>';
|
1858 |
}
|
1859 |
|
2432 |
// end of remove_capability()
|
2433 |
|
2434 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2435 |
/**
|
2436 |
* Returns text presentation of user roles
|
2437 |
*
|
2673 |
|
2674 |
}
|
2675 |
// end of show_other_default_roles()
|
2676 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2677 |
|
2678 |
public function get_current_role() {
|
2679 |
|
2694 |
}
|
2695 |
// end of get_edit_user_caps_mode()
|
2696 |
|
2697 |
+
|
2698 |
+
/**
|
2699 |
+
* Returns comma separated string of capabilities directly (not through the roles) assigned to the user
|
2700 |
+
*
|
2701 |
+
* @global WP_Roles $wp_roles
|
2702 |
+
* @param object $user
|
2703 |
+
* @return string
|
2704 |
+
*/
|
2705 |
+
public function get_edited_user_caps($user) {
|
2706 |
+
global $wp_roles;
|
2707 |
+
|
2708 |
+
$output = '';
|
2709 |
+
foreach ($user->caps as $cap => $value) {
|
2710 |
+
if (!$wp_roles->is_role($cap)) {
|
2711 |
+
if ('' != $output) {
|
2712 |
+
$output .= ', ';
|
2713 |
+
}
|
2714 |
+
$output .= $value ? $cap : sprintf(__('Denied: %s'), $cap);
|
2715 |
+
}
|
2716 |
+
}
|
2717 |
+
|
2718 |
+
return $output;
|
2719 |
+
}
|
2720 |
+
// end of get_edited_user_caps()
|
2721 |
+
|
2722 |
+
|
2723 |
+
public function is_user_profile_extention_allowed() {
|
2724 |
+
// Check if we are not at the network admin center
|
2725 |
+
$result = stripos($_SERVER['REQUEST_URI'], 'network/user-edit.php') == false;
|
2726 |
+
|
2727 |
+
return $result;
|
2728 |
+
}
|
2729 |
+
// end of is_user_profile_extention_allowed()
|
2730 |
+
|
2731 |
+
|
2732 |
+
// create assign_role object
|
2733 |
+
public function get_assign_role() {
|
2734 |
+
$assign_role = new URE_Assign_Role($this);
|
2735 |
+
|
2736 |
+
return $assign_role;
|
2737 |
+
}
|
2738 |
+
// end of get_assign_role()
|
2739 |
+
|
2740 |
}
|
2741 |
// end of URE_Lib class
|
includes/class-user-other-roles.php
ADDED
@@ -0,0 +1,341 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Project: User Role Editor WordPress plugin
|
4 |
+
* Class for Assigning to a user multiple roles
|
5 |
+
* Author: Vladimir Garagulya
|
6 |
+
* Author email: support@role-editor.com
|
7 |
+
* Author URI: https://www.role-editor.com
|
8 |
+
* License: GPL v2+
|
9 |
+
*
|
10 |
+
*/
|
11 |
+
|
12 |
+
class URE_User_Other_Roles {
|
13 |
+
|
14 |
+
protected $lib = null;
|
15 |
+
|
16 |
+
|
17 |
+
function __construct(Ure_Lib $lib) {
|
18 |
+
|
19 |
+
$this->lib = $lib;
|
20 |
+
|
21 |
+
}
|
22 |
+
// end of $lib
|
23 |
+
|
24 |
+
|
25 |
+
public function set_hooks() {
|
26 |
+
|
27 |
+
add_filter( 'additional_capabilities_display', array($this, 'additional_capabilities_display'), 10, 1);
|
28 |
+
|
29 |
+
add_action( 'admin_print_styles-user-edit.php', array($this, 'load_css') );
|
30 |
+
add_action( 'admin_print_styles-user-new.php', array($this, 'load_css') );
|
31 |
+
add_action( 'admin_enqueue_scripts', array($this, 'load_js' ) );
|
32 |
+
add_action( 'edit_user_profile', array($this, 'edit_user_profile_html'), 10, 1 );
|
33 |
+
add_action( 'user_new_form', array($this, 'user_new_form'), 10, 1 );
|
34 |
+
add_filter( 'manage_users_columns', array($this, 'user_role_column'), 10, 1 );
|
35 |
+
add_filter( 'manage_users_custom_column', array($this, 'user_role_row'), 10, 3 );
|
36 |
+
add_action( 'profile_update', array($this, 'update'), 10 );
|
37 |
+
if ($this->lib->multisite) {
|
38 |
+
add_action( 'wpmu_activate_user', array($this, 'add_other_roles'), 10, 1 );
|
39 |
+
} else {
|
40 |
+
add_action( 'user_register', array($this, 'add_other_roles'), 10, 1 );
|
41 |
+
}
|
42 |
+
}
|
43 |
+
// end of set_hooks()
|
44 |
+
|
45 |
+
|
46 |
+
public function additional_capabilities_display($display) {
|
47 |
+
|
48 |
+
$display = false;
|
49 |
+
|
50 |
+
return $display;
|
51 |
+
|
52 |
+
}
|
53 |
+
// end of additional_capabilities_display()
|
54 |
+
|
55 |
+
|
56 |
+
/*
|
57 |
+
* Load CSS for the user profile edit page
|
58 |
+
*/
|
59 |
+
public function load_css() {
|
60 |
+
|
61 |
+
wp_enqueue_style('wp-jquery-ui-dialog');
|
62 |
+
wp_enqueue_style('ure-jquery-multiple-select', plugins_url('/css/multiple-select.css', URE_PLUGIN_FULL_PATH), array(), false, 'screen');
|
63 |
+
|
64 |
+
}
|
65 |
+
// end of load_css()
|
66 |
+
|
67 |
+
|
68 |
+
public function load_js($hook_suffix) {
|
69 |
+
|
70 |
+
if (!in_array($hook_suffix, array('user-edit.php', 'user-new.php'))) {
|
71 |
+
return;
|
72 |
+
}
|
73 |
+
|
74 |
+
wp_enqueue_script('jquery-ui-dialog', false, array('jquery-ui-core', 'jquery-ui-button', 'jquery'));
|
75 |
+
wp_register_script('ure-jquery-multiple-select', plugins_url('/js/jquery.multiple.select.js', URE_PLUGIN_FULL_PATH));
|
76 |
+
wp_enqueue_script('ure-jquery-multiple-select');
|
77 |
+
wp_register_script('ure-user-profile-other-roles', plugins_url('/js/ure-user-profile-other-roles.js', URE_PLUGIN_FULL_PATH));
|
78 |
+
wp_enqueue_script('ure-user-profile-other-roles');
|
79 |
+
wp_localize_script('ure-user-profile-other-roles', 'ure_data_user_profile_other_roles', array(
|
80 |
+
'wp_nonce' => wp_create_nonce('user-role-editor'),
|
81 |
+
'other_roles' => esc_html__('Other Roles', 'ure'),
|
82 |
+
'select_roles' => esc_html__('Select additional roles for this user', 'ure')
|
83 |
+
));
|
84 |
+
}
|
85 |
+
// end of load_js()
|
86 |
+
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Returns list of user roles, except 1st one, and bbPress assigned as they are shown by WordPress and bbPress theirselves.
|
90 |
+
*
|
91 |
+
* @param type $user WP_User from wp-includes/capabilities.php
|
92 |
+
* @return array
|
93 |
+
*/
|
94 |
+
public function get_roles_array($user) {
|
95 |
+
|
96 |
+
if (!is_array($user->roles) || count($user->roles) <= 1) {
|
97 |
+
return array();
|
98 |
+
}
|
99 |
+
|
100 |
+
// get bbPress assigned user role
|
101 |
+
if (function_exists('bbp_filter_blog_editable_roles')) {
|
102 |
+
$bb_press_role = bbp_get_user_role($user->ID);
|
103 |
+
} else {
|
104 |
+
$bb_press_role = '';
|
105 |
+
}
|
106 |
+
|
107 |
+
$roles = array();
|
108 |
+
foreach ($user->roles as $key => $value) {
|
109 |
+
if (!empty($bb_press_role) && $bb_press_role === $value) {
|
110 |
+
// exclude bbPress assigned role
|
111 |
+
continue;
|
112 |
+
}
|
113 |
+
$roles[] = $value;
|
114 |
+
}
|
115 |
+
array_shift($roles); // exclude primary role which is shown by WordPress itself
|
116 |
+
|
117 |
+
return $roles;
|
118 |
+
}
|
119 |
+
// end of get_roles_array()
|
120 |
+
|
121 |
+
|
122 |
+
private function roles_select_html($user) {
|
123 |
+
|
124 |
+
global $wp_roles;
|
125 |
+
|
126 |
+
$user_roles = $user->roles;
|
127 |
+
$primary_role = array_shift($user_roles);
|
128 |
+
$roles = apply_filters('editable_roles', $wp_roles->roles); // exclude restricted roles if any
|
129 |
+
if (isset($roles[$primary_role])) { // exclude role assigned to the user as a primary role
|
130 |
+
unset($roles[$primary_role]);
|
131 |
+
}
|
132 |
+
$other_roles = $this->get_roles_array($user);
|
133 |
+
|
134 |
+
echo '<select multiple="multiple" id="ure_select_other_roles" name="ure_select_other_roles" style="width: 500px;" >'."\n";
|
135 |
+
foreach($roles as $key=>$role) {
|
136 |
+
echo '<option value="'.$key.'" >'.$role['name'].'</option>'."\n";
|
137 |
+
} // foreach()
|
138 |
+
echo '</select><br>'."\n";
|
139 |
+
|
140 |
+
if (is_array($other_roles) && count($other_roles) > 0) {
|
141 |
+
$other_roles_str = implode(',', $other_roles);
|
142 |
+
} else {
|
143 |
+
$other_roles_str = '';
|
144 |
+
}
|
145 |
+
echo '<input type="hidden" name="ure_other_roles" id="ure_other_roles" value="' . $other_roles_str . '" />';
|
146 |
+
|
147 |
+
|
148 |
+
$output = $this->lib->roles_text($other_roles);
|
149 |
+
echo '<span id="ure_other_roles_list">'. $output .'</span>';
|
150 |
+
}
|
151 |
+
// end of roles_select()
|
152 |
+
|
153 |
+
|
154 |
+
private function user_profile_capabilities($user) {
|
155 |
+
global $current_user;
|
156 |
+
|
157 |
+
$user_caps = $this->lib->get_edited_user_caps($user);
|
158 |
+
?>
|
159 |
+
<tr>
|
160 |
+
<th>
|
161 |
+
<?php esc_html_e('Capabilities', 'ure'); ?>
|
162 |
+
</th>
|
163 |
+
<td>
|
164 |
+
<?php
|
165 |
+
echo $user_caps .'<br/>';
|
166 |
+
if ($this->lib->user_is_admin($current_user->ID)) {
|
167 |
+
echo '<a href="' . wp_nonce_url("users.php?page=users-".URE_PLUGIN_FILE."&object=user&user_id={$user->ID}", "ure_user_{$user->ID}") . '">' .
|
168 |
+
esc_html__('Edit', 'ure') . '</a>';
|
169 |
+
}
|
170 |
+
?>
|
171 |
+
</td>
|
172 |
+
</tr>
|
173 |
+
<?php
|
174 |
+
}
|
175 |
+
// end of user_profile_capabilities()
|
176 |
+
|
177 |
+
|
178 |
+
private function display($user, $context) {
|
179 |
+
?>
|
180 |
+
<table class="form-table">
|
181 |
+
<tr>
|
182 |
+
<th scope="row"><?php esc_html_e('Other Roles', 'ure'); ?></th>
|
183 |
+
<td>
|
184 |
+
<?php
|
185 |
+
$this->roles_select_html($user);
|
186 |
+
?>
|
187 |
+
</td>
|
188 |
+
</tr>
|
189 |
+
<?php
|
190 |
+
if ($context=='user-edit') {
|
191 |
+
$this->user_profile_capabilities($user);
|
192 |
+
}
|
193 |
+
?>
|
194 |
+
</table>
|
195 |
+
<?php
|
196 |
+
|
197 |
+
}
|
198 |
+
// end of display()
|
199 |
+
|
200 |
+
|
201 |
+
/**
|
202 |
+
* Add URE stuff to the edit user profile page
|
203 |
+
*
|
204 |
+
* @global object $current_user
|
205 |
+
* @param object $user
|
206 |
+
* @return void
|
207 |
+
*/
|
208 |
+
public function edit_user_profile_html($user) {
|
209 |
+
|
210 |
+
if (!$this->lib->is_user_profile_extention_allowed()) {
|
211 |
+
return;
|
212 |
+
}
|
213 |
+
?>
|
214 |
+
<h3><?php esc_html_e('Additional Capabilities', 'ure'); ?></h3>
|
215 |
+
<?php
|
216 |
+
$this->display($user, 'user-edit');
|
217 |
+
}
|
218 |
+
// end of edit_user_profile()
|
219 |
+
|
220 |
+
|
221 |
+
public function user_new_form($context) {
|
222 |
+
$user = new WP_User();
|
223 |
+
?>
|
224 |
+
<table>
|
225 |
+
<?php
|
226 |
+
$this->display($user, $context);
|
227 |
+
?>
|
228 |
+
</table>
|
229 |
+
<?php
|
230 |
+
}
|
231 |
+
// end of edit_user_profile_html()
|
232 |
+
|
233 |
+
|
234 |
+
/**
|
235 |
+
* add 'Other Roles' column to WordPress users list table
|
236 |
+
*
|
237 |
+
* @param array $columns WordPress users list table columns list
|
238 |
+
* @return array
|
239 |
+
*/
|
240 |
+
public function user_role_column($columns = array()) {
|
241 |
+
|
242 |
+
$columns['ure_roles'] = esc_html__('Other Roles', 'ure');
|
243 |
+
|
244 |
+
return $columns;
|
245 |
+
}
|
246 |
+
// end of user_role_column()
|
247 |
+
|
248 |
+
|
249 |
+
/**
|
250 |
+
* Return user's roles list for display in the WordPress Users list table
|
251 |
+
*
|
252 |
+
* @param string $retval
|
253 |
+
* @param string $column_name
|
254 |
+
* @param int $user_id
|
255 |
+
*
|
256 |
+
* @return string all user roles
|
257 |
+
*/
|
258 |
+
public function user_role_row($retval = '', $column_name = '', $user_id = 0) {
|
259 |
+
|
260 |
+
// Only looking for User Role Editor other user roles column
|
261 |
+
if ('ure_roles' == $column_name) {
|
262 |
+
$user = get_userdata($user_id);
|
263 |
+
// Get the users roles
|
264 |
+
$roles = $this->get_roles_array($user);
|
265 |
+
$retval = $this->lib->roles_text($roles);
|
266 |
+
}
|
267 |
+
|
268 |
+
// Pass retval through
|
269 |
+
return $retval;
|
270 |
+
}
|
271 |
+
// end of user_role_row()
|
272 |
+
|
273 |
+
|
274 |
+
// save additional user roles when user profile is updated, as WordPress itself doesn't know about them
|
275 |
+
public function update($user_id) {
|
276 |
+
|
277 |
+
if (!current_user_can('edit_user', $user_id)) {
|
278 |
+
return false;
|
279 |
+
}
|
280 |
+
$user = get_userdata($user_id);
|
281 |
+
|
282 |
+
if (empty($_POST['ure_other_roles'])) {
|
283 |
+
return false;
|
284 |
+
}
|
285 |
+
|
286 |
+
$ure_other_roles = explode(',', str_replace(' ', '', $_POST['ure_other_roles']));
|
287 |
+
$new_roles = array_intersect($user->roles, $ure_other_roles);
|
288 |
+
$skip_roles = array();
|
289 |
+
foreach ($new_roles as $role) {
|
290 |
+
$skip_roles['$role'] = 1;
|
291 |
+
}
|
292 |
+
unset($new_roles);
|
293 |
+
foreach ($ure_other_roles as $role) {
|
294 |
+
if (!isset($skip_roles[$role])) {
|
295 |
+
$user->add_role($role);
|
296 |
+
}
|
297 |
+
}
|
298 |
+
|
299 |
+
return true;
|
300 |
+
}
|
301 |
+
// end of update()
|
302 |
+
|
303 |
+
|
304 |
+
private function add_default_other_roles($user_id) {
|
305 |
+
$user = get_user_by('id', $user_id);
|
306 |
+
if (empty($user->ID)) {
|
307 |
+
return;
|
308 |
+
}
|
309 |
+
|
310 |
+
// Get default roles if any
|
311 |
+
$other_default_roles = $this->lib->get_option('other_default_roles', array());
|
312 |
+
if (count($other_default_roles) == 0) {
|
313 |
+
return;
|
314 |
+
}
|
315 |
+
foreach ($other_default_roles as $role) {
|
316 |
+
$user->add_role($role);
|
317 |
+
}
|
318 |
+
}
|
319 |
+
|
320 |
+
// end of add_default_other_roles()
|
321 |
+
|
322 |
+
|
323 |
+
public function add_other_roles($user_id) {
|
324 |
+
|
325 |
+
if (empty($user_id)) {
|
326 |
+
return;
|
327 |
+
}
|
328 |
+
|
329 |
+
$result = $this->update($user_id);
|
330 |
+
if ($result) { // roles were assigned manually
|
331 |
+
return;
|
332 |
+
}
|
333 |
+
|
334 |
+
$this->add_default_other_roles($user_id);
|
335 |
+
}
|
336 |
+
// end of add_other_roles()
|
337 |
+
|
338 |
+
|
339 |
+
|
340 |
+
}
|
341 |
+
// end of URE_User_Other_Roles class
|
includes/class-user-role-editor.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
-
*
|
4 |
* Author: Vladimir Garagulya
|
5 |
* Author email: support@role-editor.com
|
6 |
* Author URI: https://www.role-editor.com
|
@@ -9,9 +9,12 @@
|
|
9 |
*/
|
10 |
|
11 |
class User_Role_Editor {
|
12 |
-
// common code
|
13 |
protected $lib = null;
|
14 |
|
|
|
|
|
|
|
15 |
// plugin's Settings page reference, we've got it from add_options_pages() call
|
16 |
protected $setting_page_hook = null;
|
17 |
// URE's key capability
|
@@ -25,8 +28,9 @@ class User_Role_Editor {
|
|
25 |
*/
|
26 |
function __construct($library) {
|
27 |
|
28 |
-
|
29 |
-
$this->
|
|
|
30 |
if ($this->lib->is_pro()) {
|
31 |
$this->ure_hook_suffixes = array('settings_page_settings-user-role-editor-pro', 'users_page_users-user-role-editor-pro');
|
32 |
} else {
|
@@ -39,7 +43,7 @@ class User_Role_Editor {
|
|
39 |
// deactivation action
|
40 |
register_deactivation_hook(URE_PLUGIN_FULL_PATH, array($this, 'cleanup'));
|
41 |
|
42 |
-
// Who
|
43 |
$this->key_capability = $this->lib->get_key_capability();
|
44 |
|
45 |
if ($this->lib->multisite) {
|
@@ -68,13 +72,23 @@ class User_Role_Editor {
|
|
68 |
|
69 |
// add a Settings link in the installed plugins page
|
70 |
add_filter('plugin_action_links_'. URE_PLUGIN_BASE_NAME, array($this, 'plugin_action_links'), 10, 1);
|
71 |
-
|
72 |
-
add_filter('plugin_row_meta', array($this, 'plugin_row_meta'), 10, 2);
|
73 |
|
74 |
}
|
75 |
// end of __construct()
|
76 |
|
77 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
/**
|
79 |
* Plugin initialization
|
80 |
*
|
@@ -102,18 +116,14 @@ class User_Role_Editor {
|
|
102 |
// do not show 'Administrator (s)' view above users list
|
103 |
add_filter('views_users', array($this, 'exclude_admins_view' ) );
|
104 |
}
|
105 |
-
|
106 |
add_action( 'admin_enqueue_scripts', array($this, 'admin_load_js' ) );
|
107 |
-
add_action( 'user_row_actions', array($this, 'user_row'), 10, 2 );
|
108 |
-
add_action( 'edit_user_profile', array($this, 'edit_user_profile'), 10, 2 );
|
109 |
-
add_filter( 'manage_users_columns', array($this, 'user_role_column'), 10, 1 );
|
110 |
-
add_filter( 'manage_users_custom_column', array($this, 'user_role_row'), 10, 3 );
|
111 |
-
add_action( 'profile_update', array($this, 'user_profile_update'), 10 );
|
112 |
add_filter( 'all_plugins', array($this, 'exclude_from_plugins_list' ) );
|
|
|
|
|
113 |
|
114 |
if ($this->lib->multisite) {
|
115 |
-
add_action( 'wpmu_activate_user', array($this, 'add_other_default_roles'), 10, 1 );
|
116 |
-
|
117 |
$allow_edit_users_to_not_super_admin = $this->lib->get_option('allow_edit_users_to_not_super_admin', 0);
|
118 |
if ($allow_edit_users_to_not_super_admin) {
|
119 |
add_filter( 'map_meta_cap', array($this, 'restore_users_edit_caps'), 1, 4 );
|
@@ -124,8 +134,7 @@ class User_Role_Editor {
|
|
124 |
add_filter( 'site_option_site_admins', array($this, 'allow_add_user_as_superadmin') );
|
125 |
}
|
126 |
}
|
127 |
-
} else {
|
128 |
-
add_action( 'user_register', array($this, 'add_other_default_roles'), 10, 1 );
|
129 |
$count_users_without_role = $this->lib->get_option('count_users_without_role', 0);
|
130 |
if ($count_users_without_role) {
|
131 |
add_action( 'restrict_manage_users', array($this, 'move_users_from_no_role_button') );
|
@@ -176,25 +185,17 @@ class User_Role_Editor {
|
|
176 |
|
177 |
|
178 |
public function move_users_from_no_role_button() {
|
179 |
-
|
180 |
-
global $wpdb;
|
181 |
-
|
182 |
if ( stripos($_SERVER['REQUEST_URI'], 'wp-admin/users.php')===false ) {
|
183 |
return;
|
184 |
}
|
185 |
|
186 |
-
$
|
187 |
-
$
|
188 |
-
|
189 |
-
where not exists (select user_id from {$wpdb->usermeta}
|
190 |
-
where user_id=users.ID and meta_key='{$blog_prefix}capabilities') or
|
191 |
-
exists (select user_id from {$wpdb->usermeta}
|
192 |
-
where user_id=users.ID and meta_key='{$blog_prefix}capabilities' and meta_value='a:0:{}') ;";
|
193 |
-
$users_count = $wpdb->get_var($query);
|
194 |
-
if ($users_count>0) {
|
195 |
?>
|
196 |
<input type="button" name="move_from_no_role" id="move_from_no_role" class="button"
|
197 |
-
value="Without role (<?php echo $
|
198 |
<div id="move_from_no_role_dialog" class="ure-dialog">
|
199 |
<div id="move_from_no_role_content" style="padding: 10px;">
|
200 |
To: <select name="ure_new_role" id="ure_new_role">
|
@@ -240,27 +241,6 @@ class User_Role_Editor {
|
|
240 |
// end of add_js_to_users_page()
|
241 |
|
242 |
|
243 |
-
public function add_other_default_roles($user_id) {
|
244 |
-
|
245 |
-
if (empty($user_id)) {
|
246 |
-
return;
|
247 |
-
}
|
248 |
-
$user = get_user_by('id', $user_id);
|
249 |
-
if (empty($user->ID)) {
|
250 |
-
return;
|
251 |
-
}
|
252 |
-
$other_default_roles = $this->lib->get_option('other_default_roles', array());
|
253 |
-
if (count($other_default_roles)==0) {
|
254 |
-
return;
|
255 |
-
}
|
256 |
-
foreach($other_default_roles as $role) {
|
257 |
-
$user->add_role($role);
|
258 |
-
}
|
259 |
-
|
260 |
-
}
|
261 |
-
// end of add_other_default_roles()
|
262 |
-
|
263 |
-
|
264 |
/**
|
265 |
* restore edit_users, delete_users, create_users capabilities for non-superadmin users under multisite
|
266 |
* (code is provided by http://wordpress.org/support/profile/sjobidoo)
|
@@ -538,8 +518,7 @@ class User_Role_Editor {
|
|
538 |
* Load plugin translation files - linked to the 'plugins_loaded' action
|
539 |
*
|
540 |
*/
|
541 |
-
function load_translation()
|
542 |
-
{
|
543 |
|
544 |
load_plugin_textdomain('ure', '', dirname( plugin_basename( URE_PLUGIN_FULL_PATH ) ) .'/lang');
|
545 |
|
@@ -865,94 +844,24 @@ class User_Role_Editor {
|
|
865 |
|
866 |
}
|
867 |
|
868 |
-
/**
|
869 |
-
* execute on plugin activation
|
870 |
-
*/
|
871 |
-
function setup() {
|
872 |
-
|
873 |
-
$this->convert_option('ure_caps_readable');
|
874 |
-
$this->convert_option('ure_show_deprecated_caps');
|
875 |
-
$this->convert_option('ure_hide_pro_banner');
|
876 |
-
$this->lib->flush_options();
|
877 |
-
|
878 |
-
$this->lib->make_roles_backup();
|
879 |
-
$this->lib->init_ure_caps();
|
880 |
-
|
881 |
-
|
882 |
-
do_action('ure_activation');
|
883 |
-
|
884 |
-
}
|
885 |
-
// end of setup()
|
886 |
-
|
887 |
-
|
888 |
/**
|
889 |
-
*
|
890 |
*/
|
891 |
-
|
892 |
-
|
893 |
-
if (!defined('THEME_SLUG') || THEME_SLUG!=='techgo_') {
|
894 |
-
return;
|
895 |
-
}
|
896 |
-
|
897 |
-
if ( !in_array($hook_suffix, $this->ure_hook_suffixes) && !in_array($hook_suffix, array('users.php', 'profile.php')) ) {
|
898 |
-
return;
|
899 |
-
}
|
900 |
-
wp_deregister_script('jqueryform');
|
901 |
-
wp_deregister_script('tab');
|
902 |
-
wp_deregister_script('shortcode_js');
|
903 |
-
wp_deregister_script('fancybox_js');
|
904 |
-
wp_deregister_script('bootstrap-colorpicker');
|
905 |
-
wp_deregister_script('logo_upload');
|
906 |
-
wp_deregister_script('js_wd_menu_backend');
|
907 |
-
|
908 |
-
wp_deregister_style('config_css');
|
909 |
-
wp_deregister_style('fancybox_css');
|
910 |
-
wp_deregister_style('colorpicker');
|
911 |
-
wp_deregister_style('font-awesome');
|
912 |
-
wp_deregister_style('css_wd_menu_backend');
|
913 |
-
}
|
914 |
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
}
|
926 |
-
|
927 |
-
if (defined('THEMENAME') && THEMENAME!=='MusicPlay') {
|
928 |
-
return;
|
929 |
-
}
|
930 |
-
|
931 |
-
wp_deregister_style('atpadmin');
|
932 |
-
wp_deregister_style('appointment-style');
|
933 |
-
wp_deregister_style('atp-chosen');
|
934 |
-
wp_deregister_style('atp_plupload');
|
935 |
-
wp_deregister_style('atp-jquery-timepicker-addon');
|
936 |
-
wp_deregister_style('atp-jquery-ui');
|
937 |
-
|
938 |
-
}
|
939 |
-
// end of unload_music_play()
|
940 |
-
|
941 |
-
|
942 |
-
protected function unload_conflict_plugins_css($hook_suffix) {
|
943 |
-
global $wp_styles;
|
944 |
-
|
945 |
-
if ( !in_array($hook_suffix, $this->ure_hook_suffixes) && !in_array($hook_suffix, array('users.php', 'profile.php')) ) {
|
946 |
-
return;
|
947 |
-
}
|
948 |
-
|
949 |
-
// remove conflict CSS from responsive-admin-maintenance-pro plugin
|
950 |
-
if (isset($wp_styles->registered['admin-page-css'])) {
|
951 |
-
wp_deregister_style('admin-page-css');
|
952 |
-
}
|
953 |
}
|
954 |
-
// end of
|
955 |
-
|
956 |
|
957 |
/**
|
958 |
* Load plugin javascript stuff
|
@@ -960,186 +869,73 @@ class User_Role_Editor {
|
|
960 |
* @param string $hook_suffix
|
961 |
*/
|
962 |
public function admin_load_js($hook_suffix) {
|
963 |
-
|
964 |
-
$this->unload_techgostore($hook_suffix);
|
965 |
-
$this->unload_musicplay($hook_suffix);
|
966 |
-
$this->unload_conflict_plugins_css($hook_suffix);
|
967 |
-
|
968 |
-
if (in_array($hook_suffix, $this->ure_hook_suffixes)) {
|
969 |
-
wp_enqueue_script('jquery-ui-dialog', false, array('jquery-ui-core', 'jquery-ui-button', 'jquery'));
|
970 |
-
wp_enqueue_script('jquery-ui-tabs', false, array('jquery-ui-core', 'jquery'));
|
971 |
-
wp_register_script('ure-js', plugins_url('/js/ure-js.js', URE_PLUGIN_FULL_PATH));
|
972 |
-
wp_enqueue_script('ure-js');
|
973 |
-
wp_localize_script('ure-js', 'ure_data', array(
|
974 |
-
'wp_nonce' => wp_create_nonce('user-role-editor'),
|
975 |
-
'page_url' => URE_WP_ADMIN_URL . URE_PARENT . '?page=users-' . URE_PLUGIN_FILE,
|
976 |
-
'is_multisite' => is_multisite() ? 1 : 0,
|
977 |
-
'select_all' => esc_html__('Select All', 'ure'),
|
978 |
-
'unselect_all' => esc_html__('Unselect All', 'ure'),
|
979 |
-
'reverse' => esc_html__('Reverse', 'ure'),
|
980 |
-
'update' => esc_html__('Update', 'ure'),
|
981 |
-
'confirm_submit' => esc_html__('Please confirm permissions update', 'ure'),
|
982 |
-
'add_new_role_title' => esc_html__('Add New Role', 'ure'),
|
983 |
-
'rename_role_title' => esc_html__('Rename Role', 'ure'),
|
984 |
-
'role_name_required' => esc_html__(' Role name (ID) can not be empty!', 'ure'),
|
985 |
-
'role_name_valid_chars' => esc_html__(' Role name (ID) must contain latin characters, digits, hyphens or underscore only!', 'ure'),
|
986 |
-
'numeric_role_name_prohibited' => esc_html__(' WordPress does not support numeric Role name (ID). Add latin characters to it.', 'ure'),
|
987 |
-
'add_role' => esc_html__('Add Role', 'ure'),
|
988 |
-
'rename_role' => esc_html__('Rename Role', 'ure'),
|
989 |
-
'delete_role' => esc_html__('Delete Role', 'ure'),
|
990 |
-
'cancel' => esc_html__('Cancel', 'ure'),
|
991 |
-
'add_capability' => esc_html__('Add Capability', 'ure'),
|
992 |
-
'delete_capability' => esc_html__('Delete Capability', 'ure'),
|
993 |
-
'reset' => esc_html__('Reset', 'ure'),
|
994 |
-
'reset_warning' => esc_html__('DANGER! Resetting will restore default settings from WordPress Core.', 'ure') . "\n\n" .
|
995 |
-
esc_html__('If any plugins have changed capabilities in any way upon installation (such as S2Member, WooCommerce, and many more), those capabilities will be DELETED!', 'ure') . "\n\n" .
|
996 |
-
esc_html__('For more information on how to undo changes and restore plugin capabilities go to', 'ure') . "\n" .
|
997 |
-
'http://role-editor.com/how-to-restore-deleted-wordpress-user-roles/' . "\n\n" .
|
998 |
-
esc_html__('Continue?', 'ure'),
|
999 |
-
'default_role' => esc_html__('Default Role', 'ure'),
|
1000 |
-
'set_new_default_role' => esc_html__('Set New Default Role', 'ure'),
|
1001 |
-
'delete_capability' => esc_html__('Delete Capability', 'ure'),
|
1002 |
-
'delete_capability_warning' => esc_html__('Warning! Be careful - removing critical capability could crash some plugin or other custom code', 'ure'),
|
1003 |
-
'capability_name_required' => esc_html__(' Capability name (ID) can not be empty!', 'ure'),
|
1004 |
-
'capability_name_valid_chars' => esc_html__(' Capability name (ID) must contain latin characters, digits, hyphens or underscore only!', 'ure'),
|
1005 |
-
));
|
1006 |
-
// load additional JS stuff for Pro version, if exists
|
1007 |
-
do_action('ure_load_js');
|
1008 |
-
}
|
1009 |
-
}
|
1010 |
-
// end of admin_load_js()
|
1011 |
-
|
1012 |
|
1013 |
-
|
1014 |
-
// Check if we are not at the network admin center
|
1015 |
-
$result = stripos($_SERVER['REQUEST_URI'], 'network/user-edit.php') == false;
|
1016 |
|
1017 |
-
|
1018 |
-
}
|
1019 |
-
// end of is_user_profile_extention_allowed()
|
1020 |
-
|
1021 |
-
|
1022 |
-
public function edit_user_profile($user) {
|
1023 |
-
|
1024 |
-
global $current_user;
|
1025 |
-
|
1026 |
-
if (!$this->is_user_profile_extention_allowed()) {
|
1027 |
return;
|
1028 |
}
|
1029 |
-
?>
|
1030 |
-
<h3><?php _e('User Role Editor', 'ure'); ?></h3>
|
1031 |
-
<table class="form-table">
|
1032 |
-
<tr>
|
1033 |
-
<th scope="row"><?php _e('Other Roles', 'ure'); ?></th>
|
1034 |
-
<td>
|
1035 |
-
<?php
|
1036 |
-
$roles = $this->lib->other_user_roles($user);
|
1037 |
-
if (is_array($roles) && count($roles) > 0) {
|
1038 |
-
foreach ($roles as $role) {
|
1039 |
-
echo '<input type="hidden" name="ure_other_roles[]" value="' . $role . '" />';
|
1040 |
-
}
|
1041 |
-
}
|
1042 |
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
{
|
1084 |
-
|
1085 |
-
// Only looking for User Role Editor other user roles column
|
1086 |
-
if ('ure_roles' == $column_name) {
|
1087 |
-
$user = get_userdata($user_id);
|
1088 |
-
// Get the users roles
|
1089 |
-
$roles = $this->lib->other_user_roles($user);
|
1090 |
-
$retval = $this->lib->roles_text($roles);
|
1091 |
-
}
|
1092 |
|
1093 |
-
// Pass retval through
|
1094 |
-
return $retval;
|
1095 |
}
|
1096 |
-
// end of
|
1097 |
-
|
1098 |
-
|
1099 |
-
// save additional user roles when user profile is updated, as WordPress itself doesn't know about them
|
1100 |
-
public function user_profile_update($user_id) {
|
1101 |
-
|
1102 |
-
if (!current_user_can('edit_user', $user_id)) {
|
1103 |
-
return;
|
1104 |
-
}
|
1105 |
-
$user = get_userdata($user_id);
|
1106 |
-
|
1107 |
-
if (isset($_POST['ure_other_roles'])) {
|
1108 |
-
$new_roles = array_intersect($user->roles, $_POST['ure_other_roles']);
|
1109 |
-
$skip_roles = array();
|
1110 |
-
foreach ($new_roles as $role) {
|
1111 |
-
$skip_roles['$role'] = 1;
|
1112 |
-
}
|
1113 |
-
unset($new_roles);
|
1114 |
-
foreach ($_POST['ure_other_roles'] as $role) {
|
1115 |
-
if (!isset($skip_roles[$role])) {
|
1116 |
-
$user->add_role($role);
|
1117 |
-
}
|
1118 |
-
}
|
1119 |
-
}
|
1120 |
-
|
1121 |
-
}
|
1122 |
-
// update_user_profile()
|
1123 |
-
|
1124 |
-
|
1125 |
|
1126 |
public function ure_ajax() {
|
1127 |
-
|
1128 |
-
require_once(URE_PLUGIN_DIR . 'includes/class-ajax-processor.php');
|
1129 |
$ajax_processor = new URE_Ajax_Processor($this->lib);
|
1130 |
$ajax_processor->dispatch();
|
1131 |
|
1132 |
}
|
1133 |
// end of ure_ajax()
|
1134 |
|
1135 |
-
|
1136 |
// execute on plugin deactivation
|
1137 |
-
function cleanup()
|
1138 |
-
{
|
1139 |
|
1140 |
}
|
1141 |
// end of setup()
|
1142 |
-
|
1143 |
|
1144 |
}
|
1145 |
// end of User_Role_Editor
|
1 |
<?php
|
2 |
/*
|
3 |
+
* Main class of User Role Editor WordPress plugin
|
4 |
* Author: Vladimir Garagulya
|
5 |
* Author email: support@role-editor.com
|
6 |
* Author URI: https://www.role-editor.com
|
9 |
*/
|
10 |
|
11 |
class User_Role_Editor {
|
12 |
+
// plugin specific library object: common code stuff, including options data processor
|
13 |
protected $lib = null;
|
14 |
|
15 |
+
// work with user multiple roles class
|
16 |
+
protected $user_other_roles = null;
|
17 |
+
|
18 |
// plugin's Settings page reference, we've got it from add_options_pages() call
|
19 |
protected $setting_page_hook = null;
|
20 |
// URE's key capability
|
28 |
*/
|
29 |
function __construct($library) {
|
30 |
|
31 |
+
$this->lib = $library;
|
32 |
+
$this->user_other_roles = new URE_User_Other_Roles($this->lib);
|
33 |
+
|
34 |
if ($this->lib->is_pro()) {
|
35 |
$this->ure_hook_suffixes = array('settings_page_settings-user-role-editor-pro', 'users_page_users-user-role-editor-pro');
|
36 |
} else {
|
43 |
// deactivation action
|
44 |
register_deactivation_hook(URE_PLUGIN_FULL_PATH, array($this, 'cleanup'));
|
45 |
|
46 |
+
// Who can use this plugin
|
47 |
$this->key_capability = $this->lib->get_key_capability();
|
48 |
|
49 |
if ($this->lib->multisite) {
|
72 |
|
73 |
// add a Settings link in the installed plugins page
|
74 |
add_filter('plugin_action_links_'. URE_PLUGIN_BASE_NAME, array($this, 'plugin_action_links'), 10, 1);
|
75 |
+
add_filter('plugin_row_meta', array($this, 'plugin_row_meta'), 10, 2);
|
|
|
76 |
|
77 |
}
|
78 |
// end of __construct()
|
79 |
|
80 |
|
81 |
+
/**
|
82 |
+
* True - if it's an instance of Pro version, false - for free version
|
83 |
+
* @return boolean
|
84 |
+
*/
|
85 |
+
public function is_pro() {
|
86 |
+
|
87 |
+
return $this->lib->is_pro();
|
88 |
+
}
|
89 |
+
// end of is_pro()
|
90 |
+
|
91 |
+
|
92 |
/**
|
93 |
* Plugin initialization
|
94 |
*
|
116 |
// do not show 'Administrator (s)' view above users list
|
117 |
add_filter('views_users', array($this, 'exclude_admins_view' ) );
|
118 |
}
|
119 |
+
|
120 |
add_action( 'admin_enqueue_scripts', array($this, 'admin_load_js' ) );
|
121 |
+
add_action( 'user_row_actions', array($this, 'user_row'), 10, 2 );
|
|
|
|
|
|
|
|
|
122 |
add_filter( 'all_plugins', array($this, 'exclude_from_plugins_list' ) );
|
123 |
+
|
124 |
+
$this->user_other_roles->set_hooks();
|
125 |
|
126 |
if ($this->lib->multisite) {
|
|
|
|
|
127 |
$allow_edit_users_to_not_super_admin = $this->lib->get_option('allow_edit_users_to_not_super_admin', 0);
|
128 |
if ($allow_edit_users_to_not_super_admin) {
|
129 |
add_filter( 'map_meta_cap', array($this, 'restore_users_edit_caps'), 1, 4 );
|
134 |
add_filter( 'site_option_site_admins', array($this, 'allow_add_user_as_superadmin') );
|
135 |
}
|
136 |
}
|
137 |
+
} else {
|
|
|
138 |
$count_users_without_role = $this->lib->get_option('count_users_without_role', 0);
|
139 |
if ($count_users_without_role) {
|
140 |
add_action( 'restrict_manage_users', array($this, 'move_users_from_no_role_button') );
|
185 |
|
186 |
|
187 |
public function move_users_from_no_role_button() {
|
188 |
+
|
|
|
|
|
189 |
if ( stripos($_SERVER['REQUEST_URI'], 'wp-admin/users.php')===false ) {
|
190 |
return;
|
191 |
}
|
192 |
|
193 |
+
$assign_role = $this->lib->get_assign_role();
|
194 |
+
$users_quant = $assign_role->count_users_without_role();
|
195 |
+
if ($users_quant>0) {
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
?>
|
197 |
<input type="button" name="move_from_no_role" id="move_from_no_role" class="button"
|
198 |
+
value="Without role (<?php echo $users_quant;?>)" onclick="ure_move_users_from_no_role_dialog()">
|
199 |
<div id="move_from_no_role_dialog" class="ure-dialog">
|
200 |
<div id="move_from_no_role_content" style="padding: 10px;">
|
201 |
To: <select name="ure_new_role" id="ure_new_role">
|
241 |
// end of add_js_to_users_page()
|
242 |
|
243 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
/**
|
245 |
* restore edit_users, delete_users, create_users capabilities for non-superadmin users under multisite
|
246 |
* (code is provided by http://wordpress.org/support/profile/sjobidoo)
|
518 |
* Load plugin translation files - linked to the 'plugins_loaded' action
|
519 |
*
|
520 |
*/
|
521 |
+
function load_translation() {
|
|
|
522 |
|
523 |
load_plugin_textdomain('ure', '', dirname( plugin_basename( URE_PLUGIN_FULL_PATH ) ) .'/lang');
|
524 |
|
844 |
|
845 |
}
|
846 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
847 |
/**
|
848 |
+
* execute on plugin activation
|
849 |
*/
|
850 |
+
function setup() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
851 |
|
852 |
+
$this->convert_option('ure_caps_readable');
|
853 |
+
$this->convert_option('ure_show_deprecated_caps');
|
854 |
+
$this->convert_option('ure_hide_pro_banner');
|
855 |
+
$this->lib->flush_options();
|
856 |
+
|
857 |
+
$this->lib->make_roles_backup();
|
858 |
+
$this->lib->init_ure_caps();
|
859 |
+
|
860 |
+
|
861 |
+
do_action('ure_activation');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
862 |
}
|
863 |
+
// end of setup()
|
864 |
+
|
865 |
|
866 |
/**
|
867 |
* Load plugin javascript stuff
|
869 |
* @param string $hook_suffix
|
870 |
*/
|
871 |
public function admin_load_js($hook_suffix) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
872 |
|
873 |
+
URE_Known_JS_CSS_Compatibility_Issues::fix($hook_suffix, $this->ure_hook_suffixes);
|
|
|
|
|
874 |
|
875 |
+
if (!in_array($hook_suffix, $this->ure_hook_suffixes)) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
876 |
return;
|
877 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
878 |
|
879 |
+
wp_enqueue_script('jquery-ui-dialog', false, array('jquery-ui-core', 'jquery-ui-button', 'jquery'));
|
880 |
+
wp_enqueue_script('jquery-ui-tabs', false, array('jquery-ui-core', 'jquery'));
|
881 |
+
wp_register_script('ure-js', plugins_url('/js/ure-js.js', URE_PLUGIN_FULL_PATH));
|
882 |
+
wp_enqueue_script('ure-js');
|
883 |
+
wp_localize_script('ure-js', 'ure_data', array(
|
884 |
+
'wp_nonce' => wp_create_nonce('user-role-editor'),
|
885 |
+
'page_url' => URE_WP_ADMIN_URL . URE_PARENT . '?page=users-' . URE_PLUGIN_FILE,
|
886 |
+
'is_multisite' => is_multisite() ? 1 : 0,
|
887 |
+
'select_all' => esc_html__('Select All', 'ure'),
|
888 |
+
'unselect_all' => esc_html__('Unselect All', 'ure'),
|
889 |
+
'reverse' => esc_html__('Reverse', 'ure'),
|
890 |
+
'update' => esc_html__('Update', 'ure'),
|
891 |
+
'confirm_submit' => esc_html__('Please confirm permissions update', 'ure'),
|
892 |
+
'add_new_role_title' => esc_html__('Add New Role', 'ure'),
|
893 |
+
'rename_role_title' => esc_html__('Rename Role', 'ure'),
|
894 |
+
'role_name_required' => esc_html__(' Role name (ID) can not be empty!', 'ure'),
|
895 |
+
'role_name_valid_chars' => esc_html__(' Role name (ID) must contain latin characters, digits, hyphens or underscore only!', 'ure'),
|
896 |
+
'numeric_role_name_prohibited' => esc_html__(' WordPress does not support numeric Role name (ID). Add latin characters to it.', 'ure'),
|
897 |
+
'add_role' => esc_html__('Add Role', 'ure'),
|
898 |
+
'rename_role' => esc_html__('Rename Role', 'ure'),
|
899 |
+
'delete_role' => esc_html__('Delete Role', 'ure'),
|
900 |
+
'cancel' => esc_html__('Cancel', 'ure'),
|
901 |
+
'add_capability' => esc_html__('Add Capability', 'ure'),
|
902 |
+
'delete_capability' => esc_html__('Delete Capability', 'ure'),
|
903 |
+
'reset' => esc_html__('Reset', 'ure'),
|
904 |
+
'reset_warning' => esc_html__('DANGER! Resetting will restore default settings from WordPress Core.', 'ure') . "\n\n" .
|
905 |
+
esc_html__('If any plugins have changed capabilities in any way upon installation (such as S2Member, WooCommerce, and many more), those capabilities will be DELETED!', 'ure') . "\n\n" .
|
906 |
+
esc_html__('For more information on how to undo changes and restore plugin capabilities go to', 'ure') . "\n" .
|
907 |
+
'http://role-editor.com/how-to-restore-deleted-wordpress-user-roles/' . "\n\n" .
|
908 |
+
esc_html__('Continue?', 'ure'),
|
909 |
+
'default_role' => esc_html__('Default Role', 'ure'),
|
910 |
+
'set_new_default_role' => esc_html__('Set New Default Role', 'ure'),
|
911 |
+
'delete_capability' => esc_html__('Delete Capability', 'ure'),
|
912 |
+
'delete_capability_warning' => esc_html__('Warning! Be careful - removing critical capability could crash some plugin or other custom code', 'ure'),
|
913 |
+
'capability_name_required' => esc_html__(' Capability name (ID) can not be empty!', 'ure'),
|
914 |
+
'capability_name_valid_chars' => esc_html__(' Capability name (ID) must contain latin characters, digits, hyphens or underscore only!', 'ure'),
|
915 |
+
));
|
916 |
+
|
917 |
+
// load additional JS stuff for Pro version, if exists
|
918 |
+
do_action('ure_load_js');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
919 |
|
|
|
|
|
920 |
}
|
921 |
+
// end of admin_load_js()
|
922 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
923 |
|
924 |
public function ure_ajax() {
|
925 |
+
|
|
|
926 |
$ajax_processor = new URE_Ajax_Processor($this->lib);
|
927 |
$ajax_processor->dispatch();
|
928 |
|
929 |
}
|
930 |
// end of ure_ajax()
|
931 |
|
932 |
+
|
933 |
// execute on plugin deactivation
|
934 |
+
function cleanup() {
|
|
|
935 |
|
936 |
}
|
937 |
// end of setup()
|
938 |
+
|
939 |
|
940 |
}
|
941 |
// end of User_Role_Editor
|
includes/misc-support-stuff.php
CHANGED
@@ -28,4 +28,17 @@ if (class_exists('GFForms') ) { // if Gravity Forms is installed
|
|
28 |
}
|
29 |
}
|
30 |
|
31 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
}
|
29 |
}
|
30 |
|
31 |
+
|
32 |
+
if (!function_exists('ure_get_post_view_access_users')) {
|
33 |
+
function ure_get_post_view_access_users($post_id) {
|
34 |
+
if (!$GLOBALS['user_role_editor']->is_pro()) {
|
35 |
+
return false;
|
36 |
+
}
|
37 |
+
|
38 |
+
$result = $GLOBALS['user_role_editor']->get_post_view_access_users($post_id);
|
39 |
+
|
40 |
+
return $result;
|
41 |
+
}
|
42 |
+
// end of ure_get_post_view_users()
|
43 |
+
|
44 |
+
} // if (!function_exists('ure_get_post_view_users'))
|
js/jquery.multiple.select.js
ADDED
@@ -0,0 +1,332 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* @author zhixin wen <wenzhixin2010@gmail.com>
|
3 |
+
* @version 1.0.4
|
4 |
+
*
|
5 |
+
* http://wenzhixin.net.cn/p/multiple-select/
|
6 |
+
*/
|
7 |
+
|
8 |
+
(function($) {
|
9 |
+
|
10 |
+
'use strict';
|
11 |
+
|
12 |
+
function MultipleSelect($el, options) {
|
13 |
+
var that = this,
|
14 |
+
elWidth = $el.width();
|
15 |
+
|
16 |
+
this.$el = $el.hide();
|
17 |
+
this.options = options;
|
18 |
+
|
19 |
+
this.$parent = $('<div class="ms-parent"></div>');
|
20 |
+
this.$choice = $('<div class="ms-choice"><span class="placeholder">' +
|
21 |
+
options.placeholder + '</span><div></div></div>');
|
22 |
+
this.$drop = $('<div class="ms-drop"></div>');
|
23 |
+
this.$el.after(this.$parent);
|
24 |
+
this.$parent.append(this.$choice);
|
25 |
+
this.$parent.append(this.$drop);
|
26 |
+
|
27 |
+
if (this.$el.prop('disabled')) {
|
28 |
+
this.$choice.addClass('disabled');
|
29 |
+
}
|
30 |
+
this.$choice.css('width', elWidth + 'px')
|
31 |
+
.find('span').css('width', (elWidth - 28) + 'px');
|
32 |
+
this.$drop.css({
|
33 |
+
width: (options.width || elWidth) + 'px'
|
34 |
+
});
|
35 |
+
|
36 |
+
$('body').click(function(e) {
|
37 |
+
if ($(e.target)[0] === that.$choice[0] ||
|
38 |
+
$(e.target).parents('.ms-choice')[0] === that.$choice[0]) {
|
39 |
+
return;
|
40 |
+
}
|
41 |
+
if (($(e.target)[0] === that.$drop[0] ||
|
42 |
+
$(e.target).parents('.ms-drop')[0] !== that.$drop[0]) &&
|
43 |
+
that.options.isopen) {
|
44 |
+
that.close();
|
45 |
+
}
|
46 |
+
});
|
47 |
+
|
48 |
+
if (this.options.isopen) {
|
49 |
+
this.open();
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
MultipleSelect.prototype = {
|
54 |
+
constructor : MultipleSelect,
|
55 |
+
|
56 |
+
init: function() {
|
57 |
+
var that = this,
|
58 |
+
html = [];
|
59 |
+
if (this.options.filter) {
|
60 |
+
html.push(
|
61 |
+
'<div class="ms-search">',
|
62 |
+
'<input type="text" autocomplete="off" autocorrect="off" autocapitilize="off" spellcheck="false">',
|
63 |
+
'</div>'
|
64 |
+
);
|
65 |
+
}
|
66 |
+
html.push('<ul>');
|
67 |
+
if (this.options.selectAll) {
|
68 |
+
html.push(
|
69 |
+
'<li>',
|
70 |
+
'<label>',
|
71 |
+
'<input type="checkbox" name="selectAll" /> ',
|
72 |
+
'[' + this.options.selectAllText + ']',
|
73 |
+
'</label>',
|
74 |
+
'</li>'
|
75 |
+
);
|
76 |
+
}
|
77 |
+
$.each(this.$el.children(), function(i, elm) {
|
78 |
+
html.push(that.optionToHtml(i, elm));
|
79 |
+
});
|
80 |
+
html.push('</ul>');
|
81 |
+
this.$drop.html(html.join(''));
|
82 |
+
this.$drop.find('ul').css('max-height', this.options.maxHeight + 'px');
|
83 |
+
this.$drop.find('.multiple').css('width', this.options.multipleWidth + 'px');
|
84 |
+
|
85 |
+
this.$searchInput = this.$drop.find('.ms-search input');
|
86 |
+
this.$selectAll = this.$drop.find('input[name="selectAll"]');
|
87 |
+
this.$selectGroups = this.$drop.find('label.optgroup');
|
88 |
+
this.$selectItems = this.$drop.find('input[name="selectItem"]:enabled');
|
89 |
+
this.$disableItems = this.$drop.find('input[name="selectItem"]:disabled');
|
90 |
+
this.events();
|
91 |
+
this.update();
|
92 |
+
},
|
93 |
+
|
94 |
+
optionToHtml: function(i, elm, group, groupDisabled) {
|
95 |
+
var that = this,
|
96 |
+
$elm = $(elm),
|
97 |
+
html = [],
|
98 |
+
multiple = this.options.multiple;
|
99 |
+
if ($elm.is('option')) {
|
100 |
+
var value = $elm.val(),
|
101 |
+
text = $elm.text(),
|
102 |
+
selected = $elm.prop('selected'),
|
103 |
+
disabled = groupDisabled || $elm.prop('disabled');
|
104 |
+
html.push(
|
105 |
+
'<li' + (multiple ? ' class="multiple"' : '') + '>',
|
106 |
+
'<label' + (disabled ? ' class="disabled"' : '') + '>',
|
107 |
+
'<input type="checkbox" name="selectItem" value="' + value + '"' +
|
108 |
+
(selected ? ' checked="checked"' : '') +
|
109 |
+
(disabled ? ' disabled="disabled"' : '') +
|
110 |
+
(group ? ' data-group="' + group + '"' : '') +
|
111 |
+
'/> ',
|
112 |
+
text,
|
113 |
+
'</label>',
|
114 |
+
'</li>'
|
115 |
+
);
|
116 |
+
} else if (!group && $elm.is('optgroup')) {
|
117 |
+
var _group = 'group_' + i,
|
118 |
+
label = $elm.attr('label'),
|
119 |
+
disabled = $elm.prop('disabled');
|
120 |
+
html.push(
|
121 |
+
'<li class="group">',
|
122 |
+
'<label class="optgroup' + (disabled ? ' disabled' : '') + '" data-group="' + _group + '">',
|
123 |
+
label,
|
124 |
+
'</label>',
|
125 |
+
'</li>');
|
126 |
+
$.each($elm.children(), function(i, elm) {
|
127 |
+
html.push(that.optionToHtml(i, elm, _group, disabled));
|
128 |
+
});
|
129 |
+
}
|
130 |
+
return html.join('');
|
131 |
+
},
|
132 |
+
|
133 |
+
events: function() {
|
134 |
+
var that = this;
|
135 |
+
this.$choice.off('click').on('click', function() {
|
136 |
+
that[that.options.isopen ? 'close' : 'open']();
|
137 |
+
});
|
138 |
+
this.$searchInput.off('keyup').on('keyup', function() {
|
139 |
+
that.filter();
|
140 |
+
});
|
141 |
+
this.$selectAll.off('click').on('click', function() {
|
142 |
+
var checked = $(this).prop('checked'),
|
143 |
+
$items = that.$selectItems.filter(':visible');
|
144 |
+
if ($items.length === that.$selectItems.length) {
|
145 |
+
that[checked ? 'checkAll' : 'uncheckAll']();
|
146 |
+
} else { // when the filter option is true
|
147 |
+
$items.prop('checked', checked);
|
148 |
+
that.update();
|
149 |
+
}
|
150 |
+
});
|
151 |
+
this.$selectGroups.off('click').on('click', function() {
|
152 |
+
var group = $(this).attr('data-group'),
|
153 |
+
$items = that.$selectItems.filter(':visible'),
|
154 |
+
$children = $items.filter('[data-group="' + group + '"]'),
|
155 |
+
checked = $children.length !== $children.filter(':checked').length;
|
156 |
+
$children.prop('checked', checked);
|
157 |
+
that.updateSelectAll();
|
158 |
+
that.update();
|
159 |
+
that.options.onOptgroupClick({
|
160 |
+
label: $(this).text(),
|
161 |
+
checked: checked,
|
162 |
+
children: $children.get()
|
163 |
+
});
|
164 |
+
});
|
165 |
+
this.$selectItems.off('click').on('click', function() {
|
166 |
+
that.updateSelectAll();
|
167 |
+
that.update();
|
168 |
+
that.options.onClick({
|
169 |
+
label: $(this).parent().text(),
|
170 |
+
value: $(this).val(),
|
171 |
+
checked: $(this).prop('checked')
|
172 |
+
});
|
173 |
+
});
|
174 |
+
},
|
175 |
+
|
176 |
+
open: function() {
|
177 |
+
if (this.$choice.hasClass('disabled')) {
|
178 |
+
return;
|
179 |
+
}
|
180 |
+
this.options.isopen = true;
|
181 |
+
this.$choice.find('>div').addClass('open');
|
182 |
+
this.$drop.show();
|
183 |
+
if (this.options.filter) {
|
184 |
+
this.$searchInput.val('');
|
185 |
+
this.filter();
|
186 |
+
}
|
187 |
+
this.options.onOpen();
|
188 |
+
},
|
189 |
+
|
190 |
+
close: function() {
|
191 |
+
this.options.isopen = false;
|
192 |
+
this.$choice.find('>div').removeClass('open');
|
193 |
+
this.$drop.hide();
|
194 |
+
this.options.onClose();
|
195 |
+
},
|
196 |
+
|
197 |
+
update: function() {
|
198 |
+
var selects = this.getSelects('text'),
|
199 |
+
$span = this.$choice.find('>span');
|
200 |
+
if (selects.length) {
|
201 |
+
$span.removeClass('placeholder').html(selects.join(','));
|
202 |
+
} else {
|
203 |
+
$span.addClass('placeholder').html(this.options.placeholder);
|
204 |
+
}
|
205 |
+
// set selects to select
|
206 |
+
this.$el.val(this.getSelects());
|
207 |
+
},
|
208 |
+
|
209 |
+
updateSelectAll: function() {
|
210 |
+
var $items = this.$selectItems.filter(':visible');
|
211 |
+
this.$selectAll.prop('checked', $items.length &&
|
212 |
+
$items.length === $items.filter(':checked').length);
|
213 |
+
},
|
214 |
+
|
215 |
+
//value or text, default: 'value'
|
216 |
+
getSelects: function(type) {
|
217 |
+
var values = [];
|
218 |
+
this.$drop.find('input[name="selectItem"]:checked').each(function() {
|
219 |
+
values.push(type === 'text' ? $(this).parent().text() : $(this).val());
|
220 |
+
});
|
221 |
+
return values;
|
222 |
+
},
|
223 |
+
|
224 |
+
setSelects: function(values) {
|
225 |
+
var that = this;
|
226 |
+
this.$selectItems.prop('checked', false);
|
227 |
+
$.each(values, function(i, value) {
|
228 |
+
that.$selectItems.filter('[value="' + value + '"]').prop('checked', true);
|
229 |
+
});
|
230 |
+
this.$selectAll.prop('checked', this.$selectItems.length ===
|
231 |
+
this.$selectItems.filter(':checked').length);
|
232 |
+
this.update();
|
233 |
+
},
|
234 |
+
|
235 |
+
enable: function() {
|
236 |
+
this.$choice.removeClass('disabled');
|
237 |
+
},
|
238 |
+
|
239 |
+
disable: function() {
|
240 |
+
this.$choice.addClass('disabled');
|
241 |
+
},
|
242 |
+
|
243 |
+
checkAll: function() {
|
244 |
+
this.$selectItems.prop('checked', true);
|
245 |
+
this.$selectAll.prop('checked', true);
|
246 |
+
this.update();
|
247 |
+
this.options.onCheckAll();
|
248 |
+
},
|
249 |
+
|
250 |
+
uncheckAll: function() {
|
251 |
+
this.$selectItems.prop('checked', false);
|
252 |
+
this.$selectAll.prop('checked', false);
|
253 |
+
this.update();
|
254 |
+
this.options.onUncheckAll();
|
255 |
+
},
|
256 |
+
|
257 |
+
refresh: function() {
|
258 |
+
this.init();
|
259 |
+
},
|
260 |
+
|
261 |
+
filter: function() {
|
262 |
+
var that = this,
|
263 |
+
text = $.trim(this.$searchInput.val()).toLowerCase();
|
264 |
+
if (text.length === 0) {
|
265 |
+
this.$selectItems.parent().show();
|
266 |
+
this.$disableItems.parent().show();
|
267 |
+
this.$selectGroups.show();
|
268 |
+
} else {
|
269 |
+
this.$selectItems.each(function() {
|
270 |
+
var $parent = $(this).parent();
|
271 |
+
$parent[$parent.text().toLowerCase().indexOf(text) < 0 ? 'hide' : 'show']();
|
272 |
+
});
|
273 |
+
this.$disableItems.parent().hide();
|
274 |
+
this.$selectGroups.each(function() {
|
275 |
+
var group = $(this).attr('data-group'),
|
276 |
+
$items = that.$selectItems.filter(':visible');
|
277 |
+
$(this)[$items.filter('[data-group="' + group + '"]').length === 0 ? 'hide' : 'show']();
|
278 |
+
});
|
279 |
+
}
|
280 |
+
this.updateSelectAll();
|
281 |
+
}
|
282 |
+
};
|
283 |
+
|
284 |
+
$.fn.multipleSelect = function() {
|
285 |
+
var option = arguments[0],
|
286 |
+
args = arguments,
|
287 |
+
|
288 |
+
value,
|
289 |
+
allowedMethods = ['getSelects', 'setSelects', 'enable', 'disable', 'checkAll', 'uncheckAll', 'refresh'];
|
290 |
+
|
291 |
+
this.each(function() {
|
292 |
+
var $this = $(this),
|
293 |
+
data = $this.data('multipleSelect'),
|
294 |
+
options = $.extend({}, $.fn.multipleSelect.defaults, typeof option === 'object' && option);
|
295 |
+
|
296 |
+
if (!data) {
|
297 |
+
data = new MultipleSelect($this, options);
|
298 |
+
$this.data('multipleSelect', data);
|
299 |
+
}
|
300 |
+
|
301 |
+
if (typeof option === 'string') {
|
302 |
+
if ($.inArray(option, allowedMethods) < 0) {
|
303 |
+
throw "Unknown method: " + option;
|
304 |
+
}
|
305 |
+
value = data[option](args[1]);
|
306 |
+
} else {
|
307 |
+
data.init();
|
308 |
+
}
|
309 |
+
});
|
310 |
+
|
311 |
+
return value ? value : this;
|
312 |
+
};
|
313 |
+
|
314 |
+
$.fn.multipleSelect.defaults = {
|
315 |
+
isopen: false,
|
316 |
+
placeholder: '',
|
317 |
+
selectAll: true,
|
318 |
+
selectAllText: 'Select all',
|
319 |
+
multiple: false,
|
320 |
+
multipleWidth: 80,
|
321 |
+
filter: false,
|
322 |
+
width: undefined,
|
323 |
+
maxHeight: 250,
|
324 |
+
|
325 |
+
onOpen: function() {return false;},
|
326 |
+
onClose: function() {return false;},
|
327 |
+
onCheckAll: function() {return false;},
|
328 |
+
onUncheckAll: function() {return false;},
|
329 |
+
onOptgroupClick: function() {return false;},
|
330 |
+
onClick: function() {return false;}
|
331 |
+
};
|
332 |
+
})(jQuery);
|
js/ure-user-profile-other-roles.js
ADDED
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* User Role Editor - assign to the user other roles
|
2 |
+
* Author: Vladimir Garagulya
|
3 |
+
* email: support@role-editor.com
|
4 |
+
*/
|
5 |
+
|
6 |
+
jQuery(document).ready(function(){
|
7 |
+
if (jQuery('#ure_select_other_roles').length==0) {
|
8 |
+
return;
|
9 |
+
}
|
10 |
+
jQuery('#ure_select_other_roles').multipleSelect({
|
11 |
+
filter: true,
|
12 |
+
multiple: true,
|
13 |
+
selectAll: false,
|
14 |
+
multipleWidth: 600,
|
15 |
+
maxHeight: 300,
|
16 |
+
placeholder: ure_data_user_profile_other_roles.select_roles,
|
17 |
+
onClick: function(view) {
|
18 |
+
ure_update_linked_controls_other_roles();
|
19 |
+
}
|
20 |
+
});
|
21 |
+
|
22 |
+
var other_roles = jQuery('#ure_other_roles').val();
|
23 |
+
var selected_roles = other_roles.split(',');
|
24 |
+
jQuery('#ure_select_other_roles').multipleSelect('setSelects', selected_roles);
|
25 |
+
|
26 |
+
});
|
27 |
+
|
28 |
+
|
29 |
+
function ure_update_linked_controls_other_roles() {
|
30 |
+
var data_value = jQuery('#ure_select_other_roles').multipleSelect('getSelects');
|
31 |
+
var to_save = '';
|
32 |
+
for (i=0; i<data_value.length; i++) {
|
33 |
+
if (to_save!=='') {
|
34 |
+
to_save = to_save + ', ';
|
35 |
+
}
|
36 |
+
to_save = to_save + data_value[i];
|
37 |
+
}
|
38 |
+
jQuery('#ure_other_roles').val(to_save);
|
39 |
+
|
40 |
+
var data_text = jQuery('#ure_select_other_roles').multipleSelect('getSelects', 'text');
|
41 |
+
var to_show = '';
|
42 |
+
for (i=0; i<data_text.length; i++) {
|
43 |
+
if (to_show!=='') {
|
44 |
+
to_show = to_show + ', ';
|
45 |
+
}
|
46 |
+
to_show = to_show + data_text[i];
|
47 |
+
}
|
48 |
+
jQuery('#ure_other_roles_list').html(to_show);
|
49 |
+
}
|
lang/ure-de_DE.mo
ADDED
Binary file
|
lang/ure-de_DE.po
ADDED
@@ -0,0 +1,1167 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: User Role Editor v. 3.7.5\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2015-02-23 11:48+0700\n"
|
6 |
+
"PO-Revision-Date: 2015-03-18 08:09+0700\n"
|
7 |
+
"Last-Translator: Vladimir Garagulya <support@role-editor.com>\n"
|
8 |
+
"Language-Team: Peter Becker-Heidmann <peter@becker-heidmann.de>\n"
|
9 |
+
"Language: de_DE\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
14 |
+
"X-Poedit-SourceCharset: utf-8\n"
|
15 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
16 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
|
17 |
+
"X-Poedit-Basepath: ../\n"
|
18 |
+
"X-Textdomain-Support: yes\n"
|
19 |
+
"X-Generator: Poedit 1.5.4\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
|
22 |
+
# @ ure
|
23 |
+
#: ../includes/settings-template.php:17
|
24 |
+
#, fuzzy
|
25 |
+
msgid "User Role Editor - Options"
|
26 |
+
msgstr "User Role Editor"
|
27 |
+
|
28 |
+
#: ../includes/settings-template.php:21
|
29 |
+
#: ../includes/class-user-role-editor.php:591
|
30 |
+
msgid "General"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: ../includes/settings-template.php:26
|
34 |
+
#: ../includes/class-user-role-editor.php:597
|
35 |
+
msgid "Additional Modules"
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
+
# @ ure
|
39 |
+
#: ../includes/settings-template.php:30
|
40 |
+
#: ../includes/class-user-role-editor.php:603
|
41 |
+
#, fuzzy
|
42 |
+
msgid "Default Roles"
|
43 |
+
msgstr "Löschen der Rolle"
|
44 |
+
|
45 |
+
#: ../includes/settings-template.php:34
|
46 |
+
#: ../includes/class-user-role-editor.php:609
|
47 |
+
msgid "Multisite"
|
48 |
+
msgstr ""
|
49 |
+
|
50 |
+
#: ../includes/settings-template.php:39
|
51 |
+
msgid "About"
|
52 |
+
msgstr ""
|
53 |
+
|
54 |
+
#: ../includes/settings-template.php:53
|
55 |
+
#: ../includes/class-ure-screen-help.php:15
|
56 |
+
msgid "Show Administrator role at User Role Editor"
|
57 |
+
msgstr ""
|
58 |
+
|
59 |
+
# @ ure
|
60 |
+
#: ../includes/settings-template.php:61
|
61 |
+
#: ../includes/class-ure-screen-help.php:18
|
62 |
+
#, fuzzy
|
63 |
+
msgid "Show capabilities in the human readable form"
|
64 |
+
msgstr "Anzeige der Rechte in allgemeinverständlicher Form"
|
65 |
+
|
66 |
+
#: ../includes/settings-template.php:69 ../includes/ure-role-edit.php:40
|
67 |
+
#: ../includes/ure-user-edit.php:64 ../includes/class-ure-screen-help.php:21
|
68 |
+
msgid "Show deprecated capabilities"
|
69 |
+
msgstr "Zeige herabgesetzte Rechte"
|
70 |
+
|
71 |
+
#: ../includes/settings-template.php:77
|
72 |
+
#: ../includes/class-ure-screen-help.php:25
|
73 |
+
#, fuzzy
|
74 |
+
msgid "Edit user capabilities"
|
75 |
+
msgstr "Rechte:"
|
76 |
+
|
77 |
+
#: ../includes/settings-template.php:90 ../includes/settings-template.php:126
|
78 |
+
#: ../includes/settings-template.php:158 ../includes/settings-template.php:190
|
79 |
+
msgid "Save"
|
80 |
+
msgstr ""
|
81 |
+
|
82 |
+
#: ../includes/settings-template.php:111
|
83 |
+
#: ../includes/class-ure-screen-help.php:45
|
84 |
+
msgid "Count users without role"
|
85 |
+
msgstr ""
|
86 |
+
|
87 |
+
#: ../includes/settings-template.php:138
|
88 |
+
msgid "Primary default role: "
|
89 |
+
msgstr ""
|
90 |
+
|
91 |
+
# @ ure
|
92 |
+
#: ../includes/settings-template.php:145
|
93 |
+
#, fuzzy
|
94 |
+
msgid "Other default roles for new registered user: "
|
95 |
+
msgstr "Standard-Rolle für neuen Benutzer"
|
96 |
+
|
97 |
+
#: ../includes/settings-template.php:151
|
98 |
+
msgid ""
|
99 |
+
"Note for multisite environment: take into account that other default roles "
|
100 |
+
"should exist at the site, in order to be assigned to the new registered "
|
101 |
+
"users."
|
102 |
+
msgstr ""
|
103 |
+
|
104 |
+
#: ../includes/settings-template.php:177
|
105 |
+
msgid "Allow non super administrators to create, edit, and delete users"
|
106 |
+
msgstr ""
|
107 |
+
|
108 |
+
#: ../includes/class-user-role-editor.php:234
|
109 |
+
msgid "Change role for users without role"
|
110 |
+
msgstr ""
|
111 |
+
|
112 |
+
#: ../includes/class-user-role-editor.php:235
|
113 |
+
msgid "No rights"
|
114 |
+
msgstr ""
|
115 |
+
|
116 |
+
#: ../includes/class-user-role-editor.php:236
|
117 |
+
msgid "Provide new role"
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: ../includes/class-user-role-editor.php:320
|
121 |
+
#: ../includes/class-user-role-editor.php:322
|
122 |
+
#, fuzzy
|
123 |
+
msgid "You do not have permission to edit this user."
|
124 |
+
msgstr "Fehler: Sie haben nicht die Erlaubnis, dieses Recht zu löschen: %s!"
|
125 |
+
|
126 |
+
#: ../includes/class-user-role-editor.php:460
|
127 |
+
msgid "Capabilities"
|
128 |
+
msgstr "Rechte"
|
129 |
+
|
130 |
+
# @ ure
|
131 |
+
#: ../includes/class-user-role-editor.php:558
|
132 |
+
msgid "Settings"
|
133 |
+
msgstr "Einstellungen"
|
134 |
+
|
135 |
+
# @ ure
|
136 |
+
#: ../includes/class-user-role-editor.php:569
|
137 |
+
#: ../includes/class-ure-lib.php:2540
|
138 |
+
msgid "Changelog"
|
139 |
+
msgstr "Änderungen"
|
140 |
+
|
141 |
+
# @ ure
|
142 |
+
#: ../includes/class-user-role-editor.php:619
|
143 |
+
#: ../includes/class-user-role-editor.php:648
|
144 |
+
#: ../includes/class-user-role-editor.php:1030
|
145 |
+
#: ../includes/class-ure-lib.php:337
|
146 |
+
msgid "User Role Editor"
|
147 |
+
msgstr "User Role Editor"
|
148 |
+
|
149 |
+
# @ ure
|
150 |
+
#: ../includes/class-user-role-editor.php:708
|
151 |
+
#: ../includes/class-user-role-editor.php:726
|
152 |
+
#: ../includes/class-user-role-editor.php:770
|
153 |
+
#, fuzzy
|
154 |
+
msgid "User Role Editor options are updated"
|
155 |
+
msgstr "User Role Editor"
|
156 |
+
|
157 |
+
# @ ure
|
158 |
+
#: ../includes/class-user-role-editor.php:754
|
159 |
+
#, fuzzy
|
160 |
+
msgid "Default Roles are updated"
|
161 |
+
msgstr "Standard-Rolle für neuen Benutzer"
|
162 |
+
|
163 |
+
#: ../includes/class-user-role-editor.php:779
|
164 |
+
msgid ""
|
165 |
+
"You do not have sufficient permissions to manage options for User Role "
|
166 |
+
"Editor."
|
167 |
+
msgstr ""
|
168 |
+
|
169 |
+
#: ../includes/class-user-role-editor.php:851
|
170 |
+
#: ../includes/class-ure-lib.php:1698 ../includes/class-ure-lib.php:1951
|
171 |
+
#: ../includes/class-ure-lib.php:2067 ../includes/class-ure-lib.php:2115
|
172 |
+
#: ../includes/class-ure-lib.php:2361 ../includes/class-ure-lib.php:2406
|
173 |
+
msgid "Insufficient permissions to work with User Role Editor"
|
174 |
+
msgstr ""
|
175 |
+
|
176 |
+
# @ ure
|
177 |
+
#: ../includes/class-user-role-editor.php:977
|
178 |
+
msgid "Select All"
|
179 |
+
msgstr "Wähle alle aus"
|
180 |
+
|
181 |
+
#: ../includes/class-user-role-editor.php:978
|
182 |
+
msgid "Unselect All"
|
183 |
+
msgstr "Wähle alle ab"
|
184 |
+
|
185 |
+
#: ../includes/class-user-role-editor.php:979
|
186 |
+
msgid "Reverse"
|
187 |
+
msgstr "Rückgängig"
|
188 |
+
|
189 |
+
# @ ure
|
190 |
+
#: ../includes/class-user-role-editor.php:980
|
191 |
+
msgid "Update"
|
192 |
+
msgstr "Aktualisieren"
|
193 |
+
|
194 |
+
# @ ure
|
195 |
+
#: ../includes/class-user-role-editor.php:981
|
196 |
+
#, fuzzy
|
197 |
+
msgid "Please confirm permissions update"
|
198 |
+
msgstr "Bestätigen Sie bitte, um fortzufahren"
|
199 |
+
|
200 |
+
# @ ure
|
201 |
+
#: ../includes/class-user-role-editor.php:982
|
202 |
+
msgid "Add New Role"
|
203 |
+
msgstr "Neue Rolle hinzufügen"
|
204 |
+
|
205 |
+
# @ ure
|
206 |
+
#: ../includes/class-user-role-editor.php:983
|
207 |
+
#: ../includes/class-user-role-editor.php:988
|
208 |
+
#, fuzzy
|
209 |
+
msgid "Rename Role"
|
210 |
+
msgstr "Löschen der Rolle"
|
211 |
+
|
212 |
+
# @ ure
|
213 |
+
#: ../includes/class-user-role-editor.php:984
|
214 |
+
#, fuzzy
|
215 |
+
msgid " Role name (ID) can not be empty!"
|
216 |
+
msgstr "Name darf nicht leer sein!"
|
217 |
+
|
218 |
+
# @ ure
|
219 |
+
#: ../includes/class-user-role-editor.php:985
|
220 |
+
#, fuzzy
|
221 |
+
msgid ""
|
222 |
+
" Role name (ID) must contain latin characters, digits, hyphens or underscore "
|
223 |
+
"only!"
|
224 |
+
msgstr "Fehler: Der Rollen-Name darf nur Buchstaben und Ziffern enthalten!"
|
225 |
+
|
226 |
+
#: ../includes/class-user-role-editor.php:986
|
227 |
+
msgid ""
|
228 |
+
" WordPress does not support numeric Role name (ID). Add latin characters to "
|
229 |
+
"it."
|
230 |
+
msgstr ""
|
231 |
+
|
232 |
+
# @ ure
|
233 |
+
#: ../includes/class-user-role-editor.php:987
|
234 |
+
#, fuzzy
|
235 |
+
msgid "Add Role"
|
236 |
+
msgstr "Neue Rolle hinzufügen"
|
237 |
+
|
238 |
+
# @ ure
|
239 |
+
#: ../includes/class-user-role-editor.php:989
|
240 |
+
msgid "Delete Role"
|
241 |
+
msgstr "Löschen der Rolle"
|
242 |
+
|
243 |
+
# @ ure
|
244 |
+
#: ../includes/class-user-role-editor.php:990
|
245 |
+
msgid "Cancel"
|
246 |
+
msgstr "Abbrechen"
|
247 |
+
|
248 |
+
# @ ure
|
249 |
+
#: ../includes/class-user-role-editor.php:991
|
250 |
+
#, fuzzy
|
251 |
+
msgid "Add Capability"
|
252 |
+
msgstr "Füge neues Recht hinzu"
|
253 |
+
|
254 |
+
#: ../includes/class-user-role-editor.php:992
|
255 |
+
#: ../includes/class-user-role-editor.php:1001
|
256 |
+
#, fuzzy
|
257 |
+
msgid "Delete Capability"
|
258 |
+
msgstr "Entferne Recht"
|
259 |
+
|
260 |
+
# @ ure
|
261 |
+
#: ../includes/class-user-role-editor.php:993
|
262 |
+
msgid "Reset"
|
263 |
+
msgstr "Zurücksetzen"
|
264 |
+
|
265 |
+
#: ../includes/class-user-role-editor.php:994
|
266 |
+
msgid "DANGER! Resetting will restore default settings from WordPress Core."
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: ../includes/class-user-role-editor.php:995
|
270 |
+
msgid ""
|
271 |
+
"If any plugins have changed capabilities in any way upon installation (such "
|
272 |
+
"as S2Member, WooCommerce, and many more), those capabilities will be DELETED!"
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: ../includes/class-user-role-editor.php:996
|
276 |
+
msgid ""
|
277 |
+
"For more information on how to undo changes and restore plugin capabilities "
|
278 |
+
"go to"
|
279 |
+
msgstr ""
|
280 |
+
|
281 |
+
# @ ure
|
282 |
+
#: ../includes/class-user-role-editor.php:998
|
283 |
+
#, fuzzy
|
284 |
+
msgid "Continue?"
|
285 |
+
msgstr "Mitarbeiter"
|
286 |
+
|
287 |
+
# @ ure
|
288 |
+
#: ../includes/class-user-role-editor.php:999
|
289 |
+
#, fuzzy
|
290 |
+
msgid "Default Role"
|
291 |
+
msgstr "Löschen der Rolle"
|
292 |
+
|
293 |
+
# @ ure
|
294 |
+
#: ../includes/class-user-role-editor.php:1000
|
295 |
+
#, fuzzy
|
296 |
+
msgid "Set New Default Role"
|
297 |
+
msgstr "Als Standard-Benutzer-Rolle setzen"
|
298 |
+
|
299 |
+
#: ../includes/class-user-role-editor.php:1002
|
300 |
+
msgid ""
|
301 |
+
"Warning! Be careful - removing critical capability could crash some plugin "
|
302 |
+
"or other custom code"
|
303 |
+
msgstr ""
|
304 |
+
"Achtung! Seien Sie vorsichtig - das Löschen kritischer Rechte könnte Plugin- "
|
305 |
+
"oder angepassten Code zerstören."
|
306 |
+
|
307 |
+
# @ ure
|
308 |
+
#: ../includes/class-user-role-editor.php:1003
|
309 |
+
#, fuzzy
|
310 |
+
msgid " Capability name (ID) can not be empty!"
|
311 |
+
msgstr "Name darf nicht leer sein!"
|
312 |
+
|
313 |
+
# @ ure
|
314 |
+
#: ../includes/class-user-role-editor.php:1004
|
315 |
+
#, fuzzy
|
316 |
+
msgid ""
|
317 |
+
" Capability name (ID) must contain latin characters, digits, hyphens or "
|
318 |
+
"underscore only!"
|
319 |
+
msgstr "Fehler: Der Name des Rechts darf nur Buchstaben und Ziffern enthalten!"
|
320 |
+
|
321 |
+
# @ ure
|
322 |
+
#: ../includes/class-user-role-editor.php:1033
|
323 |
+
#: ../includes/class-user-role-editor.php:1066
|
324 |
+
#, fuzzy
|
325 |
+
msgid "Other Roles"
|
326 |
+
msgstr "Löschen der Rolle"
|
327 |
+
|
328 |
+
# @ ure
|
329 |
+
#: ../includes/class-user-role-editor.php:1047
|
330 |
+
#, fuzzy
|
331 |
+
msgid "Edit"
|
332 |
+
msgstr "Redakteur"
|
333 |
+
|
334 |
+
# @ ure
|
335 |
+
#: ../includes/ure-role-edit.php:17
|
336 |
+
#, fuzzy
|
337 |
+
msgid "Select Role and change its capabilities:"
|
338 |
+
msgstr "Eine Rolle auswählen und ihre Rechte ändern"
|
339 |
+
|
340 |
+
# @ ure
|
341 |
+
#: ../includes/ure-role-edit.php:30 ../includes/ure-user-edit.php:54
|
342 |
+
msgid "Show capabilities in human readable form"
|
343 |
+
msgstr "Anzeige der Rechte in allgemeinverständlicher Form"
|
344 |
+
|
345 |
+
#: ../includes/ure-role-edit.php:44
|
346 |
+
msgid "If checked, then apply action to ALL sites of this Network"
|
347 |
+
msgstr "Fall aktiviert, wende die Aktion auf ALLE Webpräsenzen"
|
348 |
+
|
349 |
+
#: ../includes/ure-role-edit.php:56
|
350 |
+
msgid "Apply to All Sites"
|
351 |
+
msgstr "Wende auf alle Webpräsenzen an"
|
352 |
+
|
353 |
+
#: ../includes/ure-role-edit.php:63 ../includes/ure-user-edit.php:110
|
354 |
+
msgid "Core capabilities:"
|
355 |
+
msgstr "Rechte WordPress:"
|
356 |
+
|
357 |
+
#: ../includes/ure-role-edit.php:65 ../includes/ure-user-edit.php:112
|
358 |
+
msgid "Quick filter:"
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: ../includes/ure-role-edit.php:83 ../includes/ure-user-edit.php:131
|
362 |
+
#, fuzzy
|
363 |
+
msgid "Custom capabilities:"
|
364 |
+
msgstr "Rechte:"
|
365 |
+
|
366 |
+
#: ../includes/class-ure-lib.php:245
|
367 |
+
msgid "Error: wrong request"
|
368 |
+
msgstr ""
|
369 |
+
|
370 |
+
#: ../includes/class-ure-lib.php:278 ../includes/class-ure-lib.php:289
|
371 |
+
msgid "Role name (ID): "
|
372 |
+
msgstr ""
|
373 |
+
|
374 |
+
#: ../includes/class-ure-lib.php:280 ../includes/class-ure-lib.php:291
|
375 |
+
msgid "Display Role Name: "
|
376 |
+
msgstr ""
|
377 |
+
|
378 |
+
#: ../includes/class-ure-lib.php:282
|
379 |
+
msgid "Make copy of: "
|
380 |
+
msgstr "Erstelle Kopie von:"
|
381 |
+
|
382 |
+
# @ ure
|
383 |
+
#: ../includes/class-ure-lib.php:298
|
384 |
+
msgid "Select Role:"
|
385 |
+
msgstr "Eine Rolle auswählen:"
|
386 |
+
|
387 |
+
# @ ure
|
388 |
+
#: ../includes/class-ure-lib.php:313
|
389 |
+
#, fuzzy
|
390 |
+
msgid "Delete:"
|
391 |
+
msgstr "Löschen"
|
392 |
+
|
393 |
+
#: ../includes/class-ure-lib.php:320
|
394 |
+
msgid "Capability name (ID): "
|
395 |
+
msgstr ""
|
396 |
+
|
397 |
+
#: ../includes/class-ure-lib.php:434
|
398 |
+
msgid "Error: "
|
399 |
+
msgstr "Fehler:"
|
400 |
+
|
401 |
+
# @ ure
|
402 |
+
#: ../includes/class-ure-lib.php:434
|
403 |
+
msgid "Role"
|
404 |
+
msgstr "Rolle"
|
405 |
+
|
406 |
+
#: ../includes/class-ure-lib.php:435
|
407 |
+
msgid "does not exist"
|
408 |
+
msgstr "existiert nicht"
|
409 |
+
|
410 |
+
# @ ure
|
411 |
+
#: ../includes/class-ure-lib.php:478
|
412 |
+
#, fuzzy
|
413 |
+
msgid "Role is updated successfully"
|
414 |
+
msgstr "wurde erfolgreich aktualisiert"
|
415 |
+
|
416 |
+
#: ../includes/class-ure-lib.php:480
|
417 |
+
msgid "Roles are updated for all network"
|
418 |
+
msgstr ""
|
419 |
+
|
420 |
+
# @ ure
|
421 |
+
#: ../includes/class-ure-lib.php:486
|
422 |
+
#, fuzzy
|
423 |
+
msgid "Error occured during role(s) update"
|
424 |
+
msgstr "Ein Fehler ist während des Löschvorgangs der Rolle aufgetreten"
|
425 |
+
|
426 |
+
# @ ure
|
427 |
+
#: ../includes/class-ure-lib.php:493
|
428 |
+
#, fuzzy
|
429 |
+
msgid "User capabilities are updated successfully"
|
430 |
+
msgstr "Rechte wurden erfolgreich aktualisiert"
|
431 |
+
|
432 |
+
# @ ure
|
433 |
+
#: ../includes/class-ure-lib.php:498
|
434 |
+
#, fuzzy
|
435 |
+
msgid "Error occured during user update"
|
436 |
+
msgstr "Ein Fehler ist während des Löschvorgangs der Rolle aufgetreten"
|
437 |
+
|
438 |
+
# @ ure
|
439 |
+
#: ../includes/class-ure-lib.php:556
|
440 |
+
#, fuzzy
|
441 |
+
msgid "User Roles are restored to WordPress default values. "
|
442 |
+
msgstr "Rollenbefugnisse werden von der Sicherheitskopie wiederhergestellt."
|
443 |
+
|
444 |
+
#: ../includes/class-ure-lib.php:1444
|
445 |
+
msgid "read about"
|
446 |
+
msgstr ""
|
447 |
+
|
448 |
+
#: ../includes/class-ure-lib.php:1445
|
449 |
+
#, fuzzy
|
450 |
+
msgid "user capability"
|
451 |
+
msgstr "Entferne Benutzerrecht"
|
452 |
+
|
453 |
+
#: ../includes/class-ure-lib.php:1446
|
454 |
+
msgid "Help"
|
455 |
+
msgstr "Hilfe"
|
456 |
+
|
457 |
+
# @ ure
|
458 |
+
#: ../includes/class-ure-lib.php:1914
|
459 |
+
msgid "Error is occur. Please check the log file."
|
460 |
+
msgstr "Ein Fehler ist aufgetreten. Bitte überprüfen Sie die Log-Datei."
|
461 |
+
|
462 |
+
# @ ure
|
463 |
+
#: ../includes/class-ure-lib.php:1960 ../includes/class-ure-lib.php:2027
|
464 |
+
#, fuzzy
|
465 |
+
msgid ""
|
466 |
+
"Error: Role ID must contain latin characters, digits, hyphens or underscore "
|
467 |
+
"only!"
|
468 |
+
msgstr "Fehler: Der Rollen-Name darf nur Buchstaben und Ziffern enthalten!"
|
469 |
+
|
470 |
+
#: ../includes/class-ure-lib.php:1964 ../includes/class-ure-lib.php:2031
|
471 |
+
msgid ""
|
472 |
+
"Error: WordPress does not support numeric Role name (ID). Add latin "
|
473 |
+
"characters to it."
|
474 |
+
msgstr ""
|
475 |
+
|
476 |
+
# @ ure
|
477 |
+
#: ../includes/class-ure-lib.php:1979
|
478 |
+
#, php-format
|
479 |
+
msgid "Role %s exists already"
|
480 |
+
msgstr "Rolle %s existiert bereits"
|
481 |
+
|
482 |
+
# @ ure
|
483 |
+
#: ../includes/class-ure-lib.php:1994
|
484 |
+
msgid "Error is encountered during new role create operation"
|
485 |
+
msgstr "Ein Fehler ist beim Erstellen der neuen Rolle aufgetreten"
|
486 |
+
|
487 |
+
# @ ure
|
488 |
+
#: ../includes/class-ure-lib.php:1996
|
489 |
+
#, php-format
|
490 |
+
msgid "Role %s is created successfully"
|
491 |
+
msgstr "Rolle %s wurde erfolgreich erstellt"
|
492 |
+
|
493 |
+
#: ../includes/class-ure-lib.php:2020
|
494 |
+
msgid "Error: Role ID is empty!"
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: ../includes/class-ure-lib.php:2038
|
498 |
+
msgid "Error: Empty role display name is not allowed."
|
499 |
+
msgstr ""
|
500 |
+
|
501 |
+
#: ../includes/class-ure-lib.php:2045
|
502 |
+
#, fuzzy, php-format
|
503 |
+
msgid "Role %s does not exists"
|
504 |
+
msgstr "existiert nicht"
|
505 |
+
|
506 |
+
# @ ure
|
507 |
+
#: ../includes/class-ure-lib.php:2053
|
508 |
+
#, fuzzy, php-format
|
509 |
+
msgid "Role %s is renamed to %s successfully"
|
510 |
+
msgstr "Rolle %s wurde erfolgreich erstellt"
|
511 |
+
|
512 |
+
# @ ure
|
513 |
+
#: ../includes/class-ure-lib.php:2126
|
514 |
+
msgid "Error encountered during role delete operation"
|
515 |
+
msgstr "Ein Fehler ist während des Löschvorgangs der Rolle aufgetreten"
|
516 |
+
|
517 |
+
# @ ure
|
518 |
+
#: ../includes/class-ure-lib.php:2128
|
519 |
+
#, fuzzy
|
520 |
+
msgid "Unused roles are deleted successfully"
|
521 |
+
msgstr "Rolle %s wurde erfolgreich gelöscht"
|
522 |
+
|
523 |
+
# @ ure
|
524 |
+
#: ../includes/class-ure-lib.php:2130
|
525 |
+
#, php-format
|
526 |
+
msgid "Role %s is deleted successfully"
|
527 |
+
msgstr "Rolle %s wurde erfolgreich gelöscht"
|
528 |
+
|
529 |
+
# @ ure
|
530 |
+
#: ../includes/class-ure-lib.php:2155
|
531 |
+
msgid "Error encountered during default role change operation"
|
532 |
+
msgstr "Ein Fehler ist während Änderung der Standard-Rolle aufgetreten"
|
533 |
+
|
534 |
+
# @ ure
|
535 |
+
#: ../includes/class-ure-lib.php:2161
|
536 |
+
#, php-format
|
537 |
+
msgid "Default role for new users is set to %s successfully"
|
538 |
+
msgstr "Standard-Rolle für neue Benutzer erfolgreich auf %s gesetzt"
|
539 |
+
|
540 |
+
# @ ure
|
541 |
+
#: ../includes/class-ure-lib.php:2180
|
542 |
+
msgid "Editor"
|
543 |
+
msgstr "Redakteur"
|
544 |
+
|
545 |
+
# @ ure
|
546 |
+
#: ../includes/class-ure-lib.php:2181
|
547 |
+
msgid "Author"
|
548 |
+
msgstr "Autor"
|
549 |
+
|
550 |
+
# @ ure
|
551 |
+
#: ../includes/class-ure-lib.php:2182
|
552 |
+
msgid "Contributor"
|
553 |
+
msgstr "Mitarbeiter"
|
554 |
+
|
555 |
+
# @ ure
|
556 |
+
#: ../includes/class-ure-lib.php:2183
|
557 |
+
msgid "Subscriber"
|
558 |
+
msgstr "Abonnent"
|
559 |
+
|
560 |
+
# @ ure
|
561 |
+
#: ../includes/class-ure-lib.php:2185
|
562 |
+
msgid "Switch themes"
|
563 |
+
msgstr "Design auswählen"
|
564 |
+
|
565 |
+
# @ ure
|
566 |
+
#: ../includes/class-ure-lib.php:2186
|
567 |
+
msgid "Edit themes"
|
568 |
+
msgstr "Design bearbeiten"
|
569 |
+
|
570 |
+
# @ ure
|
571 |
+
#: ../includes/class-ure-lib.php:2187
|
572 |
+
msgid "Activate plugins"
|
573 |
+
msgstr "Plugins aktivieren"
|
574 |
+
|
575 |
+
# @ ure
|
576 |
+
#: ../includes/class-ure-lib.php:2188
|
577 |
+
msgid "Edit plugins"
|
578 |
+
msgstr "Plugins bearbeiten"
|
579 |
+
|
580 |
+
# @ ure
|
581 |
+
#: ../includes/class-ure-lib.php:2189
|
582 |
+
msgid "Edit users"
|
583 |
+
msgstr "Benutzer bearbeiten"
|
584 |
+
|
585 |
+
# @ ure
|
586 |
+
#: ../includes/class-ure-lib.php:2190
|
587 |
+
msgid "Edit files"
|
588 |
+
msgstr "Dateien bearbeiten"
|
589 |
+
|
590 |
+
# @ ure
|
591 |
+
#: ../includes/class-ure-lib.php:2191
|
592 |
+
msgid "Manage options"
|
593 |
+
msgstr "Eigenschaften verwalten"
|
594 |
+
|
595 |
+
# @ ure
|
596 |
+
#: ../includes/class-ure-lib.php:2192
|
597 |
+
msgid "Moderate comments"
|
598 |
+
msgstr "Kommentare moderieren"
|
599 |
+
|
600 |
+
# @ ure
|
601 |
+
#: ../includes/class-ure-lib.php:2193
|
602 |
+
msgid "Manage categories"
|
603 |
+
msgstr "Kategorien verwalten"
|
604 |
+
|
605 |
+
# @ ure
|
606 |
+
#: ../includes/class-ure-lib.php:2194
|
607 |
+
msgid "Manage links"
|
608 |
+
msgstr "Links verwalten"
|
609 |
+
|
610 |
+
# @ ure
|
611 |
+
#: ../includes/class-ure-lib.php:2195
|
612 |
+
msgid "Upload files"
|
613 |
+
msgstr "Dateien hochladen"
|
614 |
+
|
615 |
+
# @ ure
|
616 |
+
#: ../includes/class-ure-lib.php:2196
|
617 |
+
msgid "Import"
|
618 |
+
msgstr "Import"
|
619 |
+
|
620 |
+
# @ ure
|
621 |
+
#: ../includes/class-ure-lib.php:2197
|
622 |
+
msgid "Unfiltered html"
|
623 |
+
msgstr "Ungefiltertes Html"
|
624 |
+
|
625 |
+
# @ ure
|
626 |
+
#: ../includes/class-ure-lib.php:2198
|
627 |
+
msgid "Edit posts"
|
628 |
+
msgstr "Artikel verwalten"
|
629 |
+
|
630 |
+
# @ ure
|
631 |
+
#: ../includes/class-ure-lib.php:2199
|
632 |
+
msgid "Edit others posts"
|
633 |
+
msgstr "Artikel anderer Benutzer verwalten"
|
634 |
+
|
635 |
+
# @ ure
|
636 |
+
#: ../includes/class-ure-lib.php:2200
|
637 |
+
msgid "Edit published posts"
|
638 |
+
msgstr "Veröffentlichte Artikel bearbeiten"
|
639 |
+
|
640 |
+
# @ ure
|
641 |
+
#: ../includes/class-ure-lib.php:2201
|
642 |
+
msgid "Publish posts"
|
643 |
+
msgstr "Artikel veröffentlichen"
|
644 |
+
|
645 |
+
# @ ure
|
646 |
+
#: ../includes/class-ure-lib.php:2202
|
647 |
+
msgid "Edit pages"
|
648 |
+
msgstr "Seiten bearbeiten"
|
649 |
+
|
650 |
+
# @ ure
|
651 |
+
#: ../includes/class-ure-lib.php:2203
|
652 |
+
msgid "Read"
|
653 |
+
msgstr "Lesen"
|
654 |
+
|
655 |
+
# @ ure
|
656 |
+
#: ../includes/class-ure-lib.php:2204
|
657 |
+
msgid "Level 10"
|
658 |
+
msgstr ""
|
659 |
+
|
660 |
+
# @ ure
|
661 |
+
#: ../includes/class-ure-lib.php:2205
|
662 |
+
msgid "Level 9"
|
663 |
+
msgstr ""
|
664 |
+
|
665 |
+
# @ ure
|
666 |
+
#: ../includes/class-ure-lib.php:2206
|
667 |
+
msgid "Level 8"
|
668 |
+
msgstr ""
|
669 |
+
|
670 |
+
# @ ure
|
671 |
+
#: ../includes/class-ure-lib.php:2207
|
672 |
+
msgid "Level 7"
|
673 |
+
msgstr ""
|
674 |
+
|
675 |
+
# @ ure
|
676 |
+
#: ../includes/class-ure-lib.php:2208
|
677 |
+
msgid "Level 6"
|
678 |
+
msgstr ""
|
679 |
+
|
680 |
+
# @ ure
|
681 |
+
#: ../includes/class-ure-lib.php:2209
|
682 |
+
msgid "Level 5"
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
# @ ure
|
686 |
+
#: ../includes/class-ure-lib.php:2210
|
687 |
+
msgid "Level 4"
|
688 |
+
msgstr ""
|
689 |
+
|
690 |
+
# @ ure
|
691 |
+
#: ../includes/class-ure-lib.php:2211
|
692 |
+
msgid "Level 3"
|
693 |
+
msgstr ""
|
694 |
+
|
695 |
+
# @ ure
|
696 |
+
#: ../includes/class-ure-lib.php:2212
|
697 |
+
msgid "Level 2"
|
698 |
+
msgstr ""
|
699 |
+
|
700 |
+
# @ ure
|
701 |
+
#: ../includes/class-ure-lib.php:2213
|
702 |
+
msgid "Level 1"
|
703 |
+
msgstr ""
|
704 |
+
|
705 |
+
# @ ure
|
706 |
+
#: ../includes/class-ure-lib.php:2214
|
707 |
+
msgid "Level 0"
|
708 |
+
msgstr ""
|
709 |
+
|
710 |
+
# @ ure
|
711 |
+
#: ../includes/class-ure-lib.php:2215
|
712 |
+
msgid "Edit others pages"
|
713 |
+
msgstr "Seiten anderer Benutzer bearbeiten"
|
714 |
+
|
715 |
+
# @ ure
|
716 |
+
#: ../includes/class-ure-lib.php:2216
|
717 |
+
msgid "Edit published pages"
|
718 |
+
msgstr "Veröffentlichte Seiten bearbeiten"
|
719 |
+
|
720 |
+
# @ ure
|
721 |
+
#: ../includes/class-ure-lib.php:2217
|
722 |
+
msgid "Publish pages"
|
723 |
+
msgstr "Seiten veröffentlichen"
|
724 |
+
|
725 |
+
# @ ure
|
726 |
+
#: ../includes/class-ure-lib.php:2218
|
727 |
+
msgid "Delete pages"
|
728 |
+
msgstr "Seiten löschen"
|
729 |
+
|
730 |
+
# @ ure
|
731 |
+
#: ../includes/class-ure-lib.php:2219
|
732 |
+
msgid "Delete others pages"
|
733 |
+
msgstr "Seiten anderer Benutzer löschen"
|
734 |
+
|
735 |
+
# @ ure
|
736 |
+
#: ../includes/class-ure-lib.php:2220
|
737 |
+
msgid "Delete published pages"
|
738 |
+
msgstr "Veröffentlichte Seiten löschen"
|
739 |
+
|
740 |
+
# @ ure
|
741 |
+
#: ../includes/class-ure-lib.php:2221
|
742 |
+
msgid "Delete posts"
|
743 |
+
msgstr "Artikel löschen"
|
744 |
+
|
745 |
+
# @ ure
|
746 |
+
#: ../includes/class-ure-lib.php:2222
|
747 |
+
msgid "Delete others posts"
|
748 |
+
msgstr "Artikel anderer Benutzer löschen"
|
749 |
+
|
750 |
+
# @ ure
|
751 |
+
#: ../includes/class-ure-lib.php:2223
|
752 |
+
msgid "Delete published posts"
|
753 |
+
msgstr "Veröffentlichte Artikel löschen"
|
754 |
+
|
755 |
+
# @ ure
|
756 |
+
#: ../includes/class-ure-lib.php:2224
|
757 |
+
msgid "Delete private posts"
|
758 |
+
msgstr "Private Artikel löschen"
|
759 |
+
|
760 |
+
# @ ure
|
761 |
+
#: ../includes/class-ure-lib.php:2225
|
762 |
+
msgid "Edit private posts"
|
763 |
+
msgstr "Private Artikel bearbeiten"
|
764 |
+
|
765 |
+
# @ ure
|
766 |
+
#: ../includes/class-ure-lib.php:2226
|
767 |
+
msgid "Read private posts"
|
768 |
+
msgstr "Private Artikel lesen"
|
769 |
+
|
770 |
+
# @ ure
|
771 |
+
#: ../includes/class-ure-lib.php:2227
|
772 |
+
msgid "Delete private pages"
|
773 |
+
msgstr "Private Artikel löschen"
|
774 |
+
|
775 |
+
# @ ure
|
776 |
+
#: ../includes/class-ure-lib.php:2228
|
777 |
+
msgid "Edit private pages"
|
778 |
+
msgstr "Private Seiten bearbeiten"
|
779 |
+
|
780 |
+
# @ ure
|
781 |
+
#: ../includes/class-ure-lib.php:2229
|
782 |
+
msgid "Read private pages"
|
783 |
+
msgstr "Private Seiten lesen"
|
784 |
+
|
785 |
+
# @ ure
|
786 |
+
#: ../includes/class-ure-lib.php:2230
|
787 |
+
msgid "Delete users"
|
788 |
+
msgstr "Benutzer löschen"
|
789 |
+
|
790 |
+
# @ ure
|
791 |
+
#: ../includes/class-ure-lib.php:2231
|
792 |
+
msgid "Create users"
|
793 |
+
msgstr "Benutzer erstellen"
|
794 |
+
|
795 |
+
# @ ure
|
796 |
+
#: ../includes/class-ure-lib.php:2232
|
797 |
+
msgid "Unfiltered upload"
|
798 |
+
msgstr "Ungefiltertes Hochladen"
|
799 |
+
|
800 |
+
# @ ure
|
801 |
+
#: ../includes/class-ure-lib.php:2233
|
802 |
+
msgid "Edit dashboard"
|
803 |
+
msgstr "Dashboard bearbeiten"
|
804 |
+
|
805 |
+
# @ ure
|
806 |
+
#: ../includes/class-ure-lib.php:2234
|
807 |
+
msgid "Update plugins"
|
808 |
+
msgstr "Plugins aktualisieren"
|
809 |
+
|
810 |
+
# @ ure
|
811 |
+
#: ../includes/class-ure-lib.php:2235
|
812 |
+
msgid "Delete plugins"
|
813 |
+
msgstr "Plugins löschen"
|
814 |
+
|
815 |
+
# @ ure
|
816 |
+
#: ../includes/class-ure-lib.php:2236
|
817 |
+
msgid "Install plugins"
|
818 |
+
msgstr "Plugins installieren"
|
819 |
+
|
820 |
+
# @ ure
|
821 |
+
#: ../includes/class-ure-lib.php:2237
|
822 |
+
msgid "Update themes"
|
823 |
+
msgstr "Designs aktualisieren"
|
824 |
+
|
825 |
+
# @ ure
|
826 |
+
#: ../includes/class-ure-lib.php:2238
|
827 |
+
msgid "Install themes"
|
828 |
+
msgstr "Designs installieren"
|
829 |
+
|
830 |
+
# @ ure
|
831 |
+
#: ../includes/class-ure-lib.php:2239
|
832 |
+
msgid "Update core"
|
833 |
+
msgstr "Wordpress aktualisieren"
|
834 |
+
|
835 |
+
# @ ure
|
836 |
+
#: ../includes/class-ure-lib.php:2240
|
837 |
+
msgid "List users"
|
838 |
+
msgstr "Benutzer auflisten"
|
839 |
+
|
840 |
+
# @ ure
|
841 |
+
#: ../includes/class-ure-lib.php:2241
|
842 |
+
msgid "Remove users"
|
843 |
+
msgstr "Benutzer entfernen"
|
844 |
+
|
845 |
+
# @ ure
|
846 |
+
#: ../includes/class-ure-lib.php:2242
|
847 |
+
msgid "Add users"
|
848 |
+
msgstr "Benutzer hinzufügen"
|
849 |
+
|
850 |
+
# @ ure
|
851 |
+
#: ../includes/class-ure-lib.php:2243
|
852 |
+
msgid "Promote users"
|
853 |
+
msgstr "Benutzer vorschlagen"
|
854 |
+
|
855 |
+
# @ ure
|
856 |
+
#: ../includes/class-ure-lib.php:2244
|
857 |
+
msgid "Edit theme options"
|
858 |
+
msgstr "Design-Eigenschaften bearbeiten"
|
859 |
+
|
860 |
+
# @ ure
|
861 |
+
#: ../includes/class-ure-lib.php:2245
|
862 |
+
msgid "Delete themes"
|
863 |
+
msgstr "Designs löschen"
|
864 |
+
|
865 |
+
# @ ure
|
866 |
+
#: ../includes/class-ure-lib.php:2246
|
867 |
+
msgid "Export"
|
868 |
+
msgstr "Export"
|
869 |
+
|
870 |
+
# @ ure
|
871 |
+
#: ../includes/class-ure-lib.php:2369
|
872 |
+
msgid "Error: Capability name must contain latin characters and digits only!"
|
873 |
+
msgstr "Fehler: Der Name des Rechts darf nur Buchstaben und Ziffern enthalten!"
|
874 |
+
|
875 |
+
# @ ure
|
876 |
+
#: ../includes/class-ure-lib.php:2382
|
877 |
+
#, php-format
|
878 |
+
msgid "Capability %s is added successfully"
|
879 |
+
msgstr "Recht %s wurde erfolgreich hinzugefügt"
|
880 |
+
|
881 |
+
#: ../includes/class-ure-lib.php:2384
|
882 |
+
#, php-format
|
883 |
+
msgid "Capability %s exists already"
|
884 |
+
msgstr "Recht %s existiert bereits"
|
885 |
+
|
886 |
+
#: ../includes/class-ure-lib.php:2413
|
887 |
+
#, php-format
|
888 |
+
msgid "Error! You do not have permission to delete this capability: %s!"
|
889 |
+
msgstr "Fehler: Sie haben nicht die Erlaubnis, dieses Recht zu löschen: %s!"
|
890 |
+
|
891 |
+
# @ ure
|
892 |
+
#: ../includes/class-ure-lib.php:2432
|
893 |
+
#, php-format
|
894 |
+
msgid "Capability %s is removed successfully"
|
895 |
+
msgstr "Das Recht %s wurde erfogreich entfernt"
|
896 |
+
|
897 |
+
#: ../includes/class-ure-lib.php:2536
|
898 |
+
msgid "Version:"
|
899 |
+
msgstr ""
|
900 |
+
|
901 |
+
# @ ure
|
902 |
+
#: ../includes/class-ure-lib.php:2537
|
903 |
+
msgid "Author's website"
|
904 |
+
msgstr "Webseite des Autors"
|
905 |
+
|
906 |
+
# @ ure
|
907 |
+
#: ../includes/class-ure-lib.php:2538
|
908 |
+
msgid "Plugin webpage"
|
909 |
+
msgstr "Webseite des Plugins"
|
910 |
+
|
911 |
+
# @ ure
|
912 |
+
#: ../includes/class-ure-lib.php:2539
|
913 |
+
#, fuzzy
|
914 |
+
msgid "Plugin download"
|
915 |
+
msgstr "Webseite des Plugins"
|
916 |
+
|
917 |
+
# @ ure
|
918 |
+
#: ../includes/class-ure-lib.php:2541
|
919 |
+
msgid "FAQ"
|
920 |
+
msgstr "FAQ"
|
921 |
+
|
922 |
+
# @ ure
|
923 |
+
#: ../includes/class-ure-lib.php:2589
|
924 |
+
msgid "None"
|
925 |
+
msgstr "Nichts"
|
926 |
+
|
927 |
+
# @ ure
|
928 |
+
#: ../includes/class-ure-lib.php:2616
|
929 |
+
#, fuzzy
|
930 |
+
msgid "Delete All Unused Roles"
|
931 |
+
msgstr "Löschen der Benutzer-Rolle"
|
932 |
+
|
933 |
+
#: ../includes/class-ure-lib.php:2640
|
934 |
+
msgid "— No role for this site —"
|
935 |
+
msgstr ""
|
936 |
+
|
937 |
+
#: ../includes/ure-user-edit.php:32
|
938 |
+
msgid "Network Super Admin"
|
939 |
+
msgstr ""
|
940 |
+
|
941 |
+
#: ../includes/ure-user-edit.php:35
|
942 |
+
msgid "Change capabilities for user"
|
943 |
+
msgstr "Ändere Rechte für Benutzer"
|
944 |
+
|
945 |
+
#: ../includes/ure-user-edit.php:72
|
946 |
+
msgid "Primary Role:"
|
947 |
+
msgstr ""
|
948 |
+
|
949 |
+
#: ../includes/ure-user-edit.php:82
|
950 |
+
msgid "bbPress Role:"
|
951 |
+
msgstr ""
|
952 |
+
|
953 |
+
# @ ure
|
954 |
+
#: ../includes/ure-user-edit.php:92
|
955 |
+
#, fuzzy
|
956 |
+
msgid "Other Roles:"
|
957 |
+
msgstr "Löschen der Rolle"
|
958 |
+
|
959 |
+
# @ ure
|
960 |
+
#: ../includes/class-ure-screen-help.php:12
|
961 |
+
#: ../includes/class-ure-screen-help.php:41
|
962 |
+
#: ../includes/class-ure-screen-help.php:60
|
963 |
+
#: ../includes/class-ure-screen-help.php:79
|
964 |
+
#, fuzzy
|
965 |
+
msgid "User Role Editor Options page help"
|
966 |
+
msgstr "User Role Editor"
|
967 |
+
|
968 |
+
#: ../includes/class-ure-screen-help.php:16
|
969 |
+
msgid ""
|
970 |
+
"turn this option on in order to make the \"Administrator\" role available at "
|
971 |
+
"the User Role Editor roles selection drop-down list. It is hidden by default "
|
972 |
+
"for security reasons."
|
973 |
+
msgstr ""
|
974 |
+
|
975 |
+
#: ../includes/class-ure-screen-help.php:19
|
976 |
+
msgid ""
|
977 |
+
"automatically converts capability names from the technical form for internal "
|
978 |
+
"use like \"edit_others_posts\" to more user friendly form, e.g. \"Edit "
|
979 |
+
"others posts\"."
|
980 |
+
msgstr ""
|
981 |
+
|
982 |
+
#: ../includes/class-ure-screen-help.php:22
|
983 |
+
msgid ""
|
984 |
+
"Capabilities like \"level_0\", \"level_1\" are deprecated and are not used "
|
985 |
+
"by WordPress. They are left at the user roles for the compatibility purpose "
|
986 |
+
"with the old themes and plugins code. Turning on this option will show those "
|
987 |
+
"deprecated capabilities."
|
988 |
+
msgstr ""
|
989 |
+
|
990 |
+
#: ../includes/class-ure-screen-help.php:26
|
991 |
+
msgid ""
|
992 |
+
"If turned off - capabilities section of selected user is shown in readonly "
|
993 |
+
"mode. Administrator can not assign capabilities to the user directly. He "
|
994 |
+
"should make it using roles only."
|
995 |
+
msgstr ""
|
996 |
+
|
997 |
+
#: ../includes/class-ure-screen-help.php:46
|
998 |
+
msgid ""
|
999 |
+
"Show at the \"Users\" page a quant of users without role. Module allows to "
|
1000 |
+
"assign all of them an empty role \"No rights\", in order to look on the "
|
1001 |
+
"users list with role \"No rights\" at the separate tab then."
|
1002 |
+
msgstr ""
|
1003 |
+
|
1004 |
+
# @ ure
|
1005 |
+
#: ../includes/class-ure-screen-help.php:63
|
1006 |
+
#, fuzzy
|
1007 |
+
msgid "Other default roles for new registered user"
|
1008 |
+
msgstr "Standard-Rolle für neuen Benutzer"
|
1009 |
+
|
1010 |
+
#: ../includes/class-ure-screen-help.php:64
|
1011 |
+
msgid ""
|
1012 |
+
"select roles below to assign them to the new user automatically as an "
|
1013 |
+
"addition to the primary role. Note for multisite environment: take into "
|
1014 |
+
"account that other default roles should exist at the site, in order to be "
|
1015 |
+
"assigned to the new registered users."
|
1016 |
+
msgstr ""
|
1017 |
+
|
1018 |
+
#: ../includes/class-ure-screen-help.php:82
|
1019 |
+
msgid "Allow non super-admininstrators to create, edit and delete users"
|
1020 |
+
msgstr ""
|
1021 |
+
|
1022 |
+
#: ../includes/class-ure-screen-help.php:83
|
1023 |
+
msgid ""
|
1024 |
+
"Super administrator only may create, edit and delete users under WordPress "
|
1025 |
+
"multi-site by default. Turn this option on in order to remove this "
|
1026 |
+
"limitation."
|
1027 |
+
msgstr ""
|
1028 |
+
|
1029 |
+
# @ ure
|
1030 |
+
#, fuzzy
|
1031 |
+
#~ msgid "User Role Editor requires PHP %s or newer."
|
1032 |
+
#~ msgstr "User Role Editor benötigt PHP 5.0 oder aktueller"
|
1033 |
+
|
1034 |
+
# @ ure
|
1035 |
+
#~ msgid "Please update!"
|
1036 |
+
#~ msgstr "Bitte aktualisieren!"
|
1037 |
+
|
1038 |
+
#~ msgid "Only"
|
1039 |
+
#~ msgstr "Nur"
|
1040 |
+
|
1041 |
+
#~ msgid "is allowed to use"
|
1042 |
+
#~ msgstr "ist gestattet zu benutzen"
|
1043 |
+
|
1044 |
+
# @ ure
|
1045 |
+
#, fuzzy
|
1046 |
+
#~ msgid "User Role Editor requires WordPress %s or newer."
|
1047 |
+
#~ msgstr "User Role Editor benötigt Wordpress 3.0 oder aktueller"
|
1048 |
+
|
1049 |
+
# @ ure
|
1050 |
+
#~ msgid "Backup record is created for the current role capabilities"
|
1051 |
+
#~ msgstr "Sicherheitskopie der aktuellen Rollenbefugnisse wird erstellt"
|
1052 |
+
|
1053 |
+
#~ msgid "User"
|
1054 |
+
#~ msgstr "Benutzer"
|
1055 |
+
|
1056 |
+
# @ ure
|
1057 |
+
#~ msgid "About this Plugin:"
|
1058 |
+
#~ msgstr "Über dieses Plugin:"
|
1059 |
+
|
1060 |
+
# @ ure
|
1061 |
+
#~ msgid "Database operation error. Check log file."
|
1062 |
+
#~ msgstr "Datenbankfehler. Überprüfen Sie die Protokolldatei."
|
1063 |
+
|
1064 |
+
# @ ure
|
1065 |
+
#~ msgid ""
|
1066 |
+
#~ "No backup data. It is created automatically before the first role data "
|
1067 |
+
#~ "update."
|
1068 |
+
#~ msgstr ""
|
1069 |
+
#~ "Keine Sicherungskopie vorhanden. Sie wird automatisch vor der ersten "
|
1070 |
+
#~ "Aktualisierung von Rollen-Daten erstellt."
|
1071 |
+
|
1072 |
+
# @ ure
|
1073 |
+
#~ msgid " Name must contain latin characters and digits only!"
|
1074 |
+
#~ msgstr "Der Name darf nur Buchstaben und Ziffern enthalten!"
|
1075 |
+
|
1076 |
+
# @ ure
|
1077 |
+
#~ msgid "Change Default Role"
|
1078 |
+
#~ msgstr "Ändern der Standard-Rolle"
|
1079 |
+
|
1080 |
+
#~ msgid ""
|
1081 |
+
#~ "Restore Roles from backup copy. Be careful, backup was created when you "
|
1082 |
+
#~ "started URE 1st time. All changes you made after that will be lost"
|
1083 |
+
#~ msgstr ""
|
1084 |
+
#~ "Wiederherstellung der Rollen von der Sicherungskopie. Seien Sie "
|
1085 |
+
#~ "vorsichtig, die Sicherung wurde bei Ihrer ersten Benutzung von URE "
|
1086 |
+
#~ "erstellt. Alle Änderungen, die Sie danach vorgenommen haben, gehen "
|
1087 |
+
#~ "verloren"
|
1088 |
+
|
1089 |
+
# @ ure
|
1090 |
+
#~ msgid "Role \"%s\" update: please confirm to continue"
|
1091 |
+
#~ msgstr "Aktualisierung der Rolle \"%s\": Zum Fortfahren bitte bestätigen"
|
1092 |
+
|
1093 |
+
# @ ure
|
1094 |
+
#~ msgid "Save Changes"
|
1095 |
+
#~ msgstr "Änderungen sichern"
|
1096 |
+
|
1097 |
+
# @ ure
|
1098 |
+
#~ msgid "Cancel not saved changes"
|
1099 |
+
#~ msgstr "Ungesicherte Änderungen verwerfen"
|
1100 |
+
|
1101 |
+
#~ msgid "Select All Capabilities"
|
1102 |
+
#~ msgstr "Wähle alle Rechte"
|
1103 |
+
|
1104 |
+
#~ msgid "Unselect All Capabilities"
|
1105 |
+
#~ msgstr "Wähle alle Rechte ab"
|
1106 |
+
|
1107 |
+
#~ msgid "Turn checked capabilities off and vise versa"
|
1108 |
+
#~ msgstr "Schalte alle markierten Rechte ab und umgekehrt"
|
1109 |
+
|
1110 |
+
# @ ure
|
1111 |
+
#~ msgid "Restore Roles from backup copy"
|
1112 |
+
#~ msgstr "Wiederherstellung der Rollen von der Sicherheitskopie"
|
1113 |
+
|
1114 |
+
#~ msgid "Name: "
|
1115 |
+
#~ msgstr "Name:"
|
1116 |
+
|
1117 |
+
# @ ure
|
1118 |
+
#~ msgid "Add"
|
1119 |
+
#~ msgstr "Hinzufügen"
|
1120 |
+
|
1121 |
+
# @ ure
|
1122 |
+
#~ msgid "Add New User Role"
|
1123 |
+
#~ msgstr "Neue Benutzer-Rolle hinzufügen"
|
1124 |
+
|
1125 |
+
# @ ure
|
1126 |
+
#~ msgid "Change"
|
1127 |
+
#~ msgstr "Ändern"
|
1128 |
+
|
1129 |
+
# @ ure
|
1130 |
+
#~ msgid "Remove"
|
1131 |
+
#~ msgstr "Entferne"
|
1132 |
+
|
1133 |
+
# @ ure
|
1134 |
+
#~ msgid "User \"%s\" update: please confirm to continue"
|
1135 |
+
#~ msgstr "Benutzer \"%s\" Aktualisierung: Bitte bestätigen, um fortzufahren"
|
1136 |
+
|
1137 |
+
# @ ure
|
1138 |
+
#~ msgid "Role:"
|
1139 |
+
#~ msgstr "Rolle:"
|
1140 |
+
|
1141 |
+
#~ msgid "Add capabilities to this user:"
|
1142 |
+
#~ msgstr "Füge Rechte für diesen Benutzer hinzu:"
|
1143 |
+
|
1144 |
+
# @ ure
|
1145 |
+
#~ msgid "Greetings"
|
1146 |
+
#~ msgstr "Mitarbeiter:"
|
1147 |
+
|
1148 |
+
# @ ure
|
1149 |
+
#~ msgid "Greetings:"
|
1150 |
+
#~ msgstr "Mitarbeiter:"
|
1151 |
+
|
1152 |
+
# @ ure
|
1153 |
+
#~ msgid "It's me, the author"
|
1154 |
+
#~ msgstr "Der Autor"
|
1155 |
+
|
1156 |
+
# @ ure
|
1157 |
+
#~ msgid "For the help with Belorussian translation"
|
1158 |
+
#~ msgstr "Für die Hilfe bei der Übersetzung ins Weißrussische"
|
1159 |
+
|
1160 |
+
# @ ure
|
1161 |
+
#~ msgid "For the help with Brasilian translation"
|
1162 |
+
#~ msgstr "Für die Hilfe bei der Übersetzung ins Brasilianische"
|
1163 |
+
|
1164 |
+
# @ ure
|
1165 |
+
#, fuzzy
|
1166 |
+
#~ msgid "For the help with Brasilian Portuguese translation"
|
1167 |
+
#~ msgstr "Für die Hilfe bei der Übersetzung ins Brasilianische"
|
lang/ure-nl.mo
DELETED
Binary file
|
lang/ure-nl_NL.mo
ADDED
Binary file
|
lang/{ure-nl.po → ure-nl_NL.po}
RENAMED
@@ -1,921 +1,912 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: User Role Editor 2.0\n"
|
4 |
-
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2015-02-23 11:48+0700\n"
|
6 |
-
"PO-Revision-Date: \n"
|
7 |
-
"Last-Translator:
|
8 |
-
"Language-Team: ShinePHP.com <vladimir@shinephp.com>\n"
|
9 |
-
"Language:
|
10 |
-
"
|
11 |
-
"
|
12 |
-
"Content-
|
13 |
-
"
|
14 |
-
"X-Poedit-
|
15 |
-
"X-Poedit-
|
16 |
-
"
|
17 |
-
"
|
18 |
-
"
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
#: ../includes/class-
|
26 |
-
msgid "
|
27 |
-
msgstr "
|
28 |
-
|
29 |
-
#: ../includes/
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
#: ../includes/
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
#: ../includes/
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
#: ../includes/
|
54 |
-
#: ../includes/class-ure-screen-help.php:
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
#: ../includes/
|
60 |
-
msgid "
|
61 |
-
msgstr "
|
62 |
-
|
63 |
-
#: ../includes/
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
#: ../includes/class-ure-screen-help.php:
|
75 |
-
msgid "
|
76 |
-
msgstr "
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
"
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
"
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
#: ../includes/class-user-role-editor.php:
|
111 |
-
msgid "
|
112 |
-
msgstr "
|
113 |
-
|
114 |
-
#: ../includes/
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
#: ../includes/class-
|
120 |
-
msgid "
|
121 |
-
msgstr "
|
122 |
-
|
123 |
-
#: ../includes/
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
#: ../includes/
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
#: ../includes/
|
134 |
-
#: ../includes/class-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
#: ../includes/
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
#: ../includes/
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
#: ../includes/
|
167 |
-
msgid "
|
168 |
-
msgstr "
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
#: ../includes/class-user-role-editor.php:
|
204 |
-
|
205 |
-
|
206 |
-
"
|
207 |
-
msgstr ""
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
#: ../includes/class-user-role-editor.php:
|
212 |
-
msgid "
|
213 |
-
msgstr "
|
214 |
-
|
215 |
-
#: ../includes/class-user-role-editor.php:
|
216 |
-
msgid "
|
217 |
-
msgstr "
|
218 |
-
|
219 |
-
#: ../includes/class-user-role-editor.php:
|
220 |
-
msgid "
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
#: ../includes/class-
|
228 |
-
#: ../includes/class-
|
229 |
-
msgid "
|
230 |
-
msgstr "
|
231 |
-
|
232 |
-
#: ../includes/class-user-role-editor.php:
|
233 |
-
msgid "
|
234 |
-
msgstr "
|
235 |
-
|
236 |
-
#: ../includes/class-user-role-editor.php:
|
237 |
-
msgid "
|
238 |
-
msgstr ""
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
msgstr ""
|
247 |
-
|
248 |
-
|
249 |
-
"
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
"
|
254 |
-
"
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
msgstr "
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
"
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
"
|
287 |
-
msgstr ""
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
msgstr "
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
#: ../includes/class-
|
363 |
-
msgid "
|
364 |
-
msgstr "
|
365 |
-
|
366 |
-
#: ../includes/class-
|
367 |
-
msgid "
|
368 |
-
msgstr "
|
369 |
-
|
370 |
-
#: ../includes/
|
371 |
-
msgid "Role
|
372 |
-
msgstr "Rol
|
373 |
-
|
374 |
-
#: ../includes/
|
375 |
-
msgid "
|
376 |
-
msgstr "
|
377 |
-
|
378 |
-
#: ../includes/
|
379 |
-
msgid "
|
380 |
-
msgstr "
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
"
|
414 |
-
"
|
415 |
-
|
416 |
-
|
417 |
-
"
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
"
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
"
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
msgid "
|
430 |
-
msgstr "
|
431 |
-
|
432 |
-
#: ../includes/class-ure-lib.php:
|
433 |
-
msgid "
|
434 |
-
msgstr "
|
435 |
-
|
436 |
-
#: ../includes/class-ure-lib.php:
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
msgid "
|
470 |
-
msgstr "
|
471 |
-
|
472 |
-
#: ../includes/class-ure-lib.php:
|
473 |
-
msgid "
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
msgid "
|
491 |
-
msgstr "
|
492 |
-
|
493 |
-
#: ../includes/class-ure-lib.php:
|
494 |
-
msgid "
|
495 |
-
msgstr "
|
496 |
-
|
497 |
-
#: ../includes/class-ure-lib.php:
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
msgid "
|
531 |
-
msgstr "
|
532 |
-
|
533 |
-
#: ../includes/class-ure-lib.php:
|
534 |
-
msgid "
|
535 |
-
msgstr "
|
536 |
-
|
537 |
-
#: ../includes/class-ure-lib.php:
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
"
|
749 |
-
|
750 |
-
#: ../includes/class-ure-lib.php:
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
msgid "
|
768 |
-
msgstr "
|
769 |
-
|
770 |
-
#: ../includes/class-ure-lib.php:
|
771 |
-
msgid "
|
772 |
-
msgstr "
|
773 |
-
|
774 |
-
#: ../includes/class-ure-lib.php:
|
775 |
-
msgid "
|
776 |
-
msgstr "
|
777 |
-
|
778 |
-
#: ../includes/class-ure-lib.php:
|
779 |
-
msgid "
|
780 |
-
msgstr "
|
781 |
-
|
782 |
-
#: ../includes/class-ure-lib.php:
|
783 |
-
msgid "
|
784 |
-
msgstr "
|
785 |
-
|
786 |
-
#: ../includes/class-ure-lib.php:
|
787 |
-
msgid "
|
788 |
-
msgstr "
|
789 |
-
|
790 |
-
#: ../includes/class-ure-lib.php:
|
791 |
-
msgid "
|
792 |
-
msgstr "
|
793 |
-
|
794 |
-
#: ../includes/class-ure-lib.php:
|
795 |
-
msgid "
|
796 |
-
msgstr "
|
797 |
-
|
798 |
-
#: ../includes/class-ure-lib.php:
|
799 |
-
msgid "
|
800 |
-
msgstr "
|
801 |
-
|
802 |
-
#: ../includes/ure-
|
803 |
-
msgid "
|
804 |
-
msgstr "
|
805 |
-
|
806 |
-
#: ../includes/ure-
|
807 |
-
msgid "
|
808 |
-
msgstr "
|
809 |
-
|
810 |
-
#: ../includes/ure-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
#: ../includes/class-ure-
|
826 |
-
#,
|
827 |
-
msgid "
|
828 |
-
msgstr "
|
829 |
-
|
830 |
-
#: ../includes/class-ure-
|
831 |
-
msgid ""
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
"
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
#: ../includes/class-ure-
|
851 |
-
msgid ""
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
"
|
856 |
-
msgstr ""
|
857 |
-
|
858 |
-
|
859 |
-
"
|
860 |
-
"
|
861 |
-
|
862 |
-
#: ../includes/
|
863 |
-
msgid ""
|
864 |
-
"
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
msgid ""
|
884 |
-
"
|
885 |
-
"
|
886 |
-
"
|
887 |
-
|
888 |
-
|
889 |
-
"
|
890 |
-
"
|
891 |
-
|
892 |
-
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
"
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
"
|
905 |
-
"
|
906 |
-
|
907 |
-
"
|
908 |
-
|
909 |
-
"
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
#~ msgstr "Alles deselecteren"
|
914 |
-
|
915 |
-
#~ msgid "Overview"
|
916 |
-
#~ msgstr "Overzicht"
|
917 |
-
|
918 |
-
#~ msgid "Allow create, edit and delete users to not super-admininstrators"
|
919 |
-
#~ msgstr ""
|
920 |
-
#~ "Het toestaan van het aanmaken, bewerken en verwijderen van gebruikers "
|
921 |
-
#~ "naar niet super-admininstrators"
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: User Role Editor 2.0\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2015-02-23 11:48+0700\n"
|
6 |
+
"PO-Revision-Date: Wed Jun 03 2015 21:39:23 GMT+0200 (CEST)\n"
|
7 |
+
"Last-Translator: admin <webmaster@friesebewakingsdienst.nl>\n"
|
8 |
+
"Language-Team: ShinePHP.com <vladimir@shinephp.com>\n"
|
9 |
+
"Language: Dutch\n"
|
10 |
+
"Plural-Forms: nplurals=2; plural=n != 1\n"
|
11 |
+
"MIME-Version: 1.0\n"
|
12 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
13 |
+
"Content-Transfer-Encoding: 8bit\n"
|
14 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
+
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
|
16 |
+
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
|
18 |
+
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
|
19 |
+
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
|
20 |
+
"X-Poedit-Basepath: .\n"
|
21 |
+
"X-Generator: Loco - https://localise.biz/\n"
|
22 |
+
"X-Poedit-SearchPath-0: ..\n"
|
23 |
+
"X-Loco-Target-Locale: nl_NL"
|
24 |
+
|
25 |
+
#: ../includes/class-ure-lib.php:1444
|
26 |
+
msgid "read about"
|
27 |
+
msgstr "Lees over"
|
28 |
+
|
29 |
+
#: ../includes/class-ure-screen-help.php:26
|
30 |
+
msgid ""
|
31 |
+
"If turned off - capabilities section of selected user is shown in readonly "
|
32 |
+
"mode. Administrator can not assign capabilities to the user directly. He "
|
33 |
+
"should make it using roles only."
|
34 |
+
msgstr ""
|
35 |
+
"Indien uit, het gebruikers rechten gedeelte van de geselecteerde gebruik "
|
36 |
+
"wordt getoond in \"alleen lezen\" mode. De beheerder kan geen rechten direct "
|
37 |
+
"aan een gebruiker toekenne. Hij moet gebruik maken van rollen."
|
38 |
+
|
39 |
+
#: ../includes/class-ure-screen-help.php:46
|
40 |
+
msgid ""
|
41 |
+
"Show at the \"Users\" page a quant of users without role. Module allows to "
|
42 |
+
"assign all of them an empty role \"No rights\", in order to look on the users "
|
43 |
+
"list with role \"No rights\" at the separate tab then."
|
44 |
+
msgstr ""
|
45 |
+
"Toon op de \"Users\" pagina een blok met gebruikers zonder rol. Deze module "
|
46 |
+
"kan ze allemaal een lege rol \"Geen rechten\" toekennen. "
|
47 |
+
|
48 |
+
#: ../includes/class-ure-lib.php:1445
|
49 |
+
msgid "user capability"
|
50 |
+
msgstr "Gebruikers rechten"
|
51 |
+
|
52 |
+
#: ../includes/class-ure-screen-help.php:12
|
53 |
+
#: ../includes/class-ure-screen-help.php:41
|
54 |
+
#: ../includes/class-ure-screen-help.php:60
|
55 |
+
#: ../includes/class-ure-screen-help.php:79
|
56 |
+
msgid "User Role Editor Options page help"
|
57 |
+
msgstr "User Rol Editor Opties hulp pagina"
|
58 |
+
|
59 |
+
#: ../includes/class-ure-screen-help.php:63
|
60 |
+
msgid "Other default roles for new registered user"
|
61 |
+
msgstr "Andere standaard rollen voor nieuw geregistreerde gebruiker"
|
62 |
+
|
63 |
+
#: ../includes/class-ure-screen-help.php:64
|
64 |
+
msgid ""
|
65 |
+
"select roles below to assign them to the new user automatically as an "
|
66 |
+
"addition to the primary role. Note for multisite environment: take into "
|
67 |
+
"account that other default roles should exist at the site, in order to be "
|
68 |
+
"assigned to the new registered users."
|
69 |
+
msgstr ""
|
70 |
+
"Notitie voor multisite-omgeving: houdt er rekening mee dat er andere "
|
71 |
+
"standaard functies op de site moeten bestaan, om toegewezen te kunnen worden "
|
72 |
+
"aan nieuw geregistreerde gebruikers."
|
73 |
+
|
74 |
+
#: ../includes/class-ure-screen-help.php:82
|
75 |
+
msgid "Allow non super-admininstrators to create, edit and delete users"
|
76 |
+
msgstr ""
|
77 |
+
"Sta niet super beheerders toe om gebruikers aan te maken, te bewerken en te "
|
78 |
+
"verwijderen"
|
79 |
+
|
80 |
+
#: ../includes/class-ure-screen-help.php:83
|
81 |
+
msgid ""
|
82 |
+
"Super administrator only may create, edit and delete users under WordPress "
|
83 |
+
"multi-site by default. Turn this option on in order to remove this "
|
84 |
+
"limitation."
|
85 |
+
msgstr ""
|
86 |
+
"Alleen de super beheerder kan gebruikers aanmaken, bewerken en verwijderen "
|
87 |
+
"in WordPress multi-site. Schakel deze optie in om deze beperking te "
|
88 |
+
"verwijderen."
|
89 |
+
|
90 |
+
#: ../includes/settings-template.php:17
|
91 |
+
msgid "User Role Editor - Options"
|
92 |
+
msgstr "User Rol Editor - Opties"
|
93 |
+
|
94 |
+
#: ../includes/settings-template.php:21
|
95 |
+
#: ../includes/class-user-role-editor.php:591
|
96 |
+
msgid "General"
|
97 |
+
msgstr "Algemeen"
|
98 |
+
|
99 |
+
#: ../includes/settings-template.php:26
|
100 |
+
#: ../includes/class-user-role-editor.php:597
|
101 |
+
msgid "Additional Modules"
|
102 |
+
msgstr "Aanvullende modules"
|
103 |
+
|
104 |
+
#: ../includes/settings-template.php:30
|
105 |
+
#: ../includes/class-user-role-editor.php:603
|
106 |
+
msgid "Default Roles"
|
107 |
+
msgstr "Standaard Rollen"
|
108 |
+
|
109 |
+
#: ../includes/settings-template.php:34
|
110 |
+
#: ../includes/class-user-role-editor.php:609
|
111 |
+
msgid "Multisite"
|
112 |
+
msgstr "Multisite"
|
113 |
+
|
114 |
+
#: ../includes/settings-template.php:39
|
115 |
+
msgid "About"
|
116 |
+
msgstr "Over"
|
117 |
+
|
118 |
+
#: ../includes/settings-template.php:53
|
119 |
+
#: ../includes/class-ure-screen-help.php:15
|
120 |
+
msgid "Show Administrator role at User Role Editor"
|
121 |
+
msgstr "Toon Beheerders Rol in de Gebruikers Rol Editor"
|
122 |
+
|
123 |
+
#: ../includes/settings-template.php:61
|
124 |
+
#: ../includes/class-ure-screen-help.php:18
|
125 |
+
msgid "Show capabilities in the human readable form"
|
126 |
+
msgstr "Toon de rechten in een leesbare vorm"
|
127 |
+
|
128 |
+
#: ../includes/settings-template.php:69 ../includes/ure-role-edit.php:40
|
129 |
+
#: ../includes/ure-user-edit.php:64 ../includes/class-ure-screen-help.php:21
|
130 |
+
msgid "Show deprecated capabilities"
|
131 |
+
msgstr "Toon afgekeurde rechten"
|
132 |
+
|
133 |
+
#: ../includes/settings-template.php:77
|
134 |
+
#: ../includes/class-ure-screen-help.php:25
|
135 |
+
msgid "Edit user capabilities"
|
136 |
+
msgstr "Wijzigen gebruikelijke rechten"
|
137 |
+
|
138 |
+
#: ../includes/settings-template.php:90 ../includes/settings-template.php:126
|
139 |
+
#: ../includes/settings-template.php:158 ../includes/settings-template.php:190
|
140 |
+
msgid "Save"
|
141 |
+
msgstr "Opslaan"
|
142 |
+
|
143 |
+
#: ../includes/settings-template.php:111
|
144 |
+
#: ../includes/class-ure-screen-help.php:45
|
145 |
+
msgid "Count users without role"
|
146 |
+
msgstr "Het aantal Gebruikers zonder rol"
|
147 |
+
|
148 |
+
#: ../includes/settings-template.php:138
|
149 |
+
msgid "Primary default role: "
|
150 |
+
msgstr "Standaard rol:"
|
151 |
+
|
152 |
+
#: ../includes/settings-template.php:145
|
153 |
+
msgid "Other default roles for new registered user: "
|
154 |
+
msgstr "Andere standaard rollen voor nieuw geregistreerde gebruiker:"
|
155 |
+
|
156 |
+
#: ../includes/settings-template.php:151
|
157 |
+
msgid ""
|
158 |
+
"Note for multisite environment: take into account that other default roles "
|
159 |
+
"should exist at the site, in order to be assigned to the new registered "
|
160 |
+
"users."
|
161 |
+
msgstr ""
|
162 |
+
"Noot voor multisite-omgeving: houdt er rekening mee dat er andere standaard "
|
163 |
+
"functies op de site moeten bestaan, om toegewezen te kunnen worden aan nieuw "
|
164 |
+
"geregistreerde gebruikers."
|
165 |
+
|
166 |
+
#: ../includes/settings-template.php:177
|
167 |
+
msgid "Allow non super administrators to create, edit, and delete users"
|
168 |
+
msgstr ""
|
169 |
+
"Sta niet super beheerders toe om gebruikers aan te maken, te bewerken en te "
|
170 |
+
"verwijderen"
|
171 |
+
|
172 |
+
#: ../includes/class-user-role-editor.php:234
|
173 |
+
msgid "Change role for users without role"
|
174 |
+
msgstr "Wijzig de rol van gebruikers zonder rol"
|
175 |
+
|
176 |
+
#: ../includes/class-user-role-editor.php:235
|
177 |
+
msgid "No rights"
|
178 |
+
msgstr "Geen rechten"
|
179 |
+
|
180 |
+
#: ../includes/class-user-role-editor.php:236
|
181 |
+
msgid "Provide new role"
|
182 |
+
msgstr "Creëer een nieuwe rol"
|
183 |
+
|
184 |
+
#: ../includes/class-user-role-editor.php:320
|
185 |
+
#: ../includes/class-user-role-editor.php:322
|
186 |
+
msgid "You do not have permission to edit this user."
|
187 |
+
msgstr "Je hebt toestemming om gegevens van deze gebruiker te wijzigen"
|
188 |
+
|
189 |
+
#: ../includes/class-user-role-editor.php:460
|
190 |
+
msgid "Capabilities"
|
191 |
+
msgstr "Rechten"
|
192 |
+
|
193 |
+
#: ../includes/class-user-role-editor.php:558
|
194 |
+
msgid "Settings"
|
195 |
+
msgstr "Instellingen"
|
196 |
+
|
197 |
+
#: ../includes/class-user-role-editor.php:569
|
198 |
+
#: ../includes/class-ure-lib.php:2540
|
199 |
+
msgid "Changelog"
|
200 |
+
msgstr "Changelog"
|
201 |
+
|
202 |
+
#: ../includes/class-user-role-editor.php:619
|
203 |
+
#: ../includes/class-user-role-editor.php:648
|
204 |
+
#: ../includes/class-user-role-editor.php:1030
|
205 |
+
#: ../includes/class-ure-lib.php:337
|
206 |
+
msgid "User Role Editor"
|
207 |
+
msgstr "User Rol Editor"
|
208 |
+
|
209 |
+
#: ../includes/class-user-role-editor.php:708
|
210 |
+
#: ../includes/class-user-role-editor.php:726
|
211 |
+
#: ../includes/class-user-role-editor.php:770
|
212 |
+
msgid "User Role Editor options are updated"
|
213 |
+
msgstr "User Role Editor opties zijn ge-update"
|
214 |
+
|
215 |
+
#: ../includes/class-user-role-editor.php:754
|
216 |
+
msgid "Default Roles are updated"
|
217 |
+
msgstr "Standaard Rollen zijn ge-update"
|
218 |
+
|
219 |
+
#: ../includes/class-user-role-editor.php:779
|
220 |
+
msgid ""
|
221 |
+
"You do not have sufficient permissions to manage options for User Role "
|
222 |
+
"Editor."
|
223 |
+
msgstr "Je hebt onvoldoende rechten om de User Role Editor te beheren."
|
224 |
+
|
225 |
+
#: ../includes/class-user-role-editor.php:851
|
226 |
+
#: ../includes/class-ure-lib.php:1698 ../includes/class-ure-lib.php:1951
|
227 |
+
#: ../includes/class-ure-lib.php:2067 ../includes/class-ure-lib.php:2115
|
228 |
+
#: ../includes/class-ure-lib.php:2361 ../includes/class-ure-lib.php:2406
|
229 |
+
msgid "Insufficient permissions to work with User Role Editor"
|
230 |
+
msgstr "Onvoldoende rechten om te werken met User Role Editor"
|
231 |
+
|
232 |
+
#: ../includes/class-user-role-editor.php:977
|
233 |
+
msgid "Select All"
|
234 |
+
msgstr "Alles selecteren"
|
235 |
+
|
236 |
+
#: ../includes/class-user-role-editor.php:978
|
237 |
+
msgid "Unselect All"
|
238 |
+
msgstr "Alles deselecteren"
|
239 |
+
|
240 |
+
#: ../includes/class-user-role-editor.php:979
|
241 |
+
msgid "Reverse"
|
242 |
+
msgstr "Omzetten"
|
243 |
+
|
244 |
+
#: ../includes/class-user-role-editor.php:980
|
245 |
+
msgid "Update"
|
246 |
+
msgstr "Update"
|
247 |
+
|
248 |
+
#: ../includes/class-user-role-editor.php:981
|
249 |
+
msgid "Please confirm permissions update"
|
250 |
+
msgstr "Bevestig toestemming om te mogen updaten"
|
251 |
+
|
252 |
+
#: ../includes/class-user-role-editor.php:982
|
253 |
+
msgid "Add New Role"
|
254 |
+
msgstr "Nieuwe Rol Toevoegen"
|
255 |
+
|
256 |
+
#: ../includes/class-user-role-editor.php:983
|
257 |
+
#: ../includes/class-user-role-editor.php:988
|
258 |
+
msgid "Rename Role"
|
259 |
+
msgstr "Hernoem Rol"
|
260 |
+
|
261 |
+
#: ../includes/class-user-role-editor.php:984
|
262 |
+
msgid " Role name (ID) can not be empty!"
|
263 |
+
msgstr "Rol naam (ID) kan niet leeg zijn!"
|
264 |
+
|
265 |
+
#: ../includes/class-user-role-editor.php:985
|
266 |
+
msgid ""
|
267 |
+
" Role name (ID) must contain latin characters, digits, hyphens or underscore "
|
268 |
+
"only!"
|
269 |
+
msgstr ""
|
270 |
+
"Rol naam (ID) moet latijnse letters, cijfers, koppeltekens of een underscore "
|
271 |
+
"bevatten!"
|
272 |
+
|
273 |
+
#: ../includes/class-user-role-editor.php:986
|
274 |
+
msgid ""
|
275 |
+
" WordPress does not support numeric Role name (ID). Add latin characters to "
|
276 |
+
"it."
|
277 |
+
msgstr ""
|
278 |
+
"WordPress ondersteund geen numerieke Rol naam (ID). Voeg er latijnse tekens "
|
279 |
+
"aan toe."
|
280 |
+
|
281 |
+
#: ../includes/class-user-role-editor.php:987
|
282 |
+
msgid "Add Role"
|
283 |
+
msgstr "Rol toevoegen"
|
284 |
+
|
285 |
+
#: ../includes/class-user-role-editor.php:989
|
286 |
+
msgid "Delete Role"
|
287 |
+
msgstr "Rol verwijderen"
|
288 |
+
|
289 |
+
#: ../includes/class-user-role-editor.php:990
|
290 |
+
msgid "Cancel"
|
291 |
+
msgstr "Annuleren"
|
292 |
+
|
293 |
+
#: ../includes/class-user-role-editor.php:991
|
294 |
+
msgid "Add Capability"
|
295 |
+
msgstr "Recht toevoegen"
|
296 |
+
|
297 |
+
#: ../includes/class-user-role-editor.php:992
|
298 |
+
#: ../includes/class-user-role-editor.php:1001
|
299 |
+
msgid "Delete Capability"
|
300 |
+
msgstr "Recht verwijderen"
|
301 |
+
|
302 |
+
#: ../includes/class-user-role-editor.php:993
|
303 |
+
msgid "Reset"
|
304 |
+
msgstr "Terugkeren naar de basisinstellingen"
|
305 |
+
|
306 |
+
#: ../includes/class-user-role-editor.php:994
|
307 |
+
msgid "DANGER! Resetting will restore default settings from WordPress Core."
|
308 |
+
msgstr ""
|
309 |
+
"OPGELET! Opnieuw instellen zal de basisinstellingen herstellen van WordPress "
|
310 |
+
"Core"
|
311 |
+
|
312 |
+
#: ../includes/class-user-role-editor.php:995
|
313 |
+
msgid ""
|
314 |
+
"If any plugins have changed capabilities in any way upon installation (such "
|
315 |
+
"as S2Member, WooCommerce, and many more), those capabilities will be DELETED!"
|
316 |
+
msgstr ""
|
317 |
+
"Als plugins op enigerlei wijz instellingen gewijzigd hebben bij de "
|
318 |
+
"installatie (zoals S2Member, WooCommerce, en nog veel meer), zullen deze "
|
319 |
+
"instellingen worden VERWIJDERD!"
|
320 |
+
|
321 |
+
#: ../includes/class-user-role-editor.php:996
|
322 |
+
msgid ""
|
323 |
+
"For more information on how to undo changes and restore plugin capabilities "
|
324 |
+
"go to"
|
325 |
+
msgstr ""
|
326 |
+
"Voor meer informatie over hoe u wijzigingen ongedaan kunt maken en rechten "
|
327 |
+
"van de plugin kunt herstellen ga naar"
|
328 |
+
|
329 |
+
#: ../includes/class-user-role-editor.php:998
|
330 |
+
msgid "Continue?"
|
331 |
+
msgstr "Doorgaan?"
|
332 |
+
|
333 |
+
#: ../includes/class-user-role-editor.php:999
|
334 |
+
msgid "Default Role"
|
335 |
+
msgstr "Standaard Rol"
|
336 |
+
|
337 |
+
#: ../includes/class-user-role-editor.php:1000
|
338 |
+
msgid "Set New Default Role"
|
339 |
+
msgstr "Maak een nieuwe standaard rol aan"
|
340 |
+
|
341 |
+
#: ../includes/class-user-role-editor.php:1002
|
342 |
+
msgid ""
|
343 |
+
"Warning! Be careful - removing critical capability could crash some plugin "
|
344 |
+
"or other custom code"
|
345 |
+
msgstr ""
|
346 |
+
"Waarschuwing! Wees voorzichtig - het verwijderen van een recht laat sommige "
|
347 |
+
"plugins of aangepaste code crashen"
|
348 |
+
|
349 |
+
#: ../includes/class-user-role-editor.php:1003
|
350 |
+
msgid " Capability name (ID) can not be empty!"
|
351 |
+
msgstr "Een recht naam (ID) kan niet leeg zijn!"
|
352 |
+
|
353 |
+
#: ../includes/class-user-role-editor.php:1004
|
354 |
+
msgid ""
|
355 |
+
" Capability name (ID) must contain latin characters, digits, hyphens or "
|
356 |
+
"underscore only!"
|
357 |
+
msgstr ""
|
358 |
+
"Naam van het recht (ID) moet Latijnse letters, cijfers, koppeltekens of "
|
359 |
+
"underscores bevatten!!"
|
360 |
+
|
361 |
+
#: ../includes/class-user-role-editor.php:1033
|
362 |
+
#: ../includes/class-user-role-editor.php:1066
|
363 |
+
msgid "Other Roles"
|
364 |
+
msgstr "Andere Rollen"
|
365 |
+
|
366 |
+
#: ../includes/class-user-role-editor.php:1047
|
367 |
+
msgid "Edit"
|
368 |
+
msgstr "Wijzigen"
|
369 |
+
|
370 |
+
#: ../includes/ure-role-edit.php:17
|
371 |
+
msgid "Select Role and change its capabilities:"
|
372 |
+
msgstr "Selecteer de Rol en wijzig de rechten"
|
373 |
+
|
374 |
+
#: ../includes/ure-role-edit.php:30 ../includes/ure-user-edit.php:54
|
375 |
+
msgid "Show capabilities in human readable form"
|
376 |
+
msgstr "Toon rechten in leesbare vorm"
|
377 |
+
|
378 |
+
#: ../includes/ure-role-edit.php:44
|
379 |
+
msgid "If checked, then apply action to ALL sites of this Network"
|
380 |
+
msgstr ""
|
381 |
+
"Indien aangevinkt, worden alle acties toegepast op ALLE locaties van dit "
|
382 |
+
"netwerk"
|
383 |
+
|
384 |
+
#: ../includes/ure-role-edit.php:56
|
385 |
+
msgid "Apply to All Sites"
|
386 |
+
msgstr "Pas toe op alle Sites"
|
387 |
+
|
388 |
+
#: ../includes/ure-role-edit.php:63 ../includes/ure-user-edit.php:110
|
389 |
+
msgid "Core capabilities:"
|
390 |
+
msgstr "Core rechten:"
|
391 |
+
|
392 |
+
#: ../includes/ure-role-edit.php:65 ../includes/ure-user-edit.php:112
|
393 |
+
msgid "Quick filter:"
|
394 |
+
msgstr "Snel filter:"
|
395 |
+
|
396 |
+
#: ../includes/ure-role-edit.php:83 ../includes/ure-user-edit.php:131
|
397 |
+
msgid "Custom capabilities:"
|
398 |
+
msgstr "Gebruikelijke rechten:"
|
399 |
+
|
400 |
+
#: ../includes/class-ure-lib.php:245
|
401 |
+
msgid "Error: wrong request"
|
402 |
+
msgstr "Fout: verkeerde aanvraag"
|
403 |
+
|
404 |
+
#: ../includes/class-ure-lib.php:278 ../includes/class-ure-lib.php:289
|
405 |
+
msgid "Role name (ID): "
|
406 |
+
msgstr "Naam Rol (ID):"
|
407 |
+
|
408 |
+
#: ../includes/class-ure-lib.php:280 ../includes/class-ure-lib.php:291
|
409 |
+
msgid "Display Role Name: "
|
410 |
+
msgstr "Maak de Naam van de Rol zichtbaar:"
|
411 |
+
|
412 |
+
#: ../includes/class-ure-lib.php:282
|
413 |
+
msgid "Make copy of: "
|
414 |
+
msgstr "Maak een kopie van:"
|
415 |
+
|
416 |
+
#: ../includes/class-ure-lib.php:298
|
417 |
+
msgid "Select Role:"
|
418 |
+
msgstr "Selecteer een Rol:"
|
419 |
+
|
420 |
+
#: ../includes/class-ure-lib.php:313
|
421 |
+
msgid "Delete:"
|
422 |
+
msgstr "Verwijder:"
|
423 |
+
|
424 |
+
#: ../includes/class-ure-lib.php:320
|
425 |
+
msgid "Capability name (ID): "
|
426 |
+
msgstr "Naam recht (ID):"
|
427 |
+
|
428 |
+
#: ../includes/class-ure-lib.php:434
|
429 |
+
msgid "Error: "
|
430 |
+
msgstr "Fout:"
|
431 |
+
|
432 |
+
#: ../includes/class-ure-lib.php:434
|
433 |
+
msgid "Role"
|
434 |
+
msgstr "Rol"
|
435 |
+
|
436 |
+
#: ../includes/class-ure-lib.php:435
|
437 |
+
msgid "does not exist"
|
438 |
+
msgstr "Bestaat niet"
|
439 |
+
|
440 |
+
#: ../includes/class-ure-lib.php:478
|
441 |
+
msgid "Role is updated successfully"
|
442 |
+
msgstr "Rol is succesvol ge-update"
|
443 |
+
|
444 |
+
#: ../includes/class-ure-lib.php:480
|
445 |
+
msgid "Roles are updated for all network"
|
446 |
+
msgstr "Rollen van het gehele netwerk zijn ge-update"
|
447 |
+
|
448 |
+
#: ../includes/class-ure-lib.php:486
|
449 |
+
msgid "Error occured during role(s) update"
|
450 |
+
msgstr "Er is een fout opgetreden tijdens het updaten van de rol(len)"
|
451 |
+
|
452 |
+
#: ../includes/class-ure-lib.php:493
|
453 |
+
msgid "User capabilities are updated successfully"
|
454 |
+
msgstr "Rechten van de gebruiker zijn succesvol geupdate"
|
455 |
+
|
456 |
+
#: ../includes/class-ure-lib.php:498
|
457 |
+
msgid "Error occured during user update"
|
458 |
+
msgstr "Er is een fout opgetreden tijdens het updaten van de gebruiker"
|
459 |
+
|
460 |
+
#: ../includes/class-ure-lib.php:556
|
461 |
+
msgid "User Roles are restored to WordPress default values. "
|
462 |
+
msgstr "Gebruikers rollen worden hersteld naar WordPress standaardwaarden."
|
463 |
+
|
464 |
+
#: ../includes/class-ure-lib.php:1446
|
465 |
+
msgid "Help"
|
466 |
+
msgstr "Help"
|
467 |
+
|
468 |
+
#: ../includes/class-ure-lib.php:1914
|
469 |
+
msgid "Error is occur. Please check the log file."
|
470 |
+
msgstr "Er heeft zich een fout voorgedaan. Controleer het log bestand."
|
471 |
+
|
472 |
+
#: ../includes/class-ure-lib.php:1960 ../includes/class-ure-lib.php:2027
|
473 |
+
msgid ""
|
474 |
+
"Error: Role ID must contain latin characters, digits, hyphens or underscore "
|
475 |
+
"only!"
|
476 |
+
msgstr ""
|
477 |
+
"Fout: Een Rol (ID) moet Latijnse letters, cijfers, koppeltekens of "
|
478 |
+
"underscores bevatten!"
|
479 |
+
|
480 |
+
#: ../includes/class-ure-lib.php:1964 ../includes/class-ure-lib.php:2031
|
481 |
+
msgid ""
|
482 |
+
"Error: WordPress does not support numeric Role name (ID). Add latin "
|
483 |
+
"characters to it."
|
484 |
+
msgstr ""
|
485 |
+
"Fout: WordPress ondersteund geen numerieke Rol naam (ID). Voeg er latijnse "
|
486 |
+
"tekens aan toe."
|
487 |
+
|
488 |
+
#: ../includes/class-ure-lib.php:1979
|
489 |
+
#, php-format
|
490 |
+
msgid "Role %s exists already"
|
491 |
+
msgstr "Deze Rol %s bestaat al"
|
492 |
+
|
493 |
+
#: ../includes/class-ure-lib.php:1994
|
494 |
+
msgid "Error is encountered during new role create operation"
|
495 |
+
msgstr "Er is een fout opgetreden tijdens het creëren van een nieuwe rol"
|
496 |
+
|
497 |
+
#: ../includes/class-ure-lib.php:1996
|
498 |
+
#, php-format
|
499 |
+
msgid "Role %s is created successfully"
|
500 |
+
msgstr "De Rol %s werd succesvol gecreërd"
|
501 |
+
|
502 |
+
#: ../includes/class-ure-lib.php:2020
|
503 |
+
msgid "Error: Role ID is empty!"
|
504 |
+
msgstr "Fout: Rol ID is niet gevuld!"
|
505 |
+
|
506 |
+
#: ../includes/class-ure-lib.php:2038
|
507 |
+
msgid "Error: Empty role display name is not allowed."
|
508 |
+
msgstr "Fout: De weergave van een lege naam van een rol is niet toegestaan."
|
509 |
+
|
510 |
+
#: ../includes/class-ure-lib.php:2045
|
511 |
+
#, php-format
|
512 |
+
msgid "Role %s does not exists"
|
513 |
+
msgstr "Rol %s bestaat niet"
|
514 |
+
|
515 |
+
#: ../includes/class-ure-lib.php:2053
|
516 |
+
#, php-format
|
517 |
+
msgid "Role %s is renamed to %s successfully"
|
518 |
+
msgstr "Rol %s is succesvol vernoemd naar %s"
|
519 |
+
|
520 |
+
#: ../includes/class-ure-lib.php:2126
|
521 |
+
msgid "Error encountered during role delete operation"
|
522 |
+
msgstr "Er is een fout opgetreden bij het vewijderen van de rol"
|
523 |
+
|
524 |
+
#: ../includes/class-ure-lib.php:2128
|
525 |
+
msgid "Unused roles are deleted successfully"
|
526 |
+
msgstr "Ongebruikte rollen zijn succesvol verwijderd"
|
527 |
+
|
528 |
+
#: ../includes/class-ure-lib.php:2130
|
529 |
+
#, php-format
|
530 |
+
msgid "Role %s is deleted successfully"
|
531 |
+
msgstr "Rol %s succesvol verwijderd"
|
532 |
+
|
533 |
+
#: ../includes/class-ure-lib.php:2155
|
534 |
+
msgid "Error encountered during default role change operation"
|
535 |
+
msgstr "Er is een fout opgetreden tijdens het wijzigen van de standaard rol"
|
536 |
+
|
537 |
+
#: ../includes/class-ure-lib.php:2161
|
538 |
+
#, php-format
|
539 |
+
msgid "Default role for new users is set to %s successfully"
|
540 |
+
msgstr "De standaard rol voor nieuwe gebruikers is met succes ingesteld op %s"
|
541 |
+
|
542 |
+
#: ../includes/class-ure-lib.php:2180
|
543 |
+
msgid "Editor"
|
544 |
+
msgstr "Redacteur"
|
545 |
+
|
546 |
+
#: ../includes/class-ure-lib.php:2181
|
547 |
+
msgid "Author"
|
548 |
+
msgstr "Editor"
|
549 |
+
|
550 |
+
#: ../includes/class-ure-lib.php:2182
|
551 |
+
msgid "Contributor"
|
552 |
+
msgstr "Inzender"
|
553 |
+
|
554 |
+
#: ../includes/class-ure-lib.php:2183
|
555 |
+
msgid "Subscriber"
|
556 |
+
msgstr "Abonnee"
|
557 |
+
|
558 |
+
#: ../includes/class-ure-lib.php:2185
|
559 |
+
msgid "Switch themes"
|
560 |
+
msgstr "Van thema wisselen"
|
561 |
+
|
562 |
+
#: ../includes/class-ure-lib.php:2186
|
563 |
+
msgid "Edit themes"
|
564 |
+
msgstr "Thema's bewerken"
|
565 |
+
|
566 |
+
#: ../includes/class-ure-lib.php:2187
|
567 |
+
msgid "Activate plugins"
|
568 |
+
msgstr "Plugins activeren"
|
569 |
+
|
570 |
+
#: ../includes/class-ure-lib.php:2188
|
571 |
+
msgid "Edit plugins"
|
572 |
+
msgstr "Plugins bewerken"
|
573 |
+
|
574 |
+
#: ../includes/class-ure-lib.php:2189
|
575 |
+
msgid "Edit users"
|
576 |
+
msgstr "Gebruikers bewerken"
|
577 |
+
|
578 |
+
#: ../includes/class-ure-lib.php:2190
|
579 |
+
msgid "Edit files"
|
580 |
+
msgstr "Bestanden bewerken"
|
581 |
+
|
582 |
+
#: ../includes/class-ure-lib.php:2191
|
583 |
+
msgid "Manage options"
|
584 |
+
msgstr "Opties beheren"
|
585 |
+
|
586 |
+
#: ../includes/class-ure-lib.php:2192
|
587 |
+
msgid "Moderate comments"
|
588 |
+
msgstr "Reacties beheren"
|
589 |
+
|
590 |
+
#: ../includes/class-ure-lib.php:2193
|
591 |
+
msgid "Manage categories"
|
592 |
+
msgstr "Categorieën beheren"
|
593 |
+
|
594 |
+
#: ../includes/class-ure-lib.php:2194
|
595 |
+
msgid "Manage links"
|
596 |
+
msgstr "Links beheren"
|
597 |
+
|
598 |
+
#: ../includes/class-ure-lib.php:2195
|
599 |
+
msgid "Upload files"
|
600 |
+
msgstr "Bestanden uploaden"
|
601 |
+
|
602 |
+
#: ../includes/class-ure-lib.php:2196
|
603 |
+
msgid "Import"
|
604 |
+
msgstr "Importeren"
|
605 |
+
|
606 |
+
#: ../includes/class-ure-lib.php:2197
|
607 |
+
msgid "Unfiltered html"
|
608 |
+
msgstr "Ongefilterd html"
|
609 |
+
|
610 |
+
#: ../includes/class-ure-lib.php:2198
|
611 |
+
msgid "Edit posts"
|
612 |
+
msgstr "Berichten bewerken"
|
613 |
+
|
614 |
+
#: ../includes/class-ure-lib.php:2199
|
615 |
+
msgid "Edit others posts"
|
616 |
+
msgstr "Berichten van anderen bewerken"
|
617 |
+
|
618 |
+
#: ../includes/class-ure-lib.php:2200
|
619 |
+
msgid "Edit published posts"
|
620 |
+
msgstr "Gepubliceerde berichten bewerken"
|
621 |
+
|
622 |
+
#: ../includes/class-ure-lib.php:2201
|
623 |
+
msgid "Publish posts"
|
624 |
+
msgstr "Berichten publiceren"
|
625 |
+
|
626 |
+
#: ../includes/class-ure-lib.php:2202
|
627 |
+
msgid "Edit pages"
|
628 |
+
msgstr "Pagina's bewerken"
|
629 |
+
|
630 |
+
#: ../includes/class-ure-lib.php:2203
|
631 |
+
msgid "Read"
|
632 |
+
msgstr "Lezen"
|
633 |
+
|
634 |
+
#: ../includes/class-ure-lib.php:2204
|
635 |
+
msgid "Level 10"
|
636 |
+
msgstr "Level 10"
|
637 |
+
|
638 |
+
#: ../includes/class-ure-lib.php:2205
|
639 |
+
msgid "Level 9"
|
640 |
+
msgstr "Level 9"
|
641 |
+
|
642 |
+
#: ../includes/class-ure-lib.php:2206
|
643 |
+
msgid "Level 8"
|
644 |
+
msgstr "Level 8"
|
645 |
+
|
646 |
+
#: ../includes/class-ure-lib.php:2207
|
647 |
+
msgid "Level 7"
|
648 |
+
msgstr "Level 7"
|
649 |
+
|
650 |
+
#: ../includes/class-ure-lib.php:2208
|
651 |
+
msgid "Level 6"
|
652 |
+
msgstr "Level 6"
|
653 |
+
|
654 |
+
#: ../includes/class-ure-lib.php:2209
|
655 |
+
msgid "Level 5"
|
656 |
+
msgstr "Level 5"
|
657 |
+
|
658 |
+
#: ../includes/class-ure-lib.php:2210
|
659 |
+
msgid "Level 4"
|
660 |
+
msgstr "Level 4"
|
661 |
+
|
662 |
+
#: ../includes/class-ure-lib.php:2211
|
663 |
+
msgid "Level 3"
|
664 |
+
msgstr "Level 3"
|
665 |
+
|
666 |
+
#: ../includes/class-ure-lib.php:2212
|
667 |
+
msgid "Level 2"
|
668 |
+
msgstr "Level 2"
|
669 |
+
|
670 |
+
#: ../includes/class-ure-lib.php:2213
|
671 |
+
msgid "Level 1"
|
672 |
+
msgstr "Level 1"
|
673 |
+
|
674 |
+
#: ../includes/class-ure-lib.php:2214
|
675 |
+
msgid "Level 0"
|
676 |
+
msgstr "Level 0"
|
677 |
+
|
678 |
+
#: ../includes/class-ure-lib.php:2215
|
679 |
+
msgid "Edit others pages"
|
680 |
+
msgstr "Pagina's van anderen bewerken"
|
681 |
+
|
682 |
+
#: ../includes/class-ure-lib.php:2216
|
683 |
+
msgid "Edit published pages"
|
684 |
+
msgstr "Gepubliceerde pagina's bewerken"
|
685 |
+
|
686 |
+
#: ../includes/class-ure-lib.php:2217
|
687 |
+
msgid "Publish pages"
|
688 |
+
msgstr "Pagina's publiceren"
|
689 |
+
|
690 |
+
#: ../includes/class-ure-lib.php:2218
|
691 |
+
msgid "Delete pages"
|
692 |
+
msgstr "Pagina's verwijderen"
|
693 |
+
|
694 |
+
#: ../includes/class-ure-lib.php:2219
|
695 |
+
msgid "Delete others pages"
|
696 |
+
msgstr "Pagina's verwijderen van anderen"
|
697 |
+
|
698 |
+
#: ../includes/class-ure-lib.php:2220
|
699 |
+
msgid "Delete published pages"
|
700 |
+
msgstr "Gepubliceerde pagina's verwijderen"
|
701 |
+
|
702 |
+
#: ../includes/class-ure-lib.php:2221
|
703 |
+
msgid "Delete posts"
|
704 |
+
msgstr "Berichten verwijderen"
|
705 |
+
|
706 |
+
#: ../includes/class-ure-lib.php:2222
|
707 |
+
msgid "Delete others posts"
|
708 |
+
msgstr "Verwijder berichten van anderen"
|
709 |
+
|
710 |
+
#: ../includes/class-ure-lib.php:2223
|
711 |
+
msgid "Delete published posts"
|
712 |
+
msgstr "Gepubliceerde berichten verwijderen"
|
713 |
+
|
714 |
+
#: ../includes/class-ure-lib.php:2224
|
715 |
+
msgid "Delete private posts"
|
716 |
+
msgstr "Privé berichten verwijderen"
|
717 |
+
|
718 |
+
#: ../includes/class-ure-lib.php:2225
|
719 |
+
msgid "Edit private posts"
|
720 |
+
msgstr "Privé berichten bewerken"
|
721 |
+
|
722 |
+
#: ../includes/class-ure-lib.php:2226
|
723 |
+
msgid "Read private posts"
|
724 |
+
msgstr "Privé berichten lezen"
|
725 |
+
|
726 |
+
#: ../includes/class-ure-lib.php:2227
|
727 |
+
msgid "Delete private pages"
|
728 |
+
msgstr "Privé berichten verwijderen"
|
729 |
+
|
730 |
+
#: ../includes/class-ure-lib.php:2228
|
731 |
+
msgid "Edit private pages"
|
732 |
+
msgstr "Privé pagina's bewerken"
|
733 |
+
|
734 |
+
#: ../includes/class-ure-lib.php:2229
|
735 |
+
msgid "Read private pages"
|
736 |
+
msgstr "Privé pagina's lezen"
|
737 |
+
|
738 |
+
#: ../includes/class-ure-lib.php:2230
|
739 |
+
msgid "Delete users"
|
740 |
+
msgstr "Gebruikers verwijderen"
|
741 |
+
|
742 |
+
#: ../includes/class-ure-lib.php:2231
|
743 |
+
msgid "Create users"
|
744 |
+
msgstr "Maak gebruikers aan"
|
745 |
+
|
746 |
+
#: ../includes/class-ure-lib.php:2232
|
747 |
+
msgid "Unfiltered upload"
|
748 |
+
msgstr "Ongefilterd uploaden"
|
749 |
+
|
750 |
+
#: ../includes/class-ure-lib.php:2233
|
751 |
+
msgid "Edit dashboard"
|
752 |
+
msgstr "Bewerk het dashboard"
|
753 |
+
|
754 |
+
#: ../includes/class-ure-lib.php:2234
|
755 |
+
msgid "Update plugins"
|
756 |
+
msgstr "Plugins updaten"
|
757 |
+
|
758 |
+
#: ../includes/class-ure-lib.php:2235
|
759 |
+
msgid "Delete plugins"
|
760 |
+
msgstr "Plugins verwijderen"
|
761 |
+
|
762 |
+
#: ../includes/class-ure-lib.php:2236
|
763 |
+
msgid "Install plugins"
|
764 |
+
msgstr "Plugins installeren"
|
765 |
+
|
766 |
+
#: ../includes/class-ure-lib.php:2237
|
767 |
+
msgid "Update themes"
|
768 |
+
msgstr "Thema's updaten"
|
769 |
+
|
770 |
+
#: ../includes/class-ure-lib.php:2238
|
771 |
+
msgid "Install themes"
|
772 |
+
msgstr "Thema's installeren"
|
773 |
+
|
774 |
+
#: ../includes/class-ure-lib.php:2239
|
775 |
+
msgid "Update core"
|
776 |
+
msgstr "Core updaten"
|
777 |
+
|
778 |
+
#: ../includes/class-ure-lib.php:2240
|
779 |
+
msgid "List users"
|
780 |
+
msgstr "Lijst van gebruikers aanmaken"
|
781 |
+
|
782 |
+
#: ../includes/class-ure-lib.php:2241
|
783 |
+
msgid "Remove users"
|
784 |
+
msgstr "Gebruikers verwijderen"
|
785 |
+
|
786 |
+
#: ../includes/class-ure-lib.php:2242
|
787 |
+
msgid "Add users"
|
788 |
+
msgstr "Gebruikers toevoegen"
|
789 |
+
|
790 |
+
#: ../includes/class-ure-lib.php:2243
|
791 |
+
msgid "Promote users"
|
792 |
+
msgstr "Gebruikers bevorderen"
|
793 |
+
|
794 |
+
#: ../includes/class-ure-lib.php:2244
|
795 |
+
msgid "Edit theme options"
|
796 |
+
msgstr "Thema opties bewerken"
|
797 |
+
|
798 |
+
#: ../includes/class-ure-lib.php:2245
|
799 |
+
msgid "Delete themes"
|
800 |
+
msgstr "Thema's verwijderen"
|
801 |
+
|
802 |
+
#: ../includes/class-ure-lib.php:2246
|
803 |
+
msgid "Export"
|
804 |
+
msgstr "Exporteren"
|
805 |
+
|
806 |
+
#: ../includes/class-ure-lib.php:2369
|
807 |
+
msgid "Error: Capability name must contain latin characters and digits only!"
|
808 |
+
msgstr "Fout: De naam van een recht mag alleen latijnse letters en cijfers bevatten!"
|
809 |
+
|
810 |
+
#: ../includes/class-ure-lib.php:2382
|
811 |
+
#, php-format
|
812 |
+
msgid "Capability %s is added successfully"
|
813 |
+
msgstr "Recht %s is succesvol toegevoegd"
|
814 |
+
|
815 |
+
#: ../includes/class-ure-lib.php:2384
|
816 |
+
#, php-format
|
817 |
+
msgid "Capability %s exists already"
|
818 |
+
msgstr "Recht %s bestaat al"
|
819 |
+
|
820 |
+
#: ../includes/class-ure-lib.php:2413
|
821 |
+
#, php-format
|
822 |
+
msgid "Error! You do not have permission to delete this capability: %s!"
|
823 |
+
msgstr "Fout! U heeft geen toestemming om dit recht te verwijderen: % s!"
|
824 |
+
|
825 |
+
#: ../includes/class-ure-lib.php:2432
|
826 |
+
#, php-format
|
827 |
+
msgid "Capability %s is removed successfully"
|
828 |
+
msgstr "Recht %s is succesvol verwijderd"
|
829 |
+
|
830 |
+
#: ../includes/class-ure-lib.php:2536
|
831 |
+
msgid "Version:"
|
832 |
+
msgstr "Versie:"
|
833 |
+
|
834 |
+
#: ../includes/class-ure-lib.php:2537
|
835 |
+
msgid "Author's website"
|
836 |
+
msgstr "Website van de auteur"
|
837 |
+
|
838 |
+
#: ../includes/class-ure-lib.php:2538
|
839 |
+
msgid "Plugin webpage"
|
840 |
+
msgstr "Plugin webpagina "
|
841 |
+
|
842 |
+
#: ../includes/class-ure-lib.php:2539
|
843 |
+
msgid "Plugin download"
|
844 |
+
msgstr "Plugin download "
|
845 |
+
|
846 |
+
#: ../includes/class-ure-lib.php:2541
|
847 |
+
msgid "FAQ"
|
848 |
+
msgstr "FAQ"
|
849 |
+
|
850 |
+
#: ../includes/class-ure-lib.php:2589
|
851 |
+
msgid "None"
|
852 |
+
msgstr "Geen"
|
853 |
+
|
854 |
+
#: ../includes/class-ure-lib.php:2616
|
855 |
+
msgid "Delete All Unused Roles"
|
856 |
+
msgstr "Verwijder alle niet gebruikte Rollen"
|
857 |
+
|
858 |
+
#: ../includes/class-ure-lib.php:2640
|
859 |
+
msgid "— No role for this site —"
|
860 |
+
msgstr "— Geen rol voor deze website —"
|
861 |
+
|
862 |
+
#: ../includes/ure-user-edit.php:32
|
863 |
+
msgid "Network Super Admin"
|
864 |
+
msgstr "Network Super Beheerder"
|
865 |
+
|
866 |
+
#: ../includes/ure-user-edit.php:35
|
867 |
+
msgid "Change capabilities for user"
|
868 |
+
msgstr "Wijzig de rechten van deze gebruiker"
|
869 |
+
|
870 |
+
#: ../includes/ure-user-edit.php:72
|
871 |
+
msgid "Primary Role:"
|
872 |
+
msgstr "Primaire Rol:"
|
873 |
+
|
874 |
+
#: ../includes/ure-user-edit.php:82
|
875 |
+
msgid "bbPress Role:"
|
876 |
+
msgstr "bbPress Rol:"
|
877 |
+
|
878 |
+
#: ../includes/ure-user-edit.php:92
|
879 |
+
msgid "Other Roles:"
|
880 |
+
msgstr "Andere Rollen:"
|
881 |
+
|
882 |
+
#: ../includes/class-ure-screen-help.php:16
|
883 |
+
msgid ""
|
884 |
+
"turn this option on in order to make the \"Administrator\" role available at "
|
885 |
+
"the User Role Editor roles selection drop-down list. It is hidden by default "
|
886 |
+
"for security reasons."
|
887 |
+
msgstr ""
|
888 |
+
"zet deze optie aan om de \"Administrator \" rol te zichtbaar te maken in de "
|
889 |
+
"Userr Role Editor rollen selectie keuzelijst. Het wordt standaard verborgen "
|
890 |
+
"om veiligheidsredenen."
|
891 |
+
|
892 |
+
#: ../includes/class-ure-screen-help.php:19
|
893 |
+
msgid ""
|
894 |
+
"automatically converts capability names from the technical form for internal "
|
895 |
+
"use like \"edit_others_posts\" to more user friendly form, e.g. \"Edit others "
|
896 |
+
"posts\"."
|
897 |
+
msgstr ""
|
898 |
+
"converteert automatisch de namen van de rechten uit het technische formulier "
|
899 |
+
"voor intern gebruik zoals \"edit_berichten_van_anderen \" naar een meer "
|
900 |
+
"gebruiksvriendelijke vorm, bijvoorbeeld \"Edit berichten van anderen \"."
|
901 |
+
|
902 |
+
#: ../includes/class-ure-screen-help.php:22
|
903 |
+
msgid ""
|
904 |
+
"Capabilities like \"level_0\", \"level_1\" are deprecated and are not used by "
|
905 |
+
"WordPress. They are left at the user roles for the compatibility purpose "
|
906 |
+
"with the old themes and plugins code. Turning on this option will show those "
|
907 |
+
"deprecated capabilities."
|
908 |
+
msgstr ""
|
909 |
+
"Rechten zoals \"level_0 \", \"level_1 \" zijn verouderd en worden niet meer "
|
910 |
+
"gebruikt door WordPress. Ze worden gekoppeld aan de rollen van een "
|
911 |
+
"gebruiker met als reden compatibiliteits doeleinden met oude thema's en "
|
912 |
+
"plugins code. Het inschakelen van deze optie zal de afgekeurde rechten tonen."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: shinephp
|
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=vladimir%40shinephp%2ecom&lc=RU&item_name=ShinePHP%2ecom&item_number=User%20Role%20Editor%20WordPress%20plugin¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted
|
4 |
Tags: user, role, editor, security, access, permission, capability
|
5 |
Requires at least: 4.0
|
6 |
-
Tested up to: 4.
|
7 |
Stable tag: trunk
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
@@ -68,7 +68,7 @@ To read full FAQ section visit [this page](http://www.shinephp.com/user-role-edi
|
|
68 |
To read more about 'User Role Editor' visit [this page](http://www.shinephp.com/user-role-editor-wordpress-plugin/) at [shinephp.com](shinephp.com).
|
69 |
|
70 |
= Translations =
|
71 |
-
* Dutch:
|
72 |
* French: [Transifex](https://www.transifex.com);
|
73 |
* Hebrew: [atar4u](http://atar4u.com);
|
74 |
* Hungarian: Németh Balázs;
|
@@ -86,9 +86,18 @@ Some translations may be outdated. If you have better translation for some phras
|
|
86 |
|
87 |
== Changelog ==
|
88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
= 4.18.4 =
|
90 |
* 30.04.2015
|
91 |
-
* Calls to the
|
92 |
* Italian translation was updated. Thanks to Leo.
|
93 |
|
94 |
= 4.18.3 =
|
@@ -232,4 +241,4 @@ Click [here](http://role-editor.com/changelog)</a> to look at [the full list of
|
|
232 |
|
233 |
You can find more information about "User Role Editor" plugin at [this page](http://www.shinephp.com/user-role-editor-wordpress-plugin/)
|
234 |
|
235 |
-
I am ready to answer on your questions about plugin usage. Use [
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=vladimir%40shinephp%2ecom&lc=RU&item_name=ShinePHP%2ecom&item_number=User%20Role%20Editor%20WordPress%20plugin¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted
|
4 |
Tags: user, role, editor, security, access, permission, capability
|
5 |
Requires at least: 4.0
|
6 |
+
Tested up to: 4.3
|
7 |
Stable tag: trunk
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
68 |
To read more about 'User Role Editor' visit [this page](http://www.shinephp.com/user-role-editor-wordpress-plugin/) at [shinephp.com](shinephp.com).
|
69 |
|
70 |
= Translations =
|
71 |
+
* Dutch: Gerhard Hoogterp;
|
72 |
* French: [Transifex](https://www.transifex.com);
|
73 |
* Hebrew: [atar4u](http://atar4u.com);
|
74 |
* Hungarian: Németh Balázs;
|
86 |
|
87 |
== Changelog ==
|
88 |
|
89 |
+
= 4.19 =
|
90 |
+
* 30.07.2015
|
91 |
+
* It is possible to assign to the user multiple roles directly through a user profile edit page.
|
92 |
+
* Custom SQL-query (checked if the role is in use and slow on the huge data) was excluded and replaced with WordPress built-in function call. [Thanks to Aaron](https://wordpress.org/support/topic/poorly-scaling-queries).
|
93 |
+
* Bulk role assignment to the users without role was rewritten for cases with a huge quant of users. It processes just 50 users without role for the one request to return the answer from the server in the short time. The related code was extracted to the separate class.
|
94 |
+
* Code to fix JavaScript and CSS compatibility issues introduced by other plugins and themes, which load its stuff globally, was extracted into the separate class.
|
95 |
+
* Custom filters were added: 'ure_full_capabilites' - takes 1 input parameter, array with a full list of user capabilities visible at URE, 'ure_built_in_wp_caps' - takes 1 input parameter, array with a list of WordPress core user capabilities. These filters may be useful if you give access to the URE for some not administrator user, and wish to change the list of capabilities which are available to him at URE.
|
96 |
+
* Dutch translation was updated. Thanks to Gerhard Hoogterp.
|
97 |
+
|
98 |
= 4.18.4 =
|
99 |
* 30.04.2015
|
100 |
+
* Calls to the function add_query_arg() is properly escaped with esc_url_raw() to exclude potential XSS vulnerabilities. Nothing critical: both calls of add_query_arg() are placed at the unused sections of the code.
|
101 |
* Italian translation was updated. Thanks to Leo.
|
102 |
|
103 |
= 4.18.3 =
|
241 |
|
242 |
You can find more information about "User Role Editor" plugin at [this page](http://www.shinephp.com/user-role-editor-wordpress-plugin/)
|
243 |
|
244 |
+
I am ready to answer on your questions about plugin usage. Use [plugin page comments](http://www.shinephp.com/user-role-editor-wordpress-plugin/) for that.
|
user-role-editor.php
CHANGED
@@ -1,20 +1,20 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: User Role Editor
|
4 |
-
Plugin URI:
|
5 |
Description: Change/add/delete WordPress user roles and capabilities.
|
6 |
-
Version: 4.
|
7 |
Author: Vladimir Garagulya
|
8 |
-
Author URI:
|
9 |
Text Domain: ure
|
10 |
Domain Path: /lang/
|
11 |
*/
|
12 |
|
13 |
/*
|
14 |
-
Copyright 2010-
|
15 |
*/
|
16 |
|
17 |
-
if (!function_exists(
|
18 |
header('HTTP/1.0 403 Forbidden');
|
19 |
die; // Silence is golden, direct call is prohibited
|
20 |
}
|
@@ -23,7 +23,7 @@ if (defined('URE_PLUGIN_URL')) {
|
|
23 |
wp_die('It seems that other version of User Role Editor is active. Please deactivate it before use this version');
|
24 |
}
|
25 |
|
26 |
-
define('URE_VERSION', '4.
|
27 |
define('URE_PLUGIN_URL', plugin_dir_url(__FILE__));
|
28 |
define('URE_PLUGIN_DIR', plugin_dir_path(__FILE__));
|
29 |
define('URE_PLUGIN_BASE_NAME', plugin_basename(__FILE__));
|
@@ -42,15 +42,19 @@ $exit_msg = sprintf( 'User Role Editor requires PHP %s or newer.', $ure_required
|
|
42 |
Ure_Lib::check_version( PHP_VERSION, $ure_required_php_version, $exit_msg, __FILE__ );
|
43 |
|
44 |
// check WP version
|
45 |
-
$ure_required_wp_version = '
|
46 |
$exit_msg = sprintf( 'User Role Editor requires WordPress %s or newer.', $ure_required_wp_version ) .
|
47 |
'<a href="http://codex.wordpress.org/Upgrading_WordPress"> ' . 'Please update!' . '</a>';
|
48 |
Ure_Lib::check_version(get_bloginfo('version'), $ure_required_wp_version, $exit_msg, __FILE__ );
|
49 |
|
50 |
require_once(URE_PLUGIN_DIR .'includes/define-constants.php');
|
51 |
require_once(URE_PLUGIN_DIR .'includes/misc-support-stuff.php');
|
|
|
|
|
|
|
52 |
require_once(URE_PLUGIN_DIR .'includes/class-ure-screen-help.php');
|
53 |
-
require_once(
|
|
|
54 |
|
55 |
|
56 |
$ure_lib = new Ure_Lib('user_role_editor');
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: User Role Editor
|
4 |
+
Plugin URI: https://www.role-editor.com
|
5 |
Description: Change/add/delete WordPress user roles and capabilities.
|
6 |
+
Version: 4.19
|
7 |
Author: Vladimir Garagulya
|
8 |
+
Author URI: https://www.role-editor.com
|
9 |
Text Domain: ure
|
10 |
Domain Path: /lang/
|
11 |
*/
|
12 |
|
13 |
/*
|
14 |
+
Copyright 2010-2015 Vladimir Garagulya (email: support@role-editor.com)
|
15 |
*/
|
16 |
|
17 |
+
if (!function_exists('get_option')) {
|
18 |
header('HTTP/1.0 403 Forbidden');
|
19 |
die; // Silence is golden, direct call is prohibited
|
20 |
}
|
23 |
wp_die('It seems that other version of User Role Editor is active. Please deactivate it before use this version');
|
24 |
}
|
25 |
|
26 |
+
define('URE_VERSION', '4.19');
|
27 |
define('URE_PLUGIN_URL', plugin_dir_url(__FILE__));
|
28 |
define('URE_PLUGIN_DIR', plugin_dir_path(__FILE__));
|
29 |
define('URE_PLUGIN_BASE_NAME', plugin_basename(__FILE__));
|
42 |
Ure_Lib::check_version( PHP_VERSION, $ure_required_php_version, $exit_msg, __FILE__ );
|
43 |
|
44 |
// check WP version
|
45 |
+
$ure_required_wp_version = '4.0';
|
46 |
$exit_msg = sprintf( 'User Role Editor requires WordPress %s or newer.', $ure_required_wp_version ) .
|
47 |
'<a href="http://codex.wordpress.org/Upgrading_WordPress"> ' . 'Please update!' . '</a>';
|
48 |
Ure_Lib::check_version(get_bloginfo('version'), $ure_required_wp_version, $exit_msg, __FILE__ );
|
49 |
|
50 |
require_once(URE_PLUGIN_DIR .'includes/define-constants.php');
|
51 |
require_once(URE_PLUGIN_DIR .'includes/misc-support-stuff.php');
|
52 |
+
require_once(URE_PLUGIN_DIR .'includes/class-assign-role.php');
|
53 |
+
require_once(URE_PLUGIN_DIR .'includes/class-user-other-roles.php');
|
54 |
+
require_once(URE_PLUGIN_DIR .'includes/class-ajax-processor.php');
|
55 |
require_once(URE_PLUGIN_DIR .'includes/class-ure-screen-help.php');
|
56 |
+
require_once(URE_PLUGIN_DIR .'includes/class-known-js-css-compatibility-issues.php');
|
57 |
+
require_once(URE_PLUGIN_DIR .'includes/class-user-role-editor.php');
|
58 |
|
59 |
|
60 |
$ure_lib = new Ure_Lib('user_role_editor');
|