コード例 #1
0
ファイル: core.php プロジェクト: egregor-dev/SatCMS
 /**
  * Load system lib
  * Used @see core::$system_libs
  */
 private static function load_system_lib($name)
 {
     if (!array_key_exists($name, self::$system_libs) || self::$libs->is_registered($name)) {
         return false;
     }
     $filename = '';
     $config = self::$system_libs[$name];
     $cl_name = $name;
     $params = null;
     if (is_array(self::$system_libs[$name])) {
         if (isset($config['file'])) {
             $filename = $config['file'];
         }
         if (isset($config['class'])) {
             $cl_name = $config['class'];
         }
         $params = @$config['params'];
     } else {
         $filename = $config;
     }
     // autoload
     if (!class_exists($cl_name)) {
         if (!$filename) {
             throw new core_exception('Error load system lib ' . $name . ' / ' . $cl_name);
         }
         try {
             fs::req(fs::get_full_path($filename . loader::DOT_PHP), true);
         } catch (fs_exception $fs_e) {
             throw new core_exception('Error load system lib ' . $name . '. ' . $fs_e->getMessage());
         }
     }
     // try with prefix
     if (!class_exists($cl_name, 0)) {
         $cl_name = loader::CLASS_PREFIX . $cl_name;
     }
     if (!class_exists($cl_name, 0)) {
         throw new core_exception('Class doesnt exists ' . $cl_name);
     }
     $plib = new $cl_name($params);
     return self::register_lib($name, $plib);
 }
コード例 #2
0
ファイル: core.php プロジェクト: rustyJ4ck/moswarBot
 /**
  * Load system lib
  * Used @see core::$system_libs
  */
 private static function load_system_lib($name)
 {
     if (!array_key_exists($name, self::$system_libs) || self::$libs->is_registered($name)) {
         return false;
     }
     try {
         fs::req(fs::get_full_path(self::$system_libs[$name] . loader::DOT_PHP), true);
     } catch (fs_exception $fs_e) {
         throw new core_exception('Error load system lib ' . $name . '. ' . $fs_e->getMessage());
     }
     $cl_name = $name;
     // try with prefix
     if (!class_exists($cl_name)) {
         $cl_name = loader::CLASS_PREFIX . $cl_name;
     }
     if (!class_exists($cl_name)) {
         throw new core_exception('Class doesnt exists ' . $cl_name);
     }
     self::register_lib($name, new $cl_name());
 }