Advanced Access Manager - Version 2.8

Version Description

  • Fixed issue with AAM Control Manage HTML
  • Fixed issue with _PHP_IncompleteClass
  • Addedd AAM Plugin Manager Extension
  • Removed Deprecated ConfigPress Object from the core
Download this release

Release Info

Developer vasyl_m
Plugin Icon 128x128 Advanced Access Manager
Version 2.8
Comparing to
See all releases

Code changes from version 2.7 to 2.8

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
7
  Author: Vasyl Martyniuk <support@wpaam.com>
8
  Author URI: http://www.wpaam.com
9
 
@@ -401,7 +401,7 @@ class aam {
401
  'backend.access.deny.redirect'
402
  );
403
  $message = aam_Core_ConfigPress::getParam(
404
- 'backend.access.deny.message', __('Access denied', 'aam')
405
  );
406
  } else {
407
  $redirect = aam_Core_ConfigPress::getParam(
@@ -409,7 +409,7 @@ class aam {
409
  );
410
  $message = aam_Core_ConfigPress::getParam(
411
  'frontend.access.deny.message',
412
- __('Access denied', 'aam')
413
  );
414
  }
415
 
@@ -436,7 +436,7 @@ class aam {
436
  public function wpDie($function) {
437
  $redirect = aam_Core_ConfigPress::getParam('backend.access.deny.redirect');
438
  $message = aam_Core_ConfigPress::getParam(
439
- 'backend.access.deny.message', __('Access denied', 'aam')
440
  );
441
 
442
  if (filter_var($redirect, FILTER_VALIDATE_URL)) {
3
  /**
4
  Plugin Name: Advanced Access Manager
5
  Description: Manage User and Role Access to WordPress Backend and Frontend.
6
+ Version: 2.8
7
  Author: Vasyl Martyniuk <support@wpaam.com>
8
  Author URI: http://www.wpaam.com
9
 
401
  'backend.access.deny.redirect'
402
  );
403
  $message = aam_Core_ConfigPress::getParam(
404
+ 'backend.access.deny.message', __('Access Denied', 'aam')
405
  );
406
  } else {
407
  $redirect = aam_Core_ConfigPress::getParam(
409
  );
410
  $message = aam_Core_ConfigPress::getParam(
411
  'frontend.access.deny.message',
412
+ __('Access Denied', 'aam')
413
  );
414
  }
415
 
436
  public function wpDie($function) {
437
  $redirect = aam_Core_ConfigPress::getParam('backend.access.deny.redirect');
438
  $message = aam_Core_ConfigPress::getParam(
439
+ 'backend.access.deny.message', __('Access Denied', 'aam')
440
  );
441
 
442
  if (filter_var($redirect, FILTER_VALIDATE_URL)) {
application/control/object/configpress.php DELETED
@@ -1,211 +0,0 @@
1
- <?php
2
- /**
3
- * ======================================================================
4
- * LICENSE: This file is subject to the terms and conditions defined in *
5
- * file 'license.txt', which is part of this source code package. *
6
- * ======================================================================
7
- */
8
-
9
- /**
10
- * ConfigPress Legacy
11
- *
12
- * Keep this object for compatibility reasons
13
- *
14
- * @package AAM
15
- * @author Vasyl Martyniuk <support@wpaam.com>
16
- * @copyright Copyright C 2013 Vasyl Martyniuk
17
- * @license GNU General Public License {@link http://www.gnu.org/licenses/}
18
- * @todo Remove in 4/30/2014
19
- */
20
- class aam_Control_Object_ConfigPress extends aam_Control_Object {
21
-
22
- /**
23
- *
24
- */
25
- const UID = 'configpress';
26
-
27
- /**
28
- *
29
- * @var type
30
- */
31
- private $_option = '';
32
-
33
- /**
34
- *
35
- * @var type
36
- */
37
- private $_config = '';
38
-
39
- /**
40
- *
41
- * @var type
42
- */
43
- private $_tree = null;
44
-
45
- /**
46
- * @inheritdoc
47
- */
48
- public function __sleep(){
49
- return array('_option', '_config', '_tree');
50
- }
51
-
52
- /**
53
- * @inheritdoc
54
- */
55
- public function cacheObject(){
56
- return false;
57
- }
58
-
59
- /**
60
- *
61
- * @param type $config_press
62
- * @return boolean
63
- */
64
- public function save($config_press = null) {
65
- if (is_writable(AAM_TEMP_DIR)) {
66
- $filename = $this->getOption();
67
- if (!$filename) { //file already was created
68
- $filename = sha1(uniqid('aam'));
69
- aam_Core_API::updateBlogOption('aam_' . self::UID, $filename);
70
- }
71
- $response = file_put_contents(
72
- AAM_TEMP_DIR . $filename, stripcslashes($config_press)
73
- );
74
- } else {
75
- $response = false;
76
- }
77
-
78
- return $response;
79
- }
80
-
81
- /**
82
- *
83
- * @return type
84
- */
85
- public function getUID(){
86
- return self::UID;
87
- }
88
-
89
- /**
90
- *
91
- * @param type $object_id
92
- */
93
- public function init($object_id) {
94
- $filename = aam_Core_API::getBlogOption('aam_' . self::UID, '');
95
- if ($filename && file_exists(AAM_TEMP_DIR . $filename)) {
96
- $this->setOption($filename);
97
- $this->setConfig(file_get_contents(AAM_TEMP_DIR . $filename));
98
- $this->parseConfig(AAM_TEMP_DIR . $filename);
99
- }
100
- }
101
-
102
- /**
103
- *
104
- * @param type $filename
105
- */
106
- protected function parseConfig($filename) {
107
- //include third party library
108
- if (!class_exists('Zend_Config')){
109
- require_once(AAM_LIBRARY_DIR . 'Zend/Exception.php');
110
- require_once(AAM_LIBRARY_DIR . 'Zend/Config/Exception.php');
111
- require_once(AAM_LIBRARY_DIR . 'Zend/Config.php');
112
- require_once(AAM_LIBRARY_DIR . 'Zend/Config/Ini.php');
113
- }
114
- //parse ini file
115
- try {
116
- $this->setTree(new Zend_Config_Ini($filename));
117
- } catch (Zend_Config_Exception $e) {
118
- aam_Core_Console::add('ConfigPress parsing error');
119
- }
120
- }
121
-
122
- /**
123
- *
124
- * @param type $param
125
- * @param type $default
126
- * @return type
127
- */
128
- protected function parseParam($param, $default) {
129
- if (is_object($param) && isset($param->userFunc)) {
130
- $func = trim($param->userFunc);
131
- if (is_string($func) && is_callable($func)) {
132
- $response = call_user_func($func);
133
- } else {
134
- $response = $default;
135
- }
136
- } else {
137
- $response = $param;
138
- }
139
-
140
- return $response;
141
- }
142
-
143
- /**
144
- *
145
- * @param type $param
146
- * @param type $default
147
- * @return type
148
- */
149
- public function getParam($param, $default = NULL) {
150
- $tree = $this->getTree();
151
- foreach (explode('.', $param) as $section) {
152
- if (isset($tree->{$section})) {
153
- $tree = $tree->{$section};
154
- } else {
155
- $tree = $default;
156
- break;
157
- }
158
- }
159
-
160
- return $this->parseParam($tree, $default);
161
- }
162
-
163
- /**
164
- *
165
- * @param type $option
166
- */
167
- public function setOption($option) {
168
- $this->_option = $option;
169
- }
170
-
171
- /**
172
- *
173
- * @return type
174
- */
175
- public function getOption() {
176
- return $this->_option;
177
- }
178
-
179
- /**
180
- *
181
- * @param type $config
182
- */
183
- public function setConfig($config) {
184
- $this->_config = $config;
185
- }
186
-
187
- /**
188
- *
189
- * @return type
190
- */
191
- public function getConfig() {
192
- return $this->_config;
193
- }
194
-
195
- /**
196
- *
197
- * @param type $tree
198
- */
199
- public function setTree($tree) {
200
- $this->_tree = $tree;
201
- }
202
-
203
- /**
204
- *
205
- * @return type
206
- */
207
- public function getTree() {
208
- return $this->_tree;
209
- }
210
-
211
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
application/control/subject.php CHANGED
@@ -96,7 +96,9 @@ abstract class aam_Control_Subject {
96
  $this->setObjects($this->readCache());
97
  foreach($this->_objects as $objects){
98
  foreach($objects as $object){
99
- $object->setSubject($this);
 
 
100
  }
101
  }
102
  }
96
  $this->setObjects($this->readCache());
97
  foreach($this->_objects as $objects){
98
  foreach($objects as $object){
99
+ if (!($object instanceof __PHP_Incomplete_Class)) {
100
+ $object->setSubject($this);
101
+ }
102
  }
103
  }
104
  }
application/view/role.php CHANGED
@@ -87,8 +87,11 @@ class aam_View_Role extends aam_View_Abstract {
87
  public function add() {
88
  $name = trim(aam_Core_Request::post('name'));
89
  $roles = new WP_Roles;
90
- $role_id = 'aamrole_' . uniqid();
91
-
 
 
 
92
  //if inherited role is set get capabilities from it
93
  $parent = trim(aam_Core_Request::post('inherit'));
94
  if ($parent && $roles->get_role($parent)){
87
  public function add() {
88
  $name = trim(aam_Core_Request::post('name'));
89
  $roles = new WP_Roles;
90
+ if (aam_Core_ConfigPress::getParam('aam.native_role_id') === 'true'){
91
+ $role_id = strtolower($name);
92
+ } else {
93
+ $role_id = 'aamrole_' . uniqid();
94
+ }
95
  //if inherited role is set get capabilities from it
96
  $parent = trim(aam_Core_Request::post('inherit'));
97
  if ($parent && $roles->get_role($parent)){
application/view/tmpl/configpress.phtml CHANGED
@@ -1,5 +1,4 @@
1
  <?php
2
-
3
  /**
4
  * ======================================================================
5
  * LICENSE: This file is subject to the terms and conditions defined in *
@@ -8,7 +7,7 @@
8
  */
9
  ?>
10
  <div class="wrap" id="aam">
11
- <div class="postbox-container" style="width:70%;">
12
  <div class="metabox-holder">
13
  <div class="meta-box-sortables">
14
  <div class="postbox">
@@ -26,6 +25,74 @@
26
  </div>
27
  </div>
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  <?php if (aam_Core_Console::hasIssues()) { ?>
30
  <div class="postbox-container" style="width:25%; margin-left: 2%;">
31
  <div class="metabox-holder">
@@ -59,6 +126,12 @@
59
  <a href="#" class="aam-icon aam-icon-large aam-icon-large-save" id="save_config" >
60
  <span></span><?php echo __('Save', 'aam'); ?>
61
  </a>
 
 
 
 
 
 
62
  </div>
63
  <div class="medium-icons-row">
64
  <a href="https://twitter.com/wpaam" target="_blank" class="aam-icon aam-icon-medium aam-icon-medium-twitter" aam-tooltip="<?php echo __('Follow @wpaam', 'aam'); ?>">
1
  <?php
 
2
  /**
3
  * ======================================================================
4
  * LICENSE: This file is subject to the terms and conditions defined in *
7
  */
8
  ?>
9
  <div class="wrap" id="aam">
10
+ <div class="postbox-container" style="width:70%;" id="configpress_area">
11
  <div class="metabox-holder">
12
  <div class="meta-box-sortables">
13
  <div class="postbox">
25
  </div>
26
  </div>
27
 
28
+ <div class="postbox-container" style="width:70%; display: none;" id="configpress_info">
29
+ <div class="metabox-holder">
30
+ <div class="meta-box-sortables">
31
+ <div class="postbox">
32
+ <div class="handlediv" title="<?php echo __('Click to toggle', 'aam'); ?>"></div>
33
+ <h3 class="hndle">
34
+ <span>
35
+ <?php echo __('AAM ConfigPress Information', 'aam'); ?>
36
+ </span>
37
+ </h3>
38
+ <div class="inside">
39
+ <p>
40
+ Below is the list of all possible ConfigPress settings with explanation:
41
+ <pre style="background:#fff;color:#000">
42
+ <span style="color:#05a;font-weight: bold;">[aam]</span>
43
+ <span style="color:#00b418">#Define default access to admin menu items if it was not configured.</span>
44
+ <span style="color:#00b418">#By default it is set to</span> <span style="color:#d80800">"allow"</span>.
45
+ <span style="color:#0100b6;font-weight:700;">menu.undefined</span> = <span style="color:#d80800">"deny"</span>
46
+ <span style="color:#00b418">#Change the default access capability to AAM->Access Control screen.</span>
47
+ <span style="color:#00b418">#By default capability is <b>administrator</b>.</span>
48
+ <span style="color:#0100b6;font-weight:700;">page.access_control.capability</span> = <span style="color:#d80800">"aam_manager"</span>
49
+ <span style="color:#00b418">#Change the default access capability to AAM->ConfigPress screen.</span>
50
+ <span style="color:#00b418">#By default capability is <b>administrator</b>.</span>
51
+ <span style="color:#0100b6;font-weight:700;">page.configpress.capability</span> = <span style="color:#d80800">"configpress_guru"</span>
52
+ <span style="color:#00b418">#Change the default access capability to AAM->Extensions screen.</span>
53
+ <span style="color:#00b418">#By default capability is <b>administrator</b>.</span>
54
+ <span style="color:#0100b6;font-weight:700;">page.extensions.capability</span> = <span style="color:#d80800">"aam_extensions_manager"</span>
55
+ <span style="color:#00b418">#If there is no access defined for specific post or page, by default AAM tries to inherit</span>
56
+ <span style="color:#00b418">#settings from parent category. Below setting can change this behavior.</span>
57
+ <span style="color:#0100b6;font-weight:700;">post.inherit</span> = <span style="color:#d80800">"false"</span>
58
+ <span style="color:#00b418">#If there is no access defined for specific category, by default AAM tries to inherit</span>
59
+ <span style="color:#00b418">#settings from parent category. Below setting can change this behavior.</span>
60
+ <span style="color:#0100b6;font-weight:700;">term.inherit</span> = <span style="color:#d80800">"false"</span>
61
+ <span style="color:#00b418">#To speed up the AAM execution, the result can be cached.</span>
62
+ <span style="color:#00b418">#The cache is automatically flush during plugin update or when you hit Save button.</span>
63
+ <span style="color:#0100b6;font-weight:700;">caching</span> = <span style="color:#d80800">"true"</span>
64
+ <span style="color:#00b418">#Unlock restricted features in AAM for one administrator. By default you are not</span>
65
+ <span style="color:#00b418">#allowed to manager other administrators.</span>
66
+ <span style="color:#0100b6;font-weight:700;">super_admin</span> = <span style="color:#d80800">"true"</span>
67
+ <span style="color:#00b418">#Keep the native name for newly created roles. Each WordPress role like</span>
68
+ <span style="color:#00b418">#Editor or Contributor has internal ID (usually lowercase equivalent) and title.</span>
69
+ <span style="color:#00b418">#Each time you create new role with AAM, the ID is changed to something like aam_78koi9831933i.</span>
70
+ <span style="color:#00b418">#Setting below suppresses this behavior and keep the name in lowercase format.</span>
71
+ <span style="color:#0100b6;font-weight:700;">native_role_id</span> = <span style="color:#d80800">"true"</span>
72
+
73
+ <span style="color:#05a;font-weight: bold;">[backend]</span>
74
+ <span style="color:#00b418">#Defines redirect behavior when access is denied to any backend resource like menu</span>
75
+ <span style="color:#00b418">#or post. It can be whether valid URL or post/page ID number.</span>
76
+ <span style="color:#00b418">#By default it will show <b>Access Denied</b> message.</span>
77
+ <span style="color:#0100b6;font-weight:700;">access.deny.redirect</span> = <span style="color:#d80800">"http://someurlhere.in"</span>
78
+ <span style="color:#00b418">#Redefine default <b>Access Denied</b> message.</span>
79
+ <span style="color:#0100b6;font-weight:700;">access.deny.message</span> = <span style="color:#d80800">"Oops. This is restricted area"</span>
80
+
81
+ <span style="color:#05a;font-weight: bold;">[frontend]</span>
82
+ <span style="color:#00b418">#Defines redirect behavior when access is denied to any frontend resource like page</span>
83
+ <span style="color:#00b418">#or post. It can be whether valid URL or post/page ID number.</span>
84
+ <span style="color:#00b418">#By default it will show <b>Access Denied</b> message.</span>
85
+ <span style="color:#0100b6;font-weight:700;">access.deny.redirect</span> = <span style="color:#d80800">"http://someurlhere.in"</span>
86
+ <span style="color:#00b418">#Redefine default <b>Access Denied</b> message.</span>
87
+ <span style="color:#0100b6;font-weight:700;">access.deny.message</span> = <span style="color:#d80800">"Oops. This is restricted area"</span>
88
+ </pre>
89
+ </p>
90
+ </div>
91
+ </div>
92
+ </div>
93
+ </div>
94
+ </div>
95
+
96
  <?php if (aam_Core_Console::hasIssues()) { ?>
97
  <div class="postbox-container" style="width:25%; margin-left: 2%;">
98
  <div class="metabox-holder">
126
  <a href="#" class="aam-icon aam-icon-large aam-icon-large-save" id="save_config" >
127
  <span></span><?php echo __('Save', 'aam'); ?>
128
  </a>
129
+ <a href="#" class="aam-icon aam-icon-large aam-icon-large-info" id="info_screen" >
130
+ <span></span><?php echo __('Info', 'aam'); ?>
131
+ </a>
132
+ <a href="#" class="aam-icon aam-icon-large aam-icon-large-editor" style="display: none;" id="configpress_screen" >
133
+ <span></span><?php echo __('Editor', 'aam'); ?>
134
+ </a>
135
  </div>
136
  <div class="medium-icons-row">
137
  <a href="https://twitter.com/wpaam" target="_blank" class="aam-icon aam-icon-medium aam-icon-medium-twitter" aam-tooltip="<?php echo __('Follow @wpaam', 'aam'); ?>">
application/view/tmpl/extension.phtml CHANGED
@@ -1,5 +1,4 @@
1
  <?php
2
-
3
  /**
4
  * ======================================================================
5
  * LICENSE: This file is subject to the terms and conditions defined in *
@@ -107,7 +106,7 @@
107
  </td>
108
  <td class="extension-price payed">$15.00</td>
109
  <td>
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')) { ?>
@@ -118,6 +117,26 @@
118
  </div>
119
  </td>
120
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
121
  </tbody>
122
  </table>
123
  <div id="install_extension" class="aam-dialog" title="<?php echo __('Install Extension', 'aam'); ?>">
@@ -185,7 +204,7 @@
185
  </div>
186
  </div>
187
  </div>
188
-
189
  <div class="postbox-container" style="width:25%; margin-left: 2%;">
190
  <div class="metabox-holder">
191
  <div class="meta-box-sortables">
@@ -200,7 +219,7 @@
200
  </p>
201
  <div style="text-align: center;">
202
  <a href="http://wpaam.com/aam-development/aam-development-license/" target="_blank" class="button button-primary button-large"><?php echo __('Read More', 'aam'); ?></a>
203
- </div>
204
  </div>
205
  </div>
206
  </div>
1
  <?php
 
2
  /**
3
  * ======================================================================
4
  * LICENSE: This file is subject to the terms and conditions defined in *
106
  </td>
107
  <td class="extension-price payed">$15.00</td>
108
  <td>
109
+
110
  <div class="extension-actions">
111
  <a href="http://wpaam.com/aam-extensions/aam-content-filter/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
112
  <?php if ($this->getRepository()->hasExtension('AAM Content Filter')) { ?>
117
  </div>
118
  </td>
119
  </tr>
120
+ <tr>
121
+ <td>
122
+ <span class="extension-name">AAM Plugin Manager</span>
123
+ </td>
124
+ <td class="extension-description">
125
+ Control access to individual plugins in your list of Plugins. Hide, restrict to activate, deactivate or delete any existing plugin for user or role.
126
+ Check our <a href="http://wpaam.com/aam-development/aam-plugin-manager/" target="_blank">website</a> for more information.
127
+ </td>
128
+ <td class="extension-price payed">$10.00</td>
129
+ <td>
130
+ <div class="extension-actions">
131
+ <a href="http://wpaam.com/aam-development/aam-plugin-manager/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
132
+ <?php if ($this->getRepository()->hasExtension('AAM Plugin Manager')) { ?>
133
+ <a href="#" extension="AAM Plugin Manager" license="<?php echo $this->getRepository()->getExtension('AAM Content Filter')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
134
+ <?php } else { ?>
135
+ <a href="#" extension="AAM Plugin Manager" link="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QJ2H2J483VXPL" class="extension-action extension-action-purchase" aam-tooltip="Get it Today"></a>
136
+ <?php } ?>
137
+ </div>
138
+ </td>
139
+ </tr>
140
  </tbody>
141
  </table>
142
  <div id="install_extension" class="aam-dialog" title="<?php echo __('Install Extension', 'aam'); ?>">
204
  </div>
205
  </div>
206
  </div>
207
+
208
  <div class="postbox-container" style="width:25%; margin-left: 2%;">
209
  <div class="metabox-holder">
210
  <div class="meta-box-sortables">
219
  </p>
220
  <div style="text-align: center;">
221
  <a href="http://wpaam.com/aam-development/aam-development-license/" target="_blank" class="button button-primary button-large"><?php echo __('Read More', 'aam'); ?></a>
222
+ </div>
223
  </div>
224
  </div>
225
  </div>
application/view/tmpl/manager.phtml CHANGED
@@ -88,7 +88,7 @@
88
  $subjects = aam_View_Collection::retrieveSubjects();
89
  foreach ($subjects as $subject) {
90
  echo '<a href="#" class="', $subject->class, '" ';
91
- echo '" aam-tooltip="', $subject->title, '" segment="' . $subject->segment . '">';
92
  echo $subject->label, '</a>';
93
  }
94
  ?>
88
  $subjects = aam_View_Collection::retrieveSubjects();
89
  foreach ($subjects as $subject) {
90
  echo '<a href="#" class="', $subject->class, '" ';
91
+ echo 'aam-tooltip="', $subject->title, '" segment="' . $subject->segment . '">';
92
  echo $subject->label, '</a>';
93
  }
94
  ?>
config.php CHANGED
@@ -8,12 +8,12 @@
8
  */
9
 
10
  //AAM Version for Update purpose
11
- define('AAM_VERSION', '2.7');
12
 
13
  define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
14
 
15
  $base_url = WP_PLUGIN_URL . '/' . basename(AAM_BASE_DIR) . '/';
16
- if (force_ssl_admin()) {
17
  $base_url = str_replace('http', 'https', $base_url);
18
  }
19
  define('AAM_BASE_URL', $base_url);
8
  */
9
 
10
  //AAM Version for Update purpose
11
+ define('AAM_VERSION', '2.8');
12
 
13
  define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
14
 
15
  $base_url = WP_PLUGIN_URL . '/' . basename(AAM_BASE_DIR) . '/';
16
+ if (force_ssl_admin() && (strpos($base_url, 'https') !== 0)) {
17
  $base_url = str_replace('http', 'https', $base_url);
18
  }
19
  define('AAM_BASE_URL', $base_url);
extension/AAM_Secure/extension.php CHANGED
@@ -135,7 +135,7 @@ class AAM_Secure extends AAM_Core_Extension {
135
  'aam_security_login_stats', array()
136
  );
137
  $info = $this->retrieveGeoData();
138
- if (!is_null($info)) {
139
  if (!isset($this->_stats[$info->countryCode])) {
140
  $this->_stats[$info->countryCode] = array(
141
  'failed' => 0
135
  'aam_security_login_stats', array()
136
  );
137
  $info = $this->retrieveGeoData();
138
+ if ($info instanceof stdClass) {
139
  if (!isset($this->_stats[$info->countryCode])) {
140
  $this->_stats[$info->countryCode] = array(
141
  'failed' => 0
media/css/common.css CHANGED
@@ -144,6 +144,22 @@ a.aam-icon{
144
  background-position: -192px -48px;
145
  }
146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
147
  .aam-icon-medium-add span{
148
  background-position: 0 0;
149
  }
144
  background-position: -192px -48px;
145
  }
146
 
147
+ .aam-icon-large-info span{
148
+ background-position: -240px 0;
149
+ }
150
+
151
+ .aam-icon-large-info:hover span{
152
+ background-position: -240px -48px;
153
+ }
154
+
155
+ .aam-icon-large-editor span{
156
+ background-position: -288px 0;
157
+ }
158
+
159
+ .aam-icon-large-editor:hover span{
160
+ background-position: -288px -48px;
161
+ }
162
+
163
  .aam-icon-medium-add span{
164
  background-position: 0 0;
165
  }
media/css/images/common/large-iconset.png CHANGED
Binary file
media/js/configpress.js CHANGED
@@ -52,4 +52,20 @@ jQuery(document).ready(function() {
52
  }
53
  });
54
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  });
52
  }
53
  });
54
  });
55
+
56
+ jQuery('#info_screen').bind('click', function(event){
57
+ event.preventDefault();
58
+ jQuery('#configpress_area').hide();
59
+ jQuery('#configpress_info').show();
60
+ jQuery(this).hide();
61
+ jQuery('#configpress_screen').show();
62
+ });
63
+
64
+ jQuery('#configpress_screen').bind('click', function(event){
65
+ event.preventDefault();
66
+ jQuery('#configpress_area').show();
67
+ jQuery('#configpress_info').hide();
68
+ jQuery(this).hide();
69
+ jQuery('#info_screen').show();
70
+ });
71
  });
readme.txt CHANGED
@@ -3,31 +3,31 @@ Contributors: vasyl_m
3
  Tags: security, login, access manager, access, access control, capability, role, user, post filter, category
4
  Requires at least: 3.4.2
5
  Tested up to: 3.9.1
6
- Stable tag: 2.7
7
 
8
  The powerful and easy-to-use tool to improve security and define access to your
9
  posts, pages and backend areas for single blog or multisite network.
10
 
11
  == Description ==
12
 
13
- ''Advanced Access Manager'' (aka ''AAM'') is known nowadays as one of the best
14
  access control and security enhancement tool. It is easy-to-use and at the same
15
  time very powerful plugin that gives you the flexible control over your single
16
- blog or ''multisite network''.
17
 
18
- With ''AAM'' you can control access to different areas of your website like posts,
19
  pages, categories, widgets or menus. The access can be defined for any user, role
20
  or visitor.
21
 
22
  Below is the list of highlighted features that has been implemented and proved in
23
- current ''AAM'' version:
24
 
25
- ''Secure Admin Login''.
26
  Control the login process to your website. Define the number or possible login
27
  attempts, trace the failed login request's geographical location, lockout IP
28
  addresses for potential hacker attacks.
29
 
30
- ''Control Access to Posts, Pages or Categories''.
31
  Restrict access to your posts, pages, custom post types of categories for any
32
  user, role or visitor. Define whether the viewer can ''see'', ''read'' or ''comment''
33
  on any post or page. For more extended list of possible options consider to get
@@ -35,33 +35,33 @@ the [AAM Plus Package](http://wpaam.com/aam-extensions/aam-plus-package/). To
35
  learn more about this feature check our
36
  [Posts and Pages Tutorial](http://wpaam.com/tutorials/posts-pages-general-overview/).
37
 
38
- ''Control Access to Media Files''.
39
  Define your custom access to media files for any user, role or visitor. The feature
40
  works without any extra configurations to your server .htaccess file. Find more
41
  information about this topic in our
42
  [Tutorial](http://wpaam.com/tutorials/control-access-to-media-files/).
43
 
44
- ''Manage Roles and Capabilities''.
45
  Manage the list of roles and capabilities. This feature has been designed and tested
46
  by hundreds of experienced WordPress user and developers. It gives you possibility
47
  to create, update or delete any role or capability. For security reasons, this
48
  feature is limited by default but can be easily activated. Read more about it in
49
  our [AAM Super Admin Tutorial](http://wpaam.com/tutorials/aam-super-admin/).
50
 
51
- ''Track User Activity''.
52
  Track logged in user activities like when user was logged in or logged out. Explore
53
  more tracking options with [AAM Activities](http://wpaam.com/aam-extensions/aam-activities/).
54
 
55
- ''Filter Backend Menu''.
56
  Control access to backend menu (including submenus). For more information check
57
  [How to Manage Admin Menu](http://wpaam.com/tutorials/how-to-manage-admin-menu/).
58
 
59
- ''Filter Metaboxes and Widgets''.
60
  Filter available metaboxes or widgets for any user, role or visitor.
61
 
62
  And many, many more...
63
 
64
- The ''AAM'' has multi-language UI:
65
 
66
  * English
67
  * German (by Kolja www.Reggae-Party.de)
@@ -97,6 +97,23 @@ the list of additional metaboxes can be picked by AAM.
97
 
98
  == Changelog ==
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  = 2.7 =
101
  * Fixed bug with subject managing check
102
  * Fixed bug with update hook
3
  Tags: security, login, access manager, access, access control, capability, role, user, post filter, category
4
  Requires at least: 3.4.2
5
  Tested up to: 3.9.1
6
+ Stable tag: 2.8
7
 
8
  The powerful and easy-to-use tool to improve security and define access to your
9
  posts, pages and backend areas for single blog or multisite network.
10
 
11
  == Description ==
12
 
13
+ **Advanced Access Manager** (aka **AAM**) is known nowadays as one of the best
14
  access control and security enhancement tool. It is easy-to-use and at the same
15
  time very powerful plugin that gives you the flexible control over your single
16
+ blog or multisite network.
17
 
18
+ With **AAM** you can control access to different areas of your website like posts,
19
  pages, categories, widgets or menus. The access can be defined for any user, role
20
  or visitor.
21
 
22
  Below is the list of highlighted features that has been implemented and proved in
23
+ current **AAM** version:
24
 
25
+ **Secure Admin Login**.
26
  Control the login process to your website. Define the number or possible login
27
  attempts, trace the failed login request's geographical location, lockout IP
28
  addresses for potential hacker attacks.
29
 
30
+ **Control Access to Posts, Pages or Categories**.
31
  Restrict access to your posts, pages, custom post types of categories for any
32
  user, role or visitor. Define whether the viewer can ''see'', ''read'' or ''comment''
33
  on any post or page. For more extended list of possible options consider to get
35
  learn more about this feature check our
36
  [Posts and Pages Tutorial](http://wpaam.com/tutorials/posts-pages-general-overview/).
37
 
38
+ **Control Access to Media Files**.
39
  Define your custom access to media files for any user, role or visitor. The feature
40
  works without any extra configurations to your server .htaccess file. Find more
41
  information about this topic in our
42
  [Tutorial](http://wpaam.com/tutorials/control-access-to-media-files/).
43
 
44
+ **Manage Roles and Capabilities**.
45
  Manage the list of roles and capabilities. This feature has been designed and tested
46
  by hundreds of experienced WordPress user and developers. It gives you possibility
47
  to create, update or delete any role or capability. For security reasons, this
48
  feature is limited by default but can be easily activated. Read more about it in
49
  our [AAM Super Admin Tutorial](http://wpaam.com/tutorials/aam-super-admin/).
50
 
51
+ **Track User Activity**.
52
  Track logged in user activities like when user was logged in or logged out. Explore
53
  more tracking options with [AAM Activities](http://wpaam.com/aam-extensions/aam-activities/).
54
 
55
+ **Filter Backend Menu**.
56
  Control access to backend menu (including submenus). For more information check
57
  [How to Manage Admin Menu](http://wpaam.com/tutorials/how-to-manage-admin-menu/).
58
 
59
+ **Filter Metaboxes and Widgets**.
60
  Filter available metaboxes or widgets for any user, role or visitor.
61
 
62
  And many, many more...
63
 
64
+ The **AAM** has multi-language UI:
65
 
66
  * English
67
  * German (by Kolja www.Reggae-Party.de)
97
 
98
  == Changelog ==
99
 
100
+ = 2.8 =
101
+ * Fixed issue with AAM Control Manage HTML
102
+ * Fixed issue with __PHP_Incomplete_Class
103
+ * Addedd AAM Plugin Manager Extension
104
+ * Removed Deprecated ConfigPress Object from the core
105
+
106
+ = 2.7.3 =
107
+ * Added ConfigPress Reference Page
108
+
109
+ = 2.7.2 =
110
+ * Maintenance release
111
+
112
+ = 2.7.1 =
113
+ * Improved SSL handling
114
+ * Added ConfigPress property aam.native_role_id
115
+ * Fixed bug with countryCode in AAM Security Extension
116
+
117
  = 2.7 =
118
  * Fixed bug with subject managing check
119
  * Fixed bug with update hook