Server IP : 195.201.23.43 / Your IP : 3.135.209.247 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/kdecoratie/public_html/plugins/system/admintools/ |
Upload File : |
<?php /** * @package admintools * @copyright Copyright (c)2010-2019 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ defined('_JEXEC') or die(); if (!defined('ATSYSTEM_AUTOLOADER')) { define('ATSYSTEM_AUTOLOADER', 1); } /** * The class autoloader for Admin Tools system plugin * * @package AdminTools * @subpackage plugin.system.admintools * @since 3.2.0 */ class AdmintoolsAutoloaderPlugin { /** * An instance of this autoloader * * @var AdmintoolsAutoloaderPlugin */ public static $autoloader = null; /** * The path to the root directory * * @var string */ public static $pluginPath = null; /** * Initialise this autoloader * * @return AdmintoolsAutoloaderPlugin */ public static function init() { if (self::$autoloader == null) { self::$autoloader = new self; } return self::$autoloader; } /** * Public constructor. Registers the autoloader with PHP. */ public function __construct() { self::$pluginPath = __DIR__; spl_autoload_register(array($this, 'autoload_admintools_system_plugin')); } /** * The actual autoloader * * @param string $class_name The name of the class to load * * @return void */ public function autoload_admintools_system_plugin($class_name) { // Make sure the class has an Atsystem prefix if (substr($class_name, 0, 8) != 'Atsystem') { return; } // Remove the prefix $class = substr($class_name, 8); // Change from camel cased (e.g. FeatureFoobar) into a lowercase array (e.g. 'feature','foobar') $class = preg_replace('/(\s)+/', '_', $class); $class = strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $class)); $class = explode('_', $class); // First try finding in structured directory format, e.g. feature/foobar.php $path = self::$pluginPath . '/' . implode('/', $class) . '.php'; if (@file_exists($path)) { include_once $path; } // Then try the duplicate last name structured directory format, e.g. feature/foobar/foobar.php if (!class_exists($class_name, false)) { reset($class); $lastPart = end($class); $path = self::$pluginPath . '/' . implode('/', $class) . '/' . $lastPart . '.php'; if (@file_exists($path)) { include_once $path; } } } }Private