public static function ChargerContexte($nomContexte, $forcage = false) { $contexte = self::$contextes[$nomContexte]; $dejaCharge = $contexte[CONTEXTE_CHARGE]; $rechargement = $contexte[CONTEXTE_RECHARGEMENT]; $rechargementInitialisation = $contexte[CONTEXTE_RECHARGEMENTINITIALISATION]; self::$listes = array(); self::$contenus = array(); self::$onglets = array(); self::$contextesARechargerBis = array(); // Ne charge le contexte que si: // - on est dans le cas d'un rechargement automatique. // - on charge la suite du contexte (dans le cas d'un contexte trop volumineux pour être chargé en une fois). // - il n'a pas été chargé et l'utilisateur charge la page pour la première fois ou a appuyé sur F5. // - on est dans le cas d'un rechargement et le contexte accepte le rechargement. if ($forcage === true || ($dejaCharge === true && $rechargement === true || $dejaCharge === false) && ($rechargementInitialisation === true && self::$initialisation === true || self::$initialisation === false)) { if ($dejaCharge === false) { self::$contextes[$nomContexte][CONTEXTE_CHARGE] = true; } self::ContexteCourant($nomContexte); if ($contexte[CONTEXTE_RECHARGEMENTPERIODE] >= 1) { self::$contextes[$nomContexte][CONTEXTE_DERNIERRECHARGEMENT] = time(); } switch (self::NomContexteGeneral($nomContexte)) { case CONT_ACCUEIL: include PATH_FONCTIONS . 'Accueil/fChargerAccueil.php'; break; case CONT_ACTIVATION: include PATH_FONCTIONS . 'Joueur/fChargerActivation.php'; break; case CONT_ADMINISTRATION: include PATH_FONCTIONS . 'Administration/fChargerAdministration.php'; break; case CONT_AIDE: include PATH_FONCTIONS . 'Aide/fChargerAide.php'; break; case CONT_COMMUNAUTE: include PATH_FONCTIONS . 'Communaute/fChargerCommunautesAdmin.php'; break; case CONT_CONNEXION: include PATH_FONCTIONS . 'Connexion/fConnexion.php'; //self::RechargerContexte(CONT_IDENTIFICATION, true); self::RechargerContexte(CONT_NAVIGATION, true); break; case CONT_CONTEXTE: include PATH_FONCTIONS . 'Contexte/fChargerContextesAdmin.php'; break; case CONT_DECONNEXION: include PATH_FONCTIONS . 'Connexion/fDeconnexion.php'; //self::RechargerContexte(CONT_IDENTIFICATION, true); self::RechargerContexte(CONT_NAVIGATION, true); break; case CONT_CATEGORIE: include PATH_FONCTIONS . 'Forum/Categories/fChargerCategories.php'; break; case CONT_ETATRECRUTEMENT: include PATH_FONCTIONS . 'Recrutement/fChargerEtatsRecrutement.php'; break; case CONT_FONCTIONNALITE: include PATH_FONCTIONS . 'Fonctionnalite/fChargerFonctionnalitesAdmin.php'; break; case CONT_FORUM: include PATH_FONCTIONS . 'Forum/fChargerForums.php'; break; case CONT_GRADECOMMUNAUTE: include PATH_FONCTIONS . 'Droit/fChargerGradeCommunautesAdmin.php'; break; case CONT_GRADECOMMUNAUTEJEU: include PATH_FONCTIONS . 'Droit/fChargerGradeCommunautesJeuxAdmin.php'; break; case CONT_GRADEJEU: include PATH_FONCTIONS . 'Droit/fChargerGradeJeuxAdmin.php'; break; case CONT_GRADEGLOBAL: include PATH_FONCTIONS . 'Droit/fChargerGradesGlobauxAdmin.php'; break; case CONT_GRADEGROUPE: include PATH_FONCTIONS . 'Droit/fChargerGradesGroupesAdmin.php'; break; case CONT_GROUPE: include PATH_FONCTIONS . 'Groupe/fChargerGroupes.php'; break; case CONT_IDENTIFICATION: include PATH_FONCTIONS . 'Connexion/fChargerConnexion.php'; break; case CONT_JEU: include PATH_FONCTIONS . 'Jeu/fChargerJeu.php'; break; case CONT_LANGUE: include PATH_FONCTIONS . 'Langue/fChargerLanguesAdmin.php'; break; case CONT_LIBELLELIBRE: include PATH_FONCTIONS . 'Libelle/fChargerLibellesLibresAdmin.php'; break; case CONT_LIBELLETEXTELIBRE: include PATH_FONCTIONS . 'Libelle/fChargerLibellesTextesLibresAdmin.php'; break; case CONT_LOCALISATION: include PATH_FONCTIONS . 'Communaute/fChargerCommunautes.php'; include PATH_FONCTIONS . 'Langue/fChargerLangues.php'; include PATH_FONCTIONS . 'Groupe/fChargerGroupeConnexion.php'; break; case CONT_MENU: include PATH_FONCTIONS . 'Menu/fChargerMenusAdmin.php'; break; case CONT_MESSAGE: include PATH_FONCTIONS . 'Forum/Messages/fChargerMessages.php'; break; case CONT_MONNAIE: include PATH_FONCTIONS . 'Monnaie/fChargerMonnaiesAdmin.php'; break; case CONT_NAVIGATION: include PATH_FONCTIONS . 'Menu/fChargerNavigation.php'; break; case CONT_NOUVGROUPE: include PATH_FONCTIONS . 'Groupe/fChargerNouveauGroupe.php'; break; case CONT_NOUVJEU: include PATH_FONCTIONS . 'Jeu/fChargerNouveauJeu.php'; break; case CONT_ORIENTATION: include PATH_FONCTIONS . 'General/fChargerOrientation.php'; break; case CONT_PRESENTATION: include PATH_FONCTIONS . 'Presentation/fChargerPresentation.php'; break; case CONT_PRESENTATIONMODULE: $module = self::NomContexteSuffixe($nomContexte); include PATH_FONCTIONS . 'Presentation/fChargerPresentationModule' . $module . '.php'; break; case CONT_SUJET: include PATH_FONCTIONS . 'Forum/Sujets/fChargerSujets.php'; break; case CONT_SUPERGRADE: include PATH_FONCTIONS . 'Droit/fChargerSuperGradesAdmin.php'; break; case CONT_TYPEGROUPE: include PATH_FONCTIONS . 'Groupe/fChargerTypesGroupesAdmin.php'; break; case CONT_TYPEJEU: include PATH_FONCTIONS . 'Jeu/fChargerTypesJeuxAdmin.php'; break; case CONT_TYPELIBELLE: include PATH_FONCTIONS . 'Libelle/fChargerTypesLibellesAdmin.php'; break; case CONT_TYPEPRESENTATIONMODULE: include PATH_FONCTIONS . 'Presentation/fChargerTypesPresentationsModulesAdmin.php'; break; case CONT_VERSION: include PATH_FONCTIONS . 'Version/fChargerVersionsAdmin.php'; break; case CONT_VIDE: include PATH_FONCTIONS . 'General/fChargerVide.php'; break; default: return; } if ($dejaCharge !== true) { $contenus = self::$contenus; while (list($cadre, $contenu) = each($contenus)) { GReponse::AjouterElementContenu($cadre, $contenu); } $onglets = self::$onglets; while (list($i, $onglet) = each($onglets)) { GReponse::AjouterElementOnglet($onglet[CONTEXTE_ONGLET_CLASSEUR], $onglet[CONTEXTE_ONGLET_NOM], $onglet[CONTEXTE_ONGLET_CONTENU], $onglet[CONTEXTE_ONGLET_FONCCHARG], $onglet[CONTEXTE_ONGLET_PARAM], $onglet[CONTEXTE_ONGLET_CHARGE], $onglet[CONTEXTE_ONGLET_ACTIVER]); } } else { self::$listesDejaRechargees = array(); foreach (self::$listes as $liste) { self::MiseAJourListe($liste); } foreach (self::$contenus as $cadre => $contenu) { GReponse::AjouterElementContenu($cadre, $contenu); } foreach (self::$onglets as $onglet) { GReponse::AjouterElementOnglet($onglet[CONTEXTE_ONGLET_CLASSEUR], $onglet[CONTEXTE_ONGLET_NOM], $onglet[CONTEXTE_ONGLET_CONTENU], $onglet[CONTEXTE_ONGLET_FONCCHARG], $onglet[CONTEXTE_ONGLET_PARAM], $onglet[CONTEXTE_ONGLET_CHARGE], $onglet[CONTEXTE_ONGLET_ACTIVER]); } } self::RechargerContextes(true); } }