PluginProbe ʕ •ᴥ•ʔ
Advanced Access Manager – Access Governance for WordPress / 5.3.5
Advanced Access Manager – Access Governance for WordPress v5.3.5
6.8.4 6.8.5 6.9.0 6.9.1 6.9.10 6.9.11 6.9.12 6.9.13 6.9.14 6.9.15 6.9.16 6.9.17 6.9.18 6.9.19 6.9.2 6.9.20 6.9.21 6.9.22 6.9.23 6.9.24 6.9.25 6.9.26 6.9.27 6.9.28 6.9.29 6.9.3 6.9.30 6.9.31 6.9.32 6.9.33 6.9.34 6.9.35 6.9.36 6.9.37 6.9.38 6.9.39 6.9.4 6.9.41 6.9.42 6.9.43 6.9.44 6.9.45 6.9.46 6.9.47 6.9.48 6.9.49 6.9.5 6.9.51 6.9.6 6.9.7 6.9.8 6.9.9 7.0.0 7.0.0-alpha.6 7.0.0-alpha.7 7.0.0-beta.1 7.0.0-rc1 7.0.0-rc2 7.0.0-rc3 7.0.1 7.0.10 7.0.11 7.0.2 7.0.3 7.0.4 7.0.5 7.0.6 7.0.7 7.0.8 7.0.9 7.1.0 7.1.1 trunk 3.0 4.0 4.0.1 4.1 4.2 4.3 4.4 4.4.1 4.5 4.6 4.6.1 4.6.2 4.7 4.7.1 4.7.2 4.7.5 4.7.6 4.8 4.8.1 4.9 4.9.1 4.9.2 4.9.3 4.9.4 4.9.5 4.9.5.1 4.9.5.2 5.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1 5.1.1 5.10 5.11 5.2 5.2.1 5.2.5 5.2.6 5.2.7 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.4 5.4.1 5.4.2 5.4.3 5.4.3.1 5.4.3.2 5.5 5.5.1 5.5.2 5.6 5.6.1 5.6.1.1 5.7 5.7.1 5.7.2 5.7.3 5.8 5.8.1 5.8.2 5.8.3 5.9 5.9.1 5.9.1.1 5.9.2 5.9.2.1 5.9.3 5.9.4 5.9.5 5.9.6 5.9.6.1 5.9.6.2 5.9.6.3 5.9.7 5.9.7.1 5.9.7.2 5.9.7.3 5.9.8 5.9.8.1 5.9.9 5.9.9.1 6.0.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.1.0 6.1.1 6.2.0 6.2.1 6.2.2 6.3.0 6.3.1 6.3.2 6.3.3 6.4.0 6.4.1 6.4.2 6.4.3 6.5.0 6.5.1 6.5.2 6.5.3 6.5.4 6.6.0 6.6.1 6.6.2 6.6.3 6.6.4 6.7.0 6.7.1 6.7.2 6.7.3 6.7.4 6.7.5 6.7.6 6.7.7 6.7.8 6.7.9 6.8.0 6.8.1 6.8.2 6.8.3
advanced-access-manager / Application / Core / Compatibility.php
advanced-access-manager / Application / Core Last commit date
Api 8 years ago ConfigPress 8 years ago Object 8 years ago Subject 8 years ago API.php 8 years ago Cache.php 8 years ago Compatibility.php 8 years ago Config.php 8 years ago ConfigPress.php 8 years ago Console.php 8 years ago Exporter.php 8 years ago Gateway.php 8 years ago Importer.php 8 years ago JwtAuth.php 8 years ago Login.php 8 years ago Media.php 8 years ago Object.php 8 years ago Request.php 8 years ago Server.php 8 years ago Subject.php 8 years ago
Compatibility.php
188 lines
1 <?php
2
3 /**
4 * ======================================================================
5 * LICENSE: This file is subject to the terms and conditions defined in *
6 * file 'license.txt', which is part of this source code package. *
7 * ======================================================================
8 */
9
10 /**
11 * Core compatibility with older versions
12 *
13 * @package AAM
14 * @author Vasyl Martyniuk <vasyl@vasyltech.com>
15 * @todo Remove Feb 2018
16 */
17 class AAM_Core_Compatibility {
18
19 /**
20 *
21 */
22 public static function checkConfigPressCompatibility($key) {
23 if (strpos($key, 'htpasswd') === 0) {
24 $key = str_replace('htpasswd', 'feature.metabox.htpasswd', $key);
25 } elseif (strpos($key, 'export') === 0) {
26 $key = str_replace('export', 'feature.export', $key);
27 } elseif (strpos($key, 'default.category') === 0) {
28 $key = str_replace('default.category', 'feature.post.defaultTerm', $key);
29 } elseif (strpos($key, 'extention') === 0) {
30 $key = str_replace('extention', 'core.extention', $key);
31 } elseif (strpos($key, 'login') === 0) {
32 $key = str_replace('login', 'feature.secureLogin', $key);
33 }
34
35 return $key;
36 }
37
38 /**
39 * Convert all-style AAM settings to standard ConfigPress style settings
40 *
41 * @param array $config
42 *
43 * @return array
44 * @since AAM 5.3.1
45 * @todo Remove June 1st 2019
46 */
47 public static function normalizeConfigOptions($config) {
48 if (is_array($config)) {
49 $changes = 0;
50 $changes += self::normalizeOption('manage-capability', 'core.settings.editCapabilities', $config);
51 $changes += self::normalizeOption('backend-access-control', 'core.settings.backendAccessControl', $config);
52 $changes += self::normalizeOption('frontend-access-control', 'core.settings.frontendAccessControl', $config);
53 $changes += self::normalizeOption('api-access-control', 'core.settings.apiAccessControl', $config);
54 $changes += self::normalizeOption('render-access-metabox', 'ui.settings.renderAccessMetabox', $config);
55 $changes += self::normalizeOption('show-access-link', 'ui.settings.renderAccessActionLink', $config);
56 $changes += self::normalizeOption('secure-login', 'core.settings.secureLogin', $config);
57 $changes += self::normalizeOption('core.xmlrpc', 'core.settings.xmlrpc', $config);
58 $changes += self::normalizeOption('core.restful', 'core.settings.restful', $config);
59 $changes += self::normalizeOption('jwt-authentication', 'core.settings.jwtAuthentication', $config);
60 $changes += self::normalizeOption('ms-member-access', 'core.settings.multisiteMemberAccessControl', $config);
61 $changes += self::normalizeOption('media-access-control', 'core.settings.mediaAccessControl', $config);
62 $changes += self::normalizeOption('check-post-visibility', 'core.settings.checkPostVisibility', $config);
63 $changes += self::normalizeOption('manage-hidden-post-types', 'core.settings.manageHiddenPostTypes', $config);
64 $changes += self::normalizeOption('page-category', 'core.settings.pageCategory', $config);
65 $changes += self::normalizeOption('media-category', 'core.settings.mediaCategory', $config);
66 $changes += self::normalizeOption('multi-category', 'core.settings.multiCategory', $config);
67 $changes += self::normalizeOption('inherit-parent-post', 'core.settings.inheritParentPost', $config);
68 //$changes += self::normalizeOption('', '', $config);
69
70 if ($changes > 0) {
71 if (is_multisite()) {
72 $result = AAM_Core_API::updateOption('aam-utilities', $config, 'site');
73 } else {
74 $result = AAM_Core_API::updateOption('aam-utilities', $config);
75 }
76 }
77 }
78
79 return $config;
80 }
81
82 /**
83 *
84 * @param type $option
85 * @param type $normalizedName
86 * @param type $config
87 * @return int
88 */
89 protected static function normalizeOption($option, $normalizedName, &$config) {
90 $changed = 0;
91
92 if (array_key_exists($option, $config)) {
93 $value = $config[$option];
94 unset($config[$option]);
95 $config[$normalizedName] = $value;
96 $changed = 1;
97 }
98
99 return $changed;
100 }
101
102 /**
103 * Get config
104 * @return type
105 */
106 public static function getConfig() {
107 $config = AAM_Core_API::getOption('aam-utilities', array(), 'site');
108
109 foreach(array_keys((is_array($config) ? $config : array())) as $option) {
110 if (strpos($option, 'frontend.redirect') !== false) {
111 self::convertConfigOption('redirect', $config, $option);
112 } elseif (strpos($option, 'backend.redirect') !== false) {
113 self::convertConfigOption('redirect', $config, $option);
114 } elseif (strpos($option, 'login.redirect') !== false) {
115 self::convertConfigOption('loginRedirect', $config, $option);
116 } elseif (strpos($option, 'frontend.teaser') !== false) {
117 self::convertConfigOption('teaser', $config, $option);
118 }
119 }
120
121 return self::normalizeConfigOptions($config);
122 }
123
124 /**
125 *
126 */
127 public static function initExtensions() {
128 //block deprecated extensions from loading
129 define('AAM_UTILITIES', '99');
130 define('AAM_ROLE_FILTER', '99');
131 define('AAM_POST_FILTER', '99');
132 define('AAM_REDIRECT', '99');
133 define('AAM_CONTENT_TEASER', '99');
134 define('AAM_LOGIN_REDIRECT', '99');
135 define('AAM_CONFIGPRESS', '99');
136 //TODO - Remove this in Jul 2019
137
138 //utilities option
139 add_filter('aam-utility-property', 'AAM_Core_Config::get', 10, 2);
140 }
141
142 /**
143 *
144 * @return type
145 */
146 public static function getLicenseList() {
147 $list = AAM_Core_API::getOption('aam-extensions', array(), 'site');
148
149 if (empty($list)) {
150 $list = AAM_Core_API::getOption('aam-extension-license', array(), 'site');
151 if (!empty($list)) {
152 $converted = array();
153
154 foreach($list as $title => $license) {
155 $id = strtoupper(str_replace(' ', '_', $title));
156 $converted[$id] = array('license' => $license);
157 }
158
159 AAM_Core_API::updateOption('aam-extensions', $converted);
160 AAM_Core_API::deleteOption('aam-extension-license');
161 }
162 }
163
164 return $list;
165 }
166
167 /**
168 *
169 * @staticvar type $subject
170 * @param type $oid
171 * @param type &$config
172 * @param type $option
173 *
174 * @todo Legacy remove Jul 2018
175 */
176 protected static function convertConfigOption($oid, &$config, $option) {
177 static $subject = null;
178
179 if (is_null($subject)) {
180 $subject = new AAM_Core_Subject_Default;
181 }
182
183 $subject->getObject($oid)->save($option, $config[$option]);
184 unset($config[$option]);
185 AAM_Core_API::updateOption('aam-utilities', $config);
186 }
187
188 }