Example #1
0
 public static function addToNavigation()
 {
     $page = new page();
     $pluginsManager = pluginsManager::getInstance();
     // Création d'items de navigation absents (plugins)
     foreach ($pluginsManager->getPlugins() as $k => $plugin) {
         if ($plugin->getConfigVal('activate') && $plugin->getPublicFile() && $plugin->getName() != 'page') {
             $find = false;
             foreach ($page->getItems() as $k2 => $pageItem) {
                 if ($pageItem->getTarget() == $plugin->getName()) {
                     $find = true;
                 }
             }
             if (!$find) {
                 $pageItem = new pageItem();
                 $pageItem->setName($plugin->getInfoVal('name'));
                 $pageItem->setPosition($page->makePosition());
                 $pageItem->setIsHomepage(0);
                 $pageItem->setContent('');
                 $pageItem->setIsHidden(0);
                 $pageItem->setFile('');
                 $pageItem->setTarget($plugin->getName());
                 $page->save($pageItem);
             }
         }
     }
     // génération de la navigation
     foreach ($page->getItems() as $k => $pageItem) {
         if (!$pageItem->getIsHidden()) {
             $core = core::getInstance();
             $pluginsManager->getPlugin('page')->addToNavigation($pageItem->getName(), $page->makeUrl($pageItem), $pageItem->getTargetAttr());
         }
     }
 }
Example #2
0
function pluginsmanagerAdminNotifications()
{
    $core = core::getInstance();
    $pluginsManager = pluginsManager::getInstance();
    $list = '';
    foreach ($pluginsManager->getPlugins() as $plugin) {
        if (!$pluginsManager->isActivePlugin($plugin->getName())) {
            $list .= $plugin->getInfoVal('name') . ', ';
        }
    }
    if ($list != '') {
        show::msg($core->lang("Plugins are inactive") . ' (' . trim($list, ', ') . ')', "info");
    }
}
Example #3
0
 public static function mainNavigation($format = '<li><a href="[target]" target="[targetAttribut]">[label]</a></li>')
 {
     $pluginsManager = pluginsManager::getInstance();
     $core = core::getInstance();
     $data = '';
     eval($core->callHook('startShowMainNavigation'));
     foreach ($pluginsManager->getPlugins() as $k => $plugin) {
         if ($plugin->getConfigval('activate') == 1) {
             foreach ($plugin->getNavigation() as $k2 => $item) {
                 if ($item['label'] != '') {
                     $temp = $format;
                     $temp = str_replace('[target]', $item['target'], $temp);
                     $temp = str_replace('[label]', $item['label'], $temp);
                     $temp = str_replace('[targetAttribut]', $item['targetAttribut'], $temp);
                     $data .= $temp;
                 }
             }
         }
     }
     eval($core->callHook('endShowMainNavigation'));
     echo $data;
 }
Example #4
0
include_once COMMON . 'pluginsManager.class.php';
include_once COMMON . 'plugin.class.php';
include_once COMMON . 'show.class.php';
## Création de l'instance core
$core = core::getInstance();
## Plugin par défaut du mode public
define('DEFAULT_PLUGIN', $core->getConfigVal('defaultPlugin'));
## Plugin par défaut du mode admin
define('DEFAULT_ADMIN_PLUGIN', $core->getConfigVal('defaultAdminPlugin'));
## Si le core n'est pas installé on redirige vers le script d'installation
if (!$core->isInstalled()) {
    header('location:' . ROOT . 'install.php');
    die;
}
## Création de l'istance pluginsManager
$pluginsManager = pluginsManager::getInstance();
## On boucle sur les plugins
foreach ($pluginsManager->getPlugins() as $plugin) {
    // On inclut le fichier PHP principal
    include_once $plugin->getLibFile();
    // Le core charge le fichier langue du plugin
    $core->loadPluginLang($plugin->getName());
    // Le core alimente le tableau des hooks
    if ($plugin->getConfigVal('activate')) {
        foreach ($plugin->getHooks() as $name => $function) {
            $core->addHook($name, $function);
        }
    }
}
## Hook
eval($core->callHook('startCreatePlugin'));
Example #5
0
 public static function getInstance()
 {
     if (is_null(self::$instance)) {
         self::$instance = new pluginsManager();
     }
     return self::$instance;
 }
Example #6
0
 public function loadPluginLang($plugin)
 {
     $pluginsManager = pluginsManager::getInstance();
     $this->lang = array_merge($this->lang, $pluginsManager->getPlugin($plugin)->getLang());
 }