24,7 → 24,7 |
private static $instance = null; |
|
/** |
* Paramètres pour les collections |
* Paramètres d'AppControleur |
*/ |
private static $parametres = array(); |
|
51,9 → 51,10 |
self::verifierCreationInstance(); |
self::gererSession(); |
|
self::nettoyerGet(); |
self::capturerParametres(); |
self::$parametres['url']->setRequete(array('action' => self::$parametres['action'], 'module' => self::$parametres['module'])); |
Registre::set('parametres', &self::$parametres); |
self::initialiserRegistre(); |
|
spl_autoload_register(array(get_class(), 'chargerClasse')); |
|
self::executerModule(); |
74,7 → 75,17 |
} |
} |
|
private static function nettoyerGet() { |
foreach ($_GET as $cle => $valeur) { |
$verifier = array('NULL', "\n", "\r", "\\", "'", '"', "\x00", "\x1a", ';'); |
$_GET[$cle] = strip_tags(str_replace($verifier, '', $valeur)); |
} |
} |
|
private static function capturerParametres() { |
if (isset($_GET['referentiel'])) { |
self::$parametres['referentiel'] = $_GET['referentiel']; |
} |
if (isset($_GET['module'])) { |
self::$parametres['module'] = $_GET['module']; |
} |
83,6 → 94,14 |
} |
} |
|
private static function initialiserRegistre() { |
self::$parametres['url']->setRequete(array('action' => self::$parametres['action'], 'module' => self::$parametres['module'])); |
Registre::set('eflore.urlCourrante', &self::$parametres['url']); |
Registre::set('parametres.referentiel', &self::$parametres['referentiel']); |
Registre::set('parametres.module', &self::$parametres['module']); |
Registre::set('parametres.action', &self::$parametres['action']); |
} |
|
private static function chargerClasse($nom_classe) { |
$dossiers_classes = array(Config::get('chemin_modules').self::getNomDossierModuleCourrant().DS); |
foreach ($dossiers_classes as $chemin) { |
126,10 → 145,27 |
// Nous vérifions que le module existe |
if (class_exists($classeModule)) { |
$module = new $classeModule(); |
$module->$action(); |
|
// Chargement Entete et Pied de page par défaut |
$module->chargerEnteteDePage(); |
$module->chargerPiedDePage(); |
|
// Initialisation du module demandé |
if (method_exists($module, 'initialiser')) { |
$module->initialiser(); |
} |
// Lancement de l'action demandé du module chargé |
if (method_exists($module, $action)) { |
$module->$action(); |
} else { |
$m = "La méthode '$action' du controleur '$classeModule' est introuvable."; |
trigger_error($m, E_USER_ERROR); |
} |
|
self::fusionnerSortie($module->getSortie()); |
} else { |
trigger_error("La classe du controleur '$classeModule' est introuvable."); |
$m = "La classe du controleur '$classeModule' est introuvable."; |
trigger_error($m, E_USER_ERROR); |
} |
} |
|