Version Description
- Replaced AAM Post Filter extension with core option "Large Post Number Support"
- Removed redundant HTML permalink support
- Visually highlighted editing role or user is administrator
- Hide restricted actions for roles and users on User/Role Panel
- Minor UI improvements
- Significant improvements to post & pages access inheritance mechanism
- Optimized caching mechanism
- Fixed bug with post frontend access
Download this release
Release Info
Developer | vasyl_m |
Plugin | Advanced Access Manager |
Version | 3.9.1 |
Comparing to | |
See all releases |
Code changes from version 3.9 to 3.9.1
- Application/Backend/Feature/Post.php +1 -4
- Application/Backend/Feature/ProductList.php +0 -9
- Application/Backend/Feature/Role.php +7 -2
- Application/Backend/Feature/User.php +12 -13
- Application/Backend/Filter.php +60 -20
- Application/Backend/Manager.php +11 -6
- Application/Backend/phtml/extension.phtml +5 -5
- Application/Backend/phtml/index.phtml +3 -36
- Application/Backend/phtml/object/capability.phtml +2 -4
- Application/Backend/phtml/object/menu.phtml +11 -10
- Application/Backend/phtml/object/metabox.phtml +4 -2
- Application/Backend/phtml/object/post.phtml +10 -7
- Application/Backend/phtml/utility.phtml +13 -2
- Application/Core/API.php +18 -1
- Application/Core/Cache.php +9 -6
- Application/Core/Object.php +26 -10
- Application/Core/Object/Menu.php +2 -1
- Application/Core/Object/Metabox.php +2 -1
- Application/Core/Object/Post.php +5 -22
- Application/Core/Repository.php +3 -2
- Application/Core/Server.php +4 -1
- Application/Core/Subject.php +3 -1
- Application/Core/Subject/Role.php +1 -1
- Application/Frontend/Manager.php +68 -1
- Lang/advanced-access-manager-en_US.mo +0 -0
- Lang/advanced-access-manager-en_US.po +297 -286
- Lang/advanced-access-manager.pot +297 -286
- aam.php +1 -1
- license.txt +1 -1
- media/css/aam.css +4 -0
- media/js/aam-ui.js +44 -63
- media/js/aam.js +12 -3
- readme.txt +12 -2
Application/Backend/Feature/Post.php
CHANGED
@@ -232,10 +232,7 @@ class AAM_Backend_Feature_Post extends AAM_Backend_Feature_Abstract {
|
|
232 |
//prepare the response object
|
233 |
if ($object instanceof AAM_Core_Object) {
|
234 |
$access = $object->getOption();
|
235 |
-
$metadata = array(
|
236 |
-
'inherited' => $object->getInherited(),
|
237 |
-
'overwritten' => $object->isOverwritten()
|
238 |
-
);
|
239 |
} else {
|
240 |
$access = $metadata = array();
|
241 |
}
|
232 |
//prepare the response object
|
233 |
if ($object instanceof AAM_Core_Object) {
|
234 |
$access = $object->getOption();
|
235 |
+
$metadata = array('overwritten' => $object->isOverwritten());
|
|
|
|
|
|
|
236 |
} else {
|
237 |
$access = $metadata = array();
|
238 |
}
|
Application/Backend/Feature/ProductList.php
CHANGED
@@ -80,15 +80,6 @@ return array(
|
|
80 |
'status' => AAM_Core_Repository::getInstance()->extensionStatus('AAM Multisite'),
|
81 |
'version' => AAM_Core_Repository::getInstance()->getExtensionVersion('AAM Multisite')
|
82 |
),
|
83 |
-
array(
|
84 |
-
'title' => 'AAM Post Filter',
|
85 |
-
'id' => 'AAM Post Filter',
|
86 |
-
'type' => 'GNU',
|
87 |
-
'license' => 'AAMPOSTFILTER',
|
88 |
-
'description' => AAM_Backend_View_Helper::preparePhrase('[WARNING!] Please use with caution. This is a supportive exension for the post access option [LIST]. It adds additional post filtering to fix the issue with large amount of posts.', 'strong', 'strong'),
|
89 |
-
'status' => AAM_Core_Repository::getInstance()->extensionStatus('AAM Post Filter'),
|
90 |
-
'version' => AAM_Core_Repository::getInstance()->getExtensionVersion('AAM Post Filter')
|
91 |
-
),
|
92 |
array(
|
93 |
'title' => 'CodePinch',
|
94 |
'id' => 'WP Error Fix',
|
80 |
'status' => AAM_Core_Repository::getInstance()->extensionStatus('AAM Multisite'),
|
81 |
'version' => AAM_Core_Repository::getInstance()->getExtensionVersion('AAM Multisite')
|
82 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
array(
|
84 |
'title' => 'CodePinch',
|
85 |
'id' => 'WP Error Fix',
|
Application/Backend/Feature/Role.php
CHANGED
@@ -61,7 +61,8 @@ class AAM_Backend_Feature_Role {
|
|
61 |
$id,
|
62 |
$uc,
|
63 |
translate_user_role($data['name']),
|
64 |
-
'manage,edit,clone' . ($uc || !$allow ? '
|
|
|
65 |
);
|
66 |
}
|
67 |
|
@@ -121,7 +122,11 @@ class AAM_Backend_Feature_Role {
|
|
121 |
if ($role = $roles->add_role($role_id, $name, $caps)) {
|
122 |
$response = array(
|
123 |
'status' => 'success',
|
124 |
-
'role' =>
|
|
|
|
|
|
|
|
|
125 |
);
|
126 |
if (AAM_Core_Request::post('clone')) {
|
127 |
$this->cloneSettings($role, $parent);
|
61 |
$id,
|
62 |
$uc,
|
63 |
translate_user_role($data['name']),
|
64 |
+
'manage,edit,clone' . ($uc || !$allow ? '' : ',delete'),
|
65 |
+
AAM_Core_API::maxLevel($data['capabilities'])
|
66 |
);
|
67 |
}
|
68 |
|
122 |
if ($role = $roles->add_role($role_id, $name, $caps)) {
|
123 |
$response = array(
|
124 |
'status' => 'success',
|
125 |
+
'role' => array(
|
126 |
+
'id' => $role_id,
|
127 |
+
'name' => $name,
|
128 |
+
'level' => AAM_Core_API::maxLevel($caps)
|
129 |
+
)
|
130 |
);
|
131 |
if (AAM_Core_Request::post('clone')) {
|
132 |
$this->cloneSettings($role, $parent);
|
Application/Backend/Feature/User.php
CHANGED
@@ -41,14 +41,14 @@ class AAM_Backend_Feature_User {
|
|
41 |
*/
|
42 |
public function getTable() {
|
43 |
//get total number of users
|
44 |
-
$total
|
45 |
$result = $this->query();
|
46 |
|
47 |
$response = array(
|
48 |
-
'recordsTotal'
|
49 |
'recordsFiltered' => $result->get_total(),
|
50 |
-
'draw'
|
51 |
-
'data'
|
52 |
);
|
53 |
|
54 |
foreach ($result->get_results() as $user) {
|
@@ -56,7 +56,8 @@ class AAM_Backend_Feature_User {
|
|
56 |
$user->ID,
|
57 |
implode(', ', $this->getUserRoles($user->roles)),
|
58 |
($user->display_name ? $user->display_name : $user->user_nicename),
|
59 |
-
implode(',', $this->prepareRowActions($user))
|
|
|
60 |
);
|
61 |
}
|
62 |
|
@@ -107,7 +108,7 @@ class AAM_Backend_Feature_User {
|
|
107 |
$actions[] = 'edit';
|
108 |
$actions[] = 'switch';
|
109 |
} else {
|
110 |
-
$actions = array(
|
111 |
}
|
112 |
|
113 |
return $actions;
|
@@ -126,18 +127,16 @@ class AAM_Backend_Feature_User {
|
|
126 |
$search = trim(AAM_Core_Request::request('search.value'));
|
127 |
|
128 |
$args = array(
|
129 |
-
'number' => '',
|
130 |
'blog_id' => get_current_blog_id(),
|
131 |
-
'
|
132 |
-
'
|
133 |
-
'
|
134 |
-
'
|
135 |
-
'search' => ($search ? $search . '*' : ''),
|
136 |
'search_columns' => array(
|
137 |
'user_login', 'user_email', 'display_name'
|
138 |
),
|
139 |
'orderby' => 'user_nicename',
|
140 |
-
'order'
|
141 |
);
|
142 |
|
143 |
return new WP_User_Query($args);
|
41 |
*/
|
42 |
public function getTable() {
|
43 |
//get total number of users
|
44 |
+
$total = count_users();
|
45 |
$result = $this->query();
|
46 |
|
47 |
$response = array(
|
48 |
+
'recordsTotal' => $total['total_users'],
|
49 |
'recordsFiltered' => $result->get_total(),
|
50 |
+
'draw' => AAM_Core_Request::request('draw'),
|
51 |
+
'data' => array(),
|
52 |
);
|
53 |
|
54 |
foreach ($result->get_results() as $user) {
|
56 |
$user->ID,
|
57 |
implode(', ', $this->getUserRoles($user->roles)),
|
58 |
($user->display_name ? $user->display_name : $user->user_nicename),
|
59 |
+
implode(',', $this->prepareRowActions($user)),
|
60 |
+
AAM_Core_API::maxLevel($user->allcaps)
|
61 |
);
|
62 |
}
|
63 |
|
108 |
$actions[] = 'edit';
|
109 |
$actions[] = 'switch';
|
110 |
} else {
|
111 |
+
$actions = array();
|
112 |
}
|
113 |
|
114 |
return $actions;
|
127 |
$search = trim(AAM_Core_Request::request('search.value'));
|
128 |
|
129 |
$args = array(
|
|
|
130 |
'blog_id' => get_current_blog_id(),
|
131 |
+
'fields' => 'all',
|
132 |
+
'number' => AAM_Core_Request::request('length'),
|
133 |
+
'offset' => AAM_Core_Request::request('start'),
|
134 |
+
'search' => ($search ? $search . '*' : ''),
|
|
|
135 |
'search_columns' => array(
|
136 |
'user_login', 'user_email', 'display_name'
|
137 |
),
|
138 |
'orderby' => 'user_nicename',
|
139 |
+
'order' => 'ASC'
|
140 |
);
|
141 |
|
142 |
return new WP_User_Query($args);
|
Application/Backend/Filter.php
CHANGED
@@ -23,6 +23,11 @@ class AAM_Backend_Filter {
|
|
23 |
* @access private
|
24 |
*/
|
25 |
private static $_instance = null;
|
|
|
|
|
|
|
|
|
|
|
26 |
|
27 |
/**
|
28 |
* Initialize backend filters
|
@@ -46,14 +51,14 @@ class AAM_Backend_Filter {
|
|
46 |
add_filter('post_row_actions', array($this, 'postRowActions'), 10, 2);
|
47 |
add_action('admin_action_edit', array($this, 'adminActionEdit'));
|
48 |
|
49 |
-
//control permalink editing
|
50 |
-
add_filter('get_sample_permalink_html', array($this, 'permalinkHTML'));
|
51 |
-
|
52 |
//wp die hook
|
53 |
add_filter('wp_die_handler', array($this, 'backendDie'));
|
54 |
|
55 |
//add post filter for LIST restriction
|
56 |
add_filter('the_posts', array($this, 'thePosts'), 999, 2);
|
|
|
|
|
|
|
57 |
|
58 |
//some additional filter for user capabilities
|
59 |
add_filter('user_has_cap', array($this, 'checkUserCap'), 999, 4);
|
@@ -241,23 +246,6 @@ class AAM_Backend_Filter {
|
|
241 |
return $function;
|
242 |
}
|
243 |
|
244 |
-
/**
|
245 |
-
* Control edit permalink feature
|
246 |
-
*
|
247 |
-
* @param string $html
|
248 |
-
*
|
249 |
-
* @return string
|
250 |
-
*/
|
251 |
-
public function permalinkHTML($html) {
|
252 |
-
if (AAM_Core_Config::get('control_permalink') === 'true') {
|
253 |
-
if (AAM::getUser()->hasCapability('manage_permalink') === false) {
|
254 |
-
$html = '';
|
255 |
-
}
|
256 |
-
}
|
257 |
-
|
258 |
-
return $html;
|
259 |
-
}
|
260 |
-
|
261 |
/**
|
262 |
* Filter posts from the list
|
263 |
*
|
@@ -287,6 +275,58 @@ class AAM_Backend_Filter {
|
|
287 |
return $filtered;
|
288 |
}
|
289 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
290 |
/**
|
291 |
* Check user capability
|
292 |
*
|
23 |
* @access private
|
24 |
*/
|
25 |
private static $_instance = null;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* pre_get_posts flag
|
29 |
+
*/
|
30 |
+
protected $skip = false;
|
31 |
|
32 |
/**
|
33 |
* Initialize backend filters
|
51 |
add_filter('post_row_actions', array($this, 'postRowActions'), 10, 2);
|
52 |
add_action('admin_action_edit', array($this, 'adminActionEdit'));
|
53 |
|
|
|
|
|
|
|
54 |
//wp die hook
|
55 |
add_filter('wp_die_handler', array($this, 'backendDie'));
|
56 |
|
57 |
//add post filter for LIST restriction
|
58 |
add_filter('the_posts', array($this, 'thePosts'), 999, 2);
|
59 |
+
if (AAM_Core_Config::get('large-post-number', false)) {
|
60 |
+
add_action('pre_get_posts', array($this, 'preparePostQuery'));
|
61 |
+
}
|
62 |
|
63 |
//some additional filter for user capabilities
|
64 |
add_filter('user_has_cap', array($this, 'checkUserCap'), 999, 4);
|
246 |
return $function;
|
247 |
}
|
248 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
249 |
/**
|
250 |
* Filter posts from the list
|
251 |
*
|
275 |
return $filtered;
|
276 |
}
|
277 |
|
278 |
+
/**
|
279 |
+
*
|
280 |
+
* @param type $query
|
281 |
+
*/
|
282 |
+
public function preparePostQuery($query) {
|
283 |
+
if ($this->skip === false) {
|
284 |
+
$filtered = array();
|
285 |
+
|
286 |
+
foreach ($this->fetchPosts($query) as $id) {
|
287 |
+
if (AAM::getUser()->getObject('post', $id)->has('backend.list')) {
|
288 |
+
$filtered[] = $id;
|
289 |
+
}
|
290 |
+
}
|
291 |
+
|
292 |
+
if (isset($query->query_vars['post__not_in'])) {
|
293 |
+
$query->query_vars['post__not_in'] = array_merge(
|
294 |
+
$query->query_vars['post__not_in'], $filtered
|
295 |
+
);
|
296 |
+
} else {
|
297 |
+
$query->query_vars['post__not_in'] = $filtered;
|
298 |
+
}
|
299 |
+
}
|
300 |
+
}
|
301 |
+
|
302 |
+
/**
|
303 |
+
*
|
304 |
+
* @param type $query
|
305 |
+
* @return type
|
306 |
+
*/
|
307 |
+
protected function fetchPosts($query) {
|
308 |
+
$this->skip = true;
|
309 |
+
|
310 |
+
if (!empty($query->query['post_type'])) {
|
311 |
+
$postType = $query->query['post_type'];
|
312 |
+
} elseif (!empty($query->query_vars['post_type'])) {
|
313 |
+
$postType = $query->query_vars['post_type'];
|
314 |
+
} else {
|
315 |
+
$postType = 'post';
|
316 |
+
}
|
317 |
+
|
318 |
+
$posts = get_posts(array(
|
319 |
+
'post_type' => (is_string($postType) ? $postType : 'post'),
|
320 |
+
'numberposts' => -1,
|
321 |
+
'fields' => 'ids',
|
322 |
+
'post_status' => 'any'
|
323 |
+
));
|
324 |
+
|
325 |
+
$this->skip = false;
|
326 |
+
|
327 |
+
return $posts;
|
328 |
+
}
|
329 |
+
|
330 |
/**
|
331 |
* Check user capability
|
332 |
*
|
Application/Backend/Manager.php
CHANGED
@@ -333,10 +333,12 @@ class AAM_Backend_Manager {
|
|
333 |
'editUser' => admin_url('user-edit.php'),
|
334 |
'addUser' => admin_url('user-new.php')
|
335 |
),
|
|
|
336 |
'subject' => array(
|
337 |
'type' => $subject->type,
|
338 |
'id' => $subject->id,
|
339 |
'name' => $subject->name,
|
|
|
340 |
'blog' => get_current_blog_id()
|
341 |
),
|
342 |
'translation' => require (dirname(__FILE__) . '/View/Localization.php')
|
@@ -355,18 +357,21 @@ class AAM_Backend_Manager {
|
|
355 |
if ($userId) {
|
356 |
$u = get_user_by('id', $userId);
|
357 |
$subject = array(
|
358 |
-
'type'
|
359 |
-
'id'
|
360 |
-
'name'
|
|
|
361 |
);
|
362 |
} else {
|
363 |
$roles = array_keys(get_editable_roles());
|
364 |
-
$
|
|
|
365 |
|
366 |
$subject = array(
|
367 |
'type' => 'role',
|
368 |
-
'id' => $
|
369 |
-
'name' =>
|
|
|
370 |
);
|
371 |
}
|
372 |
|
333 |
'editUser' => admin_url('user-edit.php'),
|
334 |
'addUser' => admin_url('user-new.php')
|
335 |
),
|
336 |
+
'level' => AAM_Core_API::maxLevel(wp_get_current_user()->allcaps),
|
337 |
'subject' => array(
|
338 |
'type' => $subject->type,
|
339 |
'id' => $subject->id,
|
340 |
'name' => $subject->name,
|
341 |
+
'level' => $subject->level,
|
342 |
'blog' => get_current_blog_id()
|
343 |
),
|
344 |
'translation' => require (dirname(__FILE__) . '/View/Localization.php')
|
357 |
if ($userId) {
|
358 |
$u = get_user_by('id', $userId);
|
359 |
$subject = array(
|
360 |
+
'type' => 'user',
|
361 |
+
'id' => $userId,
|
362 |
+
'name' => ($u->display_name ? $u->display_name : $u->user_nicename),
|
363 |
+
'level' => AAM_Core_API::maxLevel($u->allcaps)
|
364 |
);
|
365 |
} else {
|
366 |
$roles = array_keys(get_editable_roles());
|
367 |
+
$id = array_shift($roles);
|
368 |
+
$role = AAM_Core_API::getRoles()->get_role($id);
|
369 |
|
370 |
$subject = array(
|
371 |
'type' => 'role',
|
372 |
+
'id' => $id,
|
373 |
+
'name' => $role->name,
|
374 |
+
'level' => AAM_Core_API::maxLevel($role->capabilities)
|
375 |
);
|
376 |
}
|
377 |
|
Application/Backend/phtml/extension.phtml
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
</div>
|
9 |
</div>
|
10 |
|
11 |
-
<label for="extension-key"><?php echo __('Install Extension', AAM_KEY); ?> <a href="#install-extension-modal" data-toggle="modal"><i class="icon-help-circled"></i></a></label>
|
12 |
<div class="row">
|
13 |
<div class="col-xs-8">
|
14 |
<div class="form-group">
|
@@ -16,7 +16,7 @@
|
|
16 |
</div>
|
17 |
</div>
|
18 |
<div class="col-xs-4">
|
19 |
-
<button class="btn btn-primary btn-block" id="install-extension"><i class="icon-download-cloud"></i> <?php echo __('
|
20 |
</div>
|
21 |
</div>
|
22 |
|
@@ -118,15 +118,15 @@
|
|
118 |
<h4 class="modal-title"><?php echo __('Notification', AAM_KEY); ?></h4>
|
119 |
</div>
|
120 |
<div class="modal-body">
|
121 |
-
<p class="
|
122 |
-
<strong><span id="installation-error"></span
|
123 |
</p>
|
124 |
|
125 |
<ul class="aam-outer-top-xs aam-numeric-list">
|
126 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Click [Download] button below and save the zip archive on your computer', 'b'); ?>;</li>
|
127 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Connect to your website via FTP and navigate to [wp-content] folder', 'b'); ?>;</li>
|
128 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Create [aam/extension] folder inside [wp-content] and make sure it is writable by your server', 'b', 'b'); ?>;</li>
|
129 |
-
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Unzip downloaded archive and
|
130 |
</ul>
|
131 |
</div>
|
132 |
<div class="modal-footer">
|
8 |
</div>
|
9 |
</div>
|
10 |
|
11 |
+
<label for="extension-key"><?php echo __('Install/Update Extension', AAM_KEY); ?> <a href="#install-extension-modal" data-toggle="modal"><i class="icon-help-circled"></i></a></label>
|
12 |
<div class="row">
|
13 |
<div class="col-xs-8">
|
14 |
<div class="form-group">
|
16 |
</div>
|
17 |
</div>
|
18 |
<div class="col-xs-4">
|
19 |
+
<button class="btn btn-primary btn-block" id="install-extension"><i class="icon-download-cloud"></i> <?php echo __('Submit', AAM_KEY); ?></button>
|
20 |
</div>
|
21 |
</div>
|
22 |
|
118 |
<h4 class="modal-title"><?php echo __('Notification', AAM_KEY); ?></h4>
|
119 |
</div>
|
120 |
<div class="modal-body">
|
121 |
+
<p class="aam-notification">
|
122 |
+
<strong><span id="installation-error"></span></strong> <?php echo __('Extension requires manual installation. Please follow few simple steps below.', AAM_KEY); ?>
|
123 |
</p>
|
124 |
|
125 |
<ul class="aam-outer-top-xs aam-numeric-list">
|
126 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Click [Download] button below and save the zip archive on your computer', 'b'); ?>;</li>
|
127 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Connect to your website via FTP and navigate to [wp-content] folder', 'b'); ?>;</li>
|
128 |
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Create [aam/extension] folder inside [wp-content] and make sure it is writable by your server', 'b', 'b'); ?>;</li>
|
129 |
+
<li><?php echo AAM_Backend_View_Helper::preparePhrase('Unzip downloaded archive and upload the folder inside the [wp-content/aam/extension] folder', 'b'); ?>.</li>
|
130 |
</ul>
|
131 |
</div>
|
132 |
<div class="modal-footer">
|
Application/Backend/phtml/index.phtml
CHANGED
@@ -75,7 +75,7 @@
|
|
75 |
|
76 |
<div class="postbox">
|
77 |
<h3 class="hndle">
|
78 |
-
<span><?php echo __('
|
79 |
<span class="aam-help-menu" data-target="#user-role-manager-inside"><i class="icon-help-circled"></i></span>
|
80 |
</h3>
|
81 |
<div class="inside" id="user-role-manager-inside">
|
@@ -94,6 +94,7 @@
|
|
94 |
<th>Users</th>
|
95 |
<th width="65%"><?php echo __('Role', AAM_KEY); ?></th>
|
96 |
<th><?php echo __('Action', AAM_KEY); ?></th>
|
|
|
97 |
</tr>
|
98 |
</thead>
|
99 |
<tbody></tbody>
|
@@ -160,24 +161,6 @@
|
|
160 |
</div>
|
161 |
</div>
|
162 |
</div>
|
163 |
-
|
164 |
-
<div class="modal fade" id="role-notification-modal" tabindex="-1" role="dialog">
|
165 |
-
<div class="modal-dialog modal-sm" role="document">
|
166 |
-
<div class="modal-content">
|
167 |
-
<div class="modal-header">
|
168 |
-
<button type="button" class="close" data-dismiss="modal" aria-label="<?php echo __('Close', AAM_KEY); ?>"><span aria-hidden="true">×</span></button>
|
169 |
-
<h4 class="modal-title"><?php echo __('Notification', AAM_KEY); ?></h4>
|
170 |
-
</div>
|
171 |
-
<div class="modal-body">
|
172 |
-
<p class="text-larger"><?php echo __('You are not allowed to delete this role because either you do not have a capability to "delete_users" or there is at least one user assigned to it.', AAM_KEY); ?></p>
|
173 |
-
</div>
|
174 |
-
<div class="modal-footer">
|
175 |
-
<button type="button" class="btn btn-default" data-dismiss="modal"><?php echo __('OK', AAM_KEY); ?></button>
|
176 |
-
</div>
|
177 |
-
</div>
|
178 |
-
</div>
|
179 |
-
</div>
|
180 |
-
|
181 |
</div>
|
182 |
<div role="tabpanel" class="tab-pane" id="users">
|
183 |
<table id="user-list" class="table table-striped table-bordered">
|
@@ -187,27 +170,11 @@
|
|
187 |
<th>Roles</th>
|
188 |
<th width="65%"><?php echo __('Username', AAM_KEY); ?></th>
|
189 |
<th><?php echo __('Action', AAM_KEY); ?></th>
|
|
|
190 |
</tr>
|
191 |
</thead>
|
192 |
<tbody></tbody>
|
193 |
</table>
|
194 |
-
|
195 |
-
<div class="modal fade" id="user-notification-modal" tabindex="-1" role="dialog">
|
196 |
-
<div class="modal-dialog modal-sm" role="document">
|
197 |
-
<div class="modal-content">
|
198 |
-
<div class="modal-header">
|
199 |
-
<button type="button" class="close" data-dismiss="modal" aria-label="<?php echo __('Close', AAM_KEY); ?>"><span aria-hidden="true">×</span></button>
|
200 |
-
<h4 class="modal-title"><?php echo __('Notification', AAM_KEY); ?></h4>
|
201 |
-
</div>
|
202 |
-
<div class="modal-body">
|
203 |
-
<p class="text-center aam-notification-message"><?php echo __('You are not allowed to perform this action.', AAM_KEY); ?></p>
|
204 |
-
</div>
|
205 |
-
<div class="modal-footer">
|
206 |
-
<button type="button" class="btn btn-default" data-dismiss="modal"><?php echo __('OK', AAM_KEY); ?></button>
|
207 |
-
</div>
|
208 |
-
</div>
|
209 |
-
</div>
|
210 |
-
</div>
|
211 |
</div>
|
212 |
<div role="tabpanel" class="tab-pane" id="visitor">
|
213 |
<div class="visitor-message">
|
75 |
|
76 |
<div class="postbox">
|
77 |
<h3 class="hndle">
|
78 |
+
<span><?php echo __('Users/Roles Panel', AAM_KEY); ?></span>
|
79 |
<span class="aam-help-menu" data-target="#user-role-manager-inside"><i class="icon-help-circled"></i></span>
|
80 |
</h3>
|
81 |
<div class="inside" id="user-role-manager-inside">
|
94 |
<th>Users</th>
|
95 |
<th width="65%"><?php echo __('Role', AAM_KEY); ?></th>
|
96 |
<th><?php echo __('Action', AAM_KEY); ?></th>
|
97 |
+
<th>Level</th>
|
98 |
</tr>
|
99 |
</thead>
|
100 |
<tbody></tbody>
|
161 |
</div>
|
162 |
</div>
|
163 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
</div>
|
165 |
<div role="tabpanel" class="tab-pane" id="users">
|
166 |
<table id="user-list" class="table table-striped table-bordered">
|
170 |
<th>Roles</th>
|
171 |
<th width="65%"><?php echo __('Username', AAM_KEY); ?></th>
|
172 |
<th><?php echo __('Action', AAM_KEY); ?></th>
|
173 |
+
<th>Level</th>
|
174 |
</tr>
|
175 |
</thead>
|
176 |
<tbody></tbody>
|
177 |
</table>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
</div>
|
179 |
<div role="tabpanel" class="tab-pane" id="visitor">
|
180 |
<div class="visitor-message">
|
Application/Backend/phtml/object/capability.phtml
CHANGED
@@ -73,7 +73,7 @@
|
|
73 |
<label for="capability-id"><?php echo __('Capability', AAM_KEY); ?><span class="aam-asterix">*</span></label>
|
74 |
<input type="text" class="form-control" id="capability-id" placeholder="<?php echo __('Enter Capability', AAM_KEY); ?>" />
|
75 |
</div>
|
76 |
-
<p class="aam-info aam-hint"><?php echo AAM_Backend_View_Helper::preparePhrase('[Please
|
77 |
</div>
|
78 |
<div class="modal-footer">
|
79 |
<button type="button" class="btn btn-warning" id="update-capability-btn"><?php echo __('Update', AAM_KEY); ?></button>
|
@@ -100,7 +100,5 @@
|
|
100 |
</div>
|
101 |
</div>
|
102 |
</div>
|
103 |
-
|
104 |
</div>
|
105 |
-
|
106 |
-
}
|
73 |
<label for="capability-id"><?php echo __('Capability', AAM_KEY); ?><span class="aam-asterix">*</span></label>
|
74 |
<input type="text" class="form-control" id="capability-id" placeholder="<?php echo __('Enter Capability', AAM_KEY); ?>" />
|
75 |
</div>
|
76 |
+
<p class="aam-info aam-hint"><?php echo AAM_Backend_View_Helper::preparePhrase('[Please note!] Capability will be updated for all roles. Any functionality that depends on this capability may not work properly.', 'strong'); ?></p>
|
77 |
</div>
|
78 |
<div class="modal-footer">
|
79 |
<button type="button" class="btn btn-warning" id="update-capability-btn"><?php echo __('Update', AAM_KEY); ?></button>
|
100 |
</div>
|
101 |
</div>
|
102 |
</div>
|
|
|
103 |
</div>
|
104 |
+
<?php }
|
|
Application/Backend/phtml/object/menu.phtml
CHANGED
@@ -1,21 +1,23 @@
|
|
1 |
<?php if (defined('AAM_KEY')) { ?>
|
2 |
<div class="aam-feature" id="admin_menu-content">
|
3 |
-
<div class="row
|
4 |
<div class="col-xs-12">
|
5 |
-
<
|
6 |
-
|
7 |
-
|
8 |
-
</div>
|
9 |
</div>
|
10 |
</div>
|
11 |
|
|
|
12 |
<div class="row">
|
13 |
<div class="col-xs-12">
|
14 |
-
<
|
15 |
-
<?php echo
|
16 |
-
|
|
|
17 |
</div>
|
18 |
</div>
|
|
|
19 |
|
20 |
<div class="panel-group" id="admin-menu" role="tablist" aria-multiselectable="true">
|
21 |
<?php
|
@@ -67,5 +69,4 @@
|
|
67 |
<?php } ?>
|
68 |
</div>
|
69 |
</div>
|
70 |
-
<?php
|
71 |
-
}
|
1 |
<?php if (defined('AAM_KEY')) { ?>
|
2 |
<div class="aam-feature" id="admin_menu-content">
|
3 |
+
<div class="row">
|
4 |
<div class="col-xs-12">
|
5 |
+
<p class="aam-info">
|
6 |
+
<?php echo sprintf(__('For more information about Backend Menu feature check %sManage Access To Backend Menu%s article.', AAM_KEY),'<a href="https://vasyltech.com/blog/manage-access-to-wordpress-backend-menu" target="_blank">', '</a>'); ?>
|
7 |
+
</p>
|
|
|
8 |
</div>
|
9 |
</div>
|
10 |
|
11 |
+
<?php if ($this->isOverwritten()) { ?>
|
12 |
<div class="row">
|
13 |
<div class="col-xs-12">
|
14 |
+
<div class="aam-overwrite">
|
15 |
+
<span><i class="icon-attention-circled"></i> <?php echo __('Settings are overwritten', AAM_KEY); ?></span>
|
16 |
+
<span><a href="#" id="menu-reset" class="btn btn-xs btn-danger"><?php echo __('Reset To Default', AAM_KEY); ?></a>
|
17 |
+
</div>
|
18 |
</div>
|
19 |
</div>
|
20 |
+
<?php } ?>
|
21 |
|
22 |
<div class="panel-group" id="admin-menu" role="tablist" aria-multiselectable="true">
|
23 |
<?php
|
69 |
<?php } ?>
|
70 |
</div>
|
71 |
</div>
|
72 |
+
<?php }
|
|
Application/Backend/phtml/object/metabox.phtml
CHANGED
@@ -5,14 +5,16 @@
|
|
5 |
<a href="#init-url-modal" class="btn btn-xs btn-primary" data-toggle="modal"><i class="icon-link"></i> <?php echo __('Init URL', AAM_KEY); ?></a>
|
6 |
</div>
|
7 |
|
8 |
-
|
|
|
9 |
<div class="col-xs-12">
|
10 |
<div class="aam-overwrite">
|
11 |
<span><i class="icon-attention-circled"></i> <?php echo __('Settings are overwritten', AAM_KEY); ?></span>
|
12 |
-
<span><a href="#" id="metabox-reset"><?php echo __('Reset', AAM_KEY); ?></a>
|
13 |
</div>
|
14 |
</div>
|
15 |
</div>
|
|
|
16 |
|
17 |
<?php
|
18 |
global $wp_post_types;
|
5 |
<a href="#init-url-modal" class="btn btn-xs btn-primary" data-toggle="modal"><i class="icon-link"></i> <?php echo __('Init URL', AAM_KEY); ?></a>
|
6 |
</div>
|
7 |
|
8 |
+
<?php if ($this->isOverwritten()) { ?>
|
9 |
+
<div class="row">
|
10 |
<div class="col-xs-12">
|
11 |
<div class="aam-overwrite">
|
12 |
<span><i class="icon-attention-circled"></i> <?php echo __('Settings are overwritten', AAM_KEY); ?></span>
|
13 |
+
<span><a href="#" id="metabox-reset" class="btn btn-xs btn-danger"><?php echo __('Reset To Default', AAM_KEY); ?></a>
|
14 |
</div>
|
15 |
</div>
|
16 |
</div>
|
17 |
+
<?php } ?>
|
18 |
|
19 |
<?php
|
20 |
global $wp_post_types;
|
Application/Backend/phtml/object/post.phtml
CHANGED
@@ -4,7 +4,15 @@
|
|
4 |
<div class="row">
|
5 |
<div class="col-xs-12">
|
6 |
<p class="aam-notification">
|
7 |
-
<?php echo AAM_Backend_View_Helper::preparePhrase('You are allowed to manage access up to 10 posts, pages or custom post types. Consider to purchase [AAM Plus Package] extension to unlock this limitation.', 'b'); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
</p>
|
9 |
</div>
|
10 |
</div>
|
@@ -24,12 +32,7 @@
|
|
24 |
|
25 |
<div class="aam-overwrite hidden" id="post-overwritten">
|
26 |
<span><i class="icon-attention-circled"></i> <?php echo __('Settings are overwritten', AAM_KEY); ?></span>
|
27 |
-
<span><a href="#" id="post-reset" class="btn btn-xs btn-danger"><?php echo __('Reset', AAM_KEY); ?></a></span>
|
28 |
-
</div>
|
29 |
-
|
30 |
-
<div class="aam-inherited hidden" id="post-inherited">
|
31 |
-
<span><?php echo __('Settings inherited from', AAM_KEY); ?> <strong id="post-parent"></strong></span>
|
32 |
-
<span></span>
|
33 |
</div>
|
34 |
|
35 |
<?php if (!is_null($current)) { ?>
|
4 |
<div class="row">
|
5 |
<div class="col-xs-12">
|
6 |
<p class="aam-notification">
|
7 |
+
<?php echo sprintf(AAM_Backend_View_Helper::preparePhrase('You are allowed to manage access up to 10 posts, pages or custom post types. Consider to purchase [AAM Plus Package] extension to unlock this limitation. For more information about post access control check %sthis article%s.', 'b'), '<a href="https://vasyltech.com/blog/manage-access-to-posts-and-pages" target="_blank">', '</a>'); ?>
|
8 |
+
</p>
|
9 |
+
</div>
|
10 |
+
</div>
|
11 |
+
<?php } else { ?>
|
12 |
+
<div class="row">
|
13 |
+
<div class="col-xs-12">
|
14 |
+
<p class="aam-info">
|
15 |
+
<?php echo sprintf(__('Learn more about post & pages access control from %sthis article%s.'), '<a href="https://vasyltech.com/blog/manage-access-to-posts-and-pages" target="_blank">', '</a>'); ?>
|
16 |
</p>
|
17 |
</div>
|
18 |
</div>
|
32 |
|
33 |
<div class="aam-overwrite hidden" id="post-overwritten">
|
34 |
<span><i class="icon-attention-circled"></i> <?php echo __('Settings are overwritten', AAM_KEY); ?></span>
|
35 |
+
<span><a href="#" id="post-reset" class="btn btn-xs btn-danger"><?php echo __('Reset To Default', AAM_KEY); ?></a></span>
|
|
|
|
|
|
|
|
|
|
|
36 |
</div>
|
37 |
|
38 |
<?php if (!is_null($current)) { ?>
|
Application/Backend/phtml/utility.phtml
CHANGED
@@ -55,6 +55,17 @@
|
|
55 |
<input data-toggle="toggle" data-on="<?php echo __('Enabled', AAM_KEY); ?>" data-off="<?php echo __('Disabled', AAM_KEY); ?>" type="checkbox" name="media-access-control" <?php echo (AAM_Core_Config::get('media-access-control', false) ? 'checked' : ''); ?> />
|
56 |
</td>
|
57 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
<?php do_action('aam-utilities-setting'); ?>
|
60 |
|
@@ -78,10 +89,10 @@
|
|
78 |
<div class="modal-content">
|
79 |
<div class="modal-header">
|
80 |
<button type="button" class="close" data-dismiss="modal" aria-label="<?php echo __('Close', AAM_KEY); ?>"><span aria-hidden="true">×</span></button>
|
81 |
-
<h4 class="modal-title"><?php echo __('Clear
|
82 |
</div>
|
83 |
<div class="modal-body">
|
84 |
-
<p class="text-center text-larger"><?php echo __('All settings
|
85 |
</div>
|
86 |
<div class="modal-footer">
|
87 |
<button type="button" class="btn btn-danger" id="clear-settings"><?php echo __('Clear', AAM_KEY); ?></button>
|
55 |
<input data-toggle="toggle" data-on="<?php echo __('Enabled', AAM_KEY); ?>" data-off="<?php echo __('Disabled', AAM_KEY); ?>" type="checkbox" name="media-access-control" <?php echo (AAM_Core_Config::get('media-access-control', false) ? 'checked' : ''); ?> />
|
56 |
</td>
|
57 |
</tr>
|
58 |
+
<tr>
|
59 |
+
<td>
|
60 |
+
<span class='aam-setting-title'><?php echo __('Large Post Number Support', AAM_KEY); ?></span>
|
61 |
+
<p class="aam-setting-description">
|
62 |
+
<?php echo AAM_Backend_View_Helper::preparePhrase('[Use cautiously!] With large amount of posts, a native WordPress pagination does not take in consideration AAM access settings. Enable this option if you restrict posts from LISTing on frontend or backend.', 'strong'); ?>
|
63 |
+
</p>
|
64 |
+
</td>
|
65 |
+
<td>
|
66 |
+
<input data-toggle="toggle" data-on="<?php echo __('Enabled', AAM_KEY); ?>" data-off="<?php echo __('Disabled', AAM_KEY); ?>" type="checkbox" name="large-post-number" <?php echo (AAM_Core_Config::get('large-post-number', false) ? 'checked' : ''); ?> />
|
67 |
+
</td>
|
68 |
+
</tr>
|
69 |
|
70 |
<?php do_action('aam-utilities-setting'); ?>
|
71 |
|
89 |
<div class="modal-content">
|
90 |
<div class="modal-header">
|
91 |
<button type="button" class="close" data-dismiss="modal" aria-label="<?php echo __('Close', AAM_KEY); ?>"><span aria-hidden="true">×</span></button>
|
92 |
+
<h4 class="modal-title"><?php echo __('Clear all settings', AAM_KEY); ?></h4>
|
93 |
</div>
|
94 |
<div class="modal-body">
|
95 |
+
<p class="text-center alert alert-danger text-larger"><?php echo __('All AAM settings will be removed.', AAM_KEY); ?></p>
|
96 |
</div>
|
97 |
<div class="modal-footer">
|
98 |
<button type="button" class="btn btn-danger" id="clear-settings"><?php echo __('Clear', AAM_KEY); ?></button>
|
Application/Core/API.php
CHANGED
@@ -278,5 +278,22 @@ final class AAM_Core_API {
|
|
278 |
|
279 |
@rmdir($pathname);
|
280 |
}
|
281 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
282 |
}
|
278 |
|
279 |
@rmdir($pathname);
|
280 |
}
|
281 |
+
|
282 |
+
/**
|
283 |
+
*
|
284 |
+
* @return type
|
285 |
+
*/
|
286 |
+
public static function version() {
|
287 |
+
if (file_exists(ABSPATH . 'wp-admin/includes/plugin.php')) {
|
288 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
289 |
+
}
|
290 |
+
|
291 |
+
if (function_exists('get_plugin_data')) {
|
292 |
+
$data = get_plugin_data(dirname(__FILE__) . '/../../aam.php');
|
293 |
+
$version = (isset($data['Version']) ? $data['Version'] : null);
|
294 |
+
}
|
295 |
+
|
296 |
+
return (!empty($version) ? $version : null);
|
297 |
+
}
|
298 |
+
|
299 |
}
|
Application/Core/Cache.php
CHANGED
@@ -54,17 +54,20 @@ class AAM_Core_Cache {
|
|
54 |
/**
|
55 |
* Set cache option
|
56 |
*
|
57 |
-
* @param
|
58 |
-
* @param
|
|
|
59 |
*
|
60 |
* @return void
|
61 |
*
|
62 |
* @access public
|
63 |
*/
|
64 |
-
public static function set($option, $data) {
|
65 |
-
if (
|
66 |
-
self::$cache[$option]
|
67 |
-
|
|
|
|
|
68 |
}
|
69 |
}
|
70 |
|
54 |
/**
|
55 |
* Set cache option
|
56 |
*
|
57 |
+
* @param AAM_Core_Subject $subject
|
58 |
+
* @param string $option
|
59 |
+
* @param mixed $data
|
60 |
*
|
61 |
* @return void
|
62 |
*
|
63 |
* @access public
|
64 |
*/
|
65 |
+
public static function set($subject, $option, $data) {
|
66 |
+
if ($subject instanceof AAM_Core_Subject_User) { //cache only for actual user
|
67 |
+
if (!isset(self::$cache[$option]) || self::$cache[$option] != $data) {
|
68 |
+
self::$cache[$option] = $data;
|
69 |
+
self::$updated = true;
|
70 |
+
}
|
71 |
}
|
72 |
}
|
73 |
|
Application/Core/Object.php
CHANGED
@@ -41,6 +41,18 @@ abstract class AAM_Core_Object {
|
|
41 |
* @access private
|
42 |
*/
|
43 |
private $_inherited = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
|
45 |
/**
|
46 |
* Constructor
|
@@ -128,23 +140,27 @@ abstract class AAM_Core_Object {
|
|
128 |
}
|
129 |
|
130 |
/**
|
131 |
-
*
|
|
|
|
|
132 |
*
|
133 |
-
*
|
134 |
-
*
|
135 |
-
*
|
136 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
*
|
138 |
* @return boolean
|
139 |
*
|
140 |
* @access public
|
141 |
*/
|
142 |
public function isOverwritten () {
|
143 |
-
|
144 |
-
$option = $this->getOption();
|
145 |
-
$inherit = $this->getInherited();
|
146 |
-
|
147 |
-
return ($parent && !empty($option) && is_null($inherit));
|
148 |
}
|
149 |
|
150 |
}
|
41 |
* @access private
|
42 |
*/
|
43 |
private $_inherited = null;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Overwritten indicator
|
47 |
+
*
|
48 |
+
* If settings for specific object were detected befor inheritance mechanism
|
49 |
+
* kicked off, then it it considered overwritten
|
50 |
+
*
|
51 |
+
* @var boolean
|
52 |
+
*
|
53 |
+
* @access private
|
54 |
+
*/
|
55 |
+
private $_overwritten = false;
|
56 |
|
57 |
/**
|
58 |
* Constructor
|
140 |
}
|
141 |
|
142 |
/**
|
143 |
+
* Set overwritten flat
|
144 |
+
*
|
145 |
+
* @param boolean $overwritten
|
146 |
*
|
147 |
+
* @return void
|
148 |
+
*
|
149 |
+
* @access public
|
150 |
+
*/
|
151 |
+
public function setOverwritten($overwritten = true) {
|
152 |
+
$this->_overwritten = $overwritten;
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* Check if options are overwritten
|
157 |
*
|
158 |
* @return boolean
|
159 |
*
|
160 |
* @access public
|
161 |
*/
|
162 |
public function isOverwritten () {
|
163 |
+
return $this->_overwritten;
|
|
|
|
|
|
|
|
|
164 |
}
|
165 |
|
166 |
}
|
Application/Core/Object/Menu.php
CHANGED
@@ -31,7 +31,8 @@ class AAM_Core_Object_Menu extends AAM_Core_Object {
|
|
31 |
|
32 |
if (empty($option)) {
|
33 |
$option = $this->getSubject()->inheritFromParent('menu');
|
34 |
-
|
|
|
35 |
}
|
36 |
|
37 |
$this->setOption($option);
|
31 |
|
32 |
if (empty($option)) {
|
33 |
$option = $this->getSubject()->inheritFromParent('menu');
|
34 |
+
} else {
|
35 |
+
$this->setOverwritten(true);
|
36 |
}
|
37 |
|
38 |
$this->setOption($option);
|
Application/Core/Object/Metabox.php
CHANGED
@@ -31,7 +31,8 @@ class AAM_Core_Object_Metabox extends AAM_Core_Object {
|
|
31 |
|
32 |
if (empty($option)) {
|
33 |
$option = $this->getSubject()->inheritFromParent('metabox');
|
34 |
-
|
|
|
35 |
}
|
36 |
|
37 |
$this->setOption($option);
|
31 |
|
32 |
if (empty($option)) {
|
33 |
$option = $this->getSubject()->inheritFromParent('metabox');
|
34 |
+
} else {
|
35 |
+
$this->setOverwritten(true);
|
36 |
}
|
37 |
|
38 |
$this->setOption($option);
|
Application/Core/Object/Post.php
CHANGED
@@ -80,8 +80,10 @@ class AAM_Core_Object_Post extends AAM_Core_Object {
|
|
80 |
if ($option === false) { //if false, then the cache is empty but exist
|
81 |
$option = array();
|
82 |
} else {
|
|
|
83 |
if (empty($option)) { //no cache for this element
|
84 |
$option = get_post_meta($this->getPost()->ID, $opname, true);
|
|
|
85 |
}
|
86 |
|
87 |
//try to inherit from terms or default settings - AAM Plus Package or any
|
@@ -90,17 +92,16 @@ class AAM_Core_Object_Post extends AAM_Core_Object {
|
|
90 |
$option = apply_filters('aam-post-access-filter', $option, $this);
|
91 |
}
|
92 |
|
93 |
-
//
|
94 |
if (empty($option)) {
|
95 |
$option = $subject->inheritFromParent('post', $this->getPost()->ID);
|
96 |
-
$this->setInherited(empty($option) ? null : 'role');
|
97 |
}
|
98 |
}
|
99 |
|
100 |
$this->setOption($option);
|
101 |
|
102 |
-
//if
|
103 |
-
AAM_Core_Cache::set($chname, (empty($option) ? false : $option));
|
104 |
}
|
105 |
|
106 |
/**
|
@@ -192,22 +193,4 @@ class AAM_Core_Object_Post extends AAM_Core_Object {
|
|
192 |
return $this->_post;
|
193 |
}
|
194 |
|
195 |
-
/**
|
196 |
-
* Check if options were overwritten
|
197 |
-
*
|
198 |
-
* In order to consider options overwritten there are three conditions to be met:
|
199 |
-
* - Current object should have no empty option set;
|
200 |
-
* - The inherited flad should be null;
|
201 |
-
*
|
202 |
-
* @return boolean
|
203 |
-
*
|
204 |
-
* @access public
|
205 |
-
*/
|
206 |
-
public function isOverwritten () {
|
207 |
-
$option = $this->getOption();
|
208 |
-
$inherit = $this->getInherited();
|
209 |
-
|
210 |
-
return (!empty($option) && is_null($inherit));
|
211 |
-
}
|
212 |
-
|
213 |
}
|
80 |
if ($option === false) { //if false, then the cache is empty but exist
|
81 |
$option = array();
|
82 |
} else {
|
83 |
+
//Cache is empty. Get post access for current subject (user or role)
|
84 |
if (empty($option)) { //no cache for this element
|
85 |
$option = get_post_meta($this->getPost()->ID, $opname, true);
|
86 |
+
$this->setOverwritten(!empty($option));
|
87 |
}
|
88 |
|
89 |
//try to inherit from terms or default settings - AAM Plus Package or any
|
92 |
$option = apply_filters('aam-post-access-filter', $option, $this);
|
93 |
}
|
94 |
|
95 |
+
//No settings for a post. Try to inherit from the parent
|
96 |
if (empty($option)) {
|
97 |
$option = $subject->inheritFromParent('post', $this->getPost()->ID);
|
|
|
98 |
}
|
99 |
}
|
100 |
|
101 |
$this->setOption($option);
|
102 |
|
103 |
+
//if result is empty, simply cache the false to speed-up
|
104 |
+
AAM_Core_Cache::set($subject, $chname, (empty($option) ? false : $option));
|
105 |
}
|
106 |
|
107 |
/**
|
193 |
return $this->_post;
|
194 |
}
|
195 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
}
|
Application/Core/Repository.php
CHANGED
@@ -113,8 +113,9 @@ class AAM_Core_Repository {
|
|
113 |
*
|
114 |
*/
|
115 |
protected function integrateUtility() {
|
116 |
-
//block AAM Utilities Extension from load
|
117 |
define('AAM_UTILITIES', '99');
|
|
|
118 |
//TODO - Remove this in Jul 2017
|
119 |
|
120 |
//caching filter & action
|
@@ -252,7 +253,7 @@ class AAM_Core_Repository {
|
|
252 |
*/
|
253 |
protected function prepareExtensionCache() {
|
254 |
if (empty($this->cache)) {
|
255 |
-
$list
|
256 |
$licenses = AAM_Core_API::getOption('aam-extension-license', array());
|
257 |
|
258 |
//WP Error Fix bug report
|
113 |
*
|
114 |
*/
|
115 |
protected function integrateUtility() {
|
116 |
+
//block AAM Utilities and Post Filter Extension from load
|
117 |
define('AAM_UTILITIES', '99');
|
118 |
+
define('AAM_POST_FILTER', '99');
|
119 |
//TODO - Remove this in Jul 2017
|
120 |
|
121 |
//caching filter & action
|
253 |
*/
|
254 |
protected function prepareExtensionCache() {
|
255 |
if (empty($this->cache)) {
|
256 |
+
$list = AAM_Core_API::getOption('aam-extension-repository', array());
|
257 |
$licenses = AAM_Core_API::getOption('aam-extension-license', array());
|
258 |
|
259 |
//WP Error Fix bug report
|
Application/Core/Server.php
CHANGED
@@ -32,7 +32,10 @@ final class AAM_Core_Server {
|
|
32 |
* @access public
|
33 |
*/
|
34 |
public static function check() {
|
35 |
-
$
|
|
|
|
|
|
|
36 |
$result = array();
|
37 |
if (!is_wp_error($response)) {
|
38 |
//WP Error Fix bug report
|
32 |
* @access public
|
33 |
*/
|
34 |
public static function check() {
|
35 |
+
$domain = parse_url(site_url(), PHP_URL_HOST);
|
36 |
+
$response = self::send(
|
37 |
+
self::SERVER_URL . '/check?domain=' . urlencode($domain)
|
38 |
+
);
|
39 |
$result = array();
|
40 |
if (!is_wp_error($response)) {
|
41 |
//WP Error Fix bug report
|
Application/Core/Subject.php
CHANGED
@@ -288,7 +288,9 @@ abstract class AAM_Core_Subject {
|
|
288 |
*
|
289 |
* @access public
|
290 |
*/
|
291 |
-
|
|
|
|
|
292 |
|
293 |
/**
|
294 |
* Check if subject has parent
|
288 |
*
|
289 |
* @access public
|
290 |
*/
|
291 |
+
public function getParent() {
|
292 |
+
return null;
|
293 |
+
}
|
294 |
|
295 |
/**
|
296 |
* Check if subject has parent
|
Application/Core/Subject/Role.php
CHANGED
@@ -95,7 +95,7 @@ class AAM_Core_Subject_Role extends AAM_Core_Subject {
|
|
95 |
* @access public
|
96 |
*/
|
97 |
public function removeCapability($capability) {
|
98 |
-
$this->getSubject()->
|
99 |
|
100 |
return true;
|
101 |
}
|
95 |
* @access public
|
96 |
*/
|
97 |
public function removeCapability($capability) {
|
98 |
+
$this->getSubject()->add_cap($capability, false);
|
99 |
|
100 |
return true;
|
101 |
}
|
Application/Frontend/Manager.php
CHANGED
@@ -23,6 +23,11 @@ class AAM_Frontend_Manager {
|
|
23 |
* @access private
|
24 |
*/
|
25 |
private static $_instance = null;
|
|
|
|
|
|
|
|
|
|
|
26 |
|
27 |
/**
|
28 |
* Construct the manager
|
@@ -50,6 +55,9 @@ class AAM_Frontend_Manager {
|
|
50 |
add_filter('wp_authenticate_user', array($this, 'authenticate'), 1, 2);
|
51 |
//add post filter for LIST restriction
|
52 |
add_filter('the_posts', array($this, 'thePosts'), 999, 2);
|
|
|
|
|
|
|
53 |
//filter post content
|
54 |
add_filter('the_content', array($this, 'theContent'), 999);
|
55 |
//admin bar
|
@@ -75,7 +83,15 @@ class AAM_Frontend_Manager {
|
|
75 |
* @global WP_Post $post
|
76 |
*/
|
77 |
public function wp() {
|
78 |
-
global $
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
|
80 |
if (is_a($post, 'WP_Post')) {
|
81 |
$this->checkPostReadAccess($post);
|
@@ -291,6 +307,57 @@ class AAM_Frontend_Manager {
|
|
291 |
return $filtered;
|
292 |
}
|
293 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
/**
|
295 |
*
|
296 |
* @global WP_Post $post
|
23 |
* @access private
|
24 |
*/
|
25 |
private static $_instance = null;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* pre_get_posts flag
|
29 |
+
*/
|
30 |
+
protected $skip = false;
|
31 |
|
32 |
/**
|
33 |
* Construct the manager
|
55 |
add_filter('wp_authenticate_user', array($this, 'authenticate'), 1, 2);
|
56 |
//add post filter for LIST restriction
|
57 |
add_filter('the_posts', array($this, 'thePosts'), 999, 2);
|
58 |
+
if (AAM_Core_Config::get('large-post-number', false)) {
|
59 |
+
add_action('pre_get_posts', array($this, 'preparePostQuery'));
|
60 |
+
}
|
61 |
//filter post content
|
62 |
add_filter('the_content', array($this, 'theContent'), 999);
|
63 |
//admin bar
|
83 |
* @global WP_Post $post
|
84 |
*/
|
85 |
public function wp() {
|
86 |
+
global $wp_query;
|
87 |
+
|
88 |
+
if (!empty($wp_query->queried_object)) {
|
89 |
+
$post = $wp_query->queried_object;
|
90 |
+
} elseif (!empty($wp_query->post)) {
|
91 |
+
$post = $wp_query->post;
|
92 |
+
} else {
|
93 |
+
$post = null;
|
94 |
+
}
|
95 |
|
96 |
if (is_a($post, 'WP_Post')) {
|
97 |
$this->checkPostReadAccess($post);
|
307 |
return $filtered;
|
308 |
}
|
309 |
|
310 |
+
/**
|
311 |
+
*
|
312 |
+
* @param type $query
|
313 |
+
*/
|
314 |
+
public function preparePostQuery($query) {
|
315 |
+
if ($this->skip === false) {
|
316 |
+
$filtered = array();
|
317 |
+
|
318 |
+
foreach ($this->fetchPosts($query) as $id) {
|
319 |
+
if (AAM::getUser()->getObject('post', $id)->has('frontend.list')) {
|
320 |
+
$filtered[] = $id;
|
321 |
+
}
|
322 |
+
}
|
323 |
+
|
324 |
+
if (isset($query->query_vars['post__not_in'])) {
|
325 |
+
$query->query_vars['post__not_in'] = array_merge(
|
326 |
+
$query->query_vars['post__not_in'], $filtered
|
327 |
+
);
|
328 |
+
} else {
|
329 |
+
$query->query_vars['post__not_in'] = $filtered;
|
330 |
+
}
|
331 |
+
}
|
332 |
+
}
|
333 |
+
|
334 |
+
/**
|
335 |
+
*
|
336 |
+
* @param type $query
|
337 |
+
* @return type
|
338 |
+
*/
|
339 |
+
protected function fetchPosts($query) {
|
340 |
+
$this->skip = true;
|
341 |
+
|
342 |
+
if (!empty($query->query['post_type'])) {
|
343 |
+
$postType = $query->query['post_type'];
|
344 |
+
} elseif (!empty($query->query_vars['post_type'])) {
|
345 |
+
$postType = $query->query_vars['post_type'];
|
346 |
+
} else {
|
347 |
+
$postType = 'post';
|
348 |
+
}
|
349 |
+
|
350 |
+
$posts = get_posts(array(
|
351 |
+
'post_type' => (is_string($postType) ? $postType : 'post'),
|
352 |
+
'numberposts' => -1,
|
353 |
+
'fields' => 'ids'
|
354 |
+
));
|
355 |
+
|
356 |
+
$this->skip = false;
|
357 |
+
|
358 |
+
return $posts;
|
359 |
+
}
|
360 |
+
|
361 |
/**
|
362 |
*
|
363 |
* @global WP_Post $post
|
Lang/advanced-access-manager-en_US.mo
CHANGED
Binary file
|
Lang/advanced-access-manager-en_US.po
CHANGED
@@ -1,13 +1,13 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: AAM\n"
|
4 |
-
"POT-Creation-Date: 2016-
|
5 |
"PO-Revision-Date: \n"
|
6 |
"Language-Team: WP AAM <vasyl@vasyltech.com>\n"
|
7 |
"MIME-Version: 1.0\n"
|
8 |
"Content-Type: text/plain; charset=UTF-8\n"
|
9 |
"Content-Transfer-Encoding: 8bit\n"
|
10 |
-
"X-Generator: Poedit 1.8.
|
11 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
12 |
"X-Poedit-SourceCharset: UTF-8\n"
|
13 |
"X-Poedit-KeywordsList: __\n"
|
@@ -16,234 +16,240 @@ msgstr ""
|
|
16 |
"Language: en_US\n"
|
17 |
"X-Poedit-SearchPath-0: .\n"
|
18 |
|
19 |
-
#: media/js/aam-ui.js:
|
20 |
msgid "Loading..."
|
21 |
msgstr ""
|
22 |
|
23 |
-
#: media/js/aam-ui.js:
|
24 |
-
#: Application/Backend/phtml/
|
25 |
msgid "Select Role"
|
26 |
msgstr ""
|
27 |
|
28 |
-
#: media/js/aam-ui.js:
|
29 |
msgid "Search Role"
|
30 |
msgstr ""
|
31 |
|
32 |
-
#: media/js/aam-ui.js:
|
33 |
msgid "_TOTAL_ role(s)"
|
34 |
msgstr ""
|
35 |
|
36 |
-
#: media/js/aam-ui.js:
|
37 |
#: Application/Backend/View/Localization.php:27
|
38 |
-
#: Application/Backend/phtml/index.phtml:
|
39 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
40 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
41 |
msgid "Create"
|
42 |
msgstr ""
|
43 |
|
44 |
-
#: media/js/aam-ui.js:
|
45 |
-
#: Application/Backend/phtml/index.phtml:
|
46 |
-
#: Application/Backend/phtml/index.phtml:
|
47 |
msgid "Users"
|
48 |
msgstr ""
|
49 |
|
50 |
-
#: media/js/aam-ui.js:
|
51 |
msgid "Manage Role"
|
52 |
msgstr ""
|
53 |
|
54 |
-
#: media/js/aam-ui.js:
|
55 |
msgid "Edit Role Name"
|
56 |
msgstr ""
|
57 |
|
58 |
-
#: media/js/aam-ui.js:
|
|
|
|
|
|
|
|
|
59 |
#: Application/Backend/View/Localization.php:35
|
60 |
#: Application/Backend/View/Localization.php:47
|
61 |
-
#: Application/Backend/phtml/index.phtml:
|
62 |
msgid "Delete Role"
|
63 |
msgstr ""
|
64 |
|
65 |
-
#: media/js/aam-ui.js:
|
66 |
-
#: media/js/aam-ui.js:
|
67 |
msgid "Saving..."
|
68 |
msgstr ""
|
69 |
|
70 |
-
#: media/js/aam-ui.js:
|
71 |
msgid "Failed to add new role"
|
72 |
msgstr ""
|
73 |
|
74 |
-
#: media/js/aam-ui.js:
|
75 |
-
#: media/js/aam-ui.js:
|
76 |
-
#: media/js/aam-ui.js:
|
77 |
-
#: media/js/aam-ui.js:
|
78 |
-
#: media/js/aam-ui.js:
|
|
|
79 |
#: Application/Backend/View/Localization.php:15
|
80 |
msgid "Application error"
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: media/js/aam-ui.js:
|
84 |
msgid "Add Role"
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: media/js/aam-ui.js:
|
88 |
msgid "Failed to update role"
|
89 |
msgstr ""
|
90 |
|
91 |
-
#: media/js/aam-ui.js:
|
92 |
-
#: Application/Backend/phtml/extension.phtml:
|
93 |
-
#: Application/Backend/phtml/extension.phtml:
|
94 |
-
#: Application/Backend/phtml/index.phtml:
|
95 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
96 |
msgid "Update"
|
97 |
msgstr ""
|
98 |
|
99 |
-
#: media/js/aam-ui.js:
|
100 |
#: Application/Backend/View/Localization.php:33
|
101 |
msgid "Deleting..."
|
102 |
msgstr ""
|
103 |
|
104 |
-
#: media/js/aam-ui.js:
|
105 |
msgid "Failed to delete role"
|
106 |
msgstr ""
|
107 |
|
108 |
-
#: media/js/aam-ui.js:
|
109 |
#: Application/Backend/View/Localization.php:51
|
110 |
msgid "Unlock User"
|
111 |
msgstr ""
|
112 |
|
113 |
-
#: media/js/aam-ui.js:
|
114 |
#: Application/Backend/View/Localization.php:50
|
115 |
msgid "Lock User"
|
116 |
msgstr ""
|
117 |
|
118 |
-
#: media/js/aam-ui.js:
|
119 |
msgid "Failed to block user"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: media/js/aam-ui.js:
|
123 |
msgid "Search User"
|
124 |
msgstr ""
|
125 |
|
126 |
-
#: media/js/aam-ui.js:
|
127 |
msgid "_TOTAL_ user(s)"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: media/js/aam-ui.js:
|
131 |
-
#: Application/Backend/phtml/index.phtml:
|
132 |
msgid "Role"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: media/js/aam-ui.js:
|
136 |
msgid "Manage User"
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: media/js/aam-ui.js:
|
140 |
msgid "Edit User"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: media/js/aam-ui.js:
|
144 |
msgid "Switch To User"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: media/js/aam-ui.js:
|
148 |
msgid "Anonymous"
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: media/js/aam-ui.js:
|
152 |
-
#: Application/Backend/phtml/object/menu.phtml:
|
153 |
msgid "Show Menu"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: media/js/aam-ui.js:
|
157 |
-
#: Application/Backend/phtml/object/menu.phtml:
|
158 |
msgid "Restrict Menu"
|
159 |
msgstr ""
|
160 |
|
161 |
-
#: media/js/aam-ui.js:
|
162 |
msgid "Failed to retrieve mataboxes"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: media/js/aam-ui.js:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
msgid "Failed to grand capability - WordPress policy"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: media/js/aam-ui.js:
|
170 |
msgid "Search Capability"
|
171 |
msgstr ""
|
172 |
|
173 |
-
#: media/js/aam-ui.js:
|
174 |
msgid "_TOTAL_ capability(s)"
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: media/js/aam-ui.js:
|
178 |
msgid "Nothing to show"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: media/js/aam-ui.js:
|
182 |
msgid "Failed to add new capability"
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: media/js/aam-ui.js:
|
186 |
msgid "Add Capability"
|
187 |
msgstr ""
|
188 |
|
189 |
-
#: media/js/aam-ui.js:
|
190 |
msgid "Failed to update capability"
|
191 |
msgstr ""
|
192 |
|
193 |
-
#: media/js/aam-ui.js:
|
194 |
msgid "Update Capability"
|
195 |
msgstr ""
|
196 |
|
197 |
-
#: media/js/aam-ui.js:
|
198 |
msgid "Failed to delete capability"
|
199 |
msgstr ""
|
200 |
|
201 |
-
#: media/js/aam-ui.js:
|
202 |
msgid "Delete Capability"
|
203 |
msgstr ""
|
204 |
|
205 |
-
#: media/js/aam-ui.js:
|
206 |
-
msgid "parent role"
|
207 |
-
msgstr ""
|
208 |
-
|
209 |
-
#: media/js/aam-ui.js:1244
|
210 |
-
msgid "default settings"
|
211 |
-
msgstr ""
|
212 |
-
|
213 |
-
#: media/js/aam-ui.js:1246
|
214 |
-
msgid "parent category"
|
215 |
-
msgstr ""
|
216 |
-
|
217 |
-
#: media/js/aam-ui.js:1345 Application/Backend/View/Localization.php:20
|
218 |
msgid "Search"
|
219 |
msgstr ""
|
220 |
|
221 |
-
#: media/js/aam-ui.js:
|
222 |
msgid "_TOTAL_ object(s)"
|
223 |
msgstr ""
|
224 |
|
225 |
-
#: media/js/aam-ui.js:
|
226 |
msgid "Drill-Down"
|
227 |
msgstr ""
|
228 |
|
229 |
-
#: media/js/aam-ui.js:
|
230 |
#: Application/Backend/phtml/metabox.phtml:7
|
231 |
msgid "Manage Access"
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: media/js/aam-ui.js:
|
235 |
-
#: Application/Backend/phtml/object/post.phtml:
|
236 |
msgid "Edit"
|
237 |
msgstr ""
|
238 |
|
239 |
-
#: media/js/aam-ui.js:
|
240 |
msgid "Application Error"
|
241 |
msgstr ""
|
242 |
|
243 |
#: Application/Backend/Feature/Abstract.php:29
|
244 |
#: Application/Backend/Feature/Role.php:29
|
245 |
-
#: Application/Backend/Feature/User.php:29
|
246 |
-
|
|
|
247 |
msgstr ""
|
248 |
|
249 |
#: Application/Backend/Feature/Capability.php:104
|
@@ -261,13 +267,13 @@ msgstr ""
|
|
261 |
|
262 |
#: Application/Backend/Feature/Capability.php:253
|
263 |
#: Application/Backend/Feature/Capability.php:293
|
264 |
-
#: Application/Backend/Feature/Post.php:
|
265 |
msgid "Posts & Pages"
|
266 |
msgstr ""
|
267 |
|
268 |
#: Application/Backend/Feature/Capability.php:254
|
269 |
#: Application/Backend/Feature/Capability.php:295
|
270 |
-
#: Application/Backend/phtml/object/post.phtml:
|
271 |
msgid "Backend"
|
272 |
msgstr ""
|
273 |
|
@@ -288,7 +294,7 @@ msgstr ""
|
|
288 |
msgid "License key is missing."
|
289 |
msgstr ""
|
290 |
|
291 |
-
#: Application/Backend/Feature/Extension.php:
|
292 |
msgid "Extensions"
|
293 |
msgstr ""
|
294 |
|
@@ -296,93 +302,39 @@ msgstr ""
|
|
296 |
msgid "Backend Menu"
|
297 |
msgstr ""
|
298 |
|
299 |
-
#: Application/Backend/Feature/Metabox.php:
|
300 |
msgid "Metaboxes & Widgets"
|
301 |
msgstr ""
|
302 |
|
303 |
-
#: Application/Backend/Feature/Post.php:
|
304 |
msgid "You reached your limitation."
|
305 |
msgstr ""
|
306 |
|
307 |
-
#: Application/Backend/Feature/
|
308 |
-
msgid ""
|
309 |
-
"Our best selling extension that allows you to setup access to unlimited "
|
310 |
-
"number of posts, pages or custom post types as well as define default access "
|
311 |
-
"to ALL posts, pages, custom post types, categories or custom taxonomies."
|
312 |
-
msgstr ""
|
313 |
-
|
314 |
-
#: Application/Backend/Feature/ProductList.php:29
|
315 |
-
msgid ""
|
316 |
-
"With this extension you can define custom redirect or \"Access Denied\" "
|
317 |
-
"message for each role, individual user or all visitors."
|
318 |
-
msgstr ""
|
319 |
-
|
320 |
-
#: Application/Backend/Feature/ProductList.php:40
|
321 |
-
msgid ""
|
322 |
-
"More advanced user and role administration. Based on user capabilities "
|
323 |
-
"level, filter list of roles that user can manage. Also prevent from editing, "
|
324 |
-
"promoting or deleting higher level users."
|
325 |
-
msgstr ""
|
326 |
-
|
327 |
-
#: Application/Backend/Feature/ProductList.php:52
|
328 |
-
msgid ""
|
329 |
-
"Get list of all available premium extensions in one package and save $5 USD."
|
330 |
-
msgstr ""
|
331 |
-
|
332 |
-
#: Application/Backend/Feature/ProductList.php:62
|
333 |
-
msgid ""
|
334 |
-
"Convenient way to navigate between different sites in the Network Admin "
|
335 |
-
"Panel. This extension adds additional widget to the AAM page that allows to "
|
336 |
-
"switch between different sites."
|
337 |
-
msgstr ""
|
338 |
-
|
339 |
-
#: Application/Backend/Feature/ProductList.php:79
|
340 |
-
msgid ""
|
341 |
-
"Patent-pending technology that provides solutions to PHP errors within "
|
342 |
-
"hours, preventing costly maintenance time and keeping your WordPress site "
|
343 |
-
"error."
|
344 |
-
msgstr ""
|
345 |
-
|
346 |
-
#: Application/Backend/Feature/ProductList.php:86
|
347 |
-
msgid ""
|
348 |
-
"Development tool with an easy way to manage all your website custom "
|
349 |
-
"settings. "
|
350 |
-
msgstr ""
|
351 |
-
|
352 |
-
#: Application/Backend/Feature/ProductList.php:93
|
353 |
-
msgid "Instant switching between user accounts in WordPress."
|
354 |
msgstr ""
|
355 |
|
356 |
-
#: Application/Backend/Feature/
|
357 |
-
msgid "
|
358 |
msgstr ""
|
359 |
|
360 |
-
#: Application/Backend/Feature/Utility.php:
|
361 |
msgid "Utilities"
|
362 |
msgstr ""
|
363 |
|
364 |
-
#: Application/Backend/Manager.php:
|
365 |
#, php-format
|
366 |
msgid "Extension %s has new update available for download."
|
367 |
msgstr ""
|
368 |
|
369 |
-
#: Application/Backend/Manager.php:
|
370 |
msgid "Access Manager"
|
371 |
msgstr ""
|
372 |
|
373 |
-
#: Application/Backend/Manager.php:
|
374 |
msgid "Access"
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: Application/Backend/Manager.php:342 Application/Backend/Manager.php:343
|
378 |
-
msgid "AAM"
|
379 |
-
msgstr ""
|
380 |
-
|
381 |
-
#: Application/Backend/Manager.php:380 Application/Backend/Manager.php:405
|
382 |
-
#: Application/Core/API.php:256
|
383 |
-
msgid "Access Denied"
|
384 |
-
msgstr ""
|
385 |
-
|
386 |
#: Application/Backend/View/Localization.php:22
|
387 |
msgid "Failed"
|
388 |
msgstr ""
|
@@ -395,12 +347,12 @@ msgstr ""
|
|
395 |
msgid "Current role"
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: Application/Core/Repository.php:
|
399 |
#, php-format
|
400 |
msgid "Failed to create %s"
|
401 |
msgstr ""
|
402 |
|
403 |
-
#: Application/Core/Repository.php:
|
404 |
#, php-format
|
405 |
msgid "Directory %s is not writable"
|
406 |
msgstr ""
|
@@ -420,8 +372,7 @@ msgid ""
|
|
420 |
msgstr ""
|
421 |
|
422 |
#: Application/Backend/phtml/extension.phtml:11
|
423 |
-
|
424 |
-
msgid "Install Extension"
|
425 |
msgstr ""
|
426 |
|
427 |
#: Application/Backend/phtml/extension.phtml:15
|
@@ -429,77 +380,90 @@ msgid "License Key"
|
|
429 |
msgstr ""
|
430 |
|
431 |
#: Application/Backend/phtml/extension.phtml:19
|
432 |
-
|
433 |
-
msgid "Install"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: Application/Backend/phtml/extension.phtml:
|
437 |
msgid "Premium"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: Application/Backend/phtml/extension.phtml:
|
441 |
-
#: Application/Backend/phtml/extension.phtml:
|
442 |
-
#: Application/Backend/phtml/extension.phtml:
|
443 |
msgid "Free"
|
444 |
msgstr ""
|
445 |
|
446 |
-
#: Application/Backend/phtml/extension.phtml:
|
447 |
msgid "Useful Plugins"
|
448 |
msgstr ""
|
449 |
|
450 |
-
#: Application/Backend/phtml/extension.phtml:
|
451 |
-
|
452 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
453 |
msgid "Installed"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: Application/Backend/phtml/extension.phtml:
|
457 |
msgid "Purchase"
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: Application/Backend/phtml/extension.phtml:
|
461 |
-
#: Application/Backend/phtml/extension.phtml:
|
462 |
msgid "Download"
|
463 |
msgstr ""
|
464 |
|
465 |
-
#: Application/Backend/phtml/extension.phtml:
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
#: Application/Backend/phtml/
|
|
|
|
|
|
|
470 |
#: Application/Backend/phtml/index.phtml:119
|
471 |
-
#: Application/Backend/phtml/index.phtml:
|
472 |
-
#: Application/Backend/phtml/index.phtml:
|
473 |
-
#: Application/Backend/phtml/index.phtml:
|
474 |
-
#: Application/Backend/phtml/index.phtml:
|
475 |
-
#: Application/Backend/phtml/
|
476 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
477 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
478 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
479 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
480 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
481 |
-
#: Application/Backend/phtml/object/
|
482 |
-
#: Application/Backend/phtml/
|
|
|
483 |
msgid "Close"
|
484 |
msgstr ""
|
485 |
|
486 |
-
#: Application/Backend/phtml/extension.phtml:
|
487 |
-
#: Application/Backend/phtml/index.phtml:159
|
488 |
-
#: Application/Backend/phtml/index.phtml:190
|
489 |
msgid "Notification"
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: Application/Backend/phtml/extension.phtml:
|
493 |
msgid ""
|
494 |
"Extension requires manual installation. Please follow few simple steps below."
|
495 |
msgstr ""
|
496 |
|
497 |
-
#: Application/Backend/phtml/extension.phtml:
|
498 |
-
#: Application/Backend/phtml/utility.phtml:
|
499 |
msgid "Cancel"
|
500 |
msgstr ""
|
501 |
|
502 |
#: Application/Backend/phtml/extension.phtml:145
|
|
|
|
|
|
|
|
|
503 |
msgid ""
|
504 |
"Insert license key that you recieved after the payment (find the email "
|
505 |
"example below). It might take up to 2 hours to process the payment. Please "
|
@@ -537,101 +501,90 @@ msgstr ""
|
|
537 |
msgid "Notifications"
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: Application/Backend/phtml/index.phtml:
|
541 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: Application/Backend/phtml/index.phtml:
|
545 |
-
#: Application/Backend/phtml/index.phtml:
|
546 |
msgid "Roles"
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: Application/Backend/phtml/index.phtml:
|
550 |
-
#: Application/Backend/phtml/index.phtml:
|
551 |
msgid "Visitor"
|
552 |
msgstr ""
|
553 |
|
554 |
-
#: Application/Backend/phtml/index.phtml:
|
555 |
-
#: Application/Backend/phtml/index.phtml:
|
556 |
msgid "Action"
|
557 |
msgstr ""
|
558 |
|
559 |
-
#: Application/Backend/phtml/index.phtml:
|
560 |
msgid "Create Role"
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: Application/Backend/phtml/index.phtml:
|
564 |
-
#: Application/Backend/phtml/index.phtml:
|
565 |
msgid "Role Name"
|
566 |
msgstr ""
|
567 |
|
568 |
-
#: Application/Backend/phtml/index.phtml:
|
569 |
-
#: Application/Backend/phtml/index.phtml:
|
570 |
msgid "Enter Role Name"
|
571 |
msgstr ""
|
572 |
|
573 |
-
#: Application/Backend/phtml/index.phtml:
|
574 |
-
msgid "Inherit Capabilities From"
|
575 |
-
msgstr ""
|
576 |
-
|
577 |
-
#: Application/Backend/phtml/index.phtml:120
|
578 |
msgid "Update Role"
|
579 |
msgstr ""
|
580 |
|
581 |
-
#: Application/Backend/phtml/index.phtml:
|
582 |
#, php-format
|
583 |
msgid "Are you sure that you want to delete %s role?"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: Application/Backend/phtml/index.phtml:
|
587 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
588 |
-
#: Application/Backend/phtml/object/post.phtml:
|
589 |
msgid "Delete"
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: Application/Backend/phtml/index.phtml:
|
593 |
-
msgid ""
|
594 |
-
"You are not allowed to delete this role because either you do not have a "
|
595 |
-
"capability to \"delete_users\" or there is at least one user assigned to it."
|
596 |
-
msgstr ""
|
597 |
-
|
598 |
-
#: Application/Backend/phtml/index.phtml:165
|
599 |
-
#: Application/Backend/phtml/index.phtml:196
|
600 |
-
msgid "OK"
|
601 |
-
msgstr ""
|
602 |
-
|
603 |
-
#: Application/Backend/phtml/index.phtml:178
|
604 |
msgid "Username"
|
605 |
msgstr ""
|
606 |
|
607 |
-
#: Application/Backend/phtml/index.phtml:
|
608 |
-
msgid "You are not allowed to perform this action."
|
609 |
-
msgstr ""
|
610 |
-
|
611 |
-
#: Application/Backend/phtml/index.phtml:204
|
612 |
msgid ""
|
613 |
"Manage access to your website for visitors (any user that is not "
|
614 |
"authenticated)"
|
615 |
msgstr ""
|
616 |
|
617 |
-
#: Application/Backend/phtml/index.phtml:
|
618 |
msgid "Manage Visitors"
|
619 |
msgstr ""
|
620 |
|
621 |
-
#: Application/Backend/phtml/index.phtml:
|
622 |
msgid ""
|
623 |
"With Roles tab you can manage access for any defined role, edit role's name, "
|
624 |
"create new role or even delete existing (but only when there is no users "
|
625 |
"assigned to it). You are not allowed to delete Administrator role."
|
626 |
msgstr ""
|
627 |
|
628 |
-
#: Application/Backend/phtml/index.phtml:
|
629 |
msgid ""
|
630 |
"Manage access for any user. As a bonus feature, you can block user. It means "
|
631 |
"that user will be not able to login to your website anymore."
|
632 |
msgstr ""
|
633 |
|
634 |
-
#: Application/Backend/phtml/index.phtml:
|
635 |
msgid ""
|
636 |
"Visitor can be considered any user that is not authenticated to your website."
|
637 |
msgstr ""
|
@@ -644,100 +597,134 @@ msgstr ""
|
|
644 |
msgid "All Capabilities"
|
645 |
msgstr ""
|
646 |
|
647 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
648 |
msgid "Category"
|
649 |
msgstr ""
|
650 |
|
651 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
652 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
653 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
654 |
msgid "Capability"
|
655 |
msgstr ""
|
656 |
|
657 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
658 |
-
#: Application/Backend/phtml/object/post.phtml:
|
659 |
msgid "Actions"
|
660 |
msgstr ""
|
661 |
|
662 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
663 |
msgid "Create Capability"
|
664 |
msgstr ""
|
665 |
|
666 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
667 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
668 |
msgid "Enter Capability"
|
669 |
msgstr ""
|
670 |
|
671 |
-
#: Application/Backend/phtml/object/capability.phtml:
|
672 |
#, php-format
|
673 |
msgid "Are you sure that you want to delete %s capability for all roles?"
|
674 |
msgstr ""
|
675 |
|
676 |
#: Application/Backend/phtml/object/menu.phtml:6
|
677 |
-
|
678 |
-
msgid "
|
|
|
|
|
679 |
msgstr ""
|
680 |
|
681 |
-
#: Application/Backend/phtml/object/menu.phtml:
|
682 |
-
#: Application/Backend/phtml/object/metabox.phtml:
|
683 |
-
#: Application/Backend/phtml/object/post.phtml:
|
684 |
-
msgid "
|
685 |
msgstr ""
|
686 |
|
|
|
687 |
#: Application/Backend/phtml/object/metabox.phtml:13
|
|
|
|
|
|
|
|
|
|
|
688 |
msgid "Refresh"
|
689 |
msgstr ""
|
690 |
|
691 |
-
#: Application/Backend/phtml/object/metabox.phtml:
|
|
|
|
|
|
|
|
|
692 |
msgid "Dashboard Widgets"
|
693 |
msgstr ""
|
694 |
|
695 |
-
#: Application/Backend/phtml/object/metabox.phtml:
|
696 |
msgid "Frontend Widgets"
|
697 |
msgstr ""
|
698 |
|
699 |
-
#: Application/Backend/phtml/object/metabox.phtml:
|
700 |
msgid ""
|
701 |
"The list of metaboxes and widgets is not initialized. Click Refresh button "
|
702 |
"above."
|
703 |
msgstr ""
|
704 |
|
705 |
-
#: Application/Backend/phtml/object/
|
706 |
-
msgid "
|
707 |
msgstr ""
|
708 |
|
709 |
-
#: Application/Backend/phtml/object/
|
710 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
711 |
msgstr ""
|
712 |
|
713 |
-
#: Application/Backend/phtml/object/
|
714 |
-
msgid "
|
715 |
msgstr ""
|
716 |
|
717 |
-
#: Application/Backend/phtml/object/post.phtml:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
718 |
msgid "Title"
|
719 |
msgstr ""
|
720 |
|
721 |
-
#: Application/Backend/phtml/object/post.phtml:
|
722 |
-
#: Application/Backend/phtml/object/post.phtml:
|
723 |
-
#: Application/Backend/phtml/object/post.phtml:
|
724 |
msgid "Go Back"
|
725 |
msgstr ""
|
726 |
|
727 |
-
#: Application/Backend/phtml/object/post.phtml:
|
728 |
msgid "Frontend"
|
729 |
msgstr ""
|
730 |
|
731 |
-
#: Application/Backend/phtml/object/post.phtml:
|
732 |
-
#: Application/Backend/phtml/object/post.phtml:
|
733 |
msgid "List"
|
734 |
msgstr ""
|
735 |
|
736 |
-
#: Application/Backend/phtml/object/post.phtml:
|
737 |
msgid "Read"
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: Application/Backend/phtml/object/post.phtml:
|
|
|
|
|
|
|
|
|
741 |
msgid "Comment"
|
742 |
msgstr ""
|
743 |
|
@@ -777,68 +764,92 @@ msgstr ""
|
|
777 |
msgid "PHP Callback Function"
|
778 |
msgstr ""
|
779 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
780 |
#: Application/Backend/phtml/utility.phtml:6
|
781 |
#, php-format
|
782 |
msgid "To learn more about AAM Utilities check %sAAM Utilities%s article."
|
783 |
msgstr ""
|
784 |
|
785 |
-
#: Application/Backend/phtml/utility.phtml:
|
786 |
msgid "Edit/Delete Capabilities"
|
787 |
msgstr ""
|
788 |
|
789 |
-
#: Application/Backend/phtml/utility.phtml:
|
790 |
-
#: Application/Backend/phtml/utility.phtml:
|
791 |
-
#: Application/Backend/phtml/utility.phtml:
|
792 |
-
#: Application/Backend/phtml/utility.phtml:
|
|
|
793 |
msgid "Enabled"
|
794 |
msgstr ""
|
795 |
|
796 |
-
#: Application/Backend/phtml/utility.phtml:
|
797 |
-
#: Application/Backend/phtml/utility.phtml:
|
798 |
-
#: Application/Backend/phtml/utility.phtml:
|
799 |
-
#: Application/Backend/phtml/utility.phtml:
|
|
|
800 |
msgid "Disabled"
|
801 |
msgstr ""
|
802 |
|
803 |
-
#: Application/Backend/phtml/utility.phtml:
|
804 |
msgid "Backend Access Control"
|
805 |
msgstr ""
|
806 |
|
807 |
-
#: Application/Backend/phtml/utility.phtml:
|
808 |
msgid ""
|
809 |
"Use AAM to control access to posts, pages, categories, menus and metaboxes "
|
810 |
"etc. Disable this setting to stop AAM from controling access for backend."
|
811 |
msgstr ""
|
812 |
|
813 |
-
#: Application/Backend/phtml/utility.phtml:
|
814 |
msgid "Frontend Access Control"
|
815 |
msgstr ""
|
816 |
|
817 |
-
#: Application/Backend/phtml/utility.phtml:
|
818 |
msgid ""
|
819 |
"Use AAM to control access to posts, pages, categories, menus and widgets. "
|
820 |
"Disable this setting to stop AAM from controling access for frontend."
|
821 |
msgstr ""
|
822 |
|
823 |
-
#: Application/Backend/phtml/utility.phtml:
|
824 |
msgid "Media Files Access Control"
|
825 |
msgstr ""
|
826 |
|
827 |
#: Application/Backend/phtml/utility.phtml:60
|
828 |
-
|
|
|
|
|
|
|
829 |
msgid "Clear All Settings"
|
830 |
msgstr ""
|
831 |
|
832 |
-
#: Application/Backend/phtml/utility.phtml:
|
833 |
msgid ""
|
834 |
"Remove all the settings related to AAM (including all extension licenses)."
|
835 |
msgstr ""
|
836 |
|
837 |
-
#: Application/Backend/phtml/utility.phtml:
|
838 |
-
msgid ""
|
839 |
-
|
|
|
|
|
|
|
840 |
msgstr ""
|
841 |
|
842 |
-
#: Application/Backend/phtml/utility.phtml:
|
843 |
msgid "Clear"
|
844 |
msgstr ""
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: AAM\n"
|
4 |
+
"POT-Creation-Date: 2016-10-14 14:07-0400\n"
|
5 |
"PO-Revision-Date: \n"
|
6 |
"Language-Team: WP AAM <vasyl@vasyltech.com>\n"
|
7 |
"MIME-Version: 1.0\n"
|
8 |
"Content-Type: text/plain; charset=UTF-8\n"
|
9 |
"Content-Transfer-Encoding: 8bit\n"
|
10 |
+
"X-Generator: Poedit 1.8.9\n"
|
11 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
12 |
"X-Poedit-SourceCharset: UTF-8\n"
|
13 |
"X-Poedit-KeywordsList: __\n"
|
16 |
"Language: en_US\n"
|
17 |
"X-Poedit-SearchPath-0: .\n"
|
18 |
|
19 |
+
#: media/js/aam-ui.js:44 Application/Backend/View/Localization.php:23
|
20 |
msgid "Loading..."
|
21 |
msgstr ""
|
22 |
|
23 |
+
#: media/js/aam-ui.js:49 Application/Backend/View/Localization.php:24
|
24 |
+
#: Application/Backend/phtml/partial/role-inheritance.phtml:5
|
25 |
msgid "Select Role"
|
26 |
msgstr ""
|
27 |
|
28 |
+
#: media/js/aam-ui.js:90 Application/Backend/View/Localization.php:25
|
29 |
msgid "Search Role"
|
30 |
msgstr ""
|
31 |
|
32 |
+
#: media/js/aam-ui.js:91 Application/Backend/View/Localization.php:26
|
33 |
msgid "_TOTAL_ role(s)"
|
34 |
msgstr ""
|
35 |
|
36 |
+
#: media/js/aam-ui.js:98 media/js/aam-ui.js:543
|
37 |
#: Application/Backend/View/Localization.php:27
|
38 |
+
#: Application/Backend/phtml/index.phtml:118
|
39 |
+
#: Application/Backend/phtml/object/capability.phtml:27
|
40 |
+
#: Application/Backend/phtml/object/capability.phtml:57
|
41 |
msgid "Create"
|
42 |
msgstr ""
|
43 |
|
44 |
+
#: media/js/aam-ui.js:118 Application/Backend/View/Localization.php:28
|
45 |
+
#: Application/Backend/phtml/index.phtml:85
|
46 |
+
#: Application/Backend/phtml/index.phtml:198
|
47 |
msgid "Users"
|
48 |
msgstr ""
|
49 |
|
50 |
+
#: media/js/aam-ui.js:150 Application/Backend/View/Localization.php:45
|
51 |
msgid "Manage Role"
|
52 |
msgstr ""
|
53 |
|
54 |
+
#: media/js/aam-ui.js:165 Application/Backend/View/Localization.php:46
|
55 |
msgid "Edit Role Name"
|
56 |
msgstr ""
|
57 |
|
58 |
+
#: media/js/aam-ui.js:179
|
59 |
+
msgid "Clone Role"
|
60 |
+
msgstr ""
|
61 |
+
|
62 |
+
#: media/js/aam-ui.js:198 media/js/aam-ui.js:383
|
63 |
#: Application/Backend/View/Localization.php:35
|
64 |
#: Application/Backend/View/Localization.php:47
|
65 |
+
#: Application/Backend/phtml/index.phtml:152
|
66 |
msgid "Delete Role"
|
67 |
msgstr ""
|
68 |
|
69 |
+
#: media/js/aam-ui.js:275 media/js/aam-ui.js:330 media/js/aam-ui.js:1121
|
70 |
+
#: media/js/aam-ui.js:1167 Application/Backend/View/Localization.php:13
|
71 |
msgid "Saving..."
|
72 |
msgstr ""
|
73 |
|
74 |
+
#: media/js/aam-ui.js:290 Application/Backend/View/Localization.php:29
|
75 |
msgid "Failed to add new role"
|
76 |
msgstr ""
|
77 |
|
78 |
+
#: media/js/aam-ui.js:295 media/js/aam-ui.js:342 media/js/aam-ui.js:379
|
79 |
+
#: media/js/aam-ui.js:473 media/js/aam-ui.js:505 media/js/aam-ui.js:834
|
80 |
+
#: media/js/aam-ui.js:871 media/js/aam-ui.js:907 media/js/aam-ui.js:1134
|
81 |
+
#: media/js/aam-ui.js:1180 media/js/aam-ui.js:1221 media/js/aam-ui.js:1360
|
82 |
+
#: media/js/aam-ui.js:1407 media/js/aam-ui.js:1650 media/js/aam-ui.js:1715
|
83 |
+
#: media/js/aam-ui.js:1781 media/js/aam-ui.js:1877 media/js/aam.js:207
|
84 |
#: Application/Backend/View/Localization.php:15
|
85 |
msgid "Application error"
|
86 |
msgstr ""
|
87 |
|
88 |
+
#: media/js/aam-ui.js:298 Application/Backend/View/Localization.php:30
|
89 |
msgid "Add Role"
|
90 |
msgstr ""
|
91 |
|
92 |
+
#: media/js/aam-ui.js:337 Application/Backend/View/Localization.php:31
|
93 |
msgid "Failed to update role"
|
94 |
msgstr ""
|
95 |
|
96 |
+
#: media/js/aam-ui.js:346 Application/Backend/View/Localization.php:32
|
97 |
+
#: Application/Backend/phtml/extension.phtml:52
|
98 |
+
#: Application/Backend/phtml/extension.phtml:77
|
99 |
+
#: Application/Backend/phtml/index.phtml:140
|
100 |
+
#: Application/Backend/phtml/object/capability.phtml:79
|
101 |
msgid "Update"
|
102 |
msgstr ""
|
103 |
|
104 |
+
#: media/js/aam-ui.js:369 media/js/aam-ui.js:1208
|
105 |
#: Application/Backend/View/Localization.php:33
|
106 |
msgid "Deleting..."
|
107 |
msgstr ""
|
108 |
|
109 |
+
#: media/js/aam-ui.js:375 Application/Backend/View/Localization.php:34
|
110 |
msgid "Failed to delete role"
|
111 |
msgstr ""
|
112 |
|
113 |
+
#: media/js/aam-ui.js:458 media/js/aam-ui.js:459 media/js/aam-ui.js:623
|
114 |
#: Application/Backend/View/Localization.php:51
|
115 |
msgid "Unlock User"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: media/js/aam-ui.js:464 media/js/aam-ui.js:465 media/js/aam-ui.js:612
|
119 |
#: Application/Backend/View/Localization.php:50
|
120 |
msgid "Lock User"
|
121 |
msgstr ""
|
122 |
|
123 |
+
#: media/js/aam-ui.js:469 Application/Backend/View/Localization.php:36
|
124 |
msgid "Failed to block user"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: media/js/aam-ui.js:535 Application/Backend/View/Localization.php:37
|
128 |
msgid "Search User"
|
129 |
msgstr ""
|
130 |
|
131 |
+
#: media/js/aam-ui.js:536 Application/Backend/View/Localization.php:38
|
132 |
msgid "_TOTAL_ user(s)"
|
133 |
msgstr ""
|
134 |
|
135 |
+
#: media/js/aam-ui.js:560 Application/Backend/View/Localization.php:39
|
136 |
+
#: Application/Backend/phtml/index.phtml:95
|
137 |
msgid "Role"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: media/js/aam-ui.js:588 Application/Backend/View/Localization.php:48
|
141 |
msgid "Manage User"
|
142 |
msgstr ""
|
143 |
|
144 |
+
#: media/js/aam-ui.js:601 Application/Backend/View/Localization.php:49
|
145 |
msgid "Edit User"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: media/js/aam-ui.js:634
|
149 |
msgid "Switch To User"
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: media/js/aam-ui.js:690 Application/Backend/View/Localization.php:40
|
153 |
msgid "Anonymous"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: media/js/aam-ui.js:739 Application/Backend/View/Localization.php:17
|
157 |
+
#: Application/Backend/phtml/object/menu.phtml:57
|
158 |
msgid "Show Menu"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: media/js/aam-ui.js:754 Application/Backend/View/Localization.php:18
|
162 |
+
#: Application/Backend/phtml/object/menu.phtml:61
|
163 |
msgid "Restrict Menu"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: media/js/aam-ui.js:866 Application/Backend/View/Localization.php:19
|
167 |
msgid "Failed to retrieve mataboxes"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: media/js/aam-ui.js:894
|
171 |
+
msgid "Processing"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: media/js/aam-ui.js:902
|
175 |
+
msgid "Failed to initialize URL"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: media/js/aam-ui.js:910 Application/Backend/phtml/object/metabox.phtml:93
|
179 |
+
msgid "Initialize"
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: media/js/aam-ui.js:984 Application/Backend/View/Localization.php:52
|
183 |
msgid "Failed to grand capability - WordPress policy"
|
184 |
msgstr ""
|
185 |
|
186 |
+
#: media/js/aam-ui.js:1019 Application/Backend/View/Localization.php:11
|
187 |
msgid "Search Capability"
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: media/js/aam-ui.js:1020 Application/Backend/View/Localization.php:12
|
191 |
msgid "_TOTAL_ capability(s)"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: media/js/aam-ui.js:1022
|
195 |
msgid "Nothing to show"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: media/js/aam-ui.js:1129 Application/Backend/View/Localization.php:14
|
199 |
msgid "Failed to add new capability"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: media/js/aam-ui.js:1137 Application/Backend/View/Localization.php:16
|
203 |
msgid "Add Capability"
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: media/js/aam-ui.js:1175
|
207 |
msgid "Failed to update capability"
|
208 |
msgstr ""
|
209 |
|
210 |
+
#: media/js/aam-ui.js:1183 Application/Backend/phtml/object/capability.phtml:69
|
211 |
msgid "Update Capability"
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: media/js/aam-ui.js:1216
|
215 |
msgid "Failed to delete capability"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: media/js/aam-ui.js:1224 Application/Backend/phtml/object/capability.phtml:91
|
219 |
msgid "Delete Capability"
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: media/js/aam-ui.js:1446 Application/Backend/View/Localization.php:20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
msgid "Search"
|
224 |
msgstr ""
|
225 |
|
226 |
+
#: media/js/aam-ui.js:1447 Application/Backend/View/Localization.php:21
|
227 |
msgid "_TOTAL_ object(s)"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: media/js/aam-ui.js:1511
|
231 |
msgid "Drill-Down"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: media/js/aam-ui.js:1529 Application/Backend/View/Localization.php:43
|
235 |
#: Application/Backend/phtml/metabox.phtml:7
|
236 |
msgid "Manage Access"
|
237 |
msgstr ""
|
238 |
|
239 |
+
#: media/js/aam-ui.js:1541 Application/Backend/View/Localization.php:44
|
240 |
+
#: Application/Backend/phtml/object/post.phtml:140
|
241 |
msgid "Edit"
|
242 |
msgstr ""
|
243 |
|
244 |
+
#: media/js/aam-ui.js:1919 media/js/aam-ui.js:1956
|
245 |
msgid "Application Error"
|
246 |
msgstr ""
|
247 |
|
248 |
#: Application/Backend/Feature/Abstract.php:29
|
249 |
#: Application/Backend/Feature/Role.php:29
|
250 |
+
#: Application/Backend/Feature/User.php:29 Application/Backend/Manager.php:452
|
251 |
+
#: Application/Backend/Manager.php:477 Application/Core/API.php:256
|
252 |
+
msgid "Access Denied"
|
253 |
msgstr ""
|
254 |
|
255 |
#: Application/Backend/Feature/Capability.php:104
|
267 |
|
268 |
#: Application/Backend/Feature/Capability.php:253
|
269 |
#: Application/Backend/Feature/Capability.php:293
|
270 |
+
#: Application/Backend/Feature/Post.php:363
|
271 |
msgid "Posts & Pages"
|
272 |
msgstr ""
|
273 |
|
274 |
#: Application/Backend/Feature/Capability.php:254
|
275 |
#: Application/Backend/Feature/Capability.php:295
|
276 |
+
#: Application/Backend/phtml/object/post.phtml:123
|
277 |
msgid "Backend"
|
278 |
msgstr ""
|
279 |
|
294 |
msgid "License key is missing."
|
295 |
msgstr ""
|
296 |
|
297 |
+
#: Application/Backend/Feature/Extension.php:187
|
298 |
msgid "Extensions"
|
299 |
msgstr ""
|
300 |
|
302 |
msgid "Backend Menu"
|
303 |
msgstr ""
|
304 |
|
305 |
+
#: Application/Backend/Feature/Metabox.php:239
|
306 |
msgid "Metaboxes & Widgets"
|
307 |
msgstr ""
|
308 |
|
309 |
+
#: Application/Backend/Feature/Post.php:268
|
310 |
msgid "You reached your limitation."
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: Application/Backend/Feature/Redirect.php:101
|
314 |
+
msgid "Redirect"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: Application/Backend/Feature/Teaser.php:101
|
318 |
+
msgid "Content Teaser"
|
319 |
msgstr ""
|
320 |
|
321 |
+
#: Application/Backend/Feature/Utility.php:91
|
322 |
msgid "Utilities"
|
323 |
msgstr ""
|
324 |
|
325 |
+
#: Application/Backend/Manager.php:124
|
326 |
#, php-format
|
327 |
msgid "Extension %s has new update available for download."
|
328 |
msgstr ""
|
329 |
|
330 |
+
#: Application/Backend/Manager.php:194
|
331 |
msgid "Access Manager"
|
332 |
msgstr ""
|
333 |
|
334 |
+
#: Application/Backend/Manager.php:264 Application/Backend/Manager.php:289
|
335 |
msgid "Access"
|
336 |
msgstr ""
|
337 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
338 |
#: Application/Backend/View/Localization.php:22
|
339 |
msgid "Failed"
|
340 |
msgstr ""
|
347 |
msgid "Current role"
|
348 |
msgstr ""
|