Since: 3.0.0
Author: Jack P.
Inheritance: extends Traq\Models\Model
コード例 #1
0
ファイル: Plugins.php プロジェクト: dasklney/traq
 /**
  * Disable plugin.
  */
 public function disableAction()
 {
     $plugin = Plugin::find('directory', Request::$query['plugin']);
     $info = Registry::infoFor(Request::$query['plugin']);
     if (class_exists($info['main'])) {
         $info['main']::__disable();
         $plugin->is_enabled = false;
         $plugin->save();
     }
     return $this->redirectTo('admin_plugins');
 }
コード例 #2
0
ファイル: Kernel.php プロジェクト: nirix/traq
 /**
  * Load plugins.
  */
 protected function loadPlugins()
 {
     $queue = [];
     $plugins = PluginModel::select()->where('is_enabled = ?')->setParameter(0, true)->execute()->fetchAll();
     foreach ($plugins as $plugin) {
         $vendorDir = __DIR__ . '/../vendor';
         foreach (json_decode($plugin['autoload'], true) as $namespace => $directory) {
             static::$loader->addPsr4($namespace, $vendorDir . "/{$plugin['directory']}/{$directory}");
         }
         $class = $plugin['main'];
         if (class_exists($class)) {
             $class::init();
             $queue[] = $class;
         }
     }
     foreach ($queue as $plugin) {
         $plugin::enable();
     }
 }