Version Description
- Added Persian translation by Ghaem Omidi
- Added Inherit Capabilities From Role drop-down on Add New Role Dialog
- Small Cosmetic CSS changes
Download this release
Release Info
Developer | vasyl_m |
Plugin | Advanced Access Manager |
Version | 2.3 |
Comparing to | |
See all releases |
Code changes from version 2.2 to 2.3
- aam.php +76 -9
- application/control/object/menu.php +1 -1
- application/control/object/post.php +10 -3
- application/control/object/term.php +1 -1
- application/control/subject/role.php +10 -5
- application/control/subject/user.php +322 -1
- application/view/ajax.php +17 -0
- application/view/capability.php +6 -1
- application/view/manager.php +3 -3
- application/view/menu.php +2 -2
- application/view/metabox.php +14 -9
- application/view/role.php +18 -1
- application/view/tmpl/capability.phtml +8 -1
- application/view/tmpl/extension.phtml +3 -3
- application/view/tmpl/menu.phtml +1 -1
- application/view/tmpl/role.phtml +19 -0
- config.php +2 -2
- docs/configpress.pdf +0 -0
- extension/AAM_Activity_Log/extension.php +1 -1
- lang/aam-fa_IR.mo +0 -0
- lang/aam-fa_IR.po +606 -0
- lang/aam-pl_PL.mo +0 -0
- lang/aam-pl_PL.po +104 -55
- media/css/aam.css +39 -5
- media/css/images/cmanager/duplicate-active.png +0 -0
- media/css/images/cmanager/duplicate.png +0 -0
- media/js/aam.js +107 -13
- readme.txt +35 -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 |
Author: Vasyl Martyniuk <support@wpaam.com>
|
8 |
Author URI: http://www.wpaam.com
|
9 |
|
@@ -74,6 +74,7 @@ class aam {
|
|
74 |
} else {
|
75 |
add_action('admin_menu', array($this, 'adminMenu'), 999);
|
76 |
}
|
|
|
77 |
//manager AAM Features Content rendering
|
78 |
add_action('admin_action_features', array($this, 'features'));
|
79 |
//manager AAM Ajax Requests
|
@@ -94,6 +95,8 @@ class aam {
|
|
94 |
add_filter('wp_die_handler', array($this, 'wpDie'), 10);
|
95 |
//***For UI purposes***
|
96 |
add_action('parse_tax_query', array($this, 'parseTaxQuery'), 10, 1);
|
|
|
|
|
97 |
} else {
|
98 |
//control WordPress frontend
|
99 |
add_action('wp', array($this, 'wp'), 999);
|
@@ -112,10 +115,39 @@ class aam {
|
|
112 |
|
113 |
//load extensions only when admin
|
114 |
$this->loadExtensions();
|
115 |
-
|
116 |
//add shutdown action
|
117 |
add_action('shutdown', array($this, 'shutdown'), 1);
|
118 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
|
120 |
/**
|
121 |
* Check if system requires update
|
@@ -775,7 +807,7 @@ class aam {
|
|
775 |
*/
|
776 |
public function features() {
|
777 |
check_ajax_referer('aam_ajax');
|
778 |
-
|
779 |
$model = new aam_View_Manager;
|
780 |
$model->retrieveFeatures();
|
781 |
die();
|
@@ -838,21 +870,55 @@ class aam {
|
|
838 |
public function adminMenu() {
|
839 |
//register the menu
|
840 |
add_menu_page(
|
841 |
-
__('AAM', 'aam'),
|
|
|
|
|
|
|
|
|
|
|
842 |
);
|
843 |
//register submenus
|
844 |
add_submenu_page(
|
845 |
-
'aam',
|
|
|
|
|
|
|
|
|
|
|
846 |
);
|
847 |
add_submenu_page(
|
848 |
-
'aam',
|
|
|
|
|
|
|
|
|
|
|
849 |
);
|
850 |
add_submenu_page(
|
851 |
-
'aam',
|
|
|
|
|
|
|
|
|
|
|
852 |
);
|
853 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
854 |
//filter admin menu
|
855 |
$this->getUser()->getObject(aam_Control_Object_Menu::UID)->filter();
|
|
|
|
|
856 |
}
|
857 |
|
858 |
/**
|
@@ -1011,7 +1077,8 @@ class aam {
|
|
1011 |
|
1012 |
}
|
1013 |
|
1014 |
-
|
|
|
1015 |
|
1016 |
//register_activation_hook(__FILE__, array('aam', 'activate'));
|
1017 |
register_uninstall_hook(__FILE__, array('aam', 'uninstall'));
|
3 |
/**
|
4 |
Plugin Name: Advanced Access Manager
|
5 |
Description: Manage User and Role Access to WordPress Backend and Frontend.
|
6 |
+
Version: 2.3
|
7 |
Author: Vasyl Martyniuk <support@wpaam.com>
|
8 |
Author URI: http://www.wpaam.com
|
9 |
|
74 |
} else {
|
75 |
add_action('admin_menu', array($this, 'adminMenu'), 999);
|
76 |
}
|
77 |
+
add_filter('parent_file', array($this, 'filterMenu'), 999, 1);
|
78 |
//manager AAM Features Content rendering
|
79 |
add_action('admin_action_features', array($this, 'features'));
|
80 |
//manager AAM Ajax Requests
|
95 |
add_filter('wp_die_handler', array($this, 'wpDie'), 10);
|
96 |
//***For UI purposes***
|
97 |
add_action('parse_tax_query', array($this, 'parseTaxQuery'), 10, 1);
|
98 |
+
//control Admin area
|
99 |
+
add_action('admin_init', array($this, 'adminInit'));
|
100 |
} else {
|
101 |
//control WordPress frontend
|
102 |
add_action('wp', array($this, 'wp'), 999);
|
115 |
|
116 |
//load extensions only when admin
|
117 |
$this->loadExtensions();
|
118 |
+
|
119 |
//add shutdown action
|
120 |
add_action('shutdown', array($this, 'shutdown'), 1);
|
121 |
}
|
122 |
+
|
123 |
+
/**
|
124 |
+
* Control Admin Area access
|
125 |
+
*
|
126 |
+
* @return void
|
127 |
+
*
|
128 |
+
* @access public
|
129 |
+
*/
|
130 |
+
public function adminInit() {
|
131 |
+
global $plugin_page;
|
132 |
+
|
133 |
+
//compile menu
|
134 |
+
if (empty($plugin_page)){
|
135 |
+
$menu = basename(aam_Core_Request::server('SCRIPT_NAME'));
|
136 |
+
if ($query = trim(aam_Core_Request::server('QUERY_STRING'))) {
|
137 |
+
$menu .= '?' . $query;
|
138 |
+
}
|
139 |
+
} else {
|
140 |
+
$menu = $plugin_page;
|
141 |
+
}
|
142 |
+
|
143 |
+
$has = $this->getUser()->getObject(aam_Control_Object_Menu::UID)->has($menu);
|
144 |
+
if ($has === true){
|
145 |
+
$this->reject();
|
146 |
+
} elseif(is_null($has)
|
147 |
+
&& aam_Core_ConfigPress::getParam('aam.menu.undefined') == 'deny'){
|
148 |
+
$this->reject();
|
149 |
+
}
|
150 |
+
}
|
151 |
|
152 |
/**
|
153 |
* Check if system requires update
|
807 |
*/
|
808 |
public function features() {
|
809 |
check_ajax_referer('aam_ajax');
|
810 |
+
|
811 |
$model = new aam_View_Manager;
|
812 |
$model->retrieveFeatures();
|
813 |
die();
|
870 |
public function adminMenu() {
|
871 |
//register the menu
|
872 |
add_menu_page(
|
873 |
+
__('AAM', 'aam'),
|
874 |
+
__('AAM', 'aam'),
|
875 |
+
'administrator',
|
876 |
+
'aam',
|
877 |
+
array($this, 'content'),
|
878 |
+
AAM_BASE_URL . 'active-menu.png'
|
879 |
);
|
880 |
//register submenus
|
881 |
add_submenu_page(
|
882 |
+
'aam',
|
883 |
+
__('Access Control', 'aam'),
|
884 |
+
__('Access Control', 'aam'),
|
885 |
+
'administrator',
|
886 |
+
'aam',
|
887 |
+
array($this, 'content')
|
888 |
);
|
889 |
add_submenu_page(
|
890 |
+
'aam',
|
891 |
+
__('ConfigPress', 'aam'),
|
892 |
+
__('ConfigPress', 'aam'),
|
893 |
+
'administrator',
|
894 |
+
'aam-configpress',
|
895 |
+
array($this, 'configPressContent')
|
896 |
);
|
897 |
add_submenu_page(
|
898 |
+
'aam',
|
899 |
+
__('Extensions', 'aam'),
|
900 |
+
__('Extensions', 'aam'),
|
901 |
+
'administrator',
|
902 |
+
'aam-ext',
|
903 |
+
array($this, 'extensionContent')
|
904 |
);
|
905 |
+
|
906 |
+
}
|
907 |
+
|
908 |
+
/**
|
909 |
+
* Filter the Admin Menu
|
910 |
+
*
|
911 |
+
* @param string $parent_file
|
912 |
+
*
|
913 |
+
* @return string
|
914 |
+
*
|
915 |
+
* @access public
|
916 |
+
*/
|
917 |
+
public function filterMenu($parent_file){
|
918 |
//filter admin menu
|
919 |
$this->getUser()->getObject(aam_Control_Object_Menu::UID)->filter();
|
920 |
+
|
921 |
+
return $parent_file;
|
922 |
}
|
923 |
|
924 |
/**
|
1077 |
|
1078 |
}
|
1079 |
|
1080 |
+
//the highest priority
|
1081 |
+
add_action('init', 'aam::initialize', 0);
|
1082 |
|
1083 |
//register_activation_hook(__FILE__, array('aam', 'activate'));
|
1084 |
register_uninstall_hook(__FILE__, array('aam', 'uninstall'));
|
application/control/object/menu.php
CHANGED
@@ -159,7 +159,7 @@ class aam_Control_Object_Menu extends aam_Control_Object {
|
|
159 |
* @return type
|
160 |
*/
|
161 |
public function has($menu) {
|
162 |
-
$response =
|
163 |
//decode URL in case of any special characters like &
|
164 |
$menu_decoded = htmlspecialchars_decode($menu);
|
165 |
//check if menu is restricted
|
159 |
* @return type
|
160 |
*/
|
161 |
public function has($menu) {
|
162 |
+
$response = null;
|
163 |
//decode URL in case of any special characters like &
|
164 |
$menu_decoded = htmlspecialchars_decode($menu);
|
165 |
//check if menu is restricted
|
application/control/object/post.php
CHANGED
@@ -86,14 +86,21 @@ class aam_Control_Object_Post extends aam_Control_Object {
|
|
86 |
}
|
87 |
|
88 |
/**
|
89 |
-
*
|
90 |
-
*
|
|
|
|
|
|
|
|
|
|
|
91 |
*/
|
92 |
public function save($params = null) {
|
93 |
if (is_array($params)) {
|
94 |
$this->setInherited(false);
|
95 |
update_post_meta($this->getPost()->ID, $this->getOptionName(), $params);
|
96 |
}
|
|
|
|
|
97 |
}
|
98 |
|
99 |
/**
|
@@ -181,7 +188,7 @@ class aam_Control_Object_Post extends aam_Control_Object {
|
|
181 |
}
|
182 |
|
183 |
$this->setOption(
|
184 |
-
apply_filters('aam_post_access_option', $option, $this
|
185 |
);
|
186 |
}
|
187 |
|
86 |
}
|
87 |
|
88 |
/**
|
89 |
+
* Save Post Options
|
90 |
+
*
|
91 |
+
* @param array $params
|
92 |
+
*
|
93 |
+
* @return void
|
94 |
+
*
|
95 |
+
* @access public
|
96 |
*/
|
97 |
public function save($params = null) {
|
98 |
if (is_array($params)) {
|
99 |
$this->setInherited(false);
|
100 |
update_post_meta($this->getPost()->ID, $this->getOptionName(), $params);
|
101 |
}
|
102 |
+
//fire internal hook
|
103 |
+
do_action_ref_array('aam_object_saved', $this, $params);
|
104 |
}
|
105 |
|
106 |
/**
|
188 |
}
|
189 |
|
190 |
$this->setOption(
|
191 |
+
apply_filters('aam_post_access_option', $option, $this)
|
192 |
);
|
193 |
}
|
194 |
|
application/control/object/term.php
CHANGED
@@ -119,7 +119,7 @@ class aam_Control_Object_Term extends aam_Control_Object {
|
|
119 |
}
|
120 |
|
121 |
$this->setOption(
|
122 |
-
apply_filters('aam_term_access_option', $access, $this
|
123 |
);
|
124 |
}
|
125 |
}
|
119 |
}
|
120 |
|
121 |
$this->setOption(
|
122 |
+
apply_filters('aam_term_access_option', $access, $this)
|
123 |
);
|
124 |
}
|
125 |
}
|
application/control/subject/role.php
CHANGED
@@ -42,9 +42,13 @@ class aam_Control_Subject_Role extends aam_Control_Subject {
|
|
42 |
}
|
43 |
|
44 |
/**
|
45 |
-
*
|
46 |
-
*
|
|
|
|
|
47 |
* @return boolean
|
|
|
|
|
48 |
*/
|
49 |
public function delete($delete_users = false) {
|
50 |
$role = new WP_Roles;
|
@@ -56,12 +60,13 @@ class aam_Control_Subject_Role extends aam_Control_Subject {
|
|
56 |
$users = new WP_User_Query(array(
|
57 |
'number' => '',
|
58 |
'blog_id' => get_current_blog_id(),
|
59 |
-
'role' =>
|
60 |
));
|
61 |
foreach ($users->get_results() as $user) {
|
62 |
//user can not delete himself
|
63 |
-
if ($user
|
64 |
-
|
|
|
65 |
}
|
66 |
}
|
67 |
$role->remove_role($this->getId());
|
42 |
}
|
43 |
|
44 |
/**
|
45 |
+
* Delete User Role and all User's in role if requested
|
46 |
+
*
|
47 |
+
* @param boolean $delete_users
|
48 |
+
*
|
49 |
* @return boolean
|
50 |
+
*
|
51 |
+
* @access public
|
52 |
*/
|
53 |
public function delete($delete_users = false) {
|
54 |
$role = new WP_Roles;
|
60 |
$users = new WP_User_Query(array(
|
61 |
'number' => '',
|
62 |
'blog_id' => get_current_blog_id(),
|
63 |
+
'role' => $this->getId()
|
64 |
));
|
65 |
foreach ($users->get_results() as $user) {
|
66 |
//user can not delete himself
|
67 |
+
if (($user instanceof WP_User)
|
68 |
+
&& ($user->ID != get_current_user_id())) {
|
69 |
+
wp_delete_user($user->ID);
|
70 |
}
|
71 |
}
|
72 |
$role->remove_role($this->getId());
|
application/control/subject/user.php
CHANGED
@@ -1 +1,322 @@
|
|
1 |
-
<?php
|
2 |
* ======================================================================
|
3 |
* LICENSE: This file is subject to the terms and conditions defined in *
|
4 |
* file 'license.txt', which is part of this source code package. *
|
5 |
* ======================================================================
|
6 |
*/
|
7 |
*
|
8 |
* @package AAM
|
9 |
* @author Vasyl Martyniuk <support@wpaam.com>
|
10 |
* @copyright Copyright C 2013 Vasyl Martyniuk
|
11 |
* @license GNU General Public License {@link http://www.gnu.org/licenses/}
|
12 |
*/
|
13 |
/**
|
14 |
* Subject UID: USER
|
15 |
*/
|
16 |
const UID = 'user';
|
17 |
/**
|
18 |
* AAM Capability Key
|
19 |
*
|
20 |
* WordPress does not allow to have different set of capabilities for one user
|
21 |
* between sites. aam_capability key stores the set of capabilities stored after
|
22 |
* individual user edit and merge them with system capabilities.
|
23 |
* The merging process overwrites allcaps.
|
24 |
*
|
25 |
* @var array
|
26 |
*
|
27 |
* @access private
|
28 |
*/
|
29 |
private $_cap_key = '';
|
30 |
/**
|
31 |
*
|
32 |
* @param type $id
|
33 |
*/
|
34 |
public function __construct($id) {
|
35 |
parent::__construct($id);
|
36 |
//overwrite default set of capabilities if AAM capset is defined
|
37 |
if ($this->isDefaultCapSet() === false){
|
38 |
//make sure that aam_capability is actually array
|
39 |
if (is_array($this->getSubject()->aam_caps)){
|
40 |
$allcaps = array_merge(
|
41 |
$this->getSubject()->allcaps, $this->getSubject()->aam_caps
|
42 |
);
|
43 |
$this->getSubject()->allcaps = $allcaps;
|
44 |
}
|
45 |
}
|
46 |
}
|
47 |
/**
|
48 |
*
|
49 |
* @return type
|
50 |
*/
|
51 |
public function delete() {
|
52 |
$response = false;
|
53 |
if (current_user_can('delete_users')
|
54 |
&& ($this->getId() !== get_current_user_id())) {
|
55 |
$response = wp_delete_user($this->getId());
|
56 |
}
|
57 |
return $response;
|
58 |
}
|
59 |
/**
|
60 |
*
|
61 |
* @global type $wpdb
|
62 |
* @return boolean
|
63 |
*/
|
64 |
public function block() {
|
65 |
global $wpdb;
|
66 |
$response = false;
|
67 |
if (current_user_can('edit_users')
|
68 |
&& ($this->getId() != get_current_user_id())) {
|
69 |
$status = ($this->getSubject()->user_status == 0 ? 1 : 0);
|
70 |
if ($wpdb->update(
|
71 |
$wpdb->users,
|
72 |
array('user_status' => $status),
|
73 |
array('ID' => $this->getId())
|
74 |
)) {
|
75 |
$this->getSubject()->user_status = $status;
|
76 |
clean_user_cache($this->getSubject());
|
77 |
$response = true;
|
78 |
}
|
79 |
}
|
80 |
return $response;
|
81 |
}
|
82 |
/**
|
83 |
* Retrieve User based on ID
|
84 |
*
|
85 |
* @return WP_Role|null
|
86 |
*
|
87 |
* @access protected
|
88 |
*/
|
89 |
protected function retrieveSubject() {
|
90 |
global $current_user;
|
91 |
if ($current_user instanceof WP_User && $current_user->ID == $this->getId()) {
|
92 |
$subject = $current_user;
|
93 |
} else {
|
94 |
$subject = new WP_User($this->getId());
|
95 |
}
|
96 |
//retrieve aam capabilities if are not retrieved yet
|
97 |
$this->_cap_key = 'aam_capability';
|
98 |
$subject->aam_caps = get_user_option($this->_cap_key, $this->getId());
|
99 |
return $subject;
|
100 |
}
|
101 |
/**
|
102 |
* Check if user has default capability set
|
103 |
*
|
104 |
* @return boolean
|
105 |
*
|
106 |
* @access public
|
107 |
*/
|
108 |
public function isDefaultCapSet(){
|
109 |
return empty($this->getSubject()->aam_caps);
|
110 |
}
|
111 |
/**
|
112 |
*
|
113 |
* @return type
|
114 |
*/
|
115 |
public function getCapabilities() {
|
116 |
return $this->getSubject()->allcaps;
|
117 |
}
|
118 |
/**
|
119 |
*
|
120 |
* @param type $capability
|
121 |
* @return type
|
122 |
*/
|
123 |
public function hasCapability($capability) {
|
124 |
return user_can($this->getSubject(), $capability);
|
125 |
}
|
126 |
/**
|
127 |
* Check if Subject has capability
|
128 |
*
|
129 |
* Keep compatible with WordPress core
|
130 |
*
|
131 |
* @param string $capability
|
132 |
*
|
133 |
* @return boolean
|
134 |
*
|
135 |
* @access public
|
136 |
*/
|
137 |
public function addCapability($capability) {
|
138 |
return $this->updateCapability($capability, true);
|
139 |
}
|
140 |
/**
|
141 |
* Remove Capability
|
142 |
*
|
143 |
* @param string $capability
|
144 |
*
|
145 |
* @return boolean
|
146 |
*
|
147 |
* @access public
|
148 |
*/
|
149 |
public function removeCapability($capability) {
|
150 |
return $this->updateCapability($capability, false);
|
151 |
}
|
152 |
/**
|
153 |
* Reset User Capability
|
154 |
*
|
155 |
* @return array
|
156 |
*
|
157 |
* @access public
|
158 |
*/
|
159 |
public function resetCapability(){
|
160 |
return delete_user_option($this->getId(), $this->_cap_key);
|
161 |
}
|
162 |
/**
|
163 |
* Update User's Capability Set
|
164 |
*
|
165 |
* @param string $capability
|
166 |
* @param boolean $grand
|
167 |
*
|
168 |
* @return boolean
|
169 |
*
|
170 |
* @access public
|
171 |
*/
|
172 |
public function updateCapability($capability, $grand){
|
173 |
//make sure that we have right array
|
174 |
if (is_array($this->getSubject()->aam_caps)){
|
175 |
$aam_caps = $this->getSubject()->aam_caps;
|
176 |
} else {
|
177 |
$aam_caps = array();
|
178 |
}
|
179 |
//add capability
|
180 |
$aam_caps[$capability] = $grand;
|
181 |
//update user data. TODO - Keep eyes on this part
|
182 |
$this->getSubject()->data->aam_caps = $aam_caps;
|
183 |
//save and return the result of operation
|
184 |
return update_user_option($this->getId(), $this->_cap_key, $aam_caps);
|
185 |
}
|
186 |
/**
|
187 |
*
|
188 |
* @param type $value
|
189 |
* @param type $object
|
190 |
* @param type $object_id
|
191 |
* @return type
|
192 |
*/
|
193 |
public function updateOption($value, $object, $object_id = 0) {
|
194 |
return update_user_option(
|
195 |
$this->getId(), $this->getOptionName($object, $object_id), $value
|
196 |
);
|
197 |
}
|
198 |
/**
|
199 |
*
|
200 |
* @param type $object
|
201 |
* @param type $object_id
|
202 |
* @param bool $inherit
|
203 |
*
|
204 |
* @return mixed
|
205 |
*/
|
206 |
public function readOption($object, $object_id = 0, $inherit = true) {
|
207 |
$option = get_user_option(
|
208 |
$this->getOptionName($object, $object_id), $this->getId()
|
209 |
);
|
210 |
if (empty($option) && $inherit) {
|
211 |
//try to get this option from the User's Role
|
212 |
$roles = $this->getSubject()->roles;
|
213 |
//first user role is counted only. AAM does not support multi-roles
|
214 |
$subject_role = array_shift($roles);
|
215 |
//in case of multisite & current user does not belong to the site
|
216 |
if ($subject_role){
|
217 |
$role = new aam_Control_Subject_Role($subject_role);
|
218 |
$option = $role->getObject($object, $object_id)->getOption();
|
219 |
}
|
220 |
}
|
221 |
return $option;
|
222 |
}
|
223 |
/**
|
224 |
*
|
225 |
* @param type $object
|
226 |
* @param type $object_id
|
227 |
* @return type
|
228 |
*/
|
229 |
public function deleteOption($object, $object_id = 0) {
|
230 |
return delete_user_option(
|
231 |
$this->getId(), $this->getOptionName($object, $object_id)
|
232 |
);
|
233 |
}
|
234 |
/**
|
235 |
*
|
236 |
* @param type $object
|
237 |
* @param type $object_id
|
238 |
* @return type
|
239 |
*/
|
240 |
protected function getOptionName($object, $object_id) {
|
241 |
return "aam_{$object}" . ($object_id ? "_{$object_id}" : '');
|
242 |
}
|
243 |
/**
|
244 |
* Get Subject UID
|
245 |
*
|
246 |
* @return string
|
247 |
*
|
248 |
* @access public
|
249 |
*/
|
250 |
public function getUID() {
|
251 |
return self::UID;
|
252 |
}
|
253 |
/**
|
254 |
* Get User's Cache
|
255 |
*
|
256 |
* Read User's option aam_cache and return it
|
257 |
*
|
258 |
* @return array
|
259 |
*
|
260 |
* @access public
|
261 |
*/
|
262 |
public function readCache(){
|
263 |
$cache = get_user_option('aam_cache', $this->getId());
|
264 |
return (is_array($cache) ? $cache : array());
|
265 |
}
|
266 |
/**
|
267 |
* Insert or Update User's Cache
|
268 |
*
|
269 |
* @return boolean
|
270 |
*
|
271 |
* @access public
|
272 |
*/
|
273 |
public function updateCache(){
|
274 |
return update_user_option($this->getId(), 'aam_cache', $this->getObjects());
|
275 |
}
|
276 |
/**
|
277 |
* Delete User's Cache
|
278 |
*
|
279 |
* @return boolean
|
280 |
*
|
281 |
* @access public
|
282 |
*/
|
283 |
public function clearCache(){
|
284 |
return delete_user_option($this->getId(), 'aam_cache');
|
285 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
* ======================================================================
|
2 |
* LICENSE: This file is subject to the terms and conditions defined in *
|
3 |
* file 'license.txt', which is part of this source code package. *
|
4 |
* ======================================================================
|
5 |
*/
|
6 |
*
|
7 |
* @package AAM
|
8 |
* @author Vasyl Martyniuk <support@wpaam.com>
|
9 |
* @copyright Copyright C 2013 Vasyl Martyniuk
|
10 |
* @license GNU General Public License {@link http://www.gnu.org/licenses/}
|
11 |
*/
|
12 |
/**
|
13 |
* Subject UID: USER
|
14 |
*/
|
15 |
const UID = 'user';
|
16 |
/**
|
17 |
* AAM Capability Key
|
18 |
*
|
19 |
* WordPress does not allow to have different set of capabilities for one user
|
20 |
* between sites. aam_capability key stores the set of capabilities stored after
|
21 |
* individual user edit and merge them with system capabilities.
|
22 |
* The merging process overwrites allcaps.
|
23 |
*
|
24 |
* @var array
|
25 |
*
|
26 |
* @access private
|
27 |
*/
|
28 |
private $_cap_key = '';
|
29 |
/**
|
30 |
*
|
31 |
* @param type $id
|
32 |
*/
|
33 |
public function __construct($id) {
|
34 |
parent::__construct($id);
|
35 |
//overwrite default set of capabilities if AAM capset is defined
|
36 |
if ($this->isDefaultCapSet() === false){
|
37 |
//make sure that aam_capability is actually array
|
38 |
if (is_array($this->getSubject()->aam_caps)){
|
39 |
$allcaps = array_merge(
|
40 |
$this->getSubject()->allcaps, $this->getSubject()->aam_caps
|
41 |
);
|
42 |
$this->getSubject()->allcaps = $allcaps;
|
43 |
}
|
44 |
}
|
45 |
}
|
46 |
/**
|
47 |
*
|
48 |
* @return type
|
49 |
*/
|
50 |
public function delete() {
|
51 |
$response = false;
|
52 |
if (current_user_can('delete_users')
|
53 |
&& ($this->getId() !== get_current_user_id())) {
|
54 |
$response = wp_delete_user($this->getId());
|
55 |
}
|
56 |
return $response;
|
57 |
}
|
58 |
/**
|
59 |
*
|
60 |
* @global type $wpdb
|
61 |
* @return boolean
|
62 |
*/
|
63 |
public function block() {
|
64 |
global $wpdb;
|
65 |
$response = false;
|
66 |
if (current_user_can('edit_users')
|
67 |
&& ($this->getId() != get_current_user_id())) {
|
68 |
$status = ($this->getSubject()->user_status == 0 ? 1 : 0);
|
69 |
if ($wpdb->update(
|
70 |
$wpdb->users,
|
71 |
array('user_status' => $status),
|
72 |
array('ID' => $this->getId())
|
73 |
)) {
|
74 |
$this->getSubject()->user_status = $status;
|
75 |
clean_user_cache($this->getSubject());
|
76 |
$response = true;
|
77 |
}
|
78 |
}
|
79 |
return $response;
|
80 |
}
|
81 |
/**
|
82 |
* Retrieve User based on ID
|
83 |
*
|
84 |
* @return WP_Role|null
|
85 |
*
|
86 |
* @access protected
|
87 |
*/
|
88 |
protected function retrieveSubject() {
|
89 |
global $current_user;
|
90 |
if ($current_user instanceof WP_User && $current_user->ID == $this->getId()) {
|
91 |
$subject = $current_user;
|
92 |
} else {
|
93 |
$subject = new WP_User($this->getId());
|
94 |
}
|
95 |
//retrieve aam capabilities if are not retrieved yet
|
96 |
$this->_cap_key = 'aam_capability';
|
97 |
$subject->aam_caps = get_user_option($this->_cap_key, $this->getId());
|
98 |
return $subject;
|
99 |
}
|
100 |
/**
|
101 |
* Check if user has default capability set
|
102 |
*
|
103 |
* @return boolean
|
104 |
*
|
105 |
* @access public
|
106 |
*/
|
107 |
public function isDefaultCapSet(){
|
108 |
return empty($this->getSubject()->aam_caps);
|
109 |
}
|
110 |
/**
|
111 |
*
|
112 |
* @return type
|
113 |
*/
|
114 |
public function getCapabilities() {
|
115 |
return $this->getSubject()->allcaps;
|
116 |
}
|
117 |
/**
|
118 |
*
|
119 |
* @param type $capability
|
120 |
* @return type
|
121 |
*/
|
122 |
public function hasCapability($capability) {
|
123 |
return user_can($this->getSubject(), $capability);
|
124 |
}
|
125 |
/**
|
126 |
* Check if Subject has capability
|
127 |
*
|
128 |
* Keep compatible with WordPress core
|
129 |
*
|
130 |
* @param string $capability
|
131 |
*
|
132 |
* @return boolean
|
133 |
*
|
134 |
* @access public
|
135 |
*/
|
136 |
public function addCapability($capability) {
|
137 |
return $this->updateCapability($capability, true);
|
138 |
}
|
139 |
/**
|
140 |
* Remove Capability
|
141 |
*
|
142 |
* @param string $capability
|
143 |
*
|
144 |
* @return boolean
|
145 |
*
|
146 |
* @access public
|
147 |
*/
|
148 |
public function removeCapability($capability) {
|
149 |
return $this->updateCapability($capability, false);
|
150 |
}
|
151 |
/**
|
152 |
* Reset User Capability
|
153 |
*
|
154 |
* @return array
|
155 |
*
|
156 |
* @access public
|
157 |
*/
|
158 |
public function resetCapability(){
|
159 |
return delete_user_option($this->getId(), $this->_cap_key);
|
160 |
}
|
161 |
/**
|
162 |
* Update User's Capability Set
|
163 |
*
|
164 |
* @param string $capability
|
165 |
* @param boolean $grand
|
166 |
*
|
167 |
* @return boolean
|
168 |
*
|
169 |
* @access public
|
170 |
*/
|
171 |
public function updateCapability($capability, $grand){
|
172 |
//make sure that we have right array
|
173 |
if (is_array($this->getSubject()->aam_caps)){
|
174 |
$aam_caps = $this->getSubject()->aam_caps;
|
175 |
} else {
|
176 |
$aam_caps = array();
|
177 |
}
|
178 |
//add capability
|
179 |
$aam_caps[$capability] = $grand;
|
180 |
//update user data. TODO - Keep eyes on this part
|
181 |
$this->getSubject()->data->aam_caps = $aam_caps;
|
182 |
//save and return the result of operation
|
183 |
return update_user_option($this->getId(), $this->_cap_key, $aam_caps);
|
184 |
}
|
185 |
/**
|
186 |
*
|
187 |
* @param type $value
|
188 |
* @param type $object
|
189 |
* @param type $object_id
|
190 |
* @return type
|
191 |
*/
|
192 |
public function updateOption($value, $object, $object_id = 0) {
|
193 |
return update_user_option(
|
194 |
$this->getId(), $this->getOptionName($object, $object_id), $value
|
195 |
);
|
196 |
}
|
197 |
/**
|
198 |
*
|
199 |
* @param type $object
|
200 |
* @param type $object_id
|
201 |
* @param bool $inherit
|
202 |
*
|
203 |
* @return mixed
|
204 |
*/
|
205 |
public function readOption($object, $object_id = 0, $inherit = true) {
|
206 |
$option = get_user_option(
|
207 |
$this->getOptionName($object, $object_id), $this->getId()
|
208 |
);
|
209 |
if (empty($option) && $inherit) {
|
210 |
//try to get this option from the User's Role
|
211 |
$roles = $this->getSubject()->roles;
|
212 |
//first user role is counted only. AAM does not support multi-roles
|
213 |
$subject_role = array_shift($roles);
|
214 |
//in case of multisite & current user does not belong to the site
|
215 |
if ($subject_role){
|
216 |
$role = new aam_Control_Subject_Role($subject_role);
|
217 |
$option = $role->getObject($object, $object_id)->getOption();
|
218 |
}
|
219 |
}
|
220 |
return $option;
|
221 |
}
|
222 |
/**
|
223 |
*
|
224 |
* @param type $object
|
225 |
* @param type $object_id
|
226 |
* @return type
|
227 |
*/
|
228 |
public function deleteOption($object, $object_id = 0) {
|
229 |
return delete_user_option(
|
230 |
$this->getId(), $this->getOptionName($object, $object_id)
|
231 |
);
|
232 |
}
|
233 |
/**
|
234 |
*
|
235 |
* @param type $object
|
236 |
* @param type $object_id
|
237 |
* @return type
|
238 |
*/
|
239 |
protected function getOptionName($object, $object_id) {
|
240 |
return "aam_{$object}" . ($object_id ? "_{$object_id}" : '');
|
241 |
}
|
242 |
/**
|
243 |
* Get Subject UID
|
244 |
*
|
245 |
* @return string
|
246 |
*
|
247 |
* @access public
|
248 |
*/
|
249 |
public function getUID() {
|
250 |
return self::UID;
|
251 |
}
|
252 |
/**
|
253 |
* Get User's Cache
|
254 |
*
|
255 |
* Read User's option aam_cache and return it
|
256 |
*
|
257 |
* @return array
|
258 |
*
|
259 |
* @access public
|
260 |
*/
|
261 |
public function readCache(){
|
262 |
$cache = get_user_option('aam_cache', $this->getId());
|
263 |
return (is_array($cache) ? $cache : array());
|
264 |
}
|
265 |
/**
|
266 |
* Insert or Update User's Cache
|
267 |
*
|
268 |
* @return boolean
|
269 |
*
|
270 |
* @access public
|
271 |
*/
|
272 |
public function updateCache(){
|
273 |
return update_user_option($this->getId(), 'aam_cache', $this->getObjects());
|
274 |
}
|
275 |
/**
|
276 |
* Delete User's Cache
|
277 |
*
|
278 |
* @return boolean
|
279 |
*
|
280 |
* @access public
|
281 |
*/
|
282 |
public function clearCache(){
|
283 |
return delete_user_option($this->getId(), 'aam_cache');
|
284 |
}
|
285 |
+
<?php
|
286 |
+
|
287 |
+
/**
|
288 |
+
* ======================================================================
|
289 |
+
* LICENSE: This file is subject to the terms and conditions defined in *
|
290 |
+
* file 'license.txt', which is part of this source code package. *
|
291 |
+
* ======================================================================
|
292 |
+
*/
|
293 |
+
|
294 |
+
/**
|
295 |
+
*
|
296 |
+
* @package AAM
|
297 |
+
* @author Vasyl Martyniuk <support@wpaam.com>
|
298 |
+
* @copyright Copyright C 2013 Vasyl Martyniuk
|
299 |
+
* @license GNU General Public License {@link http://www.gnu.org/licenses/}
|
300 |
+
*/
|
301 |
+
class aam_Control_Subject_User extends aam_Control_Subject {
|
302 |
+
|
303 |
+
/**
|
304 |
+
* Subject UID: USER
|
305 |
+
*/
|
306 |
+
const UID = 'user';
|
307 |
+
|
308 |
+
/**
|
309 |
+
* AAM Capability Key
|
310 |
+
*
|
311 |
+
* WordPress does not allow to have different set of capabilities for one user
|
312 |
+
* between sites. aam_capability key stores the set of capabilities stored after
|
313 |
+
* individual user edit and merge them with system capabilities.
|
314 |
+
* The merging process overwrites allcaps.
|
315 |
+
*
|
316 |
+
* @var array
|
317 |
+
*
|
318 |
+
* @access private
|
319 |
+
*/
|
320 |
+
private $_cap_key = '';
|
321 |
+
|
322 |
+
/**
|
323 |
+
*
|
324 |
+
* @param type $id
|
325 |
+
*/
|
326 |
+
public function __construct($id) {
|
327 |
+
parent::__construct($id);
|
328 |
+
|
329 |
+
//overwrite default set of capabilities if AAM capset is defined
|
330 |
+
if ($this->isDefaultCapSet() === false){
|
331 |
+
//make sure that aam_capability is actually array
|
332 |
+
if (is_array($this->getSubject()->aam_caps)){
|
333 |
+
$allcaps = array_merge(
|
334 |
+
$this->getSubject()->allcaps, $this->getSubject()->aam_caps
|
335 |
+
);
|
336 |
+
$this->getSubject()->allcaps = $allcaps;
|
337 |
+
}
|
338 |
+
}
|
339 |
+
}
|
340 |
+
|
341 |
+
/**
|
342 |
+
*
|
343 |
+
* @return type
|
344 |
+
*/
|
345 |
+
public function delete() {
|
346 |
+
$response = false;
|
347 |
+
if (current_user_can('delete_users')
|
348 |
+
&& ($this->getId() !== get_current_user_id())) {
|
349 |
+
$response = wp_delete_user($this->getId());
|
350 |
+
}
|
351 |
+
|
352 |
+
return $response;
|
353 |
+
}
|
354 |
+
|
355 |
+
/**
|
356 |
+
*
|
357 |
+
* @global type $wpdb
|
358 |
+
* @return boolean
|
359 |
+
*/
|
360 |
+
public function block() {
|
361 |
+
global $wpdb;
|
362 |
+
|
363 |
+
$response = false;
|
364 |
+
if (current_user_can('edit_users')
|
365 |
+
&& ($this->getId() != get_current_user_id())) {
|
366 |
+
$status = ($this->getSubject()->user_status == 0 ? 1 : 0);
|
367 |
+
if ($wpdb->update(
|
368 |
+
$wpdb->users,
|
369 |
+
array('user_status' => $status),
|
370 |
+
array('ID' => $this->getId())
|
371 |
+
)) {
|
372 |
+
$this->getSubject()->user_status = $status;
|
373 |
+
clean_user_cache($this->getSubject());
|
374 |
+
$response = true;
|
375 |
+
}
|
376 |
+
}
|
377 |
+
|
378 |
+
return $response;
|
379 |
+
}
|
380 |
+
|
381 |
+
/**
|
382 |
+
* Retrieve User based on ID
|
383 |
+
*
|
384 |
+
* @return WP_Role|null
|
385 |
+
*
|
386 |
+
* @access protected
|
387 |
+
*/
|
388 |
+
protected function retrieveSubject() {
|
389 |
+
global $current_user;
|
390 |
+
|
391 |
+
if ($current_user instanceof WP_User && $current_user->ID == $this->getId()) {
|
392 |
+
$subject = $current_user;
|
393 |
+
} else {
|
394 |
+
$subject = new WP_User($this->getId());
|
395 |
+
}
|
396 |
+
|
397 |
+
//retrieve aam capabilities if are not retrieved yet
|
398 |
+
$this->_cap_key = 'aam_capability';
|
399 |
+
$subject->aam_caps = get_user_option($this->_cap_key, $this->getId());
|
400 |
+
|
401 |
+
return $subject;
|
402 |
+
}
|
403 |
+
|
404 |
+
/**
|
405 |
+
* Check if user has default capability set
|
406 |
+
*
|
407 |
+
* @return boolean
|
408 |
+
*
|
409 |
+
* @access public
|
410 |
+
*/
|
411 |
+
public function isDefaultCapSet(){
|
412 |
+
return empty($this->getSubject()->aam_caps);
|
413 |
+
}
|
414 |
+
|
415 |
+
/**
|
416 |
+
*
|
417 |
+
* @return type
|
418 |
+
*/
|
419 |
+
public function getCapabilities() {
|
420 |
+
return $this->getSubject()->allcaps;
|
421 |
+
}
|
422 |
+
|
423 |
+
/**
|
424 |
+
*
|
425 |
+
* @param type $capability
|
426 |
+
* @return type
|
427 |
+
*/
|
428 |
+
public function hasCapability($capability) {
|
429 |
+
return user_can($this->getSubject(), $capability);
|
430 |
+
}
|
431 |
+
|
432 |
+
/**
|
433 |
+
* Check if Subject has capability
|
434 |
+
*
|
435 |
+
* Keep compatible with WordPress core
|
436 |
+
*
|
437 |
+
* @param string $capability
|
438 |
+
*
|
439 |
+
* @return boolean
|
440 |
+
*
|
441 |
+
* @access public
|
442 |
+
*/
|
443 |
+
public function addCapability($capability) {
|
444 |
+
return $this->updateCapability($capability, true);
|
445 |
+
}
|
446 |
+
|
447 |
+
/**
|
448 |
+
* Remove Capability
|
449 |
+
*
|
450 |
+
* @param string $capability
|
451 |
+
*
|
452 |
+
* @return boolean
|
453 |
+
*
|
454 |
+
* @access public
|
455 |
+
*/
|
456 |
+
public function removeCapability($capability) {
|
457 |
+
return $this->updateCapability($capability, false);
|
458 |
+
}
|
459 |
+
|
460 |
+
/**
|
461 |
+
* Reset User Capability
|
462 |
+
*
|
463 |
+
* @return array
|
464 |
+
*
|
465 |
+
* @access public
|
466 |
+
*/
|
467 |
+
public function resetCapability(){
|
468 |
+
return delete_user_option($this->getId(), $this->_cap_key);
|
469 |
+
}
|
470 |
+
|
471 |
+
/**
|
472 |
+
* Update User's Capability Set
|
473 |
+
*
|
474 |
+
* @param string $capability
|
475 |
+
* @param boolean $grand
|
476 |
+
*
|
477 |
+
* @return boolean
|
478 |
+
*
|
479 |
+
* @access public
|
480 |
+
*/
|
481 |
+
public function updateCapability($capability, $grand){
|
482 |
+
//make sure that we have right array
|
483 |
+
if (is_array($this->getSubject()->aam_caps)){
|
484 |
+
$aam_caps = $this->getSubject()->aam_caps;
|
485 |
+
} else {
|
486 |
+
$aam_caps = array();
|
487 |
+
}
|
488 |
+
|
489 |
+
//add capability
|
490 |
+
$aam_caps[$capability] = $grand;
|
491 |
+
//update user data. TODO - Keep eyes on this part
|
492 |
+
$this->getSubject()->data->aam_caps = $aam_caps;
|
493 |
+
//save and return the result of operation
|
494 |
+
return update_user_option($this->getId(), $this->_cap_key, $aam_caps);
|
495 |
+
}
|
496 |
+
|
497 |
+
/**
|
498 |
+
*
|
499 |
+
* @param type $value
|
500 |
+
* @param type $object
|
501 |
+
* @param type $object_id
|
502 |
+
* @return type
|
503 |
+
*/
|
504 |
+
public function updateOption($value, $object, $object_id = 0) {
|
505 |
+
return update_user_option(
|
506 |
+
$this->getId(), $this->getOptionName($object, $object_id), $value
|
507 |
+
);
|
508 |
+
}
|
509 |
+
|
510 |
+
/**
|
511 |
+
*
|
512 |
+
* @param type $object
|
513 |
+
* @param type $object_id
|
514 |
+
* @param bool $inherit
|
515 |
+
*
|
516 |
+
* @return mixed
|
517 |
+
*/
|
518 |
+
public function readOption($object, $object_id = 0, $inherit = true) {
|
519 |
+
$option = get_user_option(
|
520 |
+
$this->getOptionName($object, $object_id), $this->getId()
|
521 |
+
);
|
522 |
+
if (empty($option) && $inherit) {
|
523 |
+
//try to get this option from the User's Role
|
524 |
+
$roles = $this->getSubject()->roles;
|
525 |
+
//first user role is counted only. AAM does not support multi-roles
|
526 |
+
$subject_role = array_shift($roles);
|
527 |
+
//in case of multisite & current user does not belong to the site
|
528 |
+
if ($subject_role){
|
529 |
+
$role = new aam_Control_Subject_Role($subject_role);
|
530 |
+
$option = $role->getObject($object, $object_id)->getOption();
|
531 |
+
}
|
532 |
+
}
|
533 |
+
|
534 |
+
return $option;
|
535 |
+
}
|
536 |
+
|
537 |
+
/**
|
538 |
+
*
|
539 |
+
* @param type $object
|
540 |
+
* @param type $object_id
|
541 |
+
* @return type
|
542 |
+
*/
|
543 |
+
public function deleteOption($object, $object_id = 0) {
|
544 |
+
return delete_user_option(
|
545 |
+
$this->getId(), $this->getOptionName($object, $object_id)
|
546 |
+
);
|
547 |
+
}
|
548 |
+
|
549 |
+
/**
|
550 |
+
*
|
551 |
+
* @param type $object
|
552 |
+
* @param type $object_id
|
553 |
+
* @return type
|
554 |
+
*/
|
555 |
+
protected function getOptionName($object, $object_id) {
|
556 |
+
return "aam_{$object}" . ($object_id ? "_{$object_id}" : '');
|
557 |
+
}
|
558 |
+
|
559 |
+
/**
|
560 |
+
* Get Subject UID
|
561 |
+
*
|
562 |
+
* @return string
|
563 |
+
*
|
564 |
+
* @access public
|
565 |
+
*/
|
566 |
+
public function getUID() {
|
567 |
+
return self::UID;
|
568 |
+
}
|
569 |
+
|
570 |
+
/**
|
571 |
+
* Get User's Cache
|
572 |
+
*
|
573 |
+
* Read User's option aam_cache and return it
|
574 |
+
*
|
575 |
+
* @return array
|
576 |
+
*
|
577 |
+
* @access public
|
578 |
+
*/
|
579 |
+
public function readCache(){
|
580 |
+
$cache = get_user_option('aam_cache', $this->getId());
|
581 |
+
return (is_array($cache) ? $cache : array());
|
582 |
+
}
|
583 |
+
|
584 |
+
/**
|
585 |
+
* Insert or Update User's Cache
|
586 |
+
*
|
587 |
+
* @return boolean
|
588 |
+
*
|
589 |
+
* @access public
|
590 |
+
*/
|
591 |
+
public function updateCache(){
|
592 |
+
return update_user_option($this->getId(), 'aam_cache', $this->getObjects());
|
593 |
+
}
|
594 |
+
|
595 |
+
/**
|
596 |
+
* Delete User's Cache
|
597 |
+
*
|
598 |
+
* @return boolean
|
599 |
+
*
|
600 |
+
* @access public
|
601 |
+
*/
|
602 |
+
public function clearCache(){
|
603 |
+
return delete_user_option($this->getId(), 'aam_cache');
|
604 |
+
}
|
605 |
+
|
606 |
+
}
|
application/view/ajax.php
CHANGED
@@ -30,6 +30,10 @@ class aam_View_Ajax extends aam_View_Abstract{
|
|
30 |
case 'role_list':
|
31 |
$response = $this->retrieveRoleList();
|
32 |
break;
|
|
|
|
|
|
|
|
|
33 |
|
34 |
case 'user_list':
|
35 |
$response = $this->retrieveUserList();
|
@@ -170,6 +174,19 @@ class aam_View_Ajax extends aam_View_Abstract{
|
|
170 |
|
171 |
return $model->retrieveList();
|
172 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
173 |
|
174 |
/**
|
175 |
* Retrieve Available User List
|
30 |
case 'role_list':
|
31 |
$response = $this->retrieveRoleList();
|
32 |
break;
|
33 |
+
|
34 |
+
case 'pure_role_list':
|
35 |
+
$response = $this->retrievePureRoleList();
|
36 |
+
break;
|
37 |
|
38 |
case 'user_list':
|
39 |
$response = $this->retrieveUserList();
|
174 |
|
175 |
return $model->retrieveList();
|
176 |
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* Retrieve Pure Role List
|
180 |
+
*
|
181 |
+
* @return string
|
182 |
+
*
|
183 |
+
* @access protected
|
184 |
+
*/
|
185 |
+
protected function retrievePureRoleList(){
|
186 |
+
$model = new aam_View_Role;
|
187 |
+
|
188 |
+
return $model->retrievePureList();
|
189 |
+
}
|
190 |
|
191 |
/**
|
192 |
* Retrieve Available User List
|
application/view/capability.php
CHANGED
@@ -122,9 +122,14 @@ class aam_View_Capability extends aam_View_Abstract {
|
|
122 |
public function addCapability() {
|
123 |
$roles = new WP_Roles();
|
124 |
$capability = trim(aam_Core_Request::post('capability'));
|
|
|
125 |
|
126 |
if ($capability) {
|
127 |
-
|
|
|
|
|
|
|
|
|
128 |
//add the capability to administrator's role as default behavior
|
129 |
$roles->add_cap('administrator', $normalized);
|
130 |
$response = array('status' => 'success', 'capability' => $normalized);
|
122 |
public function addCapability() {
|
123 |
$roles = new WP_Roles();
|
124 |
$capability = trim(aam_Core_Request::post('capability'));
|
125 |
+
$unfiltered = intval(aam_Core_Request::post('unfiltered'));
|
126 |
|
127 |
if ($capability) {
|
128 |
+
if ($unfiltered){
|
129 |
+
$normalized = $capability;
|
130 |
+
} else {
|
131 |
+
$normalized = str_replace(' ', '_', strtolower($capability));
|
132 |
+
}
|
133 |
//add the capability to administrator's role as default behavior
|
134 |
$roles->add_cap('administrator', $normalized);
|
135 |
$response = array('status' => 'success', 'capability' => $normalized);
|
application/view/manager.php
CHANGED
@@ -116,7 +116,7 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
116 |
'post_access' => array(
|
117 |
'id' => 'post_access',
|
118 |
'position' => 20,
|
119 |
-
'title' => __('Posts &
|
120 |
'anonimus' => true,
|
121 |
'content' => array(new aam_View_Post(), 'content'),
|
122 |
'help' => __('Manage access to individual <b>Post</b> or <b>Term</b>. Notice, under <b>Post</b>, we assume any post, page or custom post type. And under <b>Term</b> - any term like Post Categories.', 'aam')
|
@@ -374,8 +374,8 @@ class aam_View_Manager extends aam_View_Abstract {
|
|
374 |
'Delete Post' => __('Delete Post', 'aam'),
|
375 |
'Delete Permanently' => __('Delete Permanently', 'aam'),
|
376 |
'Trash Post' => __('Trash Post', 'aam'),
|
377 |
-
'Restore Default Access' => __('Restore Default Access', 'aam')
|
378 |
-
|
379 |
));
|
380 |
}
|
381 |
|
116 |
'post_access' => array(
|
117 |
'id' => 'post_access',
|
118 |
'position' => 20,
|
119 |
+
'title' => __('Posts & Pages', 'aam'),
|
120 |
'anonimus' => true,
|
121 |
'content' => array(new aam_View_Post(), 'content'),
|
122 |
'help' => __('Manage access to individual <b>Post</b> or <b>Term</b>. Notice, under <b>Post</b>, we assume any post, page or custom post type. And under <b>Term</b> - any term like Post Categories.', 'aam')
|
374 |
'Delete Post' => __('Delete Post', 'aam'),
|
375 |
'Delete Permanently' => __('Delete Permanently', 'aam'),
|
376 |
'Trash Post' => __('Trash Post', 'aam'),
|
377 |
+
'Restore Default Access' => __('Restore Default Access', 'aam'),
|
378 |
+
'Duplicate' => __('Duplicate', 'aam')
|
379 |
));
|
380 |
}
|
381 |
|
application/view/menu.php
CHANGED
@@ -72,8 +72,8 @@ class aam_View_Menu extends aam_View_Abstract {
|
|
72 |
if ($this->getSubject()->hasCapability($submenu_item[1]) !== false) {
|
73 |
//prepare title
|
74 |
$submenu_title = $this->removeHTML($submenu_item[0]);
|
75 |
-
if (
|
76 |
-
$submenu_short =
|
77 |
} else {
|
78 |
$submenu_short = $submenu_title;
|
79 |
}
|
72 |
if ($this->getSubject()->hasCapability($submenu_item[1]) !== false) {
|
73 |
//prepare title
|
74 |
$submenu_title = $this->removeHTML($submenu_item[0]);
|
75 |
+
if (mb_strlen($submenu_title) > 18) {
|
76 |
+
$submenu_short = mb_substr($submenu_title, 0, 15) . '..';
|
77 |
} else {
|
78 |
$submenu_short = $submenu_title;
|
79 |
}
|
application/view/metabox.php
CHANGED
@@ -38,8 +38,8 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
38 |
$this->_cache = aam_Core_API::getBlogOption(
|
39 |
'aam_metabox_cache', array()
|
40 |
);
|
41 |
-
|
42 |
-
if ($post_type === '') {
|
43 |
$this->collectWidgets();
|
44 |
} else {
|
45 |
$this->collectMetaboxes($post_type);
|
@@ -57,7 +57,7 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
57 |
if (!isset($this->_cache['widgets'])) {
|
58 |
$this->_cache['widgets'] = array();
|
59 |
}
|
60 |
-
|
61 |
//get frontend widgets
|
62 |
if (is_array($wp_registered_widgets)) {
|
63 |
foreach ($wp_registered_widgets as $id => $data) {
|
@@ -82,6 +82,11 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
82 |
$this->collectMetaboxes('dashboard');
|
83 |
}
|
84 |
|
|
|
|
|
|
|
|
|
|
|
85 |
protected function collectMetaboxes($post_type) {
|
86 |
global $wp_meta_boxes;
|
87 |
|
@@ -140,7 +145,7 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
140 |
array_unshift($type_list, self::GROUP_WIDGETS);
|
141 |
|
142 |
foreach ($type_list as $type) {
|
143 |
-
if ($type ==
|
144 |
$url = add_query_arg(
|
145 |
'aam_meta_init',
|
146 |
1,
|
@@ -205,8 +210,8 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
205 |
$content .= '<div class=metabox-row>';
|
206 |
}
|
207 |
//prepare title
|
208 |
-
if (
|
209 |
-
$title =
|
210 |
} else {
|
211 |
$title = $metabox['title'];
|
212 |
}
|
@@ -221,7 +226,7 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
221 |
|
222 |
$content .= '<div class="metabox-item">';
|
223 |
$content .= sprintf(
|
224 |
-
'<label for="%s" tooltip="%s">%s</label>',
|
225 |
$metabox_id,
|
226 |
esc_js($metabox['title']),
|
227 |
$title
|
@@ -247,8 +252,8 @@ class aam_View_Metabox extends aam_View_Abstract {
|
|
247 |
$content .= '</div></div></div>';
|
248 |
}
|
249 |
$content .= '</div>';
|
250 |
-
|
251 |
-
return
|
252 |
}
|
253 |
|
254 |
/**
|
38 |
$this->_cache = aam_Core_API::getBlogOption(
|
39 |
'aam_metabox_cache', array()
|
40 |
);
|
41 |
+
|
42 |
+
if ($post_type === 'dashboard') {
|
43 |
$this->collectWidgets();
|
44 |
} else {
|
45 |
$this->collectMetaboxes($post_type);
|
57 |
if (!isset($this->_cache['widgets'])) {
|
58 |
$this->_cache['widgets'] = array();
|
59 |
}
|
60 |
+
|
61 |
//get frontend widgets
|
62 |
if (is_array($wp_registered_widgets)) {
|
63 |
foreach ($wp_registered_widgets as $id => $data) {
|
82 |
$this->collectMetaboxes('dashboard');
|
83 |
}
|
84 |
|
85 |
+
/**
|
86 |
+
*
|
87 |
+
* @global type $wp_meta_boxes
|
88 |
+
* @param type $post_type
|
89 |
+
*/
|
90 |
protected function collectMetaboxes($post_type) {
|
91 |
global $wp_meta_boxes;
|
92 |
|
145 |
array_unshift($type_list, self::GROUP_WIDGETS);
|
146 |
|
147 |
foreach ($type_list as $type) {
|
148 |
+
if ($type == self::GROUP_WIDGETS) {
|
149 |
$url = add_query_arg(
|
150 |
'aam_meta_init',
|
151 |
1,
|
210 |
$content .= '<div class=metabox-row>';
|
211 |
}
|
212 |
//prepare title
|
213 |
+
if (mb_strlen($metabox['title']) > 18) {
|
214 |
+
$title = mb_substr($metabox['title'], 0, 15) . '...';
|
215 |
} else {
|
216 |
$title = $metabox['title'];
|
217 |
}
|
226 |
|
227 |
$content .= '<div class="metabox-item">';
|
228 |
$content .= sprintf(
|
229 |
+
'<label for="%s" aam-tooltip="%s">%s</label>',
|
230 |
$metabox_id,
|
231 |
esc_js($metabox['title']),
|
232 |
$title
|
252 |
$content .= '</div></div></div>';
|
253 |
}
|
254 |
$content .= '</div>';
|
255 |
+
|
256 |
+
return $content;
|
257 |
}
|
258 |
|
259 |
/**
|
application/view/role.php
CHANGED
@@ -61,6 +61,15 @@ class aam_View_Role extends aam_View_Abstract {
|
|
61 |
|
62 |
return json_encode($response);
|
63 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
|
65 |
/**
|
66 |
*
|
@@ -70,8 +79,16 @@ class aam_View_Role extends aam_View_Abstract {
|
|
70 |
$name = trim(aam_Core_Request::post('name'));
|
71 |
$roles = new WP_Roles;
|
72 |
$role_id = 'aamrole_' . uniqid();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
|
74 |
-
if ($roles->add_role($role_id, $name)) {
|
75 |
$response = array(
|
76 |
'status' => 'success',
|
77 |
'role' => $role_id
|
61 |
|
62 |
return json_encode($response);
|
63 |
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Retrieve Pure Role List
|
67 |
+
*
|
68 |
+
* @return string
|
69 |
+
*/
|
70 |
+
public function retrievePureList(){
|
71 |
+
return json_encode(get_editable_roles());
|
72 |
+
}
|
73 |
|
74 |
/**
|
75 |
*
|
79 |
$name = trim(aam_Core_Request::post('name'));
|
80 |
$roles = new WP_Roles;
|
81 |
$role_id = 'aamrole_' . uniqid();
|
82 |
+
|
83 |
+
//if inherited role is set get capabilities from it
|
84 |
+
$parent = trim(aam_Core_Request::post('inherit'));
|
85 |
+
if ($parent && $roles->get_role($parent)){
|
86 |
+
$caps = $roles->get_role($parent)->capabilities;
|
87 |
+
} else {
|
88 |
+
$caps = array();
|
89 |
+
}
|
90 |
|
91 |
+
if ($roles->add_role($role_id, $name, $caps)) {
|
92 |
$response = array(
|
93 |
'status' => 'success',
|
94 |
'role' => $role_id
|
application/view/tmpl/capability.phtml
CHANGED
@@ -62,9 +62,16 @@
|
|
62 |
<table class="dataTable">
|
63 |
<tbody>
|
64 |
<tr>
|
65 |
-
<th><?php echo __('Capability Name', 'aam'); ?><span class="aam-asterix">*</span>:</th>
|
66 |
<td><input type="text" id="capability_name" class="aam-input" /></td>
|
67 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
68 |
</tbody>
|
69 |
</table>
|
70 |
<div class="aam-metabox-loader"></div>
|
62 |
<table class="dataTable">
|
63 |
<tbody>
|
64 |
<tr>
|
65 |
+
<th class="aam-align-right"><?php echo __('Capability Name', 'aam'); ?><span class="aam-asterix">*</span>:</th>
|
66 |
<td><input type="text" id="capability_name" class="aam-input" /></td>
|
67 |
</tr>
|
68 |
+
<tr>
|
69 |
+
<th class="aam-align-right"><?php echo __('Keep Unfiltered', 'aam'); ?>:</th>
|
70 |
+
<td>
|
71 |
+
<input type="checkbox" id="capability_unfiltered" />
|
72 |
+
<label for="capability_unfiltered"><span></span></label>
|
73 |
+
</td>
|
74 |
+
</tr>
|
75 |
</tbody>
|
76 |
</table>
|
77 |
<div class="aam-metabox-loader"></div>
|
application/view/tmpl/extension.phtml
CHANGED
@@ -36,7 +36,7 @@
|
|
36 |
<td class="extension-price payed">$30.00</td>
|
37 |
<td>
|
38 |
<div class="extension-actions">
|
39 |
-
<a href="http://wpaam.com/
|
40 |
<?php if ($this->hasExtension('AAM Plus Package')) { ?>
|
41 |
<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>
|
42 |
<?php } else { ?>
|
@@ -52,12 +52,12 @@
|
|
52 |
<td class="extension-description">
|
53 |
Extend the list of activities that AAM can track. By default AAM logs only user <i>login</i> and <i>logout</i>.
|
54 |
By purchasing this extension you can also track activities like post trash, delete, update etc.
|
55 |
-
As well as we can implement any additional activity on demand.
|
56 |
</td>
|
57 |
<td class="extension-price payed">$20.00</td>
|
58 |
<td>
|
59 |
<div class="extension-actions">
|
60 |
-
<a href="http://wpaam.com/
|
61 |
<?php if ($this->hasExtension('AAM Activities')) { ?>
|
62 |
<a href="#" extension="AAM Activities" license="<?php echo $this->getExtension('AAM Activities')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
63 |
<?php } else { ?>
|
36 |
<td class="extension-price payed">$30.00</td>
|
37 |
<td>
|
38 |
<div class="extension-actions">
|
39 |
+
<a href="http://wpaam.com/aam-extensions/aam-plus-package/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
40 |
<?php if ($this->hasExtension('AAM Plus Package')) { ?>
|
41 |
<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>
|
42 |
<?php } else { ?>
|
52 |
<td class="extension-description">
|
53 |
Extend the list of activities that AAM can track. By default AAM logs only user <i>login</i> and <i>logout</i>.
|
54 |
By purchasing this extension you can also track activities like post trash, delete, update etc.
|
55 |
+
As well as we can implement any additional activity on demand. Check <a href="http://wpaam.com/aam-extensions/aam-activities/" traget="_blank">our website</a> for more details.
|
56 |
</td>
|
57 |
<td class="extension-price payed">$20.00</td>
|
58 |
<td>
|
59 |
<div class="extension-actions">
|
60 |
+
<a href="http://wpaam.com/aam-extensions/aam-activities/" target="_blank" class="extension-action extension-action-forum" aam-tooltip="Visit Our Website"></a>
|
61 |
<?php if ($this->hasExtension('AAM Activities')) { ?>
|
62 |
<a href="#" extension="AAM Activities" license="<?php echo $this->getExtension('AAM Activities')->license; ?>" class="extension-action extension-action-ok" aam-tooltip="Installed Successfully"></a>
|
63 |
<?php } else { ?>
|
application/view/tmpl/menu.phtml
CHANGED
@@ -29,7 +29,7 @@ $menu = $this->getMenu();
|
|
29 |
<h4><?php echo $menu['name']; ?></h4>
|
30 |
<div>
|
31 |
<div class="whole-menu">
|
32 |
-
<label for="m<?php echo $menu_id; ?>"><?php echo __('
|
33 |
<input type="checkbox" id="m<?php echo $menu_id; ?>" name="aam[<?php echo aam_Control_Object_Menu::UID; ?>][<?php echo $menu['id']; ?>]" <?php echo ($this->hasRestrictedAll($menu) ? 'checked="checked"' : ''); ?> class="whole_menu" />
|
34 |
<label for="m<?php echo $menu_id; ?>"><span></span></label>
|
35 |
</div>
|
29 |
<h4><?php echo $menu['name']; ?></h4>
|
30 |
<div>
|
31 |
<div class="whole-menu">
|
32 |
+
<label for="m<?php echo $menu_id; ?>"><?php echo __('Restrict All', 'aam'); ?></label>
|
33 |
<input type="checkbox" id="m<?php echo $menu_id; ?>" name="aam[<?php echo aam_Control_Object_Menu::UID; ?>][<?php echo $menu['id']; ?>]" <?php echo ($this->hasRestrictedAll($menu) ? 'checked="checked"' : ''); ?> class="whole_menu" />
|
34 |
<label for="m<?php echo $menu_id; ?>"><span></span></label>
|
35 |
</div>
|
application/view/tmpl/role.phtml
CHANGED
@@ -26,6 +26,25 @@
|
|
26 |
<th><?php echo __('Role Name', 'aam'); ?><span class="aam-asterix">*</span>:</th>
|
27 |
<td><input type="text" id="role_name" class="aam-input" /></td>
|
28 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
</tbody>
|
30 |
</table>
|
31 |
</div>
|
26 |
<th><?php echo __('Role Name', 'aam'); ?><span class="aam-asterix">*</span>:</th>
|
27 |
<td><input type="text" id="role_name" class="aam-input" /></td>
|
28 |
</tr>
|
29 |
+
<tr id="parent_cap_role_holder">
|
30 |
+
<th><?php echo __('Inherit Caps', 'aam'); ?>:</th>
|
31 |
+
<td><select class="aam-input" id="parent_cap_role"></select></td>
|
32 |
+
</tr>
|
33 |
+
</tbody>
|
34 |
+
</table>
|
35 |
+
</div>
|
36 |
+
|
37 |
+
<div id="duplicate_role_dialog" class="aam-dialog" title="<?php echo __('Duplicate Role', 'aam'); ?>">
|
38 |
+
<table class="dataTable">
|
39 |
+
<tbody>
|
40 |
+
<tr>
|
41 |
+
<th><?php echo __('Duplicate Role', 'aam'); ?>:</th>
|
42 |
+
<td><span style="font-weight: bold;" id="duplicate_role_name"></span></td>
|
43 |
+
</tr>
|
44 |
+
<tr>
|
45 |
+
<th><?php echo __('Role Name', 'aam'); ?><span class="aam-asterix">*</span>:</th>
|
46 |
+
<td><input type="text" id="duplicate_role_name" class="aam-input" /></td>
|
47 |
+
</tr>
|
48 |
</tbody>
|
49 |
</table>
|
50 |
</div>
|
config.php
CHANGED
@@ -7,7 +7,7 @@
|
|
7 |
*/
|
8 |
|
9 |
//AAM Version for Update purpose
|
10 |
-
define('AAM_VERSION', '2.
|
11 |
|
12 |
define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
|
13 |
|
@@ -25,7 +25,7 @@ define('AAM_MEDIA_URL', AAM_BASE_URL . 'media/');
|
|
25 |
define('AAM_APPL_ENV', (getenv('APPL_ENV') ? getenv('APPL_ENV') : 'production'));
|
26 |
//Rest API
|
27 |
if (AAM_APPL_ENV === 'production') {
|
28 |
-
define('WPAAM_REST_API', 'http://wpaam.com
|
29 |
} else {
|
30 |
define('WPAAM_REST_API', 'http://wpaam.localhost/rest');
|
31 |
}
|
7 |
*/
|
8 |
|
9 |
//AAM Version for Update purpose
|
10 |
+
define('AAM_VERSION', '2.3');
|
11 |
|
12 |
define('AAM_BASE_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR);
|
13 |
|
25 |
define('AAM_APPL_ENV', (getenv('APPL_ENV') ? getenv('APPL_ENV') : 'production'));
|
26 |
//Rest API
|
27 |
if (AAM_APPL_ENV === 'production') {
|
28 |
+
define('WPAAM_REST_API', 'http://rest.wpaam.com');
|
29 |
} else {
|
30 |
define('WPAAM_REST_API', 'http://wpaam.localhost/rest');
|
31 |
}
|
docs/configpress.pdf
CHANGED
Binary file
|
extension/AAM_Activity_Log/extension.php
CHANGED
@@ -36,7 +36,7 @@ class AAM_Extension_ActivityLog {
|
|
36 |
$this->setParent($parent);
|
37 |
|
38 |
//include activity object
|
39 |
-
require_once(
|
40 |
|
41 |
if (is_admin()) {
|
42 |
add_action('admin_print_scripts', array($this, 'printScripts'));
|
36 |
$this->setParent($parent);
|
37 |
|
38 |
//include activity object
|
39 |
+
require_once(dirname(__FILE__) . '/activity.php');
|
40 |
|
41 |
if (is_admin()) {
|
42 |
add_action('admin_print_scripts', array($this, 'printScripts'));
|
lang/aam-fa_IR.mo
ADDED
Binary file
|
lang/aam-fa_IR.po
ADDED
@@ -0,0 +1,606 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: AAM\n"
|
4 |
+
"POT-Creation-Date: 2014-02-20 08:00+0330\n"
|
5 |
+
"PO-Revision-Date: 2014-02-20 09:05+0330\n"
|
6 |
+
"Last-Translator: Ghaem Omidi <ghaemomidi@yahoo.com>\n"
|
7 |
+
"Language-Team: WP-Parsi <ghaemomidi@yahoo.com>\n"
|
8 |
+
"Language: fa_IR\n"
|
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.5.7\n"
|
13 |
+
"Plural-Forms: nplurals=1; plural=0;\n"
|
14 |
+
"X-Poedit-KeywordsList: __;_e;_x;_n\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
|
17 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:380
|
18 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:387
|
19 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:414
|
20 |
+
msgid "Access denied"
|
21 |
+
msgstr "امکان دسترسی وجود ندارد."
|
22 |
+
|
23 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:873
|
24 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:874
|
25 |
+
msgid "AAM"
|
26 |
+
msgstr "افزونه مدیریت دسترسی پیشرفته"
|
27 |
+
|
28 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:883
|
29 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:884
|
30 |
+
msgid "Access Control"
|
31 |
+
msgstr "کنترل دسترسی"
|
32 |
+
|
33 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:891
|
34 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:892
|
35 |
+
msgid "ConfigPress"
|
36 |
+
msgstr "پیکربندی"
|
37 |
+
|
38 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:899
|
39 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/aam.php:900
|
40 |
+
msgid "Extensions"
|
41 |
+
msgstr "افزودنی ها"
|
42 |
+
|
43 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/config.php:61
|
44 |
+
msgid "Failed to create wp-content/aam folder"
|
45 |
+
msgstr "ایجاد پوشه wp-content/aam انجام نشد."
|
46 |
+
|
47 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/config.php:64
|
48 |
+
msgid "Folder wp-content/aam is not writable"
|
49 |
+
msgstr "پوشه wp-content/aam قابل نوشتن نیست."
|
50 |
+
|
51 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:100
|
52 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:204
|
53 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:100
|
54 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:204
|
55 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:100
|
56 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:204
|
57 |
+
msgid "System"
|
58 |
+
msgstr "سیستم"
|
59 |
+
|
60 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:101
|
61 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:206
|
62 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:101
|
63 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:206
|
64 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:101
|
65 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:206
|
66 |
+
msgid "Post & Page"
|
67 |
+
msgstr "نوشته و برگه"
|
68 |
+
|
69 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:102
|
70 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:208
|
71 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:102
|
72 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:208
|
73 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:102
|
74 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:208
|
75 |
+
msgid "Backend Interface"
|
76 |
+
msgstr "رابط بخش مدیریت"
|
77 |
+
|
78 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:103
|
79 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/capability.php:210
|
80 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:103
|
81 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/capability.php:210
|
82 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:103
|
83 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/capability.php:210
|
84 |
+
msgid "Miscellaneous"
|
85 |
+
msgstr "متفرقه"
|
86 |
+
|
87 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/extension.php:99
|
88 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/extension.php:99
|
89 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/extension.php:99
|
90 |
+
msgid "Folder advanced-access-manager/extension is not writable"
|
91 |
+
msgstr "پوشه advanced-access-manager/extension قابل نوشتن نیست."
|
92 |
+
|
93 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:59
|
94 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:59
|
95 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:59
|
96 |
+
msgid "Roles"
|
97 |
+
msgstr "قوانین"
|
98 |
+
|
99 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:60
|
100 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:60
|
101 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:60
|
102 |
+
msgid "Role Manager"
|
103 |
+
msgstr "مدیریت قانون"
|
104 |
+
|
105 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:68
|
106 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:68
|
107 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:68
|
108 |
+
msgid "Users"
|
109 |
+
msgstr "کاربران"
|
110 |
+
|
111 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:69
|
112 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:69
|
113 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:69
|
114 |
+
msgid "User Manager"
|
115 |
+
msgstr "مدیریت کاربر"
|
116 |
+
|
117 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:77
|
118 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:77
|
119 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:77
|
120 |
+
msgid "Visitor"
|
121 |
+
msgstr "بازدیدکنندگان"
|
122 |
+
|
123 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:78
|
124 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:78
|
125 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:78
|
126 |
+
msgid "Visitor Manager"
|
127 |
+
msgstr "مدیریت بازدیدکنندگان"
|
128 |
+
|
129 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:95
|
130 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:95
|
131 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:95
|
132 |
+
msgid "Admin Menu"
|
133 |
+
msgstr "منوی مدیریت"
|
134 |
+
|
135 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:98
|
136 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:98
|
137 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:98
|
138 |
+
msgid ""
|
139 |
+
"Control Access to Admin Menu. Restrict access to entire Menu or Submenu. "
|
140 |
+
"<b>Notice</b>, the menu is rendered based on Role's or User's capabilities."
|
141 |
+
msgstr ""
|
142 |
+
"<b>کنترل دسترسی به منوی مدیریت. محدود کردن دسترسی به منو یا زیر منو. توجه، "
|
143 |
+
"منو بر اساس قابلیت های کاربران یا قوانین ارائه شده است.</b>"
|
144 |
+
|
145 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:103
|
146 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:103
|
147 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:103
|
148 |
+
msgid "Metabox & Widget"
|
149 |
+
msgstr "متاباکس و ابزارک"
|
150 |
+
|
151 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:106
|
152 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:106
|
153 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:106
|
154 |
+
msgid ""
|
155 |
+
"Filter the list of Metaboxes or Widgets for selected Role or User. If "
|
156 |
+
"metabox or widget is not listed, try to click <b>Refresh the List</b> button "
|
157 |
+
"or Copy & Paste direct link to page where specific metabox or widget is "
|
158 |
+
"shown and hit <b>Retrieve Metaboxes from Link</b> button."
|
159 |
+
msgstr ""
|
160 |
+
"<b>فیلترکردن متاباکس ها یا ابزارک ها برای قانون یا کاربر انتخاب شده. اگر "
|
161 |
+
"متاباکس یا ابزارک فهرست نشده است، روی ((تازه کردن فهرست)) کلیک کنید یا لینک "
|
162 |
+
"مستقیم را کپی کنید و قرار دهید.</b>"
|
163 |
+
|
164 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:111
|
165 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:111
|
166 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:111
|
167 |
+
msgid "Capability"
|
168 |
+
msgstr "قابلیت"
|
169 |
+
|
170 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:114
|
171 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:114
|
172 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:114
|
173 |
+
msgid ""
|
174 |
+
"Manage the list of Capabilities for selected User or Role. <b>Notice</b>, "
|
175 |
+
"list of user's capabilities are inherited from user's Role.<br/><b>Warning!</"
|
176 |
+
"b> Be very careful with capabilities. Deleting or unchecking any capability "
|
177 |
+
"may cause temporary or permanent constrol lost over some features or "
|
178 |
+
"WordPress dashboard."
|
179 |
+
msgstr ""
|
180 |
+
"مدیریت فهرست قابلیت ها برای کاربر یا قانون انتخاب شده. <b>توجه</b>، با "
|
181 |
+
"قابلیت ها خیلی با دقت باشید. پاک کردن یا برداشتن هر قابلیتی ممکن است باعث "
|
182 |
+
"شوذ کنترل موقت یا دائم برخی از ویژگی ها یا پیشخوان وردپرس را از دست داد."
|
183 |
+
|
184 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:119
|
185 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:119
|
186 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:119
|
187 |
+
msgid "Posts & Pages"
|
188 |
+
msgstr "نوشته ها و برگه ها"
|
189 |
+
|
190 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:122
|
191 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:122
|
192 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:122
|
193 |
+
msgid ""
|
194 |
+
"Manage access to individual <b>Post</b> or <b>Term</b>. Notice, under "
|
195 |
+
"<b>Post</b>, we assume any post, page or custom post type. And under "
|
196 |
+
"<b>Term</b> - any term like Post Categories."
|
197 |
+
msgstr ""
|
198 |
+
"<b>مدیریت دسترسی یه نوشته یا دوره فردی. توجه، ما فرض می کنیم هر نوشته، برگه "
|
199 |
+
"یا پست تایپ دلخواه بر اساس نوشته است. و هر دوره ای شبیه دسته های نوشته بر "
|
200 |
+
"اساس دوره است.</b>"
|
201 |
+
|
202 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:127
|
203 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:127
|
204 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:127
|
205 |
+
msgid "Event Manager"
|
206 |
+
msgstr "مدیریت رویداد"
|
207 |
+
|
208 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:130
|
209 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:130
|
210 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:130
|
211 |
+
msgid ""
|
212 |
+
"Define your own action when some event appeared in your WordPress blog. This "
|
213 |
+
"sections allows you to trigger an action on event like post content change, "
|
214 |
+
"or page status update. You can setup to send email notification, change the "
|
215 |
+
"post status or write your own custom event handler."
|
216 |
+
msgstr ""
|
217 |
+
"<b>هنگامی که تعدادی رویداد در سایت وردپرسی شما ظاهر می شوند عمل خود را تعریف "
|
218 |
+
"کنید. این بخش ها به شما اجازه می دهند تا باعث یک عمل در رویداد شبیه تغییر "
|
219 |
+
"محتوای نوشته یا بروزرسانی وضعیت برگه شوید. شما می توانید تنظیم کنید تا تغییر "
|
220 |
+
"وضعیت نوشته یا نوشتن یک رویداد دلخواه به عنوان یک اطلاعیه به ایمیل شما ارسال "
|
221 |
+
"شوند.</b>"
|
222 |
+
|
223 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:331
|
224 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:331
|
225 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:331
|
226 |
+
msgid "Rollback Settings"
|
227 |
+
msgstr "تنظیمات عقبگرد"
|
228 |
+
|
229 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:332
|
230 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:332
|
231 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:332
|
232 |
+
msgid "Cancel"
|
233 |
+
msgstr "لغو"
|
234 |
+
|
235 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:333
|
236 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:333
|
237 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:333
|
238 |
+
msgid "Send E-mail"
|
239 |
+
msgstr "ارسال ایمیل"
|
240 |
+
|
241 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:334
|
242 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:340
|
243 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:334
|
244 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:340
|
245 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:334
|
246 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:340
|
247 |
+
msgid "Add New Role"
|
248 |
+
msgstr "افزودن قانون جدید"
|
249 |
+
|
250 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:335
|
251 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:335
|
252 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:335
|
253 |
+
msgid "Manage"
|
254 |
+
msgstr "مدیریت"
|
255 |
+
|
256 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:336
|
257 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:336
|
258 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:336
|
259 |
+
msgid "Edit"
|
260 |
+
msgstr "ویرایش"
|
261 |
+
|
262 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:337
|
263 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:337
|
264 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:337
|
265 |
+
msgid "Delete"
|
266 |
+
msgstr "پاک کردن"
|
267 |
+
|
268 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:338
|
269 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:338
|
270 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:338
|
271 |
+
msgid "Filtered"
|
272 |
+
msgstr "فیلترشده"
|
273 |
+
|
274 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:339
|
275 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:339
|
276 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:339
|
277 |
+
msgid "Clear"
|
278 |
+
msgstr "پاک کردن"
|
279 |
+
|
280 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:341
|
281 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:341
|
282 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:341
|
283 |
+
msgid "Save Changes"
|
284 |
+
msgstr "ذخیره ی تغییرات"
|
285 |
+
|
286 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:342
|
287 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:342
|
288 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:342
|
289 |
+
#, php-format
|
290 |
+
msgid ""
|
291 |
+
"System detected %d user(s) with this role. All Users with Role <b>%s</b> "
|
292 |
+
"will be deleted automatically!"
|
293 |
+
msgstr ""
|
294 |
+
"سیستم %d کاربر را با این قانون شناسایی کرده است. همه کاربران با قانون <b>%s</"
|
295 |
+
"b> به طور خودکار پاک خواهند شد."
|
296 |
+
|
297 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:343
|
298 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:343
|
299 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:343
|
300 |
+
#, php-format
|
301 |
+
msgid "Are you sure that you want to delete role <b>%s</b>?"
|
302 |
+
msgstr "آیا شما مطمئنید که می خواهید قانون <b>%s</b> را پاک کنید؟"
|
303 |
+
|
304 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:344
|
305 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:344
|
306 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:344
|
307 |
+
msgid "Delete Role"
|
308 |
+
msgstr "پاک کردن قانون"
|
309 |
+
|
310 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:345
|
311 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:345
|
312 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:345
|
313 |
+
msgid "Add User"
|
314 |
+
msgstr "افزودن کاربر"
|
315 |
+
|
316 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:346
|
317 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:346
|
318 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:346
|
319 |
+
msgid "Filter Users"
|
320 |
+
msgstr "فیلتر کاربران"
|
321 |
+
|
322 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:347
|
323 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:363
|
324 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:347
|
325 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:363
|
326 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:347
|
327 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:363
|
328 |
+
msgid "Refresh List"
|
329 |
+
msgstr "تازه کردن فهرست"
|
330 |
+
|
331 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:348
|
332 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:348
|
333 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:348
|
334 |
+
msgid "Block"
|
335 |
+
msgstr "مسدود کردن"
|
336 |
+
|
337 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:349
|
338 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:349
|
339 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:349
|
340 |
+
#, php-format
|
341 |
+
msgid "Are you sure you want to delete user <b>%s</b>?"
|
342 |
+
msgstr "آیا شما مطمئنید که می خواهید <b>%s</b> را پاک کنید؟"
|
343 |
+
|
344 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:350
|
345 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:350
|
346 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:350
|
347 |
+
msgid "Filter Capabilities by Category"
|
348 |
+
msgstr "فیلترکردن قابلیت ها بر اساس دسته"
|
349 |
+
|
350 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:351
|
351 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:351
|
352 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:351
|
353 |
+
msgid "Inherit Capabilities"
|
354 |
+
msgstr "به ارث بردن قابلیت ها"
|
355 |
+
|
356 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:352
|
357 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:352
|
358 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:352
|
359 |
+
msgid "Add New Capability"
|
360 |
+
msgstr "افزودن قابلیت جدید"
|
361 |
+
|
362 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:353
|
363 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:353
|
364 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:353
|
365 |
+
#, php-format
|
366 |
+
msgid "Are you sure that you want to delete capability <b>%s</b>?"
|
367 |
+
msgstr "آیا شما مطمئنید که می خواهید قابلیت <b>%s</b> را پاک کنید؟"
|
368 |
+
|
369 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:354
|
370 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:354
|
371 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:354
|
372 |
+
msgid "Delete Capability"
|
373 |
+
msgstr "پاک کردن قابلیت"
|
374 |
+
|
375 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:355
|
376 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:355
|
377 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:355
|
378 |
+
msgid "Select Role"
|
379 |
+
msgstr "انتخاب قانون"
|
380 |
+
|
381 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:356
|
382 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:356
|
383 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:356
|
384 |
+
msgid "Add Capability"
|
385 |
+
msgstr "افزودن قابلیت"
|
386 |
+
|
387 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:357
|
388 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:357
|
389 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:357
|
390 |
+
msgid "Add Event"
|
391 |
+
msgstr "افزودن رویداد"
|
392 |
+
|
393 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:358
|
394 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:358
|
395 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:358
|
396 |
+
msgid "Edit Event"
|
397 |
+
msgstr "ویرایش رویداد"
|
398 |
+
|
399 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:359
|
400 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:361
|
401 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:359
|
402 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:361
|
403 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:359
|
404 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:361
|
405 |
+
msgid "Delete Event"
|
406 |
+
msgstr "پاک کردن رویداد"
|
407 |
+
|
408 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:360
|
409 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:360
|
410 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:360
|
411 |
+
msgid "Save Event"
|
412 |
+
msgstr "ذخیره رویداد"
|
413 |
+
|
414 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:362
|
415 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:362
|
416 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:362
|
417 |
+
msgid "Filter Posts by Post Type"
|
418 |
+
msgstr "فیلتر کردن نوشته ها بر اساس پست تایپ"
|
419 |
+
|
420 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:364
|
421 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:364
|
422 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:364
|
423 |
+
msgid "Restore Default"
|
424 |
+
msgstr "بازگردانی به پیش فرض"
|
425 |
+
|
426 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:365
|
427 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:365
|
428 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:365
|
429 |
+
msgid "Apply"
|
430 |
+
msgstr "اعمال کردن"
|
431 |
+
|
432 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:366
|
433 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:366
|
434 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:366
|
435 |
+
msgid "Edit Term"
|
436 |
+
msgstr "ویرایش دوره"
|
437 |
+
|
438 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:367
|
439 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:367
|
440 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:367
|
441 |
+
msgid "Manager Access"
|
442 |
+
msgstr "دسترسی مدیریت"
|
443 |
+
|
444 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:368
|
445 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:368
|
446 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:368
|
447 |
+
msgid "Unlock Default Accesss Control"
|
448 |
+
msgstr "بازکردن کنترل دسترسی پیش فرض"
|
449 |
+
|
450 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:369
|
451 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:369
|
452 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:369
|
453 |
+
msgid "Close"
|
454 |
+
msgstr "بستن"
|
455 |
+
|
456 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:370
|
457 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:370
|
458 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:370
|
459 |
+
msgid "Edit Role"
|
460 |
+
msgstr "ویرایش قانون"
|
461 |
+
|
462 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:371
|
463 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:371
|
464 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:371
|
465 |
+
msgid "Restore Default Capabilities"
|
466 |
+
msgstr "بازگردانی قابلیت های پیش فرض"
|
467 |
+
|
468 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:372
|
469 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:372
|
470 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:372
|
471 |
+
#, php-format
|
472 |
+
msgid "Are you sure you want to delete <b>%s</b>?"
|
473 |
+
msgstr "آیا شما مطمئنید که می خواهید <b>%s</b> را پاک کنید؟"
|
474 |
+
|
475 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:373
|
476 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:373
|
477 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:373
|
478 |
+
#, php-format
|
479 |
+
msgid "Are you sure you want to move <b>%s</b> to trash?"
|
480 |
+
msgstr "آیا شما مطمئنید که می خواهید <b>%s</b> را به زباله دان انتقال دهید؟"
|
481 |
+
|
482 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:374
|
483 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:374
|
484 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:374
|
485 |
+
msgid "Delete Post"
|
486 |
+
msgstr "پاک کردن نوشته"
|
487 |
+
|
488 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:375
|
489 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:375
|
490 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:375
|
491 |
+
msgid "Delete Permanently"
|
492 |
+
msgstr "پاک کردن برای همیشه"
|
493 |
+
|
494 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:376
|
495 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:376
|
496 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:376
|
497 |
+
msgid "Trash Post"
|
498 |
+
msgstr "زباله دان نوشته"
|
499 |
+
|
500 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/manager.php:377
|
501 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/manager.php:377
|
502 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/manager.php:377
|
503 |
+
msgid "Restore Default Access"
|
504 |
+
msgstr "بازگردانی دسترسی پیش فرض"
|
505 |
+
|
506 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/metabox.php:190
|
507 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/metabox.php:190
|
508 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/metabox.php:190
|
509 |
+
msgid "Dashboard Widgets"
|
510 |
+
msgstr "ابزارک های پیشخوان"
|
511 |
+
|
512 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/metabox.php:194
|
513 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/metabox.php:194
|
514 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/metabox.php:194
|
515 |
+
msgid "Frontend Widgets"
|
516 |
+
msgstr "ابزارک های جلو"
|
517 |
+
|
518 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/post.php:213
|
519 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/post.php:213
|
520 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/post.php:213
|
521 |
+
msgid "[empty]"
|
522 |
+
msgstr "(خالی)"
|
523 |
+
|
524 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/post.php:396
|
525 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/application/view/post.php:404
|
526 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/post.php:396
|
527 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application/view/post.php:404
|
528 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/post.php:396
|
529 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\application\view/post.php:404
|
530 |
+
msgid "All"
|
531 |
+
msgstr "همه"
|
532 |
+
|
533 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/activity.php:98
|
534 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/activity.php:98
|
535 |
+
msgid "System Login"
|
536 |
+
msgstr "ورود به سیستم"
|
537 |
+
|
538 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/activity.php:102
|
539 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/activity.php:102
|
540 |
+
msgid "System Logout"
|
541 |
+
msgstr "خروج از سیستم"
|
542 |
+
|
543 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/activity.php:108
|
544 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/activity.php:108
|
545 |
+
msgid "Unknown Activity"
|
546 |
+
msgstr "فعالیت ناشناخته"
|
547 |
+
|
548 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/extension.php:112
|
549 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/extension.php:112
|
550 |
+
msgid "Activity Log"
|
551 |
+
msgstr "گزارش فعالیت"
|
552 |
+
|
553 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/extension.php:116
|
554 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/extension.php:116
|
555 |
+
msgid ""
|
556 |
+
"Tracks User Activities like user login/logout or post changes. Check <b>AAM "
|
557 |
+
"Activities</b> Extension to get advanced list of possible activities."
|
558 |
+
msgstr ""
|
559 |
+
"<b>ردیابی فعالیت های کاربر مانند ورود و خروج کاربر یا تغییرات کاربر. افزودنی "
|
560 |
+
"فعالیت های افزونه کنترل دسترسی پیشرفته را بررسی کنید تا فهرست پیشرفته از "
|
561 |
+
"فعالیت های ممکن را دریافت کنید.</b>"
|
562 |
+
|
563 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/extension.php:177
|
564 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/extension.php:177
|
565 |
+
msgid "Clear Logs"
|
566 |
+
msgstr "پاک کردن گزارش ها"
|
567 |
+
|
568 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Activity_Log/extension.php:178
|
569 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Activity_Log/extension.php:178
|
570 |
+
msgid "Get More"
|
571 |
+
msgstr "بیشتر"
|
572 |
+
|
573 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Multisite_Support/extension.php:125
|
574 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Multisite_Support/extension.php:125
|
575 |
+
msgid "Sites"
|
576 |
+
msgstr "سایت ها"
|
577 |
+
|
578 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Multisite_Support/extension.php:126
|
579 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Multisite_Support/extension.php:126
|
580 |
+
msgid "Site Manager"
|
581 |
+
msgstr "مدیریت سایت"
|
582 |
+
|
583 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Multisite_Support/extension.php:189
|
584 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Multisite_Support/extension.php:189
|
585 |
+
msgid "Set Default"
|
586 |
+
msgstr "تنظیم پیش فرض"
|
587 |
+
|
588 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Multisite_Support/extension.php:190
|
589 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Multisite_Support/extension.php:190
|
590 |
+
msgid "Unset Default"
|
591 |
+
msgstr "تنظیم نکردن پیش فرض"
|
592 |
+
|
593 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_Multisite_Support/extension.php:191
|
594 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_Multisite_Support/extension.php:191
|
595 |
+
msgid "Set as Default"
|
596 |
+
msgstr "تنظیم به عنوان پیش فرض"
|
597 |
+
|
598 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_My_Feature/extension.php:50
|
599 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_My_Feature/extension.php:50
|
600 |
+
msgid "My Feature"
|
601 |
+
msgstr "ویژگی من"
|
602 |
+
|
603 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager/extension/AAM_My_Feature/extension.php:53
|
604 |
+
#: C:\Users\Ghaem\Desktop\advanced-access-manager\extension\AAM_My_Feature/extension.php:53
|
605 |
+
msgid "My customly developed feature"
|
606 |
+
msgstr "<b>ویژگی دلخواه توسعه یافته من</b>"
|
lang/aam-pl_PL.mo
CHANGED
Binary file
|
lang/aam-pl_PL.po
CHANGED
@@ -1,54 +1,68 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version: AAM v2.
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date: 2014-
|
6 |
"Last-Translator: Gustaw Lasek <biuro@servitium.pl>\n"
|
7 |
"Language-Team: Servitium <biuro@servitium.pl>\n"
|
|
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
"X-Generator: Poedit 1.5.7\n"
|
12 |
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
13 |
"|| n%100>=20) ? 1 : 2);\n"
|
14 |
-
"Language: pl_PL\n"
|
15 |
|
16 |
-
#: aam.php:
|
17 |
msgid "Access denied"
|
18 |
msgstr "Brak dostępu"
|
19 |
|
20 |
-
#: aam.php:
|
21 |
msgid "AAM"
|
22 |
msgstr "AAM"
|
23 |
|
24 |
-
#: aam.php:
|
25 |
msgid "Access Control"
|
26 |
msgstr "Kontrola dostępu"
|
27 |
|
28 |
-
#: aam.php:
|
29 |
msgid "Extensions"
|
30 |
msgstr "Rozszerzenia"
|
31 |
|
32 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
msgid "System"
|
34 |
msgstr "System"
|
35 |
|
36 |
-
#: application/view/capability.php:
|
37 |
msgid "Post & Page"
|
38 |
msgstr "Wpisy i Strony"
|
39 |
|
40 |
-
#: application/view/capability.php:
|
41 |
msgid "Backend Interface"
|
42 |
msgstr "Interfejs panelu zarządzania"
|
43 |
|
44 |
-
#: application/view/capability.php:
|
45 |
msgid "Miscellaneous"
|
46 |
msgstr "Pozostałe"
|
47 |
|
48 |
-
#: application/view/capability.php:185
|
49 |
-
msgid "Miscelaneous"
|
50 |
-
msgstr "Pozostałe"
|
51 |
-
|
52 |
#: application/view/manager.php:59
|
53 |
msgid "Roles"
|
54 |
msgstr "Role"
|
@@ -163,47 +177,47 @@ msgstr ""
|
|
163 |
"Konfiguruj <b>AAM</b> przez ConfigPress. Aby uzyskać więcej informacji "
|
164 |
"zapoznaj się <b>poradnikiem ConfigPress</b>."
|
165 |
|
166 |
-
#: application/view/manager.php:
|
167 |
msgid "Rollback Settings"
|
168 |
msgstr "Wycofaj ustawienia"
|
169 |
|
170 |
-
#: application/view/manager.php:
|
171 |
msgid "Cancel"
|
172 |
msgstr "Anuluj"
|
173 |
|
174 |
-
#: application/view/manager.php:
|
175 |
msgid "Send E-mail"
|
176 |
msgstr "Wyślij E-mail"
|
177 |
|
178 |
-
#: application/view/manager.php:
|
179 |
msgid "Add New Role"
|
180 |
msgstr "Dodaj nową rolę"
|
181 |
|
182 |
-
#: application/view/manager.php:
|
183 |
msgid "Manage"
|
184 |
msgstr "Zarządzaj/Edytuj"
|
185 |
|
186 |
-
#: application/view/manager.php:
|
187 |
msgid "Edit"
|
188 |
msgstr "Edytuj"
|
189 |
|
190 |
-
#: application/view/manager.php:
|
191 |
msgid "Delete"
|
192 |
msgstr "Usuń"
|
193 |
|
194 |
-
#: application/view/manager.php:
|
195 |
msgid "Filtered"
|
196 |
msgstr "Przefiltrowane"
|
197 |
|
198 |
-
#: application/view/manager.php:
|
199 |
msgid "Clear"
|
200 |
msgstr "Wyczyść"
|
201 |
|
202 |
-
#: application/view/manager.php:
|
203 |
msgid "Save Changes"
|
204 |
msgstr "Zapisz zmiany"
|
205 |
|
206 |
-
#: application/view/manager.php:
|
207 |
#, php-format
|
208 |
msgid ""
|
209 |
"System detected %d user(s) with this role. All Users with Role <b>%s</b> "
|
@@ -212,118 +226,122 @@ msgstr ""
|
|
212 |
"System wykrył użytkownika/ów z tej roli. Wszyscy użytkownicy z tą rolą "
|
213 |
"zostaną usunięci!"
|
214 |
|
215 |
-
#: application/view/manager.php:
|
216 |
#, php-format
|
217 |
msgid "Are you sure that you want to delete role <b>%s</b>?"
|
218 |
msgstr "Czy na pewno chcesz usunąć rolę/e?"
|
219 |
|
220 |
-
#: application/view/manager.php:
|
221 |
msgid "Delete Role"
|
222 |
msgstr "Usuń rolę"
|
223 |
|
224 |
-
#: application/view/manager.php:
|
225 |
msgid "Add User"
|
226 |
msgstr "Dodaj użytkownika"
|
227 |
|
228 |
-
#: application/view/manager.php:
|
229 |
msgid "Filter Users"
|
230 |
msgstr "FIltruj uzytkowników"
|
231 |
|
232 |
-
#: application/view/manager.php:
|
233 |
msgid "Refresh List"
|
234 |
msgstr "Odśwież listę"
|
235 |
|
236 |
-
#: application/view/manager.php:
|
237 |
msgid "Block"
|
238 |
msgstr "Zablokuj"
|
239 |
|
240 |
-
#: application/view/manager.php:
|
241 |
#, php-format
|
242 |
msgid "Are you sure you want to delete user <b>%s</b>?"
|
243 |
msgstr "Czy na pewno chcesz usunąć użytkownika/ów?"
|
244 |
|
245 |
-
#: application/view/manager.php:
|
246 |
msgid "Filter Capabilities by Category"
|
247 |
msgstr "Filtruj prawa wg kategorii"
|
248 |
|
249 |
-
#: application/view/manager.php:
|
250 |
msgid "Inherit Capabilities"
|
251 |
msgstr "Dziedzicz prawa"
|
252 |
|
253 |
-
#: application/view/manager.php:
|
254 |
msgid "Add New Capability"
|
255 |
msgstr "Dodaj nowe prawo"
|
256 |
|
257 |
-
#: application/view/manager.php:
|
258 |
#, php-format
|
259 |
msgid "Are you sure that you want to delete capability <b>%s</b>?"
|
260 |
msgstr "Czy na pewno chcesz usunąć pozycję/e?"
|
261 |
|
262 |
-
#: application/view/manager.php:
|
263 |
msgid "Delete Capability"
|
264 |
msgstr "Usuń pozycję"
|
265 |
|
266 |
-
#: application/view/manager.php:
|
267 |
msgid "Select Role"
|
268 |
msgstr "Wybierz rolę"
|
269 |
|
270 |
-
#: application/view/manager.php:
|
271 |
msgid "Add Capability"
|
272 |
msgstr "Dodaj pozycję"
|
273 |
|
274 |
-
#: application/view/manager.php:
|
275 |
msgid "Add Event"
|
276 |
msgstr "Dodaj regułę"
|
277 |
|
278 |
-
#: application/view/manager.php:
|
279 |
msgid "Edit Event"
|
280 |
msgstr "Edytuj regułę"
|
281 |
|
282 |
-
#: application/view/manager.php:
|
283 |
msgid "Delete Event"
|
284 |
msgstr "Usuń regułę"
|
285 |
|
286 |
-
#: application/view/manager.php:
|
287 |
msgid "Save Event"
|
288 |
msgstr "Zapisz regułę"
|
289 |
|
290 |
-
#: application/view/manager.php:
|
291 |
msgid "Filter Posts by Post Type"
|
292 |
msgstr "Filtruj wpisy typy wpisów"
|
293 |
|
294 |
-
#: application/view/manager.php:
|
295 |
msgid "Restore Default"
|
296 |
msgstr "Przywróć domyślne"
|
297 |
|
298 |
-
#: application/view/manager.php:
|
299 |
msgid "Apply"
|
300 |
msgstr "Zastosuj"
|
301 |
|
302 |
-
#: application/view/manager.php:
|
303 |
msgid "Edit Term"
|
304 |
msgstr "Edytuj termin"
|
305 |
|
306 |
-
#: application/view/manager.php:
|
307 |
msgid "Manager Access"
|
308 |
msgstr "Menadżer dostępu"
|
309 |
|
310 |
-
#: application/view/manager.php:
|
311 |
msgid "Unlock Default Accesss Control"
|
312 |
msgstr "Odblokuj domyślną kontrolę dostępu"
|
313 |
|
314 |
-
#: application/view/manager.php:
|
315 |
msgid "Close"
|
316 |
msgstr "Zamknij"
|
317 |
|
318 |
-
#: application/view/manager.php:
|
319 |
msgid "Edit Role"
|
320 |
msgstr "Edytuj rolę"
|
321 |
|
322 |
-
#: application/view/
|
|
|
|
|
|
|
|
|
323 |
msgid "Dashboard Widgets"
|
324 |
msgstr "Widżety panelu"
|
325 |
|
326 |
-
#: application/view/metabox.php:
|
327 |
msgid "Frontend Widgets"
|
328 |
msgstr "Widżety strony"
|
329 |
|
@@ -334,3 +352,34 @@ msgstr "[puste]"
|
|
334 |
#: application/view/post.php:345 application/view/post.php:353
|
335 |
msgid "All"
|
336 |
msgstr "Wszystkie"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: AAM v2.2.2\n"
|
4 |
+
"POT-Creation-Date: 2014-01-23 20:56-0500\n"
|
5 |
+
"PO-Revision-Date: 2014-02-06 21:37+0100\n"
|
6 |
"Last-Translator: Gustaw Lasek <biuro@servitium.pl>\n"
|
7 |
"Language-Team: Servitium <biuro@servitium.pl>\n"
|
8 |
+
"Language: pl_PL\n"
|
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.5.7\n"
|
13 |
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
14 |
"|| n%100>=20) ? 1 : 2);\n"
|
|
|
15 |
|
16 |
+
#: aam.php:346 aam.php:351 aam.php:379
|
17 |
msgid "Access denied"
|
18 |
msgstr "Brak dostępu"
|
19 |
|
20 |
+
#: aam.php:833 aam.php:834
|
21 |
msgid "AAM"
|
22 |
msgstr "AAM"
|
23 |
|
24 |
+
#: aam.php:843 aam.php:844
|
25 |
msgid "Access Control"
|
26 |
msgstr "Kontrola dostępu"
|
27 |
|
28 |
+
#: aam.php:851 aam.php:852
|
29 |
msgid "Extensions"
|
30 |
msgstr "Rozszerzenia"
|
31 |
|
32 |
+
#: config.php:58
|
33 |
+
msgid "<b>wp-content</b> folder is not writable or does not exists. "
|
34 |
+
msgstr "<b>wp-content</b> folder nie ma uparwnień do zapisu lub nie istnieje."
|
35 |
+
|
36 |
+
#: config.php:60
|
37 |
+
msgid "Read more."
|
38 |
+
msgstr "Czytaj więcej."
|
39 |
+
|
40 |
+
#: config.php:85
|
41 |
+
msgid "Migrate your old AAM settings to the new AAM platform. "
|
42 |
+
msgstr ""
|
43 |
+
"Migracja ustawień ze starych wersji AAM (do v1.9.1) do nowej wersji wtyczki "
|
44 |
+
"AAM."
|
45 |
+
|
46 |
+
#: config.php:86
|
47 |
+
msgid "Click to Migrate"
|
48 |
+
msgstr "Kliknij by migrować"
|
49 |
+
|
50 |
+
#: application/view/capability.php:100 application/view/capability.php:199
|
51 |
msgid "System"
|
52 |
msgstr "System"
|
53 |
|
54 |
+
#: application/view/capability.php:101 application/view/capability.php:201
|
55 |
msgid "Post & Page"
|
56 |
msgstr "Wpisy i Strony"
|
57 |
|
58 |
+
#: application/view/capability.php:102 application/view/capability.php:203
|
59 |
msgid "Backend Interface"
|
60 |
msgstr "Interfejs panelu zarządzania"
|
61 |
|
62 |
+
#: application/view/capability.php:103 application/view/capability.php:205
|
63 |
msgid "Miscellaneous"
|
64 |
msgstr "Pozostałe"
|
65 |
|
|
|
|
|
|
|
|
|
66 |
#: application/view/manager.php:59
|
67 |
msgid "Roles"
|
68 |
msgstr "Role"
|
177 |
"Konfiguruj <b>AAM</b> przez ConfigPress. Aby uzyskać więcej informacji "
|
178 |
"zapoznaj się <b>poradnikiem ConfigPress</b>."
|
179 |
|
180 |
+
#: application/view/manager.php:339
|
181 |
msgid "Rollback Settings"
|
182 |
msgstr "Wycofaj ustawienia"
|
183 |
|
184 |
+
#: application/view/manager.php:340
|
185 |
msgid "Cancel"
|
186 |
msgstr "Anuluj"
|
187 |
|
188 |
+
#: application/view/manager.php:341
|
189 |
msgid "Send E-mail"
|
190 |
msgstr "Wyślij E-mail"
|
191 |
|
192 |
+
#: application/view/manager.php:342 application/view/manager.php:348
|
193 |
msgid "Add New Role"
|
194 |
msgstr "Dodaj nową rolę"
|
195 |
|
196 |
+
#: application/view/manager.php:343
|
197 |
msgid "Manage"
|
198 |
msgstr "Zarządzaj/Edytuj"
|
199 |
|
200 |
+
#: application/view/manager.php:344
|
201 |
msgid "Edit"
|
202 |
msgstr "Edytuj"
|
203 |
|
204 |
+
#: application/view/manager.php:345
|
205 |
msgid "Delete"
|
206 |
msgstr "Usuń"
|
207 |
|
208 |
+
#: application/view/manager.php:346
|
209 |
msgid "Filtered"
|
210 |
msgstr "Przefiltrowane"
|
211 |
|
212 |
+
#: application/view/manager.php:347
|
213 |
msgid "Clear"
|
214 |
msgstr "Wyczyść"
|
215 |
|
216 |
+
#: application/view/manager.php:349
|
217 |
msgid "Save Changes"
|
218 |
msgstr "Zapisz zmiany"
|
219 |
|
220 |
+
#: application/view/manager.php:350
|
221 |
#, php-format
|
222 |
msgid ""
|
223 |
"System detected %d user(s) with this role. All Users with Role <b>%s</b> "
|
226 |
"System wykrył użytkownika/ów z tej roli. Wszyscy użytkownicy z tą rolą "
|
227 |
"zostaną usunięci!"
|
228 |
|
229 |
+
#: application/view/manager.php:351
|
230 |
#, php-format
|
231 |
msgid "Are you sure that you want to delete role <b>%s</b>?"
|
232 |
msgstr "Czy na pewno chcesz usunąć rolę/e?"
|
233 |
|
234 |
+
#: application/view/manager.php:352
|
235 |
msgid "Delete Role"
|
236 |
msgstr "Usuń rolę"
|
237 |
|
238 |
+
#: application/view/manager.php:353
|
239 |
msgid "Add User"
|
240 |
msgstr "Dodaj użytkownika"
|
241 |
|
242 |
+
#: application/view/manager.php:354
|
243 |
msgid "Filter Users"
|
244 |
msgstr "FIltruj uzytkowników"
|
245 |
|
246 |
+
#: application/view/manager.php:355 application/view/manager.php:371
|
247 |
msgid "Refresh List"
|
248 |
msgstr "Odśwież listę"
|
249 |
|
250 |
+
#: application/view/manager.php:356
|
251 |
msgid "Block"
|
252 |
msgstr "Zablokuj"
|
253 |
|
254 |
+
#: application/view/manager.php:357
|
255 |
#, php-format
|
256 |
msgid "Are you sure you want to delete user <b>%s</b>?"
|
257 |
msgstr "Czy na pewno chcesz usunąć użytkownika/ów?"
|
258 |
|
259 |
+
#: application/view/manager.php:358
|
260 |
msgid "Filter Capabilities by Category"
|
261 |
msgstr "Filtruj prawa wg kategorii"
|
262 |
|
263 |
+
#: application/view/manager.php:359
|
264 |
msgid "Inherit Capabilities"
|
265 |
msgstr "Dziedzicz prawa"
|
266 |
|
267 |
+
#: application/view/manager.php:360
|
268 |
msgid "Add New Capability"
|
269 |
msgstr "Dodaj nowe prawo"
|
270 |
|
271 |
+
#: application/view/manager.php:361
|
272 |
#, php-format
|
273 |
msgid "Are you sure that you want to delete capability <b>%s</b>?"
|
274 |
msgstr "Czy na pewno chcesz usunąć pozycję/e?"
|
275 |
|
276 |
+
#: application/view/manager.php:362
|
277 |
msgid "Delete Capability"
|
278 |
msgstr "Usuń pozycję"
|
279 |
|
280 |
+
#: application/view/manager.php:363
|
281 |
msgid "Select Role"
|
282 |
msgstr "Wybierz rolę"
|
283 |
|
284 |
+
#: application/view/manager.php:364
|
285 |
msgid "Add Capability"
|
286 |
msgstr "Dodaj pozycję"
|
287 |
|
288 |
+
#: application/view/manager.php:365
|
289 |
msgid "Add Event"
|
290 |
msgstr "Dodaj regułę"
|
291 |
|
292 |
+
#: application/view/manager.php:366
|
293 |
msgid "Edit Event"
|
294 |
msgstr "Edytuj regułę"
|
295 |
|
296 |
+
#: application/view/manager.php:367 application/view/manager.php:369
|
297 |
msgid "Delete Event"
|
298 |
msgstr "Usuń regułę"
|
299 |
|
300 |
+
#: application/view/manager.php:368
|
301 |
msgid "Save Event"
|
302 |
msgstr "Zapisz regułę"
|
303 |
|
304 |
+
#: application/view/manager.php:370
|
305 |
msgid "Filter Posts by Post Type"
|
306 |
msgstr "Filtruj wpisy typy wpisów"
|
307 |
|
308 |
+
#: application/view/manager.php:372
|
309 |
msgid "Restore Default"
|
310 |
msgstr "Przywróć domyślne"
|
311 |
|
312 |
+
#: application/view/manager.php:373
|
313 |
msgid "Apply"
|
314 |
msgstr "Zastosuj"
|
315 |
|
316 |
+
#: application/view/manager.php:374
|
317 |
msgid "Edit Term"
|
318 |
msgstr "Edytuj termin"
|
319 |
|
320 |
+
#: application/view/manager.php:375
|
321 |
msgid "Manager Access"
|
322 |
msgstr "Menadżer dostępu"
|
323 |
|
324 |
+
#: application/view/manager.php:376
|
325 |
msgid "Unlock Default Accesss Control"
|
326 |
msgstr "Odblokuj domyślną kontrolę dostępu"
|
327 |
|
328 |
+
#: application/view/manager.php:377
|
329 |
msgid "Close"
|
330 |
msgstr "Zamknij"
|
331 |
|
332 |
+
#: application/view/manager.php:378
|
333 |
msgid "Edit Role"
|
334 |
msgstr "Edytuj rolę"
|
335 |
|
336 |
+
#: application/view/manager.php:379
|
337 |
+
msgid "Restore Default Capabilities"
|
338 |
+
msgstr "Przywróć domyślne"
|
339 |
+
|
340 |
+
#: application/view/metabox.php:185
|
341 |
msgid "Dashboard Widgets"
|
342 |
msgstr "Widżety panelu"
|
343 |
|
344 |
+
#: application/view/metabox.php:189
|
345 |
msgid "Frontend Widgets"
|
346 |
msgstr "Widżety strony"
|
347 |
|
352 |
#: application/view/post.php:345 application/view/post.php:353
|
353 |
msgid "All"
|
354 |
msgstr "Wszystkie"
|
355 |
+
|
356 |
+
#: extension/AAM_Multisite_Support/extension.php:125
|
357 |
+
msgid "Sites"
|
358 |
+
msgstr "Strony"
|
359 |
+
|
360 |
+
#: extension/AAM_Multisite_Support/extension.php:126
|
361 |
+
msgid "Site Manager"
|
362 |
+
msgstr "Zarządzanie stroną"
|
363 |
+
|
364 |
+
#: extension/AAM_Multisite_Support/extension.php:189
|
365 |
+
msgid "Set Default"
|
366 |
+
msgstr "Ustaw domyślne"
|
367 |
+
|
368 |
+
#: extension/AAM_Multisite_Support/extension.php:190
|
369 |
+
msgid "Unset Default"
|
370 |
+
msgstr "Odznacz domyślne"
|
371 |
+
|
372 |
+
#: extension/AAM_Multisite_Support/extension.php:191
|
373 |
+
msgid "Set as Default"
|
374 |
+
msgstr "Zaznacz jako domyślne"
|
375 |
+
|
376 |
+
#: extension/AAM_My_Feature/extension.php:50
|
377 |
+
msgid "My Feature"
|
378 |
+
msgstr "Moje funckcje"
|
379 |
+
|
380 |
+
#: extension/AAM_My_Feature/extension.php:53
|
381 |
+
msgid "My customly developed feature"
|
382 |
+
msgstr "Własna funkcjonalność"
|
383 |
+
|
384 |
+
#~ msgid "Miscelaneous"
|
385 |
+
#~ msgstr "Pozostałe"
|
media/css/aam.css
CHANGED
@@ -5,10 +5,6 @@
|
|
5 |
* ======================================================================
|
6 |
*/
|
7 |
|
8 |
-
#aam{
|
9 |
-
font-family: "Trebuchet MS", Helvetica, sans-serif;
|
10 |
-
}
|
11 |
-
|
12 |
.alpha-notice{
|
13 |
margin: 15px 10px;
|
14 |
border: 1px solid #FF8888;
|
@@ -75,6 +71,10 @@
|
|
75 |
background: transparent url('images/cmanager/field-loader.gif') no-repeat center;
|
76 |
}
|
77 |
|
|
|
|
|
|
|
|
|
78 |
.dialog-fieldset{
|
79 |
width: 100%;
|
80 |
margin: 10px 0px;
|
@@ -440,6 +440,18 @@
|
|
440 |
background-image: url('images/cmanager/settings-active.png');
|
441 |
}
|
442 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
443 |
/** USER MANAGER STYLES */
|
444 |
.manager-item-user{
|
445 |
background-image: url('images/cmanager/user.png');
|
@@ -988,15 +1000,37 @@ a.capability-action{
|
|
988 |
.capability-action-select{
|
989 |
background: transparent url('images/capability/select.png') no-repeat center;
|
990 |
}
|
|
|
991 |
.capability-action-select:hover{
|
992 |
background: transparent url('images/capability/select-active.png') no-repeat center;
|
993 |
}
|
994 |
|
995 |
-
|
996 |
.capability-action-select-active{
|
997 |
background: transparent url('images/capability/select-active.png') no-repeat center;
|
998 |
}
|
999 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1000 |
/** POSTS & CATEGORIES STYLES */
|
1001 |
.post-top-actions{
|
1002 |
float: right;
|
5 |
* ======================================================================
|
6 |
*/
|
7 |
|
|
|
|
|
|
|
|
|
8 |
.alpha-notice{
|
9 |
margin: 15px 10px;
|
10 |
border: 1px solid #FF8888;
|
71 |
background: transparent url('images/cmanager/field-loader.gif') no-repeat center;
|
72 |
}
|
73 |
|
74 |
+
.input-dynamic{
|
75 |
+
background: transparent url('images/cmanager/field-loader.gif') no-repeat center;
|
76 |
+
}
|
77 |
+
|
78 |
.dialog-fieldset{
|
79 |
width: 100%;
|
80 |
margin: 10px 0px;
|
440 |
background-image: url('images/cmanager/settings-active.png');
|
441 |
}
|
442 |
|
443 |
+
.role-action-duplicate{
|
444 |
+
background-image: url('images/cmanager/duplicate.png');
|
445 |
+
}
|
446 |
+
|
447 |
+
.role-action-duplicate-active{
|
448 |
+
background-image: url('images/cmanager/duplicate-active.png');
|
449 |
+
}
|
450 |
+
|
451 |
+
.role-action-duplicate:hover{
|
452 |
+
background-image: url('images/cmanager/duplicate-active.png');
|
453 |
+
}
|
454 |
+
|
455 |
/** USER MANAGER STYLES */
|
456 |
.manager-item-user{
|
457 |
background-image: url('images/cmanager/user.png');
|
1000 |
.capability-action-select{
|
1001 |
background: transparent url('images/capability/select.png') no-repeat center;
|
1002 |
}
|
1003 |
+
|
1004 |
.capability-action-select:hover{
|
1005 |
background: transparent url('images/capability/select-active.png') no-repeat center;
|
1006 |
}
|
1007 |
|
|
|
1008 |
.capability-action-select-active{
|
1009 |
background: transparent url('images/capability/select-active.png') no-repeat center;
|
1010 |
}
|
1011 |
|
1012 |
+
#capability_unfiltered {
|
1013 |
+
display:none;
|
1014 |
+
}
|
1015 |
+
|
1016 |
+
#capability_unfiltered + label span {
|
1017 |
+
display:inline-block;
|
1018 |
+
width:16px;
|
1019 |
+
height:16px;
|
1020 |
+
background:url(images/capability/unchecked.png) no-repeat center;
|
1021 |
+
cursor:pointer;
|
1022 |
+
margin-top: 4px;
|
1023 |
+
}
|
1024 |
+
|
1025 |
+
#capability_unfiltered:checked + label span {
|
1026 |
+
background:url(images/capability/checked.png) no-repeat center;
|
1027 |
+
}
|
1028 |
+
|
1029 |
+
.aam-align-right{
|
1030 |
+
text-align: right;
|
1031 |
+
}
|
1032 |
+
|
1033 |
+
|
1034 |
/** POSTS & CATEGORIES STYLES */
|
1035 |
.post-top-actions{
|
1036 |
float: right;
|
media/css/images/cmanager/duplicate-active.png
ADDED
Binary file
|
media/css/images/cmanager/duplicate.png
ADDED
Binary file
|
media/js/aam.js
CHANGED
@@ -483,6 +483,32 @@ AAM.prototype.loadRoleSegment = function() {
|
|
483 |
}).bind('click', function(event) {
|
484 |
event.preventDefault();
|
485 |
_this.launch(jQuery(this), 'role-top-action-add');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
486 |
_this.launchAddRoleDialog(this);
|
487 |
});
|
488 |
jQuery('#role_list_wrapper .role-top-actions').append(add);
|
@@ -544,6 +570,18 @@ AAM.prototype.loadRoleSegment = function() {
|
|
544 |
_this.launch(jQuery(this), 'role-action-edit');
|
545 |
_this.launchEditRoleDialog(this, aData);
|
546 |
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
547 |
|
548 |
jQuery('.role-actions', nRow).append(jQuery('<a/>', {
|
549 |
'href': '#',
|
@@ -654,6 +692,7 @@ AAM.prototype.launchAddRoleDialog = function(button) {
|
|
654 |
//prepare ajax package
|
655 |
var data = _this.compileAjaxPackage('add_role');
|
656 |
data.name = jQuery('#role_name').val();
|
|
|
657 |
|
658 |
//send the request
|
659 |
jQuery.ajax(aamLocal.ajaxurl, {
|
@@ -686,6 +725,58 @@ AAM.prototype.launchAddRoleDialog = function(button) {
|
|
686 |
});
|
687 |
};
|
688 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
689 |
/**
|
690 |
* Launch Edit Role Dialog
|
691 |
*
|
@@ -700,6 +791,7 @@ AAM.prototype.launchEditRoleDialog = function(button, aData) {
|
|
700 |
var _this = this;
|
701 |
//populate the form with data
|
702 |
jQuery('#role_name').val(aData[2]);
|
|
|
703 |
//launch the dialog
|
704 |
var buttons = {};
|
705 |
buttons[aamLocal.labels['Save Changes']] = function() {
|
@@ -773,7 +865,7 @@ AAM.prototype.launchDeleteRoleDialog = function(button, aData) {
|
|
773 |
var data = _this.compileAjaxPackage('delete_role');
|
774 |
data.subject = 'role';
|
775 |
data.subject_id = aData[0];
|
776 |
-
data.delete_users = aData[1];
|
777 |
//send the request
|
778 |
jQuery.ajax(aamLocal.ajaxurl, {
|
779 |
type: 'POST',
|
@@ -1753,6 +1845,8 @@ AAM.prototype.launchAddCapabilityDialog = function(button) {
|
|
1753 |
_this.showMetaboxLoader('#capability_form_dialog');
|
1754 |
var data = _this.compileAjaxPackage('add_capability');
|
1755 |
data.capability = capability;
|
|
|
|
|
1756 |
jQuery.ajax(aamLocal.ajaxurl, {
|
1757 |
type: 'POST',
|
1758 |
dataType: 'json',
|
@@ -1790,7 +1884,7 @@ AAM.prototype.launchAddCapabilityDialog = function(button) {
|
|
1790 |
jQuery('#capability_form_dialog').dialog({
|
1791 |
resizable: false,
|
1792 |
height: 'auto',
|
1793 |
-
width: '
|
1794 |
modal: true,
|
1795 |
buttons: buttons,
|
1796 |
close: function() {
|
@@ -1931,10 +2025,10 @@ AAM.prototype.loadMetaboxes = function(refresh) {
|
|
1931 |
//send the request
|
1932 |
jQuery.ajax(aamLocal.ajaxurl, {
|
1933 |
type: 'POST',
|
1934 |
-
dataType: '
|
1935 |
data: data,
|
1936 |
success: function(response) {
|
1937 |
-
jQuery('#metabox_list_container').html(response
|
1938 |
jQuery('#metabox_list').accordion({
|
1939 |
collapsible: true,
|
1940 |
header: 'h4',
|
@@ -2581,12 +2675,12 @@ AAM.prototype.launchManageAccessDialog = function(button, nRow, aData, type) {
|
|
2581 |
*/
|
2582 |
AAM.prototype.restorePostAccess = function(id, type, nRow) {
|
2583 |
var _this = this;
|
2584 |
-
|
2585 |
//retrieve settings and display the dialog
|
2586 |
var data = this.compileAjaxPackage('clear_access', true);
|
2587 |
data.id = id;
|
2588 |
data.type = type;
|
2589 |
-
|
2590 |
jQuery.ajax(aamLocal.ajaxurl, {
|
2591 |
type: 'POST',
|
2592 |
dataType: 'json',
|
@@ -2614,18 +2708,18 @@ AAM.prototype.restorePostAccess = function(id, type, nRow) {
|
|
2614 |
*/
|
2615 |
AAM.prototype.launchDeletePostDialog = function(button, nRow, aData, force) {
|
2616 |
var _this = this;
|
2617 |
-
|
2618 |
jQuery('#delete_post_dialog .dialog-content').html(
|
2619 |
aamLocal.labels[(force ? 'Delete' : 'Trash') + ' Post Message'].replace('%s', aData[3])
|
2620 |
-
|
2621 |
var buttons = {};
|
2622 |
-
|
2623 |
if (force === false) {
|
2624 |
buttons[aamLocal.labels['Delete Permanently']] = function() {
|
2625 |
-
|
2626 |
-
|
2627 |
}
|
2628 |
-
|
2629 |
buttons[aamLocal.labels[(force ? 'Delete' : 'Trash') + ' Post']] = function() {
|
2630 |
_this.deletePost(aData[0], force, nRow);
|
2631 |
};
|
@@ -2657,7 +2751,7 @@ AAM.prototype.launchDeletePostDialog = function(button, nRow, aData, force) {
|
|
2657 |
*/
|
2658 |
AAM.prototype.deletePost = function(id, force, nRow) {
|
2659 |
var _this = this;
|
2660 |
-
|
2661 |
var data = _this.compileAjaxPackage('delete_post');
|
2662 |
data.post = id;
|
2663 |
data.force = (force ? 1 : 0);
|
483 |
}).bind('click', function(event) {
|
484 |
event.preventDefault();
|
485 |
_this.launch(jQuery(this), 'role-top-action-add');
|
486 |
+
//retrieve list of roles dynamically
|
487 |
+
jQuery('#parent_cap_role').addClass('input-dynamic');
|
488 |
+
jQuery('#parent_cap_role_holder').show();
|
489 |
+
//send the request
|
490 |
+
jQuery.ajax(aamLocal.ajaxurl, {
|
491 |
+
type: 'POST',
|
492 |
+
dataType: 'json',
|
493 |
+
data: _this.compileAjaxPackage('pure_role_list'),
|
494 |
+
success: function(response) {
|
495 |
+
//reset selector
|
496 |
+
jQuery('#parent_cap_role').empty();
|
497 |
+
jQuery('#parent_cap_role').append(
|
498 |
+
jQuery('<option/>', {value : ''})
|
499 |
+
);
|
500 |
+
for(var i in response){
|
501 |
+
jQuery('#parent_cap_role').append(
|
502 |
+
jQuery('<option/>', {
|
503 |
+
'value' : i
|
504 |
+
}).html(response[i].name)
|
505 |
+
);
|
506 |
+
}
|
507 |
+
},
|
508 |
+
complete: function(){
|
509 |
+
jQuery('#parent_cap_role').removeClass('input-dynamic');
|
510 |
+
}
|
511 |
+
});
|
512 |
_this.launchAddRoleDialog(this);
|
513 |
});
|
514 |
jQuery('#role_list_wrapper .role-top-actions').append(add);
|
570 |
_this.launch(jQuery(this), 'role-action-edit');
|
571 |
_this.launchEditRoleDialog(this, aData);
|
572 |
}));
|
573 |
+
|
574 |
+
/**
|
575 |
+
jQuery('.role-actions', nRow).append(jQuery('<a/>', {
|
576 |
+
'href': '#',
|
577 |
+
'class': 'role-action role-action-duplicate',
|
578 |
+
'aam-tooltip': aamLocal.labels['Duplicate']
|
579 |
+
}).bind('click', function(event) {
|
580 |
+
event.preventDefault();
|
581 |
+
_this.launch(jQuery(this), 'role-action-duplicate');
|
582 |
+
_this.launchDuplicateRoleDialog(this, aData);
|
583 |
+
}));
|
584 |
+
*/
|
585 |
|
586 |
jQuery('.role-actions', nRow).append(jQuery('<a/>', {
|
587 |
'href': '#',
|
692 |
//prepare ajax package
|
693 |
var data = _this.compileAjaxPackage('add_role');
|
694 |
data.name = jQuery('#role_name').val();
|
695 |
+
data.inherit = jQuery('#parent_cap_role').val()
|
696 |
|
697 |
//send the request
|
698 |
jQuery.ajax(aamLocal.ajaxurl, {
|
725 |
});
|
726 |
};
|
727 |
|
728 |
+
/**
|
729 |
+
* Launch Duplicate Role Dialog
|
730 |
+
*
|
731 |
+
* @param {Object} button
|
732 |
+
*
|
733 |
+
* @returns {void}
|
734 |
+
*
|
735 |
+
* @access public
|
736 |
+
*/
|
737 |
+
AAM.prototype.launchDuplicateRoleDialog = function(button, aData) {
|
738 |
+
var _this = this;
|
739 |
+
//clean-up the form first
|
740 |
+
jQuery('#duplicate_role_name').val('');
|
741 |
+
jQuery('#duplicate_role_name').html(aData[2]);
|
742 |
+
//open the dialog
|
743 |
+
var buttons = {};
|
744 |
+
buttons[aamLocal.labels['Add New Role']] = function() {
|
745 |
+
//prepare ajax package
|
746 |
+
var data = _this.compileAjaxPackage('duplicate_role');
|
747 |
+
data.name = jQuery('#duplicate_role_name').val();
|
748 |
+
data.duplicate = aData[0];
|
749 |
+
|
750 |
+
//send the request
|
751 |
+
jQuery.ajax(aamLocal.ajaxurl, {
|
752 |
+
type: 'POST',
|
753 |
+
dataType: 'json',
|
754 |
+
data: data,
|
755 |
+
success: function(response) {
|
756 |
+
if (response.status === 'success') {
|
757 |
+
_this.segmentTables.roleList.fnDraw();
|
758 |
+
}
|
759 |
+
_this.highlight('#control_manager .inside', response.status);
|
760 |
+
}
|
761 |
+
});
|
762 |
+
jQuery('#duplicate_role_dialog').dialog("close");
|
763 |
+
};
|
764 |
+
buttons[aamLocal.labels['Cancel']] = function() {
|
765 |
+
jQuery('#duplicate_role_dialog').dialog("close");
|
766 |
+
};
|
767 |
+
|
768 |
+
jQuery('#duplicate_role_dialog').dialog({
|
769 |
+
resizable: false,
|
770 |
+
height: 'auto',
|
771 |
+
width: '30%',
|
772 |
+
modal: true,
|
773 |
+
buttons: buttons,
|
774 |
+
close: function() {
|
775 |
+
_this.terminate(jQuery(button), 'role-action-duplicate');
|
776 |
+
}
|
777 |
+
});
|
778 |
+
};
|
779 |
+
|
780 |
/**
|
781 |
* Launch Edit Role Dialog
|
782 |
*
|
791 |
var _this = this;
|
792 |
//populate the form with data
|
793 |
jQuery('#role_name').val(aData[2]);
|
794 |
+
jQuery('#parent_cap_role_holder').hide();
|
795 |
//launch the dialog
|
796 |
var buttons = {};
|
797 |
buttons[aamLocal.labels['Save Changes']] = function() {
|
865 |
var data = _this.compileAjaxPackage('delete_role');
|
866 |
data.subject = 'role';
|
867 |
data.subject_id = aData[0];
|
868 |
+
data.delete_users = parseInt(aData[1]);
|
869 |
//send the request
|
870 |
jQuery.ajax(aamLocal.ajaxurl, {
|
871 |
type: 'POST',
|
1845 |
_this.showMetaboxLoader('#capability_form_dialog');
|
1846 |
var data = _this.compileAjaxPackage('add_capability');
|
1847 |
data.capability = capability;
|
1848 |
+
data.unfiltered = (jQuery('#capability_unfiltered').attr('checked') ? 1 : 0);
|
1849 |
+
|
1850 |
jQuery.ajax(aamLocal.ajaxurl, {
|
1851 |
type: 'POST',
|
1852 |
dataType: 'json',
|
1884 |
jQuery('#capability_form_dialog').dialog({
|
1885 |
resizable: false,
|
1886 |
height: 'auto',
|
1887 |
+
width: 'auto',
|
1888 |
modal: true,
|
1889 |
buttons: buttons,
|
1890 |
close: function() {
|
2025 |
//send the request
|
2026 |
jQuery.ajax(aamLocal.ajaxurl, {
|
2027 |
type: 'POST',
|
2028 |
+
dataType: 'html',
|
2029 |
data: data,
|
2030 |
success: function(response) {
|
2031 |
+
jQuery('#metabox_list_container').html(response);
|
2032 |
jQuery('#metabox_list').accordion({
|
2033 |
collapsible: true,
|
2034 |
header: 'h4',
|
2675 |
*/
|
2676 |
AAM.prototype.restorePostAccess = function(id, type, nRow) {
|
2677 |
var _this = this;
|
2678 |
+
|
2679 |
//retrieve settings and display the dialog
|
2680 |
var data = this.compileAjaxPackage('clear_access', true);
|
2681 |
data.id = id;
|
2682 |
data.type = type;
|
2683 |
+
|
2684 |
jQuery.ajax(aamLocal.ajaxurl, {
|
2685 |
type: 'POST',
|
2686 |
dataType: 'json',
|
2708 |
*/
|
2709 |
AAM.prototype.launchDeletePostDialog = function(button, nRow, aData, force) {
|
2710 |
var _this = this;
|
2711 |
+
|
2712 |
jQuery('#delete_post_dialog .dialog-content').html(
|
2713 |
aamLocal.labels[(force ? 'Delete' : 'Trash') + ' Post Message'].replace('%s', aData[3])
|
2714 |
+
);
|
2715 |
var buttons = {};
|
2716 |
+
|
2717 |
if (force === false) {
|
2718 |
buttons[aamLocal.labels['Delete Permanently']] = function() {
|
2719 |
+
_this.deletePost(aData[0], true, nRow);
|
2720 |
+
};
|
2721 |
}
|
2722 |
+
|
2723 |
buttons[aamLocal.labels[(force ? 'Delete' : 'Trash') + ' Post']] = function() {
|
2724 |
_this.deletePost(aData[0], force, nRow);
|
2725 |
};
|
2751 |
*/
|
2752 |
AAM.prototype.deletePost = function(id, force, nRow) {
|
2753 |
var _this = this;
|
2754 |
+
|
2755 |
var data = _this.compileAjaxPackage('delete_post');
|
2756 |
data.post = id;
|
2757 |
data.force = (force ? 1 : 0);
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: vasyl_m
|
|
3 |
Tags: access manager, access, access control, comments, capability, widget, filter menu, role manager, user access, user control, user
|
4 |
Requires at least: 3.4.2
|
5 |
Tested up to: 3.8.1
|
6 |
-
Stable tag: 2.
|
7 |
|
8 |
Graphic interface to manage Access control to your Front-end and Back-end
|
9 |
|
@@ -16,36 +16,41 @@ at the same time very powerful tool that gives you a flexible control over your
|
|
16 |
single WordPress site or Multisite Network. With AAM you are allowed to configure access
|
17 |
to different parts of your website for any Role or individual User.
|
18 |
|
|
|
|
|
|
|
|
|
|
|
19 |
In Current version you are allowed to do next:
|
20 |
|
21 |
-
**Control Access to Admin Menu (including submenu)
|
22 |
As example you can restrict access for Role Editor to Menu "Pages" or does not allow
|
23 |
individual User to manage Post's Categories.
|
24 |
|
25 |
-
**Filter Widgets & Metaboxes
|
26 |
Filter the list of metaboxes that User can see during Post/Page editing. At the same
|
27 |
time you can filter the list of Dashboard and Frontend widgets.
|
28 |
|
29 |
-
**Manage Role's or User's Capabilities
|
30 |
AAM, with simple interface, allows you to grand or remove capabilities from Role or User.
|
31 |
You can also create new capabilities or remove existing.
|
32 |
|
33 |
-
**Control Access to Posts, Pages, CPTs or Terms
|
34 |
You can restrict access to individual page or post for any user or role as well as
|
35 |
restrict access to entire Term and all posts inside it. You can also restrict
|
36 |
page commenting for individual pages or exclude them from Frontend menu. We are
|
37 |
extending the list of possible restrictions with each new version.
|
38 |
|
39 |
-
**Create custom actions for system events
|
40 |
As example your system can trigger email to you if some user published Post/Page or
|
41 |
modified content. You are also allowed to develop your own custom action for event.
|
42 |
|
43 |
-
**Track User Activities
|
44 |
With AAM you can track user activities within your website. So you can easily find out
|
45 |
when user was logged in or modified some Post/Page. There are many activities that can
|
46 |
be tracked. We constantly adding more and more.
|
47 |
|
48 |
-
**Manage Role List
|
49 |
AAM allows you to create new Roles or Delete existing.
|
50 |
|
51 |
There are a lot of small and hidden features included in AAM that we are not listing
|
@@ -59,6 +64,7 @@ The AAM support also these languages:
|
|
59 |
* Polish (by Gustaw Lasek www.servitium.pl)
|
60 |
* French (by Moskito7)
|
61 |
* Russian (by Maxim Kernozhickii www.aeromultimedia.com)
|
|
|
62 |
|
63 |
== Installation ==
|
64 |
|
@@ -86,6 +92,27 @@ the list of additional metaboxes can be picked by AAM.
|
|
86 |
|
87 |
== Changelog ==
|
88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
= 2.2 =
|
90 |
* Fixed issue with jQuery UI Tooltip Widget
|
91 |
* Added AAM Warning Panel
|
3 |
Tags: access manager, access, access control, comments, capability, widget, filter menu, role manager, user access, user control, user
|
4 |
Requires at least: 3.4.2
|
5 |
Tested up to: 3.8.1
|
6 |
+
Stable tag: 2.3
|
7 |
|
8 |
Graphic interface to manage Access control to your Front-end and Back-end
|
9 |
|
16 |
single WordPress site or Multisite Network. With AAM you are allowed to configure access
|
17 |
to different parts of your website for any Role or individual User.
|
18 |
|
19 |
+
**Please Notice!**
|
20 |
+
If you have any issues with AAM or you have any questions related to it, we offer
|
21 |
+
free and fast support. You can either send us an email or leave a message on WordPress
|
22 |
+
Forum. We always ready to help you and to improve your experience with AAM.
|
23 |
+
|
24 |
In Current version you are allowed to do next:
|
25 |
|
26 |
+
**Control Access to Admin Menu (including submenu).**
|
27 |
As example you can restrict access for Role Editor to Menu "Pages" or does not allow
|
28 |
individual User to manage Post's Categories.
|
29 |
|
30 |
+
**Filter Widgets & Metaboxes.**
|
31 |
Filter the list of metaboxes that User can see during Post/Page editing. At the same
|
32 |
time you can filter the list of Dashboard and Frontend widgets.
|
33 |
|
34 |
+
**Manage Role's or User's Capabilities.**
|
35 |
AAM, with simple interface, allows you to grand or remove capabilities from Role or User.
|
36 |
You can also create new capabilities or remove existing.
|
37 |
|
38 |
+
**Control Access to Posts, Pages, CPTs or Terms.**
|
39 |
You can restrict access to individual page or post for any user or role as well as
|
40 |
restrict access to entire Term and all posts inside it. You can also restrict
|
41 |
page commenting for individual pages or exclude them from Frontend menu. We are
|
42 |
extending the list of possible restrictions with each new version.
|
43 |
|
44 |
+
**Create custom actions for system events.**
|
45 |
As example your system can trigger email to you if some user published Post/Page or
|
46 |
modified content. You are also allowed to develop your own custom action for event.
|
47 |
|
48 |
+
**Track User Activities.**
|
49 |
With AAM you can track user activities within your website. So you can easily find out
|
50 |
when user was logged in or modified some Post/Page. There are many activities that can
|
51 |
be tracked. We constantly adding more and more.
|
52 |
|
53 |
+
**Manage Role List.**
|
54 |
AAM allows you to create new Roles or Delete existing.
|
55 |
|
56 |
There are a lot of small and hidden features included in AAM that we are not listing
|
64 |
* Polish (by Gustaw Lasek www.servitium.pl)
|
65 |
* French (by Moskito7)
|
66 |
* Russian (by Maxim Kernozhickii www.aeromultimedia.com)
|
67 |
+
* Persian (by Ghaem Omidi www.forum.wp-parsi.com)
|
68 |
|
69 |
== Installation ==
|
70 |
|
92 |
|
93 |
== Changelog ==
|
94 |
|
95 |
+
= 2.3 =
|
96 |
+
* Added Persian translation by Ghaem Omidi
|
97 |
+
* Added Inherit Capabilities From Role drop-down on Add New Role Dialog
|
98 |
+
* Small Cosmetic CSS changes
|
99 |
+
|
100 |
+
= 2.2.3 =
|
101 |
+
* Improved Admin Menu access control
|
102 |
+
* Extended ConfigPress with aam.menu.undefined setting
|
103 |
+
* Fixed issue with Frontend Widget
|
104 |
+
* Updated Polish Language File
|
105 |
+
|
106 |
+
= 2.2.2 =
|
107 |
+
* Fixed very significant issue with Role deletion
|
108 |
+
* Added Unfiltered Capability checkbox
|
109 |
+
* Regenerated language file
|
110 |
+
* Fixed issue with language encoding
|
111 |
+
* Fixed issue with Metaboxes tooltips
|
112 |
+
|
113 |
+
= 2.2.1 =
|
114 |
+
* Fixed the issue with Activity include
|
115 |
+
|
116 |
= 2.2 =
|
117 |
* Fixed issue with jQuery UI Tooltip Widget
|
118 |
* Added AAM Warning Panel
|