PluginProbe ʕ •ᴥ•ʔ
Advanced Access Manager – Access Governance for WordPress / trunk
Advanced Access Manager – Access Governance for WordPress vtrunk
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 / autoloader.php
advanced-access-manager Last commit date
application 3 months ago lang 1 year ago media 5 months ago vendor 11 months ago aam.php 3 months ago autoloader.php 1 year ago index.php 1 year ago license.txt 7 years ago readme.txt 3 months ago
autoloader.php
101 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 * Project auto-loader
12 *
13 * @package AAM
14 * @version 7.0.0
15 */
16 class AAM_Autoloader
17 {
18
19 /**
20 * PRS HTTP Message package
21 *
22 * @version 7.0.0
23 */
24 const PSRHM_BASEDIR = __DIR__ . '/vendor/psr-http-message';
25
26 /**
27 * Whip package
28 *
29 * @version 7.0.0
30 */
31 const WHIP_BASEDIR = __DIR__ . '/vendor/whip';
32
33 /**
34 * Class map
35 *
36 * @var array
37 * @access protected
38 *
39 * @version 7.0.7
40 */
41 protected static $class_map = [];
42
43 /**
44 * Add new index
45 *
46 * @param string $class_name
47 * @param string $file_path
48 * @access public
49 *
50 * @version 7.0.0
51 */
52 public static function add($class_name, $file_path)
53 {
54 self::$class_map[$class_name] = $file_path;
55 }
56
57 /**
58 * Auto-loader for project Advanced Access Manager
59 *
60 * Try to load a class if prefix is AAM_
61 *
62 * @param string $class_name
63 *
64 * @return void
65 * @access public
66 *
67 * @version 7.0.0
68 */
69 public static function load($class_name)
70 {
71 if (array_key_exists($class_name, self::$class_map)) {
72 $filename = self::$class_map[$class_name];
73 } else {
74 $chunks = explode('_', $class_name);
75 $prefix = array_shift($chunks);
76
77 if ($prefix === 'AAM') {
78 $base_path = __DIR__ . '/application';
79 $filename = $base_path . '/' . implode('/', $chunks) . '.php';
80 }
81 }
82
83 if (!empty($filename) && file_exists($filename)) {
84 require($filename);
85 }
86 }
87
88 /**
89 * Register auto-loader
90 *
91 * @return void
92 * @access public
93 *
94 * @version 7.0.0
95 */
96 public static function register()
97 {
98 spl_autoload_register('AAM_Autoloader::load');
99 }
100
101 }