function autorisation($nomplugin) { $module = new Modules(); if ($module->charger($nomplugin) && $module->actif && $module->est_autorise()) { return 1; } exit; }
function moduleBoucle($type_boucle, $texte, $args) { try { $modules = new Modules(); if ($modules->charger(strtolower($type_boucle)) && $modules->actif) { $instance = ActionsModules::instance()->instancier($modules->nom); if (method_exists($instance, 'boucle')) { return $instance->boucle($texte, $args); } } } catch (Exception $ex) { } return ''; }
/** * @method void Mise a jour des modules en BD en fonction du contenu du repertoire des modules */ public function mettre_a_jour() { if ($dh = opendir($this->plugins_base_dir)) { while ($file = readdir($dh)) { if ($file == '.' || $file == '..') { continue; } try { // Tenter d'instancier le plugin $instance = $this->instancier($file); $modules = new Modules(); if ($instance instanceof PluginsPaiements) { $modules->type = Modules::PAIEMENT; } else { if ($instance instanceof PluginsTransports) { $modules->type = Modules::TRANSPORT; } else { if ($instance instanceof FiltreBase) { $modules->type = Modules::FILTRE; } else { if ($instance instanceof PluginsClassiques) { $modules->type = Modules::CLASSIQUE; } else { continue; } } } } // On ignore // Vérifier si le module existe en BD, et l'ajouter s'il n'y est pas if (!$modules->charger($file)) { $modules->nom = $file; $modules->actif = 0; $modules->add(); // On en profite pour le convertir en UTF-8 au passage si nécessaire. $this->conversion_utf8($this->lire_chemin_module($modules->nom)); } } catch (Exception $ex) { // On ne peut pas instancier -> ignorer } } @closedir($dh); } // Vérifier que les plugins en base existent toujours sur disque $modules = new Modules(); $result = $modules->query('select nom from ' . Modules::TABLE); while ($result && ($row = $modules->fetch_object($result))) { try { $this->lire_chemin_module($row->nom); } catch (Exception $ex) { // Le plugin n'existe plus sur disque -> le retirer de la BD if ($modules->charger($row->nom)) { $modules->delete(); // Supprimer aussi la description $modules->query("delete from " . Modulesdesc::TABLE . " where plugin='{$modules->nom}'"); } } } CacheBase::getCache()->reset_cache(); }
/* */ /*************************************************************************************/ require_once "pre.php"; require_once "auth.php"; if (!est_autorise("acces_configuration")) { exit; } if (!isset($lang)) { $lang = $_SESSION["util"]->lang; } if (isset($action) && $action == "modifier") { ActionsAdminModules::instance()->mise_a_jour_description($nom, $lang, $titre, $chapo, $description, $devise); } // Charger les infos modules $module = new Modules(); $module->charger($nom); $moduledesc = new Modulesdesc(); $moduledesc->charger($nom, $lang); $existe = $moduledesc->verif($nom, $lang); // Initialiser si la description n'existe pas dans cette langue. if (!$existe) { $moduledesc->lang = $lang; $moduledesc->plugin = $nom; $moduledesc->devise = 0; $moduledesc->titre = ''; $moduledesc->chapo = ''; $moduledesc->description = ''; $moduledesc->devise = 0; } // Charger les devises $devises = array();