/** * Main Instance. * * Ensures only one instance of this class is loaded or can be loaded. * * @since 1.5 * @access public * @static * @param object|bool $caller The referrer class * @return VAA_View_Admin_As_Role_Defaults|bool */ public static function get_instance($caller = false) { if (is_object($caller) && 'VAA_View_Admin_As' == get_class($caller)) { if (is_null(self::$_instance)) { self::$_instance = new self(); } return self::$_instance; } return false; }
/** * Load the modules * * @since 1.5 * @since 1.5.1 added notice on class name conflict * @access private * @return void */ private function load_modules() { // The role defaults module (screen settings) if (!class_exists('VAA_View_Admin_As_Role_Defaults')) { require VIEW_ADMIN_AS_DIR . 'modules/class-role-defaults.php'; self::$vaa_class_names[] = 'VAA_View_Admin_As_Role_Defaults'; $this->modules['role_defaults'] = VAA_View_Admin_As_Role_Defaults::get_instance($this); } else { $this->add_notice('class-error-role-defaults', array('type' => 'notice-error', 'message' => '<strong>' . __('View Admin As', 'view-admin-as') . ':</strong> ' . __('Plugin not loaded because of a conflict with an other plugin or theme', 'view-admin-as') . ' <code>(' . sprintf(__('Class %s already exists', 'view-admin-as'), 'VAA_View_Admin_As_Role_Defaults') . ')</code>')); } }