示例#1
0
 /**
  * Inclue les fichiers pour le rendu d'un plugin
  *
  * @param string $pluginName -> Le nom du dossier plugin
  * @return html
  */
 public static function renderPlugin($pluginName = null)
 {
     global $client, $translate, $args;
     if ($pluginName === null) {
         $pluginName = USER_PLUGIN;
     }
     // Tente de récupérer les plugins d'une autre config
     self::setPluginsList();
     // Création du rendu du plugin
     $pluginPath = AdminServConfig::$PATH_PLUGINS . $pluginName . '/';
     $scriptFile = $pluginPath . 'script.php';
     $viewFile = $pluginPath . 'view.php';
     if (file_exists($scriptFile) && file_exists($viewFile)) {
         // Process
         require_once $scriptFile;
         // Terminate client
         if (isset($client) && $client->socket != null) {
             $client->Terminate();
         }
         // Header
         AdminServUI::getHeader();
         // Content
         echo '<section class="plugins hasMenu">' . '<section class="cadre left menu">' . self::getMenuList() . '</section>' . '<section class="cadre right">' . '<h1>' . self::getConfig($pluginName, 'name') . '</h1>';
         require_once $viewFile;
         echo '</section>' . '</section>';
         // Footer
         AdminServUI::getFooter();
         AdminServLogs::add('access', 'Plugin: ' . $pluginName);
     } else {
         AdminServ::error(Utils::t('Plugin error: script.php or view.php file is missing.'));
         AdminServUI::getHeader();
         AdminServUI::getFooter();
     }
 }