예제 #1
0
 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);
     }
 }