Version Description
- Fixed bug with user inheritance
- Fixed bug with user restore default settings
- Fixed bug with installed extension detection
- Improved core extension handling
- Improved subject inheritance mechanism
- Removed deprecated ConfigPress Tutorial
- Optimized CSS
- Regenerated translation pot file
Download this release
Release Info
Developer | vasyl_m |
Plugin | Advanced Access Manager |
Version | 2.6 |
Comparing to | |
See all releases |
Code changes from version 2.5 to 2.6
- aam.php +28 -3
- application/control/object/post.php +15 -2
- application/control/object/term.php +7 -0
- application/control/subject.php +30 -0
- application/control/subject/role.php +7 -0
- application/control/subject/user.php +24 -14
- application/control/subject/visitor.php +7 -0
- application/core/extension.php +19 -0
- application/core/repository.php +84 -4
- application/view/extension.php +12 -37
- application/view/help.php +51 -0
- application/view/manager.php +15 -4
- application/view/menu.php +33 -22
- application/view/metabox.php +20 -6
- application/view/tmpl/capability.phtml +2 -2
- application/view/tmpl/configpress.phtml +0 -1
- application/view/tmpl/control_area.phtml +21 -9
- application/view/tmpl/extension.phtml +9 -11
- application/view/tmpl/help_developers.phtml +29 -0
- application/view/tmpl/help_extensions.phtml +16 -0
- application/view/tmpl/help_faq.phtml +38 -0
- application/view/tmpl/help_overview.phtml +48 -0
- application/view/tmpl/metabox.phtml +2 -2
- config.php +2 -2
- docs/configpress.pdf +0 -0
- extension/AAM_My_Feature/images/message-active.png +0 -0
- extension/AAM_My_Feature/images/message.png +0 -0
- extension/AAM_My_Feature/images/talk-active.png +0 -0
- extension/AAM_My_Feature/images/talk.png +0 -0
- extension/AAM_My_Feature/my_feature.css +0 -44
- extension/AAM_My_Feature/ui.phtml +4 -9
- lang/aam.mo +0 -0
- lang/aam.pot +131 -143
- media/css/aam.css +211 -518
- media/css/configpress.css +1 -9
- media/css/images/capability/add-active.png +0 -0
- media/css/images/capability/add.png +0 -0
- media/css/images/capability/copy-active.png +0 -0
- media/css/images/capability/copy.png +0 -0
- media/css/images/capability/filter-active.png +0 -0
- media/css/images/capability/filter.png +0 -0
- media/css/images/capability/restore-active.png +0 -0
- media/css/images/capability/restore.png +0 -0
- media/css/images/capability/select-active.png +0 -0
- media/css/images/capability/select.png +0 -0
- media/css/images/cmanager/add-active.png +0 -0
- media/css/images/cmanager/add.png +0 -0
- media/css/images/cmanager/block-user-active.png +0 -0
- media/css/images/cmanager/block-user.png +0 -0
- media/css/images/cmanager/delete-active.png +0 -0
- media/css/images/cmanager/delete.png +0 -0
- media/css/images/cmanager/duplicate-active.png +0 -0
- media/css/images/cmanager/duplicate.png +0 -0
- media/css/images/cmanager/edit-active.png +0 -0
- media/css/images/cmanager/edit-user-active.png +0 -0
- media/css/images/cmanager/edit-user.png +0 -0
- media/css/images/cmanager/edit.png +0 -0
- media/css/images/cmanager/filter-active.png +0 -0
- media/css/images/cmanager/filter.png +0 -0
- media/css/images/cmanager/refresh-active.png +0 -0
- media/css/images/cmanager/refresh.png +0 -0
- media/css/images/cmanager/restore-active.png +0 -0
- media/css/images/cmanager/restore.png +0 -0
- media/css/images/cmanager/select-active.png +0 -0
- media/css/images/cmanager/select.png +0 -0
- media/css/images/cmanager/settings-active.png +0 -0
- media/css/images/cmanager/settings.png +0 -0
- media/css/images/common/add.png +0 -0
- media/css/images/common/medium-iconset.png +0 -0
- media/css/images/{capability/ajax-loader.gif → common/medium-loader.gif} +0 -0
- media/css/images/common/small-iconset.png +0 -0
- media/css/images/configpress/pdf-active.png +0 -0
- media/css/images/configpress/pdf.png +0 -0
- media/css/images/event/add-active.png +0 -0
- media/css/images/event/add.png +0 -0
- media/css/images/metabox/add-active.png +0 -0
- media/css/images/metabox/add.png +0 -0
- media/css/images/metabox/refresh-active.png +0 -0
- media/css/images/metabox/refresh.png +0 -0
- media/css/images/post/delete-active.png +0 -0
- media/css/images/post/delete.png +0 -0
- media/css/images/post/edit-active.png +0 -0
- media/css/images/post/edit.png +0 -0
- media/css/images/post/filter-active.png +0 -0
- media/css/images/post/filter.png +0 -0
- media/css/images/post/refresh-active.png +0 -0
- media/css/images/post/refresh.png +0 -0
- media/css/images/post/restore-active.png +0 -0
- media/css/images/post/restore.png +0 -0
- media/css/images/post/settings-active.png +0 -0
- media/css/images/post/settings.png +0 -0
- media/css/images/post/trash-active.png +0 -0
- media/css/images/post/trash.png +0 -0
- media/js/aam.js +346 -324
- media/js/configpress.js +2 -3
- readme.txt +23 -3
aam.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
/**
|
4 |
Plugin Name: Advanced Access Manager
|
5 |
Description: Manage User and Role Access to WordPress Backend and Frontend.
|
6 |
-
Version: 2.
|
7 |
Author: Vasyl Martyniuk <support@wpaam.com>
|
8 |
Author URI: http://www.wpaam.com
|
9 |
|
@@ -67,6 +67,9 @@ class aam {
|
|
67 |
//print required JS & CSS
|
68 |
add_action('admin_print_scripts', array($this, 'printScripts'));
|
69 |
add_action('admin_print_styles', array($this, 'printStyles'));
|
|
|
|
|
|
|
70 |
|
71 |
//manager Admin Menu
|
72 |
if (aam_Core_API::isNetworkPanel()) {
|
@@ -291,6 +294,24 @@ class aam {
|
|
291 |
|
292 |
return $pages;
|
293 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
|
295 |
/**
|
296 |
* Filter Navigation menu
|
@@ -708,6 +729,7 @@ class aam {
|
|
708 |
wp_enqueue_style('aam-ui-style', AAM_MEDIA_URL . 'css/jquery-ui.css');
|
709 |
wp_enqueue_style('aam-style', AAM_MEDIA_URL . 'css/aam.css');
|
710 |
wp_enqueue_style('aam-datatables', AAM_MEDIA_URL . 'css/jquery.dt.css');
|
|
|
711 |
wp_enqueue_style(
|
712 |
'aam-treeview', AAM_MEDIA_URL . 'css/jquery.treeview.css'
|
713 |
);
|
@@ -752,6 +774,7 @@ class aam {
|
|
752 |
wp_enqueue_script('jquery-ui-sortable');
|
753 |
wp_enqueue_script('jquery-ui-menu');
|
754 |
wp_enqueue_script('jquery-effects-highlight');
|
|
|
755 |
|
756 |
$localization = array(
|
757 |
'nonce' => wp_create_nonce('aam_ajax'),
|
@@ -764,6 +787,9 @@ class aam {
|
|
764 |
'blog' => get_current_blog_id(),
|
765 |
'user' => 0
|
766 |
),
|
|
|
|
|
|
|
767 |
'labels' => aam_View_Manager::uiLabels()
|
768 |
);
|
769 |
wp_localize_script('aam-admin', 'aamLocal', $localization);
|
@@ -1158,8 +1184,7 @@ class aam {
|
|
1158 |
* @access protected
|
1159 |
*/
|
1160 |
protected function loadExtensions() {
|
1161 |
-
|
1162 |
-
$model->load();
|
1163 |
}
|
1164 |
|
1165 |
}
|
3 |
/**
|
4 |
Plugin Name: Advanced Access Manager
|
5 |
Description: Manage User and Role Access to WordPress Backend and Frontend.
|
6 |
+
Version: 2.6
|
7 |
Author: Vasyl Martyniuk <support@wpaam.com>
|
8 |
Author URI: http://www.wpaam.com
|
9 |
|
67 |
//print required JS & CSS
|
68 |
add_action('admin_print_scripts', array($this, 'printScripts'));
|
69 |
add_action('admin_print_styles', array($this, 'printStyles'));
|
70 |
+
|
71 |
+
//add help menu
|
72 |
+
add_filter('contextual_help', array($this, 'contextualHelp'), 10, 3);
|
73 |
|
74 |
//manager Admin Menu
|
75 |
if (aam_Core_API::isNetworkPanel()) {
|
294 |
|
295 |
return $pages;
|
296 |
}
|
297 |
+
|
298 |
+
/**
|
299 |
+
* Contextual Help Menu
|
300 |
+
*
|
301 |
+
* @param type $contextual_help
|
302 |
+
* @param type $screen_id
|
303 |
+
* @param type $screen
|
304 |
+
*
|
305 |
+
* @return
|
306 |
+
*/
|
307 |
+
public function contextualHelp($contextual_help, $screen_id, $screen){
|
308 |
+
if ($this->isAAMScreen()){
|
309 |
+
$help = new aam_View_Help();
|
310 |
+
$help->content($screen);
|
311 |
+
}
|
312 |
+
|
313 |
+
return $contextual_help;
|
314 |
+
}
|
315 |
|
316 |
/**
|
317 |
* Filter Navigation menu
|
729 |
wp_enqueue_style('aam-ui-style', AAM_MEDIA_URL . 'css/jquery-ui.css');
|
730 |
wp_enqueue_style('aam-style', AAM_MEDIA_URL . 'css/aam.css');
|
731 |
wp_enqueue_style('aam-datatables', AAM_MEDIA_URL . 'css/jquery.dt.css');
|
732 |
+
wp_enqueue_style('wp-pointer');
|
733 |
wp_enqueue_style(
|
734 |
'aam-treeview', AAM_MEDIA_URL . 'css/jquery.treeview.css'
|
735 |
);
|
774 |
wp_enqueue_script('jquery-ui-sortable');
|
775 |
wp_enqueue_script('jquery-ui-menu');
|
776 |
wp_enqueue_script('jquery-effects-highlight');
|
777 |
+
wp_enqueue_script('wp-pointer');
|
778 |
|
779 |
$localization = array(
|
780 |
'nonce' => wp_create_nonce('aam_ajax'),
|
787 |
'blog' => get_current_blog_id(),
|
788 |
'user' => 0
|
789 |
),
|
790 |
+
'contextualMenu' => get_user_meta(
|
791 |
+
get_current_user_id(), 'aam_contextual_menu', true
|
792 |
+
),
|
793 |
'labels' => aam_View_Manager::uiLabels()
|
794 |
);
|
795 |
wp_localize_script('aam-admin', 'aamLocal', $localization);
|
1184 |
* @access protected
|
1185 |
*/
|
1186 |
protected function loadExtensions() {
|
1187 |
+
aam_Core_Repository::getInstance($this)->load();
|
|
|
1188 |
}
|
1189 |
|
1190 |
}
|
application/control/object/post.php
CHANGED
@@ -122,6 +122,12 @@ class aam_Control_Object_Post extends aam_Control_Object {
|
|
122 |
//try to get any parent access
|
123 |
$option = $this->inheritAccess($term_id);
|
124 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
|
126 |
$this->setOption(
|
127 |
apply_filters('aam_post_access_option', $option, $this)
|
@@ -145,9 +151,16 @@ class aam_Control_Object_Post extends aam_Control_Object {
|
|
145 |
}
|
146 |
|
147 |
/**
|
148 |
-
*
|
149 |
-
*
|
|
|
|
|
|
|
|
|
|
|
150 |
* @return array
|
|
|
|
|
151 |
*/
|
152 |
private function inheritAccess($term_id) {
|
153 |
$term = new aam_Control_Object_Term($this->getSubject(), $term_id);
|
122 |
//try to get any parent access
|
123 |
$option = $this->inheritAccess($term_id);
|
124 |
}
|
125 |
+
//even if parent category is empty, try to read the parent subject
|
126 |
+
if (empty($option)){
|
127 |
+
$option = $this->getSubject()->readParentSubject(
|
128 |
+
self::UID, $this->getPost()->ID
|
129 |
+
);
|
130 |
+
}
|
131 |
|
132 |
$this->setOption(
|
133 |
apply_filters('aam_post_access_option', $option, $this)
|
151 |
}
|
152 |
|
153 |
/**
|
154 |
+
* Inherit access from parent term
|
155 |
+
*
|
156 |
+
* Go throught the hierarchical branch of terms and retrieve access from the
|
157 |
+
* first parent term that has access defined.
|
158 |
+
*
|
159 |
+
* @param int $term_id
|
160 |
+
*
|
161 |
* @return array
|
162 |
+
*
|
163 |
+
* @access private
|
164 |
*/
|
165 |
private function inheritAccess($term_id) {
|
166 |
$term = new aam_Control_Object_Term($this->getSubject(), $term_id);
|
application/control/object/term.php
CHANGED
@@ -104,6 +104,13 @@ class aam_Control_Object_Term extends aam_Control_Object {
|
|
104 |
//try to get any parent restriction
|
105 |
$access = $this->inheritAccess($this->getTerm()->parent);
|
106 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
|
108 |
$this->setOption(
|
109 |
apply_filters('aam_term_access_option', $access, $this)
|
104 |
//try to get any parent restriction
|
105 |
$access = $this->inheritAccess($this->getTerm()->parent);
|
106 |
}
|
107 |
+
|
108 |
+
//even if parent category is empty, try to read the parent subject
|
109 |
+
if (empty($access)){
|
110 |
+
$access = $this->getSubject()->readParentSubject(
|
111 |
+
self::UID, $this->getTerm()->term_id
|
112 |
+
);
|
113 |
+
}
|
114 |
|
115 |
$this->setOption(
|
116 |
apply_filters('aam_term_access_option', $access, $this)
|
application/control/subject.php
CHANGED
@@ -433,4 +433,34 @@ abstract class aam_Control_Subject {
|
|
433 |
*/
|
434 |
abstract protected function retrieveSubject();
|
435 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
436 |
}
|
433 |
*/
|
434 |
abstract protected function retrieveSubject();
|
435 |
|
436 |
+
/**
|
437 |
+
* Read object from parent subject
|
438 |
+
*
|
439 |
+
* @param string $object
|
440 |
+
* @param mixed $object_id
|
441 |
+
*
|
442 |
+
* @return mixed
|
443 |
+
*
|
444 |
+
* @access public
|
445 |
+
*/
|
446 |
+
public function readParentSubject($object, $object_id){
|
447 |
+
if ($subject = $this->getParentSubject()){
|
448 |
+
$option = $subject->getObject($object, $object_id)->getOption();
|
449 |
+
} else {
|
450 |
+
$option = null;
|
451 |
+
}
|
452 |
+
|
453 |
+
return $option;
|
454 |
+
}
|
455 |
+
|
456 |
+
/**
|
457 |
+
* Retrive parent subject
|
458 |
+
*
|
459 |
+
* If there is no parent subject, return null
|
460 |
+
*
|
461 |
+
* @return aam_Control_Subject|null
|
462 |
+
*
|
463 |
+
* @access public
|
464 |
+
*/
|
465 |
+
abstract public function getParentSubject();
|
466 |
}
|
application/control/subject/role.php
CHANGED
@@ -278,5 +278,12 @@ class aam_Control_Subject_Role extends aam_Control_Subject {
|
|
278 |
public function clearCache(){
|
279 |
return true;
|
280 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
281 |
|
282 |
}
|
278 |
public function clearCache(){
|
279 |
return true;
|
280 |
}
|
281 |
+
|
282 |
+
/**
|
283 |
+
* @inheritdoc
|
284 |
+
*/
|
285 |
+
public function getParentSubject(){
|
286 |
+
return null;
|
287 |
+
}
|
288 |
|
289 |
}
|
application/control/subject/user.php
CHANGED
@@ -247,19 +247,30 @@ class aam_Control_Subject_User extends aam_Control_Subject {
|
|
247 |
$this->getOptionName($object, $object_id), $this->getId()
|
248 |
);
|
249 |
if (empty($option) && $inherit) {
|
250 |
-
|
251 |
-
$roles = $this->getSubject()->roles;
|
252 |
-
//first user role is counted only. AAM does not support multi-roles
|
253 |
-
$subject_role = array_shift($roles);
|
254 |
-
//in case of multisite & current user does not belong to the site
|
255 |
-
if ($subject_role){
|
256 |
-
$role = new aam_Control_Subject_Role($subject_role);
|
257 |
-
$option = $role->getObject($object, $object_id)->getOption();
|
258 |
-
}
|
259 |
}
|
260 |
|
261 |
return $option;
|
262 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
263 |
|
264 |
/**
|
265 |
*
|
@@ -298,15 +309,14 @@ class aam_Control_Subject_User extends aam_Control_Subject {
|
|
298 |
{
|
299 |
global $wpdb;
|
300 |
|
301 |
-
$mask = 'aam_%_' . $this->getId();
|
302 |
-
|
303 |
//clear all settings in usermeta table
|
304 |
$prefix = $wpdb->get_blog_prefix();
|
305 |
-
$wpdb->
|
306 |
-
|
307 |
-
);
|
308 |
|
309 |
//clear all settings in postmeta table
|
|
|
310 |
$wpdb->query("DELETE FROM {$wpdb->postmeta} WHERE meta_key LIKE '{$mask}'");
|
311 |
|
312 |
$this->clearCache(); //delete cache
|
247 |
$this->getOptionName($object, $object_id), $this->getId()
|
248 |
);
|
249 |
if (empty($option) && $inherit) {
|
250 |
+
$option = $this->readParentSubject($object, $object_id);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
251 |
}
|
252 |
|
253 |
return $option;
|
254 |
}
|
255 |
+
|
256 |
+
/**
|
257 |
+
* @inheritdoc
|
258 |
+
*/
|
259 |
+
public function getParentSubject() {
|
260 |
+
//try to get this option from the User's Role
|
261 |
+
$roles = $this->getSubject()->roles;
|
262 |
+
//first user role is counted only. AAM does not support multi-roles
|
263 |
+
$subject_role = array_shift($roles);
|
264 |
+
|
265 |
+
if ($subject_role){
|
266 |
+
//in case of multisite & current user does not belong to the site
|
267 |
+
$role = new aam_Control_Subject_Role($subject_role);
|
268 |
+
} else {
|
269 |
+
$role = null;
|
270 |
+
}
|
271 |
+
|
272 |
+
return $role;
|
273 |
+
}
|
274 |
|
275 |
/**
|
276 |
*
|
309 |
{
|
310 |
global $wpdb;
|
311 |
|
|
|
|
|
312 |
//clear all settings in usermeta table
|
313 |
$prefix = $wpdb->get_blog_prefix();
|
314 |
+
$query = "DELETE FROM {$wpdb->usermeta} WHERE ";
|
315 |
+
$query .= "meta_key LIKE '{$prefix}aam_%' AND user_id = " . $this->getId();
|
316 |
+
$wpdb->query($query);
|
317 |
|
318 |
//clear all settings in postmeta table
|
319 |
+
$mask = 'aam_%_' . $this->getId();
|
320 |
$wpdb->query("DELETE FROM {$wpdb->postmeta} WHERE meta_key LIKE '{$mask}'");
|
321 |
|
322 |
$this->clearCache(); //delete cache
|
application/control/subject/visitor.php
CHANGED
@@ -190,5 +190,12 @@ class aam_Control_Subject_Visitor extends aam_Control_Subject
|
|
190 |
|
191 |
do_action('aam_clear_all_options', $this);
|
192 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
|
194 |
}
|
190 |
|
191 |
do_action('aam_clear_all_options', $this);
|
192 |
}
|
193 |
+
|
194 |
+
/**
|
195 |
+
* @inheritdoc
|
196 |
+
*/
|
197 |
+
public function getParentSubject(){
|
198 |
+
return null;
|
199 |
+
}
|
200 |
|
201 |
}
|
application/core/extension.php
CHANGED
@@ -16,6 +16,11 @@
|
|
16 |
*/
|
17 |
class AAM_Core_Extension {
|
18 |
|
|
|
|
|
|
|
|
|
|
|
19 |
/**
|
20 |
* Parent AAM object
|
21 |
*
|
@@ -37,6 +42,20 @@ class AAM_Core_Extension {
|
|
37 |
public function __construct(aam $parent) {
|
38 |
$this->setParent($parent);
|
39 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
41 |
/**
|
42 |
* Set Parent Object
|
16 |
*/
|
17 |
class AAM_Core_Extension {
|
18 |
|
19 |
+
/**
|
20 |
+
* Extension iterator
|
21 |
+
*/
|
22 |
+
const ITERATOR = 1;
|
23 |
+
|
24 |
/**
|
25 |
* Parent AAM object
|
26 |
*
|
42 |
public function __construct(aam $parent) {
|
43 |
$this->setParent($parent);
|
44 |
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Get extension iterator
|
48 |
+
*
|
49 |
+
* Extension iterator is kind of extension's version with the only difference:
|
50 |
+
* the iterator is incremented only when activation hook has to be fired.
|
51 |
+
*
|
52 |
+
* @return int
|
53 |
+
*
|
54 |
+
* @access public
|
55 |
+
*/
|
56 |
+
public function getInterator(){
|
57 |
+
return self::ITERATOR;
|
58 |
+
}
|
59 |
|
60 |
/**
|
61 |
* Set Parent Object
|
application/core/repository.php
CHANGED
@@ -31,6 +31,25 @@ class aam_Core_Repository {
|
|
31 |
* Extensions installed successfully
|
32 |
*/
|
33 |
const STATUS_INSTALLED = 'installed';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
|
35 |
/**
|
36 |
* Basedir to Extentions repository
|
@@ -73,11 +92,34 @@ class aam_Core_Repository {
|
|
73 |
*
|
74 |
* @return void
|
75 |
*
|
76 |
-
* @access
|
77 |
*/
|
78 |
-
|
79 |
$this->setParent($parent);
|
80 |
$this->_basedir = AAM_BASE_DIR . 'extension';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
}
|
82 |
|
83 |
/**
|
@@ -100,6 +142,42 @@ class aam_Core_Repository {
|
|
100 |
}
|
101 |
}
|
102 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
|
104 |
/**
|
105 |
* Download extension from the external server
|
@@ -143,8 +221,9 @@ class aam_Core_Repository {
|
|
143 |
$repository[$extension] = (object) array(
|
144 |
'status' => self::STATUS_INSTALLED,
|
145 |
'license' => $license,
|
|
|
146 |
//ugly way but quick
|
147 |
-
'basedir' => $this->_basedir
|
148 |
);
|
149 |
aam_Core_API::updateBlogOption('aam_extensions', $repository, 1);
|
150 |
$response = true;
|
@@ -212,7 +291,7 @@ class aam_Core_Repository {
|
|
212 |
*/
|
213 |
protected function retrieve($license) {
|
214 |
global $wp_filesystem;
|
215 |
-
|
216 |
$url = WPAAM_REST_API . '?method=extension&license=' . $license;
|
217 |
$res = wp_remote_request($url, array('timeout' => 10));
|
218 |
$response = false;
|
@@ -270,6 +349,7 @@ class aam_Core_Repository {
|
|
270 |
if (file_exists($bootstrap) && !isset($this->_cache[$extension])) {
|
271 |
//bootstrap the extension
|
272 |
$this->_cache[$extension] = require_once($bootstrap);
|
|
|
273 |
//check if activation hook still present and trigger warning if yes
|
274 |
if (file_exists($this->_basedir . "/{$extension}/activation.php")){
|
275 |
aam_Core_Console::add(
|
31 |
* Extensions installed successfully
|
32 |
*/
|
33 |
const STATUS_INSTALLED = 'installed';
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Single instance of itself
|
37 |
+
*
|
38 |
+
* @var aam_Core_Repository
|
39 |
+
*
|
40 |
+
* @access private
|
41 |
+
* @static
|
42 |
+
*/
|
43 |
+
private static $_instance = null;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Extension repository
|
47 |
+
*
|
48 |
+
* @var array
|
49 |
+
*
|
50 |
+
* @access private
|
51 |
+
*/
|
52 |
+
private $_repository = array();
|
53 |
|
54 |
/**
|
55 |
* Basedir to Extentions repository
|
92 |
*
|
93 |
* @return void
|
94 |
*
|
95 |
+
* @access protected
|
96 |
*/
|
97 |
+
protected function __construct(aam $parent = null) {
|
98 |
$this->setParent($parent);
|
99 |
$this->_basedir = AAM_BASE_DIR . 'extension';
|
100 |
+
//retrieve list of extensions from the database
|
101 |
+
$repository = aam_Core_API::getBlogOption('aam_extensions', array(), 1);
|
102 |
+
if (is_array($repository)){
|
103 |
+
$this->_repository = $repository;
|
104 |
+
}
|
105 |
+
}
|
106 |
+
|
107 |
+
/**
|
108 |
+
* Get single instance of itself
|
109 |
+
*
|
110 |
+
* @param aam $parent
|
111 |
+
*
|
112 |
+
* @return aam_Core_Repository
|
113 |
+
*
|
114 |
+
* @access public
|
115 |
+
* @static
|
116 |
+
*/
|
117 |
+
public static function getInstance(aam $parent = null){
|
118 |
+
if (is_null(self::$_instance)){
|
119 |
+
self::$_instance = new self($parent);
|
120 |
+
}
|
121 |
+
|
122 |
+
return self::$_instance;
|
123 |
}
|
124 |
|
125 |
/**
|
142 |
}
|
143 |
}
|
144 |
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Check if extensions exists
|
148 |
+
*
|
149 |
+
* @param string $extension
|
150 |
+
*
|
151 |
+
* @return boolean
|
152 |
+
*
|
153 |
+
* @access public
|
154 |
+
*/
|
155 |
+
public function hasExtension($extension){
|
156 |
+
$response = false;
|
157 |
+
|
158 |
+
if (isset($this->_repository[$extension])){
|
159 |
+
$info = $this->_repository[$extension];
|
160 |
+
if ($info->status == self::STATUS_INSTALLED
|
161 |
+
&& file_exists($info->basedir)){
|
162 |
+
$response = true;
|
163 |
+
}
|
164 |
+
}
|
165 |
+
|
166 |
+
return $response;
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* Get Extension info
|
171 |
+
*
|
172 |
+
* @param string $ext
|
173 |
+
*
|
174 |
+
* @return stdClass
|
175 |
+
*
|
176 |
+
* @access public
|
177 |
+
*/
|
178 |
+
public function getExtension($ext){
|
179 |
+
return ($this->hasExtension($ext) ? $this->_repository[$ext] : new stdClass);
|
180 |
+
}
|
181 |
|
182 |
/**
|
183 |
* Download extension from the external server
|
221 |
$repository[$extension] = (object) array(
|
222 |
'status' => self::STATUS_INSTALLED,
|
223 |
'license' => $license,
|
224 |
+
'iteration' => 0, //this counter is used for extension activation
|
225 |
//ugly way but quick
|
226 |
+
'basedir' => "{$this->_basedir}/" . str_replace(' ', '_', $extension)
|
227 |
);
|
228 |
aam_Core_API::updateBlogOption('aam_extensions', $repository, 1);
|
229 |
$response = true;
|
291 |
*/
|
292 |
protected function retrieve($license) {
|
293 |
global $wp_filesystem;
|
294 |
+
|
295 |
$url = WPAAM_REST_API . '?method=extension&license=' . $license;
|
296 |
$res = wp_remote_request($url, array('timeout' => 10));
|
297 |
$response = false;
|
349 |
if (file_exists($bootstrap) && !isset($this->_cache[$extension])) {
|
350 |
//bootstrap the extension
|
351 |
$this->_cache[$extension] = require_once($bootstrap);
|
352 |
+
//TODO - Implement Iterator here!!
|
353 |
//check if activation hook still present and trigger warning if yes
|
354 |
if (file_exists($this->_basedir . "/{$extension}/activation.php")){
|
355 |
aam_Core_Console::add(
|
application/view/extension.php
CHANGED
@@ -20,11 +20,11 @@ class aam_View_Extension extends aam_View_Abstract {
|
|
20 |
/**
|
21 |
* Extensions Repository
|
22 |
*
|
23 |
-
* @var
|
24 |
*
|
25 |
* @access private
|
26 |
*/
|
27 |
-
private $_repository
|
28 |
|
29 |
/**
|
30 |
* Constructor
|
@@ -37,12 +37,7 @@ class aam_View_Extension extends aam_View_Abstract {
|
|
37 |
*/
|
38 |
public function __construct() {
|
39 |
parent::__construct();
|
40 |
-
|
41 |
-
//get repository
|
42 |
-
$repository = aam_Core_API::getBlogOption('aam_extensions', array(), 1);
|
43 |
-
if (is_array($repository)){
|
44 |
-
$this->_repository = $repository;
|
45 |
-
}
|
46 |
}
|
47 |
|
48 |
/**
|
@@ -53,16 +48,15 @@ class aam_View_Extension extends aam_View_Abstract {
|
|
53 |
* @access public
|
54 |
*/
|
55 |
public function install(){
|
56 |
-
$repo = new aam_Core_Repository;
|
57 |
$license = aam_Core_Request::post('license');
|
58 |
$ext = aam_Core_Request::post('extension');
|
59 |
|
60 |
-
if ($license && $
|
61 |
$response = array('status' => 'success');
|
62 |
} else {
|
63 |
$response = array(
|
64 |
'status' => 'failure',
|
65 |
-
'reasons' => $
|
66 |
);
|
67 |
}
|
68 |
|
@@ -77,16 +71,15 @@ class aam_View_Extension extends aam_View_Abstract {
|
|
77 |
* @access public
|
78 |
*/
|
79 |
public function remove(){
|
80 |
-
$repo = new aam_Core_Repository;
|
81 |
$license = aam_Core_Request::post('license');
|
82 |
$ext = aam_Core_Request::post('extension');
|
83 |
|
84 |
-
if ($
|
85 |
$response = array('status' => 'success');
|
86 |
} else {
|
87 |
$response = array(
|
88 |
'status' => 'failure',
|
89 |
-
'reasons' => $
|
90 |
);
|
91 |
}
|
92 |
|
@@ -112,29 +105,11 @@ class aam_View_Extension extends aam_View_Abstract {
|
|
112 |
}
|
113 |
|
114 |
/**
|
115 |
-
*
|
116 |
-
*
|
117 |
-
* @param string $extension
|
118 |
-
*
|
119 |
-
* @return boolean
|
120 |
-
*
|
121 |
-
* @access public
|
122 |
-
*/
|
123 |
-
public function hasExtension($extension){
|
124 |
-
return (isset($this->_repository[$extension]) ? true : false);
|
125 |
-
}
|
126 |
-
|
127 |
-
/**
|
128 |
-
* Get Extension
|
129 |
-
*
|
130 |
-
* @param string $extension
|
131 |
-
*
|
132 |
-
* @return stdClass
|
133 |
-
*
|
134 |
-
* @access public
|
135 |
*/
|
136 |
-
public function
|
137 |
-
return
|
138 |
}
|
139 |
-
|
140 |
}
|
20 |
/**
|
21 |
* Extensions Repository
|
22 |
*
|
23 |
+
* @var aam_Core_Repository
|
24 |
*
|
25 |
* @access private
|
26 |
*/
|
27 |
+
private $_repository;
|
28 |
|
29 |
/**
|
30 |
* Constructor
|
37 |
*/
|
38 |
public function __construct() {
|
39 |
parent::__construct();
|
40 |
+
$this->_repository = aam_Core_Repository::getInstance();
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
42 |
|
43 |
/**
|
48 |
* @access public
|
49 |
*/
|
50 |
public function install(){
|
|
|
51 |
$license = aam_Core_Request::post('license');
|
52 |
$ext = aam_Core_Request::post('extension');
|
53 |
|
54 |
+
if ($license && $this->getRepository()->add($ext, $license)){
|
55 |
$response = array('status' => 'success');
|
56 |
} else {
|
57 |
$response = array(
|
58 |
'status' => 'failure',
|
59 |
+
'reasons' => $this->getRepository()->getErrors()
|
60 |
);
|
61 |
}
|
62 |
|
71 |
* @access public
|
72 |
*/
|
73 |
public function remove(){
|
|
|
74 |
$license = aam_Core_Request::post('license');
|
75 |
$ext = aam_Core_Request::post('extension');
|
76 |
|
77 |
+
if ($this->getRepository()->remove($ext, $license)){
|
78 |
$response = array('status' => 'success');
|
79 |
} else {
|
80 |
$response = array(
|
81 |
'status' => 'failure',
|
82 |
+
'reasons' => $this->getRepository()->getErrors()
|
83 |
);
|
84 |
}
|
85 |
|
105 |
}
|
106 |
|
107 |
/**
|
108 |
+
*
|
109 |
+
* @return aam_Core_Respository
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
110 |
*/
|
111 |
+
public function getRepository(){
|
112 |
+
return $this->_repository;
|
113 |
}
|
114 |
+
|
115 |
}
|
application/view/help.php
ADDED
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* ======================================================================
|
5 |
+
* LICENSE: This file is subject to the terms and conditions defined in *
|
6 |
+
* file 'license.txt', which is part of this source code package. *
|
7 |
+
* ======================================================================
|
8 |
+
*/
|
9 |
+
|
10 |
+
/**
|
11 |
+
*
|
12 |
+
* @package AAM
|
13 |
+
* @author Vasyl Martyniuk <support@wpaam.com>
|
14 |
+
* @copyright Copyright C 2013 Vasyl Martyniuk
|
15 |
+
* @license GNU General Public License {@link http://www.gnu.org/licenses/}
|
16 |
+
*/
|
17 |
+
class aam_View_Help extends aam_View_Abstract {
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Get View content
|
21 |
+
*
|
22 |
+
* @return string
|
23 |
+
*
|
24 |
+
* @access public
|
25 |
+
*/
|
26 |
+
public function content($screen) {
|
27 |
+
$basedir = dirname(__FILE__) . '/tmpl/';
|
28 |
+
$screen->add_help_tab(array(
|
29 |
+
'id' => 'faq',
|
30 |
+
'title' => 'FAQ',
|
31 |
+
'content' => $this->loadTemplate($basedir . 'help_faq.phtml')
|
32 |
+
));
|
33 |
+
//add overview tab
|
34 |
+
$screen->add_help_tab(array(
|
35 |
+
'id' => 'overview',
|
36 |
+
'title' => 'Overview',
|
37 |
+
'content' => $this->loadTemplate($basedir . 'help_overview.phtml')
|
38 |
+
));
|
39 |
+
$screen->add_help_tab(array(
|
40 |
+
'id' => 'extensions',
|
41 |
+
'title' => 'Extensions',
|
42 |
+
'content' => $this->loadTemplate($basedir . 'help_extensions.phtml')
|
43 |
+
));
|
44 |
+
$screen->add_help_tab(array(
|
45 |
+
'id' => 'developers',
|
46 |
+
'title' => 'Developers',
|
47 |
+
'content' => $this->loadTemplate($basedir . 'help_developers.phtml')
|
48 |
+
));
|
49 |
+
}
|
50 |
+
|
51 |
+
}
|
application/view/manager.php
CHANGED
@@ -45,7 +45,7 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
45 |
* Default ajax response
|
46 |
*/
|
47 |
const DEFAULT_AJAX_RESPONSE = -1;
|
48 |
-
|
49 |
/**
|
50 |
* Constructor
|
51 |
*
|
@@ -194,8 +194,7 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
194 |
*
|
195 |
* @access public
|
196 |
*/
|
197 |
-
public function processAjax()
|
198 |
-
{
|
199 |
$sub_method = aam_Core_Request::request('sub_action');
|
200 |
|
201 |
if (method_exists($this, $sub_method)) {
|
@@ -795,6 +794,17 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
795 |
'status' => ($result === false ? 'failure' : 'success')
|
796 |
));
|
797 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
798 |
|
799 |
/**
|
800 |
* UI Javascript labels
|
@@ -855,7 +865,8 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
855 |
'Trash Post' => __('Trash Post', 'aam'),
|
856 |
'Restore Default Access' => __('Restore Default Access', 'aam'),
|
857 |
'Duplicate' => __('Duplicate', 'aam'),
|
858 |
-
'Actions Locked' => __('Actions Locked', 'aam')
|
|
|
859 |
));
|
860 |
}
|
861 |
|
45 |
* Default ajax response
|
46 |
*/
|
47 |
const DEFAULT_AJAX_RESPONSE = -1;
|
48 |
+
|
49 |
/**
|
50 |
* Constructor
|
51 |
*
|
194 |
*
|
195 |
* @access public
|
196 |
*/
|
197 |
+
public function processAjax(){
|
|
|
198 |
$sub_method = aam_Core_Request::request('sub_action');
|
199 |
|
200 |
if (method_exists($this, $sub_method)) {
|
794 |
'status' => ($result === false ? 'failure' : 'success')
|
795 |
));
|
796 |
}
|
797 |
+
|
798 |
+
/**
|
799 |
+
* Discard Help Pointer
|
800 |
+
*
|
801 |
+
* @return string
|
802 |
+
*
|
803 |
+
* @access public
|
804 |
+
*/
|
805 |
+
public function discardHelp(){
|
806 |
+
return update_user_meta(get_current_user_id(), 'aam_contextual_menu', 1);
|
807 |
+
}
|
808 |
|
809 |
/**
|
810 |
* UI Javascript labels
|
865 |
'Trash Post' => __('Trash Post', 'aam'),
|
866 |
'Restore Default Access' => __('Restore Default Access', 'aam'),
|
867 |
'Duplicate' => __('Duplicate', 'aam'),
|
868 |
+
'Actions Locked' => __('Actions Locked', 'aam'),
|
869 |
+
'AAM Documentation' => __('<h3>AAM Documentation</h3><div class="inner">Find more information about Advanced Access Manager here.</div>', 'aam'),
|
870 |
));
|
871 |
}
|
872 |
|
application/view/menu.php
CHANGED
@@ -23,16 +23,16 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
23 |
public function content() {
|
24 |
return $this->loadTemplate(dirname(__FILE__) . '/tmpl/menu.phtml');
|
25 |
}
|
26 |
-
|
27 |
/**
|
28 |
* @inheritdoc
|
29 |
*/
|
30 |
public function defaultOption($options) {
|
31 |
-
|
32 |
if (!isset($options[aam_Control_Object_Menu::UID])) {
|
33 |
$options[aam_Control_Object_Menu::UID] = array();
|
34 |
}
|
35 |
-
|
36 |
return $options;
|
37 |
}
|
38 |
|
@@ -44,9 +44,9 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
44 |
*/
|
45 |
public function getMenu() {
|
46 |
global $menu;
|
47 |
-
|
48 |
$response = array();
|
49 |
-
|
50 |
//let's create menu list with submenus
|
51 |
foreach ($menu as $menu_item) {
|
52 |
if (!preg_match('/^separator/', $menu_item[2])) {
|
@@ -62,10 +62,10 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
62 |
}
|
63 |
}
|
64 |
}
|
65 |
-
|
66 |
return $response;
|
67 |
}
|
68 |
-
|
69 |
/**
|
70 |
* Prepare filtered submenu
|
71 |
*
|
@@ -85,24 +85,35 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
85 |
if ($this->getSubject()->hasCapability($submenu_item[1]) !== false) {
|
86 |
//prepare title
|
87 |
$submenu_title = $this->removeHTML($submenu_item[0]);
|
88 |
-
if (mb_strlen($submenu_title) > 18) {
|
89 |
-
$submenu_short = mb_substr($submenu_title, 0, 15) . '..';
|
90 |
-
} else {
|
91 |
-
$submenu_short = $submenu_title;
|
92 |
-
}
|
93 |
-
|
94 |
$filtered_submenu[] = array(
|
95 |
'name' => $submenu_title,
|
96 |
-
'short' => $
|
97 |
'id' => $submenu_item[2]
|
98 |
);
|
99 |
}
|
100 |
}
|
101 |
}
|
102 |
-
|
103 |
return $filtered_submenu;
|
104 |
}
|
105 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
/**
|
107 |
* Check if the entire branch is restricted
|
108 |
*
|
@@ -112,17 +123,17 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
112 |
*
|
113 |
* @access public
|
114 |
*/
|
115 |
-
public function hasRestrictedAll($menu){
|
116 |
$menuControl = $this->getSubject()->getObject(aam_Control_Object_Menu::UID);
|
117 |
$response = $menuControl->has($menu['id']);
|
118 |
-
|
119 |
-
foreach($menu['submenu'] as $submenu){
|
120 |
-
if ($menuControl->has($submenu['id']) === false){
|
121 |
$response = false;
|
122 |
break;
|
123 |
}
|
124 |
}
|
125 |
-
|
126 |
return $response;
|
127 |
}
|
128 |
|
@@ -136,4 +147,4 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
136 |
return strip_tags($text);
|
137 |
}
|
138 |
|
139 |
-
}
|
23 |
public function content() {
|
24 |
return $this->loadTemplate(dirname(__FILE__) . '/tmpl/menu.phtml');
|
25 |
}
|
26 |
+
|
27 |
/**
|
28 |
* @inheritdoc
|
29 |
*/
|
30 |
public function defaultOption($options) {
|
31 |
+
//make sure that some parts are always in place
|
32 |
if (!isset($options[aam_Control_Object_Menu::UID])) {
|
33 |
$options[aam_Control_Object_Menu::UID] = array();
|
34 |
}
|
35 |
+
|
36 |
return $options;
|
37 |
}
|
38 |
|
44 |
*/
|
45 |
public function getMenu() {
|
46 |
global $menu;
|
47 |
+
|
48 |
$response = array();
|
49 |
+
|
50 |
//let's create menu list with submenus
|
51 |
foreach ($menu as $menu_item) {
|
52 |
if (!preg_match('/^separator/', $menu_item[2])) {
|
62 |
}
|
63 |
}
|
64 |
}
|
65 |
+
|
66 |
return $response;
|
67 |
}
|
68 |
+
|
69 |
/**
|
70 |
* Prepare filtered submenu
|
71 |
*
|
85 |
if ($this->getSubject()->hasCapability($submenu_item[1]) !== false) {
|
86 |
//prepare title
|
87 |
$submenu_title = $this->removeHTML($submenu_item[0]);
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
$filtered_submenu[] = array(
|
89 |
'name' => $submenu_title,
|
90 |
+
'short' => $this->prepareTitle($submenu_title),
|
91 |
'id' => $submenu_item[2]
|
92 |
);
|
93 |
}
|
94 |
}
|
95 |
}
|
96 |
+
|
97 |
return $filtered_submenu;
|
98 |
}
|
99 |
+
|
100 |
+
/**
|
101 |
+
*
|
102 |
+
* @param type $title
|
103 |
+
* @return string
|
104 |
+
*/
|
105 |
+
protected function prepareTitle($title) {
|
106 |
+
if (function_exists('mb_strlen')) {
|
107 |
+
if ((mb_strlen($title) > 18)) {
|
108 |
+
$title = mb_substr($title, 0, 15) . '..';
|
109 |
+
}
|
110 |
+
} elseif (strlen($title) > 18) {
|
111 |
+
$title = substr($title, 0, 15) . '..';
|
112 |
+
}
|
113 |
+
|
114 |
+
return $title;
|
115 |
+
}
|
116 |
+
|
117 |
/**
|
118 |
* Check if the entire branch is restricted
|
119 |
*
|
123 |
*
|
124 |
* @access public
|
125 |
*/
|
126 |
+
public function hasRestrictedAll($menu) {
|
127 |
$menuControl = $this->getSubject()->getObject(aam_Control_Object_Menu::UID);
|
128 |
$response = $menuControl->has($menu['id']);
|
129 |
+
|
130 |
+
foreach ($menu['submenu'] as $submenu) {
|
131 |
+
if ($menuControl->has($submenu['id']) === false) {
|
132 |
$response = false;
|
133 |
break;
|
134 |
}
|
135 |
}
|
136 |
+
|
137 |
return $response;
|
138 |
}
|
139 |
|
147 |
return strip_tags($text);
|
148 |
}
|
149 |
|
150 |
+
}
|
application/view/metabox.php
CHANGED
@@ -176,7 +176,7 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
176 |
global $wp_post_types;
|
177 |
|
178 |
$cache = aam_Core_API::getBlogOption('aam_metabox_cache', array());
|
179 |
-
if ($this->getSubject()->getUID() ==
|
180 |
$list = array(
|
181 |
'widgets' => (isset($cache['widgets']) ? $cache['widgets'] : array())
|
182 |
);
|
@@ -211,11 +211,8 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
211 |
$content .= '<div class=metabox-row>';
|
212 |
}
|
213 |
//prepare title
|
214 |
-
|
215 |
-
|
216 |
-
} else {
|
217 |
-
$title = $metabox['title'];
|
218 |
-
}
|
219 |
//prepare selected
|
220 |
if ($metaboxControl->has($screen, $metabox['id'])) {
|
221 |
$checked = 'checked="checked"';
|
@@ -257,6 +254,23 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
257 |
return $content;
|
258 |
}
|
259 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
260 |
/**
|
261 |
*
|
262 |
* @param type $text
|
176 |
global $wp_post_types;
|
177 |
|
178 |
$cache = aam_Core_API::getBlogOption('aam_metabox_cache', array());
|
179 |
+
if ($this->getSubject()->getUID() == aam_Control_Subject_Visitor::UID) {
|
180 |
$list = array(
|
181 |
'widgets' => (isset($cache['widgets']) ? $cache['widgets'] : array())
|
182 |
);
|
211 |
$content .= '<div class=metabox-row>';
|
212 |
}
|
213 |
//prepare title
|
214 |
+
$title = $this->prepareTitle($metabox['title']);
|
215 |
+
|
|
|
|
|
|
|
216 |
//prepare selected
|
217 |
if ($metaboxControl->has($screen, $metabox['id'])) {
|
218 |
$checked = 'checked="checked"';
|
254 |
return $content;
|
255 |
}
|
256 |
|
257 |
+
/**
|
258 |
+
*
|
259 |
+
* @param type $title
|
260 |
+
* @return string
|
261 |
+
*/
|
262 |
+
protected function prepareTitle($title) {
|
263 |
+
if (function_exists('mb_strlen')) {
|
264 |
+
if ((mb_strlen($title) > 18)) {
|
265 |
+
$title = mb_substr($title, 0, 15) . '..';
|
266 |
+
}
|
267 |
+
} elseif (strlen($title) > 18) {
|
268 |
+
$title = substr($title, 0, 15) . '..';
|
269 |
+
}
|
270 |
+
|
271 |
+
return $title;
|
272 |
+
}
|
273 |
+
|
274 |
/**
|
275 |
*
|
276 |
* @param type $text
|
application/view/tmpl/capability.phtml
CHANGED
@@ -34,8 +34,8 @@
|
|
34 |
<tr>
|
35 |
<td><?php echo $group; ?></td>
|
36 |
<td>
|
37 |
-
<div class="
|
38 |
-
<a href="#" class="
|
39 |
</div>
|
40 |
</td>
|
41 |
</tr>
|
34 |
<tr>
|
35 |
<td><?php echo $group; ?></td>
|
36 |
<td>
|
37 |
+
<div class="aam-list-row-actions">
|
38 |
+
<a href="#" class="aam-icon aam-icon-small aam-icon-select"><span></span></a>
|
39 |
</div>
|
40 |
</td>
|
41 |
</tr>
|
application/view/tmpl/configpress.phtml
CHANGED
@@ -56,7 +56,6 @@
|
|
56 |
</h3>
|
57 |
<div class="inside">
|
58 |
<div class="cpanel-major">
|
59 |
-
<a href="<?php echo AAM_BASE_URL . '/docs/configpress.pdf' ?>" target="_blank" class="cpanel-item cpanel-item-tutorial"><?php echo __('Tutorial', 'aam'); ?></a>
|
60 |
<a href="#" class="cpanel-item cpanel-item-save" id="save_config" ><?php echo __('Save', 'aam'); ?></a>
|
61 |
</div>
|
62 |
<div class="cpanel-minor">
|
56 |
</h3>
|
57 |
<div class="inside">
|
58 |
<div class="cpanel-major">
|
|
|
59 |
<a href="#" class="cpanel-item cpanel-item-save" id="save_config" ><?php echo __('Save', 'aam'); ?></a>
|
60 |
</div>
|
61 |
<div class="cpanel-minor">
|
application/view/tmpl/control_area.phtml
CHANGED
@@ -25,8 +25,16 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
25 |
$post_type = $object->getPost()->post_type;
|
26 |
}
|
27 |
|
|
|
28 |
?>
|
29 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
<div id="term_access">
|
31 |
<table class="dataTable" id="term_access_frontend">
|
32 |
<thead>
|
@@ -48,7 +56,8 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
48 |
'aam_term_access_list',
|
49 |
aam_Core_Settings::get('term_frontend_restrictions'),
|
50 |
'frontend',
|
51 |
-
$object
|
|
|
52 |
)
|
53 |
);
|
54 |
foreach ($term_fcaps as $i => $action) {
|
@@ -60,7 +69,7 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
60 |
</div>
|
61 |
</td>
|
62 |
<td>
|
63 |
-
<div class="
|
64 |
<div class="post-action">
|
65 |
<input type="checkbox" id="term_frontend_<?php echo $action; ?>" name="access[term][frontend][<?php echo $action; ?>]" <?php echo ($object->has('frontend', $action) ? 'checked="checked"' : ''); ?> />
|
66 |
<label for="term_frontend_<?php echo $action; ?>">
|
@@ -94,7 +103,8 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
94 |
'aam_term_access_list',
|
95 |
aam_Core_Settings::get('term_backend_restrictions'),
|
96 |
'backend',
|
97 |
-
$object
|
|
|
98 |
)
|
99 |
);
|
100 |
foreach ($term_bcaps as $i => $action) {
|
@@ -106,7 +116,7 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
106 |
</div>
|
107 |
</td>
|
108 |
<td>
|
109 |
-
<div class="
|
110 |
<div class="post-action">
|
111 |
<input type="checkbox" id="term_backend_<?php echo $action ?>" name="access[term][backend][<?php echo $action; ?>]" <?php echo ($object->has('backend', $action) ? 'checked="checked"' : ''); ?> />
|
112 |
<label for="term_backend_<?php echo $action ?>">
|
@@ -147,7 +157,8 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
147 |
'aam_post_access_list',
|
148 |
aam_Core_Settings::get('post_frontend_restrictions'),
|
149 |
'frontend',
|
150 |
-
$object
|
|
|
151 |
)
|
152 |
);
|
153 |
foreach ($post_fcaps as $i => $action) {
|
@@ -159,7 +170,7 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
159 |
</div>
|
160 |
</td>
|
161 |
<td>
|
162 |
-
<div class="
|
163 |
<div class="post-action post-action-check">
|
164 |
<input type="checkbox" id="post_frontend_<?php echo $action ?>" name="access[post][frontend][<?php echo $action; ?>]" <?php echo ($object->has('frontend', $action) ? 'checked="checked"' : ''); ?> />
|
165 |
<label for="post_frontend_<?php echo $action ?>">
|
@@ -197,7 +208,8 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
197 |
'aam_post_access_list',
|
198 |
aam_Core_Settings::get('post_backend_restrictions'),
|
199 |
'backend',
|
200 |
-
$object
|
|
|
201 |
)
|
202 |
);
|
203 |
foreach ($post_bcaps as $i => $action) {
|
@@ -209,7 +221,7 @@ if (aam_Core_Request::post('type') === aam_Control_Object_Term::UID) {
|
|
209 |
</div>
|
210 |
</td>
|
211 |
<td>
|
212 |
-
<div class="
|
213 |
<div class="post-action post-action-check">
|
214 |
<input type="checkbox" id="post_backend_<?php echo $action ?>" name="access[post][backend][<?php echo $action; ?>]" <?php echo ($object->has('backend', $action) ? 'checked="checked"' : ''); ?> />
|
215 |
<label for="post_backend_<?php echo $action ?>">
|
25 |
$post_type = $object->getPost()->post_type;
|
26 |
}
|
27 |
|
28 |
+
if ($post_type == 'attachment'){
|
29 |
?>
|
30 |
+
<div class="attachment-access-block">
|
31 |
+
Get better access control over your media files with
|
32 |
+
<b><a href="http://wpaam.com/aam-extensions/aam-media-manager/" target="_blank">AAM Media Manager</a></b>
|
33 |
+
extension.
|
34 |
+
</div>
|
35 |
+
<?php
|
36 |
+
}
|
37 |
+
if ($object->getUID() == aam_Control_Object_Term::UID) { ?>
|
38 |
<div id="term_access">
|
39 |
<table class="dataTable" id="term_access_frontend">
|
40 |
<thead>
|
56 |
'aam_term_access_list',
|
57 |
aam_Core_Settings::get('term_frontend_restrictions'),
|
58 |
'frontend',
|
59 |
+
$object,
|
60 |
+
$post_type
|
61 |
)
|
62 |
);
|
63 |
foreach ($term_fcaps as $i => $action) {
|
69 |
</div>
|
70 |
</td>
|
71 |
<td>
|
72 |
+
<div class="aam-list-row-actions">
|
73 |
<div class="post-action">
|
74 |
<input type="checkbox" id="term_frontend_<?php echo $action; ?>" name="access[term][frontend][<?php echo $action; ?>]" <?php echo ($object->has('frontend', $action) ? 'checked="checked"' : ''); ?> />
|
75 |
<label for="term_frontend_<?php echo $action; ?>">
|
103 |
'aam_term_access_list',
|
104 |
aam_Core_Settings::get('term_backend_restrictions'),
|
105 |
'backend',
|
106 |
+
$object,
|
107 |
+
$post_type
|
108 |
)
|
109 |
);
|
110 |
foreach ($term_bcaps as $i => $action) {
|
116 |
</div>
|
117 |
</td>
|
118 |
<td>
|
119 |
+
<div class="aam-list-row-actions">
|
120 |
<div class="post-action">
|
121 |
<input type="checkbox" id="term_backend_<?php echo $action ?>" name="access[term][backend][<?php echo $action; ?>]" <?php echo ($object->has('backend', $action) ? 'checked="checked"' : ''); ?> />
|
122 |
<label for="term_backend_<?php echo $action ?>">
|
157 |
'aam_post_access_list',
|
158 |
aam_Core_Settings::get('post_frontend_restrictions'),
|
159 |
'frontend',
|
160 |
+
$object,
|
161 |
+
$post_type
|
162 |
)
|
163 |
);
|
164 |
foreach ($post_fcaps as $i => $action) {
|
170 |
</div>
|
171 |
</td>
|
172 |
<td>
|
173 |
+
<div class="aam-list-row-actions">
|
174 |
<div class="post-action post-action-check">
|
175 |
<input type="checkbox" id="post_frontend_<?php echo $action ?>" name="access[post][frontend][<?php echo $action; ?>]" <?php echo ($object->has('frontend', $action) ? 'checked="checked"' : ''); ?> />
|
176 |
<label for="post_frontend_<?php echo $action ?>">
|
208 |
'aam_post_access_list',
|
209 |
aam_Core_Settings::get('post_backend_restrictions'),
|
210 |
'backend',
|
211 |
+
$object,
|
212 |
+
$post_type
|
213 |
)
|
214 |
);
|
215 |
foreach ($post_bcaps as $i => $action) {
|
221 |
</div>
|
222 |
</td>
|
223 |
<td>
|
224 |
+
<div class="aam-list-row-actions">
|
225 |
<div class="post-action post-action-check">
|
226 |
<input type="checkbox" id="post_backend_<?php echo $action ?>" name="access[post][backend][<?php echo $action; ?>]" <?php echo ($object->has('backend', $action) ? 'checked="checked"' : ''); ?> />
|
227 |
<label for="post_backend_<?php echo $action ?>">
|
application/view/tmpl/extension.phtml
CHANGED
@@ -46,8 +46,8 @@
|
|
46 |
<td>
|
47 |
<div class="extension-actions">
|
48 |
<a href="http://wpaam.com/aam-extensions/aam-plus-package/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
49 |
-
<?php if ($this->hasExtension('AAM Plus Package')) { ?>
|
50 |
-
<a href="#" extension="AAM Plus Package" license="<?php echo $this->getExtension('AAM Plus Package')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
51 |
<?php } else { ?>
|
52 |
<a href="#" extension="AAM Plus Package" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UEM8U65HFEG4Q" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
53 |
<?php } ?>
|
@@ -67,8 +67,8 @@
|
|
67 |
<td>
|
68 |
<div class="extension-actions">
|
69 |
<a href="http://wpaam.com/aam-extensions/aam-activities/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
70 |
-
<?php if ($this->hasExtension('AAM Activities')) { ?>
|
71 |
-
<a href="#" extension="AAM Activities" license="<?php echo $this->getExtension('AAM Activities')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
72 |
<?php } else { ?>
|
73 |
<a href="#" extension="AAM Activities" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HME9DTSFSJH4W" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
74 |
<?php } ?>
|
@@ -88,8 +88,8 @@
|
|
88 |
<td>
|
89 |
<div class="extension-actions">
|
90 |
<a href="http://wpaam.com/aam-extensions/aam-media-manager/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
91 |
-
<?php if ($this->hasExtension('AAM Media Manager')) { ?>
|
92 |
-
<a href="#" extension="AAM Media Manager" license="<?php echo $this->getExtension('AAM Media Manager')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
93 |
<?php } else { ?>
|
94 |
<a href="#" extension="AAM Media Manager" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WJ48A7Z6EFZJ4" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
95 |
<?php } ?>
|
@@ -110,8 +110,8 @@
|
|
110 |
|
111 |
<div class="extension-actions">
|
112 |
<a href="http://wpaam.com/aam-extensions/aam-content-filter/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
113 |
-
<?php if ($this->hasExtension('AAM Content Filter')) { ?>
|
114 |
-
<a href="#" extension="AAM Content Filter" license="<?php echo $this->getExtension('AAM Content Filter')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
115 |
<?php } else { ?>
|
116 |
<a href="#" extension="AAM Content Filter" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=X7NZ7QF8A9CVS" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
117 |
<?php } ?>
|
@@ -200,6 +200,4 @@
|
|
200 |
</div>
|
201 |
</div>
|
202 |
</div>
|
203 |
-
</div>
|
204 |
-
|
205 |
-
|
46 |
<td>
|
47 |
<div class="extension-actions">
|
48 |
<a href="http://wpaam.com/aam-extensions/aam-plus-package/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
49 |
+
<?php if ($this->getRepository()->hasExtension('AAM Plus Package')) { ?>
|
50 |
+
<a href="#" extension="AAM Plus Package" license="<?php echo $this->getRepository()->getExtension('AAM Plus Package')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
51 |
<?php } else { ?>
|
52 |
<a href="#" extension="AAM Plus Package" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UEM8U65HFEG4Q" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
53 |
<?php } ?>
|
67 |
<td>
|
68 |
<div class="extension-actions">
|
69 |
<a href="http://wpaam.com/aam-extensions/aam-activities/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
70 |
+
<?php if ($this->getRepository()->hasExtension('AAM Activities')) { ?>
|
71 |
+
<a href="#" extension="AAM Activities" license="<?php echo $this->getRepository()->getExtension('AAM Activities')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
72 |
<?php } else { ?>
|
73 |
<a href="#" extension="AAM Activities" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HME9DTSFSJH4W" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
74 |
<?php } ?>
|
88 |
<td>
|
89 |
<div class="extension-actions">
|
90 |
<a href="http://wpaam.com/aam-extensions/aam-media-manager/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
91 |
+
<?php if ($this->getRepository()->hasExtension('AAM Media Manager')) { ?>
|
92 |
+
<a href="#" extension="AAM Media Manager" license="<?php echo $this->getRepository()->getExtension('AAM Media Manager')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
93 |
<?php } else { ?>
|
94 |
<a href="#" extension="AAM Media Manager" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WJ48A7Z6EFZJ4" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
95 |
<?php } ?>
|
110 |
|
111 |
<div class="extension-actions">
|
112 |
<a href="http://wpaam.com/aam-extensions/aam-content-filter/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
113 |
+
<?php if ($this->getRepository()->hasExtension('AAM Content Filter')) { ?>
|
114 |
+
<a href="#" extension="AAM Content Filter" license="<?php echo $this->getRepository()->getExtension('AAM Content Filter')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
115 |
<?php } else { ?>
|
116 |
<a href="#" extension="AAM Content Filter" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=X7NZ7QF8A9CVS" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
|
117 |
<?php } ?>
|
200 |
</div>
|
201 |
</div>
|
202 |
</div>
|
203 |
+
</div>
|
|
|
|
application/view/tmpl/help_developers.phtml
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h2>AAM Development Framework</h2>
|
2 |
+
|
3 |
+
<p>
|
4 |
+
Are you passionate about WordPress development? We are too! Become a member of
|
5 |
+
the AAM community and obtain our
|
6 |
+
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3Q6UDARTR532U" target="_blank">Exclusive Development License</a>
|
7 |
+
where you can profit from your own ideas and have access to all AAM extensions.
|
8 |
+
</p>
|
9 |
+
|
10 |
+
<p>
|
11 |
+
We receive regular requests and suggestions for new extensions and decided we would
|
12 |
+
extend the opportunity to create and earn by opening our platform to you. We will
|
13 |
+
host your extensions on our server so you may develop custom features for you and
|
14 |
+
your customers. If you have a great idea and would like to create an extension for
|
15 |
+
sales, we will review, approve and host it on AAM server.
|
16 |
+
</p>
|
17 |
+
|
18 |
+
<p>
|
19 |
+
You can download the sample extension from our official
|
20 |
+
<a href="https://github.com/wpaam/AAM-Feature-Example" target="_blank">GitHub Repository</a>
|
21 |
+
and customize it to your special need.
|
22 |
+
</p>
|
23 |
+
|
24 |
+
<p>
|
25 |
+
Additionally the
|
26 |
+
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3Q6UDARTR532U" target="_blank">AAM Development License</a>
|
27 |
+
gives you an opportunity to download <b>ALL</b> AAM extensions that are available
|
28 |
+
now and all new extensions that will be developed within a year from the time of purchase.
|
29 |
+
</p>
|
application/view/tmpl/help_extensions.phtml
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h2>AAM Extensions</h2>
|
2 |
+
|
3 |
+
<p>
|
4 |
+
Advanced Access Manager is free platform and you can use most of the features without
|
5 |
+
any limitations but in case you are looking for more, this is where AAM extensions
|
6 |
+
might be useful for you to check. Complete list of available extensions you can find
|
7 |
+
on AAM->Extensions page.
|
8 |
+
</p>
|
9 |
+
<p>
|
10 |
+
We are using PayPal to process the payment and if it completed successfully, you will
|
11 |
+
automatically receive an email with license key that you can use to activate the extension.
|
12 |
+
</p>
|
13 |
+
<p>
|
14 |
+
In case of any issues with license key, we guaranty to resolve the issue within one business day.
|
15 |
+
Otherwise your money back.
|
16 |
+
</p>
|
application/view/tmpl/help_faq.phtml
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h2>Frequently Asked Questions</h2>
|
2 |
+
|
3 |
+
<h4>What is Advanced Access Manager?</h4>
|
4 |
+
<p>
|
5 |
+
Advanced Access Manager (aka AAM) is free WordPress plugin that allows you to
|
6 |
+
control access to your website. With AAM you can manager access to your Posts,
|
7 |
+
Pages and Categories, filter unnecessary areas in your Backend, manager Users and
|
8 |
+
Roles and many more.
|
9 |
+
</p>
|
10 |
+
|
11 |
+
<h4>What should I know to understand how AAM works?</h4>
|
12 |
+
<p>
|
13 |
+
Best way to learn more about AAM is to check our
|
14 |
+
<a href="http://wpaam.com/tutorials/" target="_blank">collection of tutorials</a>.
|
15 |
+
From here you'll get the basic understanding about most important aspects of AAM
|
16 |
+
functionality. It is also very important to understand how WordPress
|
17 |
+
<a href="https://codex.wordpress.org/Roles_and_Capabilities" target="_blank">Roles & Capabilities</a>
|
18 |
+
are organized.
|
19 |
+
</p>
|
20 |
+
|
21 |
+
<h4>I'm not able to manage Administrator Role. What am I missing?</h4>
|
22 |
+
<p>
|
23 |
+
In fact that AAM is very powerful tool, many unexperienced users were able to limit
|
24 |
+
Administrator rights and loose access to Dashboard. That is why from AAM Release 2.5
|
25 |
+
we introduced <a href="http://wpaam.com/tutorials/aam-super-admin/" target="_blank">AAM Super Admin</a>.
|
26 |
+
You can make one user in your system as AAM Super Administrator that is able to manager other
|
27 |
+
administrators.<br/>
|
28 |
+
<span style="color:#FF0000; font-weight: bold;">Warning!</span> Do not limit capabilities for Administrator
|
29 |
+
Role, because even if you are AAM Super Administrator, you still remain WordPress Administrator.
|
30 |
+
</p>
|
31 |
+
|
32 |
+
<h4>What is ConfigPress?</h4>
|
33 |
+
<p>
|
34 |
+
Think about ConfigPress as a settings page but instead of dozens of checkboxes, drop-downs and input fields
|
35 |
+
you use configuration script based on <a href="http://en.wikipedia.org/wiki/INI_file" target="_blank">INI Standard</a>.
|
36 |
+
The reason we use this format is that AAM is not only just a plugin but complex and very flexible development
|
37 |
+
tool. That is why we came to conclusion to organize all settings in ConfigPress format.
|
38 |
+
</p>
|
application/view/tmpl/help_overview.phtml
ADDED
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h2>General Overview</h2>
|
2 |
+
<p>
|
3 |
+
Advanced Access Manager (aka AAM) is one of the most popular access control plugins. It is easy-to-use but
|
4 |
+
at the same time very powerful tool that gives you a flexible control over your either
|
5 |
+
single WordPress site or Multisite Network. With AAM you are allowed to configure access
|
6 |
+
to different parts of your website for any <i>role</i> or individual <i>user</i>.
|
7 |
+
</p>
|
8 |
+
<p>
|
9 |
+
Another great aspect of AAM is that our team constantly working on new features and improving
|
10 |
+
existing. We are very dedicated to success of this project and our support is ready to help you
|
11 |
+
within 48hours.
|
12 |
+
</p>
|
13 |
+
<p>
|
14 |
+
Below you can find some of the major feature that are available in current AAM version:
|
15 |
+
</p>
|
16 |
+
|
17 |
+
<b>Control access to backend menu (including submenu).</b> As example you can restrict
|
18 |
+
access for <i>role</i> Editor to Menu "Pages" or does not allow any <i>user</i> to
|
19 |
+
manage Post's Categories.<br/>
|
20 |
+
<br/>
|
21 |
+
<b>Filter <i>widgets</i> & <i>metaboxes</i>.</b> Filter the list of metaboxes that any <i>role</i>
|
22 |
+
or <i>user</i> can see during Post/Page editing. At the same time you can filter the
|
23 |
+
list of Dashboard and Frontend widgets.<br/>
|
24 |
+
<br/>
|
25 |
+
<b>Control access to any <i>post</i>, <i>page</i>, <i>custom post type</i> or <i>category</i>.</b>
|
26 |
+
You can restrict access to page or post for any <i>user</i> or <i>role</i> as well as
|
27 |
+
restrict access to entire <i>category</i> and all posts inside it. You can also restrict
|
28 |
+
commenting for pages or exclude any from the frontend menu. For more restrictions you can
|
29 |
+
consider to get <a href="http://wpaam.com/aam-extensions/aam-plus-package/" target="_blank">AAM Plus Package</a>.<br/>
|
30 |
+
<br/>
|
31 |
+
<b>Filter Post or Page content.</b> You can filter Post's or Page's content for
|
32 |
+
currently logged in user or visitor. This feature is available with extension
|
33 |
+
<a href="http://wpaam.com/aam-extensions/aam-content-filter/" target="_blank">AAM Content Manager</a>.<br/>
|
34 |
+
<br/>
|
35 |
+
<b>Manage capabilities for any <i>role</i> or <i>user</i>.</b>
|
36 |
+
AAM, with simple interface, allows you to grand or remove capabilities for any <i>role</i> or <i>user</i>.
|
37 |
+
You can also create new custom capability or remove existing.<br/>
|
38 |
+
<br/>
|
39 |
+
<b>Create custom actions for system events.</b> As example your system can send email
|
40 |
+
to you if some user published post or page, or modified content. You also can develop
|
41 |
+
your own custom action for system event.<br/>
|
42 |
+
<br/>
|
43 |
+
<b>Track <i>user</i> activities.</b> With AAM you can track user activities within
|
44 |
+
your website. So you can easily find out when user was logged in or modified any post
|
45 |
+
or page. To extend the list of tracked activities, consider to get
|
46 |
+
<a href="http://wpaam.com/aam-extensions/aam-activities/" target="_blank">AAM Activities</a>
|
47 |
+
extension.
|
48 |
+
|
application/view/tmpl/metabox.phtml
CHANGED
@@ -12,8 +12,8 @@
|
|
12 |
<div class="metabox-top-action-link">
|
13 |
<input type="text" class="link-text" id="metabox_link" />
|
14 |
</div>
|
15 |
-
<a href="#" class="
|
16 |
-
<a href="#" class="
|
17 |
<br class="clear" />
|
18 |
</div>
|
19 |
<div class="aam-metabox-loader"></div>
|
12 |
<div class="metabox-top-action-link">
|
13 |
<input type="text" class="link-text" id="metabox_link" />
|
14 |
</div>
|
15 |
+
<a href="#" class="aam-icon aam-icon-medium aam-icon-add" id="retrieve_url" aam-tooltip="<?php echo __('Retrieve Metaboxes From Link', 'aam') ;?>"><span></span></a>
|
16 |
+
<a href="#" class="aam-icon aam-icon-medium aam-icon-refresh" id="refresh_metaboxes" aam-tooltip="<?php echo __('Refresh the List', 'aam') ;?>"><span></span></a>
|
17 |
<br class="clear" />
|
18 |
</div>
|
19 |
<div class="aam-metabox-loader"></div>
|
config.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
*/
|
9 |
|
10 |
//AAM Version for Update purpose
|
11 |
-
define('AAM_VERSION', '2.5');
|
12 |
|
13 |
define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
|
14 |
|
@@ -28,7 +28,7 @@ define('AAM_APPL_ENV', (getenv('APPL_ENV') ? getenv('APPL_ENV') : 'production'))
|
|
28 |
if (AAM_APPL_ENV === 'production') {
|
29 |
define('WPAAM_REST_API', 'http://rest.wpaam.com');
|
30 |
} else {
|
31 |
-
define('WPAAM_REST_API', 'http://wpaam.localhost/
|
32 |
}
|
33 |
|
34 |
/**
|
8 |
*/
|
9 |
|
10 |
//AAM Version for Update purpose
|
11 |
+
define('AAM_VERSION', '2.5.1');
|
12 |
|
13 |
define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
|
14 |
|
28 |
if (AAM_APPL_ENV === 'production') {
|
29 |
define('WPAAM_REST_API', 'http://rest.wpaam.com');
|
30 |
} else {
|
31 |
+
define('WPAAM_REST_API', 'http://wpaam.localhost/');
|
32 |
}
|
33 |
|
34 |
/**
|
docs/configpress.pdf
DELETED
Binary file
|
extension/AAM_My_Feature/images/message-active.png
DELETED
Binary file
|
extension/AAM_My_Feature/images/message.png
DELETED
Binary file
|
extension/AAM_My_Feature/images/talk-active.png
DELETED
Binary file
|
extension/AAM_My_Feature/images/talk.png
DELETED
Binary file
|
extension/AAM_My_Feature/my_feature.css
CHANGED
@@ -19,48 +19,4 @@
|
|
19 |
font-size: 1.2em;
|
20 |
font-weight: bold;
|
21 |
text-align: center;
|
22 |
-
}
|
23 |
-
|
24 |
-
.my-feature-actions{
|
25 |
-
width: 100%;
|
26 |
-
margin-top: 10px;
|
27 |
-
text-align: center;
|
28 |
-
}
|
29 |
-
|
30 |
-
.my-feature-action{
|
31 |
-
min-width: 48px;
|
32 |
-
height: 70px;
|
33 |
-
display: inline-block;
|
34 |
-
text-decoration: none;
|
35 |
-
position: relative;
|
36 |
-
}
|
37 |
-
|
38 |
-
.my-feature-action span{
|
39 |
-
display: block;
|
40 |
-
margin-top: 50px;
|
41 |
-
text-align: center;
|
42 |
-
width: 100%;
|
43 |
-
font-size: 0.8em;
|
44 |
-
text-transform: uppercase;
|
45 |
-
font-weight: bold;
|
46 |
-
color: #333333;
|
47 |
-
font-family: "Trebuchet MS", Helvetica, sans-serif;
|
48 |
-
}
|
49 |
-
|
50 |
-
.my-feature-message-action{
|
51 |
-
background: transparent url('images/message.png') no-repeat center 6px;
|
52 |
-
}
|
53 |
-
|
54 |
-
.my-feature-message-action:hover{
|
55 |
-
background: transparent url('images/message-active.png') no-repeat center 6px;
|
56 |
-
}
|
57 |
-
|
58 |
-
.my-feature-forum-action{
|
59 |
-
background: transparent url('images/talk.png') no-repeat center 0;
|
60 |
-
margin-left: 60px;
|
61 |
-
}
|
62 |
-
|
63 |
-
.my-feature-forum-action:hover{
|
64 |
-
background: transparent url('images/talk-active.png') no-repeat center 0;
|
65 |
-
margin-left: 60px;
|
66 |
}
|
19 |
font-size: 1.2em;
|
20 |
font-weight: bold;
|
21 |
text-align: center;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
}
|
extension/AAM_My_Feature/ui.phtml
CHANGED
@@ -10,15 +10,10 @@
|
|
10 |
<div class="feature-content-container" id="my_feature_content">
|
11 |
<div class="my-feature-banner">
|
12 |
<p class="banner-style">
|
13 |
-
<?php echo __('Do you need a custom feature?
|
|
|
|
|
|
|
14 |
</p>
|
15 |
</div>
|
16 |
-
<div class="my-feature-actions">
|
17 |
-
<a href="#" class="my-feature-action my-feature-message-action">
|
18 |
-
<span><?php echo __('Email Us', 'aam'); ?></span>
|
19 |
-
</a>
|
20 |
-
<a href="http://wpaam.com/forum/viewtopic.php?f=7&t=72" target="_blank" class="my-feature-action my-feature-forum-action">
|
21 |
-
<span><?php echo __('Ask on Forum', 'aam'); ?></span>
|
22 |
-
</a>
|
23 |
-
</div>
|
24 |
</div>
|
10 |
<div class="feature-content-container" id="my_feature_content">
|
11 |
<div class="my-feature-banner">
|
12 |
<p class="banner-style">
|
13 |
+
<?php echo __('Do you need a custom feature?', 'aam'); ?>
|
14 |
+
<a href="https://github.com/wpaam/AAM-Feature-Example" target="_blank">
|
15 |
+
<?php echo __('Create your own extension ', 'aam'); ?>
|
16 |
+
</a> <?php echo __('or ask us and we will develop it for you.', 'aam'); ?>
|
17 |
</p>
|
18 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
</div>
|
lang/aam.mo
CHANGED
Binary file
|
lang/aam.pot
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: AAM\n"
|
4 |
-
"POT-Creation-Date: 2014-04
|
5 |
"PO-Revision-Date: \n"
|
6 |
"Last-Translator: WPAAM <support@wpaam.com>\n"
|
7 |
"Language-Team: WP AAM <support@wpaam.com>\n"
|
@@ -9,50 +9,50 @@ msgstr ""
|
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.6.
|
13 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
14 |
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
"X-Poedit-KeywordsList: __\n"
|
16 |
"X-Poedit-Basepath: d:\\xampp\\htdocs\\aam\\wp-content\\plugins\\aam\\\n"
|
17 |
"X-Poedit-SearchPath-0: .\n"
|
18 |
|
19 |
-
#: aam.php:
|
20 |
msgid "Access denied"
|
21 |
msgstr ""
|
22 |
|
23 |
-
#: aam.php:
|
24 |
msgid "AAM"
|
25 |
msgstr ""
|
26 |
|
27 |
-
#: aam.php:
|
28 |
msgid "Access Control"
|
29 |
msgstr ""
|
30 |
|
31 |
-
#: aam.php:
|
32 |
msgid "ConfigPress"
|
33 |
msgstr ""
|
34 |
|
35 |
-
#: aam.php:
|
36 |
msgid "Extensions"
|
37 |
msgstr ""
|
38 |
|
39 |
-
#: application/core/repository.php:
|
40 |
msgid "Failed to Remove Extension"
|
41 |
msgstr ""
|
42 |
|
43 |
-
#: application/core/repository.php:
|
44 |
msgid "Invalid License Key"
|
45 |
msgstr ""
|
46 |
|
47 |
-
#: application/core/repository.php:
|
48 |
msgid "Failed to write file to wp-content/aam folder"
|
49 |
msgstr ""
|
50 |
|
51 |
-
#: application/core/repository.php:
|
52 |
msgid "Failed to reach the WPAAM Server"
|
53 |
msgstr ""
|
54 |
|
55 |
-
#: application/core/repository.php:
|
56 |
msgid "Failed to insert extension to extension folder"
|
57 |
msgstr ""
|
58 |
|
@@ -76,7 +76,7 @@ msgstr ""
|
|
76 |
msgid "Miscellaneous"
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: application/view/extension.php:
|
80 |
msgid "Folder advanced-access-manager/extension is not writable"
|
81 |
msgstr ""
|
82 |
|
@@ -113,10 +113,10 @@ msgid "Metabox & Widget"
|
|
113 |
msgstr ""
|
114 |
|
115 |
#: application/view/manager.php:145 application/view/tmpl/capability.phtml:17
|
116 |
-
#: application/view/tmpl/control_area.phtml:
|
117 |
-
#: application/view/tmpl/control_area.phtml:
|
118 |
-
#: application/view/tmpl/control_area.phtml:
|
119 |
-
#: application/view/tmpl/control_area.phtml:
|
120 |
#: extension/AAM_Plus_Package/ui.phtml:28
|
121 |
#: extension/AAM_Plus_Package/ui.phtml:60
|
122 |
#: extension/AAM_Plus_Package/ui.phtml:93
|
@@ -132,203 +132,209 @@ msgstr ""
|
|
132 |
msgid "Event Manager"
|
133 |
msgstr ""
|
134 |
|
135 |
-
#: application/view/manager.php:
|
136 |
msgid "You are not allowed to manage any AAM Features."
|
137 |
msgstr ""
|
138 |
|
139 |
-
#: application/view/manager.php:
|
140 |
msgid "Rollback Settings"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: application/view/manager.php:
|
144 |
msgid "Cancel"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: application/view/manager.php:
|
148 |
msgid "Send E-mail"
|
149 |
msgstr ""
|
150 |
|
151 |
-
#: application/view/manager.php:
|
152 |
msgid "Add New Role"
|
153 |
msgstr ""
|
154 |
|
155 |
-
#: application/view/manager.php:
|
156 |
msgid "Manage"
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: application/view/manager.php:
|
160 |
msgid "Edit"
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: application/view/manager.php:
|
164 |
msgid "Delete"
|
165 |
msgstr ""
|
166 |
|
167 |
-
#: application/view/manager.php:
|
168 |
msgid "Filtered"
|
169 |
msgstr ""
|
170 |
|
171 |
-
#: application/view/manager.php:
|
172 |
msgid "Clear"
|
173 |
msgstr ""
|
174 |
|
175 |
-
#: application/view/manager.php:
|
176 |
msgid "Save Changes"
|
177 |
msgstr ""
|
178 |
|
179 |
-
#: application/view/manager.php:
|
180 |
#, php-format
|
181 |
msgid ""
|
182 |
"System detected %d user(s) with this role. All Users with Role <b>%s</b> "
|
183 |
"will be deleted automatically!"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: application/view/manager.php:
|
187 |
#, php-format
|
188 |
msgid "Are you sure that you want to delete role <b>%s</b>?"
|
189 |
msgstr ""
|
190 |
|
191 |
-
#: application/view/manager.php:
|
192 |
msgid "Delete Role"
|
193 |
msgstr ""
|
194 |
|
195 |
-
#: application/view/manager.php:
|
196 |
msgid "Add User"
|
197 |
msgstr ""
|
198 |
|
199 |
-
#: application/view/manager.php:
|
200 |
msgid "Filter Users"
|
201 |
msgstr ""
|
202 |
|
203 |
-
#: application/view/manager.php:
|
204 |
msgid "Refresh List"
|
205 |
msgstr ""
|
206 |
|
207 |
-
#: application/view/manager.php:
|
208 |
msgid "Block"
|
209 |
msgstr ""
|
210 |
|
211 |
-
#: application/view/manager.php:
|
212 |
#, php-format
|
213 |
msgid "Are you sure you want to delete user <b>%s</b>?"
|
214 |
msgstr ""
|
215 |
|
216 |
-
#: application/view/manager.php:
|
217 |
msgid "Filter Capabilities by Category"
|
218 |
msgstr ""
|
219 |
|
220 |
-
#: application/view/manager.php:
|
221 |
msgid "Inherit Capabilities"
|
222 |
msgstr ""
|
223 |
|
224 |
-
#: application/view/manager.php:
|
225 |
msgid "Add New Capability"
|
226 |
msgstr ""
|
227 |
|
228 |
-
#: application/view/manager.php:
|
229 |
#, php-format
|
230 |
msgid "Are you sure that you want to delete capability <b>%s</b>?"
|
231 |
msgstr ""
|
232 |
|
233 |
-
#: application/view/manager.php:
|
234 |
msgid "Delete Capability"
|
235 |
msgstr ""
|
236 |
|
237 |
-
#: application/view/manager.php:
|
238 |
msgid "Select Role"
|
239 |
msgstr ""
|
240 |
|
241 |
-
#: application/view/manager.php:
|
242 |
msgid "Add Capability"
|
243 |
msgstr ""
|
244 |
|
245 |
-
#: application/view/manager.php:
|
246 |
msgid "Add Event"
|
247 |
msgstr ""
|
248 |
|
249 |
-
#: application/view/manager.php:
|
250 |
msgid "Edit Event"
|
251 |
msgstr ""
|
252 |
|
253 |
-
#: application/view/manager.php:
|
254 |
#: application/view/tmpl/event.phtml:105
|
255 |
msgid "Delete Event"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: application/view/manager.php:
|
259 |
msgid "Save Event"
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: application/view/manager.php:
|
263 |
msgid "Filter Posts by Post Type"
|
264 |
msgstr ""
|
265 |
|
266 |
-
#: application/view/manager.php:
|
267 |
msgid "Restore Default"
|
268 |
msgstr ""
|
269 |
|
270 |
-
#: application/view/manager.php:
|
271 |
msgid "Apply"
|
272 |
msgstr ""
|
273 |
|
274 |
-
#: application/view/manager.php:
|
275 |
msgid "Edit Term"
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: application/view/manager.php:
|
279 |
msgid "Manager Access"
|
280 |
msgstr ""
|
281 |
|
282 |
-
#: application/view/manager.php:
|
283 |
msgid "Unlock Default Accesss Control"
|
284 |
msgstr ""
|
285 |
|
286 |
-
#: application/view/manager.php:
|
287 |
msgid "Close"
|
288 |
msgstr ""
|
289 |
|
290 |
-
#: application/view/manager.php:
|
291 |
msgid "Edit Role"
|
292 |
msgstr ""
|
293 |
|
294 |
-
#: application/view/manager.php:
|
295 |
msgid "Restore Default Capabilities"
|
296 |
msgstr ""
|
297 |
|
298 |
-
#: application/view/manager.php:
|
299 |
#, php-format
|
300 |
msgid "Are you sure you want to delete <b>%s</b>?"
|
301 |
msgstr ""
|
302 |
|
303 |
-
#: application/view/manager.php:
|
304 |
#, php-format
|
305 |
msgid "Are you sure you want to move <b>%s</b> to trash?"
|
306 |
msgstr ""
|
307 |
|
308 |
-
#: application/view/manager.php:
|
309 |
msgid "Delete Post"
|
310 |
msgstr ""
|
311 |
|
312 |
-
#: application/view/manager.php:
|
313 |
msgid "Delete Permanently"
|
314 |
msgstr ""
|
315 |
|
316 |
-
#: application/view/manager.php:
|
317 |
msgid "Trash Post"
|
318 |
msgstr ""
|
319 |
|
320 |
-
#: application/view/manager.php:
|
321 |
msgid "Restore Default Access"
|
322 |
msgstr ""
|
323 |
|
324 |
-
#: application/view/manager.php:
|
325 |
msgid "Duplicate"
|
326 |
msgstr ""
|
327 |
|
328 |
-
#: application/view/manager.php:
|
329 |
msgid "Actions Locked"
|
330 |
msgstr ""
|
331 |
|
|
|
|
|
|
|
|
|
|
|
|
|
332 |
#: application/view/metabox.php:191
|
333 |
msgid "Dashboard Widgets"
|
334 |
msgstr ""
|
@@ -353,36 +359,6 @@ msgstr ""
|
|
353 |
msgid "Folder wp-content/aam is not writable"
|
354 |
msgstr ""
|
355 |
|
356 |
-
#: extension/AAM_Activities/extension.php:133
|
357 |
-
#: extension/AAM_Activities/extension.php:146
|
358 |
-
#: extension/AAM_Activities/extension.php:160
|
359 |
-
msgid "Post does not exist."
|
360 |
-
msgstr ""
|
361 |
-
|
362 |
-
#: extension/AAM_Activities/extension.php:136
|
363 |
-
#, php-format
|
364 |
-
msgid "Updated %s: %s"
|
365 |
-
msgstr ""
|
366 |
-
|
367 |
-
#: extension/AAM_Activities/extension.php:149
|
368 |
-
#, php-format
|
369 |
-
msgid "Trashed %s: %s"
|
370 |
-
msgstr ""
|
371 |
-
|
372 |
-
#: extension/AAM_Activities/extension.php:163
|
373 |
-
#, php-format
|
374 |
-
msgid "Untrashed %s: %s"
|
375 |
-
msgstr ""
|
376 |
-
|
377 |
-
#: extension/AAM_Activities/extension.php:172
|
378 |
-
#, php-format
|
379 |
-
msgid "Deleted %s %s"
|
380 |
-
msgstr ""
|
381 |
-
|
382 |
-
#: extension/AAM_Activities/extension.php:229
|
383 |
-
msgid "Undefined Type"
|
384 |
-
msgstr ""
|
385 |
-
|
386 |
#: extension/AAM_Activity_Log/activity.php:98
|
387 |
msgid "System Login"
|
388 |
msgstr ""
|
@@ -399,11 +375,11 @@ msgstr ""
|
|
399 |
msgid "Activity Log"
|
400 |
msgstr ""
|
401 |
|
402 |
-
#: extension/AAM_Activity_Log/extension.php:
|
403 |
msgid "Clear Logs"
|
404 |
msgstr ""
|
405 |
|
406 |
-
#: extension/AAM_Activity_Log/extension.php:
|
407 |
msgid "Get More"
|
408 |
msgstr ""
|
409 |
|
@@ -431,7 +407,7 @@ msgstr ""
|
|
431 |
msgid "My Feature"
|
432 |
msgstr ""
|
433 |
|
434 |
-
#: extension/AAM_Plus_Package/extension.php:
|
435 |
msgid "Comments"
|
436 |
msgstr ""
|
437 |
|
@@ -484,10 +460,11 @@ msgstr ""
|
|
484 |
#: application/view/tmpl/extension.phtml:15
|
485 |
#: application/view/tmpl/extension.phtml:148
|
486 |
#: application/view/tmpl/extension.phtml:167
|
|
|
487 |
#: application/view/tmpl/manager.phtml:17
|
488 |
-
#: application/view/tmpl/manager.phtml:
|
489 |
-
#: application/view/tmpl/manager.phtml:
|
490 |
-
#: application/view/tmpl/manager.phtml:
|
491 |
msgid "Click to toggle"
|
492 |
msgstr ""
|
493 |
|
@@ -497,71 +474,67 @@ msgstr ""
|
|
497 |
|
498 |
#: application/view/tmpl/configpress.phtml:36
|
499 |
#: application/view/tmpl/extension.phtml:150
|
500 |
-
#: application/view/tmpl/manager.phtml:
|
501 |
msgid "AAM Warnings"
|
502 |
msgstr ""
|
503 |
|
504 |
#: application/view/tmpl/configpress.phtml:55
|
505 |
-
#: application/view/tmpl/manager.phtml:
|
506 |
msgid "Control Panel"
|
507 |
msgstr ""
|
508 |
|
509 |
#: application/view/tmpl/configpress.phtml:59
|
510 |
-
|
511 |
-
msgstr ""
|
512 |
-
|
513 |
-
#: application/view/tmpl/configpress.phtml:60
|
514 |
-
#: application/view/tmpl/manager.phtml:69
|
515 |
msgid "Save"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: application/view/tmpl/configpress.phtml:
|
519 |
-
#: application/view/tmpl/manager.phtml:
|
520 |
msgid "Follow @wpaam"
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: application/view/tmpl/configpress.phtml:
|
524 |
-
#: application/view/tmpl/manager.phtml:
|
525 |
msgid "Follow"
|
526 |
msgstr ""
|
527 |
|
528 |
-
#: application/view/tmpl/configpress.phtml:
|
529 |
-
#: application/view/tmpl/manager.phtml:
|
530 |
msgid "Help Forum"
|
531 |
msgstr ""
|
532 |
|
533 |
-
#: application/view/tmpl/configpress.phtml:
|
534 |
-
#: application/view/tmpl/manager.phtml:
|
535 |
msgid "Help"
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: application/view/tmpl/configpress.phtml:
|
539 |
-
#: application/view/tmpl/manager.phtml:
|
540 |
-
#: application/view/tmpl/manager.phtml:
|
541 |
msgid "E-mail Us"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: application/view/tmpl/configpress.phtml:
|
545 |
-
#: application/view/tmpl/manager.phtml:
|
546 |
msgid "Rate AAM"
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: application/view/tmpl/configpress.phtml:
|
550 |
-
#: application/view/tmpl/manager.phtml:
|
551 |
msgid "Rate Us"
|
552 |
msgstr ""
|
553 |
|
554 |
-
#: application/view/tmpl/control_area.phtml:
|
555 |
-
#: application/view/tmpl/control_area.phtml:
|
556 |
-
#: application/view/tmpl/control_area.phtml:
|
557 |
-
#: application/view/tmpl/control_area.phtml:
|
558 |
msgid "Access"
|
559 |
msgstr ""
|
560 |
|
561 |
-
#: application/view/tmpl/control_area.phtml:
|
562 |
-
#: application/view/tmpl/control_area.phtml:
|
563 |
-
#: application/view/tmpl/control_area.phtml:
|
564 |
-
#: application/view/tmpl/control_area.phtml:
|
565 |
#: extension/AAM_Plus_Package/ui.phtml:29
|
566 |
#: extension/AAM_Plus_Package/ui.phtml:61
|
567 |
#: extension/AAM_Plus_Package/ui.phtml:94
|
@@ -569,13 +542,13 @@ msgstr ""
|
|