Example #1
0
 public static function LeverWarning($code, $libelle, $affichageJoueur = false, $logFichier = true)
 {
     if ($affichageJoueur === true) {
         GReponse::AjouterElementWarning(strval($code), $libelle);
     }
     if ($logFichier === true) {
         if (is_int($libelle)) {
             $libelle = GSession::Libelle($libelle, false, true);
         }
         $fichier = fopen(PATH_SERVER_LOCAL . 'log/warnings' . date('Y-m-d') . '.txt', 'a+');
         $remoteHost = '';
         if (array_key_exists('REMOTE_HOST', $_SERVER)) {
             $remoteHost = $_SERVER['REMOTE_HOST'];
         }
         fwrite($fichier, date('H:i:s') . ' - ' . $_SERVER['REMOTE_ADDR'] . ' - ' . $remoteHost . ' - ' . $code . ': ' . $libelle . "\r\n");
         fclose($fichier);
     }
 }
Example #2
0
    $auto = GSession::LirePost('auto');
    // Cas du rechargement automatique.
    if ($auto !== NULL && $auto !== '') {
        GContexte::ChargerContextes(true);
    } else {
        $contexte = GSession::LirePost('contexte');
        // Cas du rechargement de tous les contextes.
        if ($contexte === NULL || $contexte === '') {
            GContexte::ChargerContextes();
        } else {
            $page = GContexte::LireVariablePost($contexte, 'page');
            $etage = GContexte::LireVariablePost($contexte, 'etage');
            $contenu = GContexte::LireVariablePost($contexte, 'contenu');
            // Cas du changement de page pour une liste.
            if ($contexte !== NULL && $page !== NULL && $page !== '') {
                SListe::SetChangementPage($page);
            } else {
                if ($contexte !== NULL && $etage !== NULL && $etage !== '') {
                    SListe::SetChargementEtage($etage);
                } else {
                    if ($contexte !== NULL && $contenu !== NULL && $contenu !== '') {
                        SListe::SetChargementContenu($contenu);
                    }
                }
            }
            GContexte::ChargerContexte($contexte);
        }
    }
}
GReponse::Fin();
Example #3
0
 public static function RechargerPresentation()
 {
     require_once INC_GCSS;
     require_once INC_GJS;
     require_once PATH_METIER . 'mListePresentationsModules.php';
     require_once PATH_METIER . 'mListeTypesPresentationsModules.php';
     $valeur = self::GetValeurPage('presentation', 'active');
     self::$presentationChargee = true;
     // Chargement de la présentation par défaut.
     if ($valeur == NULL) {
         $mListeTypesPresentationsModules = new mListeTypesPresentationsModules();
         $mListeTypesPresentationsModules->AjouterColSelection(COL_ID);
         $mListeTypesPresentationsModules->AjouterColSelection(COL_NOMFICHIER);
         $mListeTypesPresentationsModules->AjouterFiltreEgal(COL_ACTIF, true);
         $mListeTypesPresentationsModules->Charger();
         foreach ($mListeTypesPresentationsModules->GetListe() as $mTypePresentationModule) {
             GReponse::AjouterElementCSS($mTypePresentationModule->Id(), PATH_SERVER_HTTP . GCss::GetCheminFichierBase() . $mTypePresentationModule->NomFichier() . '.css');
             GReponse::AjouterElementJS($mTypePresentationModule->Id(), PATH_SERVER_HTTP . GJs::GetCheminFichierBase() . $mTypePresentationModule->NomFichier() . '.js');
         }
     } else {
         $mListePresentationsModules = new mListePresentationsModules();
         $mListePresentationsModules->AjouterColSelection(COL_RESSOURCECSS);
         $mListePresentationsModules->AjouterColSelection(COL_RESSOURCEJS);
         $mListePresentationsModules->AjouterFiltreEgal(COL_PRESENTATION, $valeur);
         $numJointure = $mListePresentationsModules->AjouterJointure(COL_TYPEPRESENTATIONMODULE, COL_ID, 0, SQL_RIGHT_JOIN);
         $mListePresentationsModules->AjouterColSelectionPourJointure($numJointure, COL_ID);
         $mListePresentationsModules->AjouterFiltreEgalPourJointure($numJointure, COL_ACTIF, true);
         $mListePresentationsModules->Charger();
         foreach ($mListePresentationsModules->GetListe() as $mPresentationModule) {
             if ($mPresentationModule->RessourceCSS() != NULL) {
                 GReponse::AjouterElementCSS($mPresentationModule->TypePresentationModule()->Id(), PATH_SERVER_HTTP . $mPresentationModule->RessourceCSS());
             } else {
                 GReponse::AjouterElementCSS($mPresentationModule->TypePresentationModule()->Id(), '');
             }
             if ($mPresentationModule->RessourceJS() != NULL) {
                 GReponse::AjouterElementJS($mPresentationModule->TypePresentationModule()->Id(), PATH_SERVER_HTTP . $mPresentationModule->RessourceJS());
             } else {
                 GReponse::AjouterElementJS($mPresentationModule->TypePresentationModule()->Id(), '');
             }
         }
     }
 }
            $classeur = new SClasseur('', 'presex', true, true);
            GContexte::AjouterOnglet('presex', GSession::Libelle(LIB_PRS_ONGLET), '', '', '', true, false);
            GContexte::AjouterOnglet('presex', GSession::Libelle(LIB_PRS_ONGLET), '', '', '', true, false);
            GContexte::AjouterOnglet('presex', GSession::Libelle(LIB_PRS_ONGLET), '', '', '', true, false);
            $cadre = new SCadre('', GSession::Libelle(LIB_PRS_TABONGLETS), $classeur, true, false);
            $vue->AttacherCellule(4, 1, $cadre);
            $cListeCssParties->AjouterElement(GSession::Libelle(LIB_PRS_PRESGEN, false, true), $vue);
            /*********************************************/
            $form = new SForm($prefixIdClass, 2, 1, true, false);
            $form->SetCadreInputs(1, 1, 1, 1);
            $form->AjouterInput(1, 1, '', $cListeCssParties, false);
            $form->SetCadreBoutons(2, 1, 1, 1);
            $form->AjouterInputButtonModifierDansContexte(1, 1, $nomContexte, false, GSession::Libelle(LIB_PRS_SAUVEGARDER));
            GContexte::AjouterContenu(CADRE_CONTENU_CONTENU, $form);
            $mListePresentationsModules = new mListePresentationsModules();
            $mListePresentationsModules->AjouterColSelection(COL_RESSOURCEJS);
            $mListePresentationsModules->AjouterFiltreEgal(COL_PRESENTATION, $presentationModif);
            $numJointure = $mListePresentationsModules->AjouterJointure(COL_TYPEPRESENTATIONMODULE, COL_ID, 0, SQL_RIGHT_JOIN);
            $mListePresentationsModules->AjouterColSelectionPourJointure($numJointure, COL_ID);
            $mListePresentationsModules->AjouterFiltreEgalPourJointure($numJointure, COL_ACTIF, true);
            $mListePresentationsModules->Charger();
            foreach ($mListePresentationsModules->GetListe() as $mPresentationModule) {
                if ($mPresentationModule->RessourceJS() != NULL) {
                    GReponse::AjouterElementJS($mPresentationModule->TypePresentationModule()->Id(), PATH_SERVER_HTTP . $mPresentationModule->RessourceJS(), true);
                } else {
                    GReponse::AjouterElementJS($mPresentationModule->TypePresentationModule()->Id(), '', true);
                }
            }
        }
    }
}
Example #5
0
 public static function AjouterElementSelectModification($id, $lib, $desc)
 {
     self::$balRattacheParam = self::AjouterBalToBal(self::$elemCourant, XML_MODIF);
     self::AjouterBalToBal(self::$balRattacheParam, XML_ID, strval($id));
     self::AjouterBalToBal(self::$balRattacheParam, XML_LIB, $lib);
     self::AjouterBalToBal(self::$balRattacheParam, XML_DESC, $desc);
 }
<?php

require_once 'cst.php';
require_once INC_GSESSION;
$groupe = GSession::Groupe(COL_ID);
if ($groupe !== NULL && GDroit::ADroitPopErreur(FONC_PRS_CREERMODIFIER) === true) {
    $presActive = GContexte::LirePost(COL_PRESENTATION . 'active');
    if ($presActive === NULL) {
        $presModif = GContexte::LirePost(COL_PRESENTATION . 'modif');
        // Cas où l'on modifie la présentation modifiée.
        if ($presModif !== '') {
            GSession::PresentationModif($presModif);
            GReponse::AjouterElementClasseurRechargement('pres');
            // A faire:
            // - Rechargement des onglets ou pas?
        }
    } else {
        if ($presActive !== '') {
            require_once PATH_METIER . 'mPresentationGroupe.php';
            require_once PATH_METIER . 'mPresentation.php';
            require_once PATH_METIER . 'mGroupe.php';
            $anciennePresActive = GSession::PresentationActive();
            // Suppression de l'ancienne présentation pour le groupe.
            $mPresentationGroupe = new MPresentationGroupe($anciennePresActive, $groupe);
            $retour = $mPresentationGroupe->Supprimer();
            if ($retour !== false) {
                // Ajout de la nouvelle présentation pour le groupe.
                $mPresentationGroupe->Presentation($presActive);
                $retour = $mPresentationGroupe->Ajouter();
                if ($retour !== false) {
                    GSession::PresentationActive($presActive, true);
Example #7
0
 protected static function MiseAJourListe($liste)
 {
     // On vérifie qu'une liste identique n'a pas déjà fait le travail.
     if (!array_key_exists($liste->TypeSynchroPage(), self::$listesDejaRechargees)) {
         $listeDejaRechargee[$liste->TypeSynchroPage()] = true;
         $elements = $liste->GetElementsPourRechargement();
         $listeModifiee = false;
         foreach ($elements as $element) {
             if (array_key_exists(LISTE_ELEMENT_ACTION, $element)) {
                 if ($element[LISTE_ELEMENT_ACTION] === LISTE_ELEMACTION_MODIF && array_key_exists(LISTE_ELEMENT_MODIFIE, $element) && $element[LISTE_ELEMENT_MODIFIE] === true) {
                     $listeModifiee = true;
                 } else {
                     if ($element[LISTE_ELEMENT_ACTION] !== LISTE_ELEMACTION_MODIF) {
                         $listeModifiee = true;
                     }
                 }
             }
         }
         if ($listeModifiee === true) {
             if ($liste->ChangementPage() === true) {
                 GReponse::AjouterElementListe($liste->AncienTypeSynchroPage(), $liste->NbPages(), $liste->Numero(), $liste->TypeSynchroPage());
             } else {
                 GReponse::AjouterElementListe($liste->TypeSynchroPage(), $liste->NbPages());
             }
             // On met d'abord les éléments supprimés.
             foreach ($elements as $element) {
                 if (array_key_exists(LISTE_ELEMENT_ACTION, $element) && $element[LISTE_ELEMENT_ACTION] === LISTE_ELEMACTION_SUPP) {
                     GReponse::AjouterElementListeSuppression($element[LISTE_ELEMENT_ID]);
                 }
             }
             // Puis on met les éléments créés et modifiés dans l'ordre de la liste.
             foreach ($elements as $element) {
                 if (array_key_exists(LISTE_ELEMENT_ACTION, $element)) {
                     switch ($element[LISTE_ELEMENT_ACTION]) {
                         case LISTE_ELEMACTION_AJOUTCONTENU:
                             GReponse::AjouterElementListeAjoutContenu($element[LISTE_ELEMENT_ID], $element[LISTE_ELEMENT_CONTENU]);
                             break;
                         case LISTE_ELEMACTION_CREAT:
                             GReponse::AjouterElementListeCreation($element[LISTE_ELEMENT_CONTENU]);
                             break;
                         case LISTE_ELEMACTION_MODIF:
                             if (array_key_exists(LISTE_ELEMENT_MODIFIE, $element) && $element[LISTE_ELEMENT_MODIFIE] === true) {
                                 GReponse::AjouterElementListeModification($element[LISTE_ELEMENT_CONTENU]);
                             }
                             break;
                     }
                 }
             }
         } else {
             GReponse::AjouterElementListe($liste->TypeSynchroPage(), $liste->NbPages());
         }
     }
 }
Example #8
0
 public static function GetDifferentielReferentielFichiersForSelect($nom)
 {
     $contexte = self::ContexteCourant();
     if (self::$referentiels[REF_TYPE_FICHIERS][$contexte][$nom][REF_FICHIERS_DIFFSELOK] === false) {
         self::$referentiels[REF_TYPE_FICHIERS][$contexte][$nom][REF_FICHIERS_DIFFSELOK] = true;
         $nouveauRef = self::GetReferentielFichiers($nom);
         $ancienRef = NULL;
         if ($contexte !== REF_CONTEXTE_AUCUN) {
             $ancienRef = GContexte::Referentiel($contexte, $nom, REF_TYPE_FICHIERS);
         } else {
             $ancienRef = GSession::Referentiel($nom, REF_TYPE_FICHIERS);
         }
         if ($ancienRef === NULL) {
             $ancienRef = array();
         }
         foreach ($nouveauRef as &$fichier) {
             foreach ($ancienRef as &$ancienFichier) {
                 if ($ancienFichier === $fichier) {
                     $ancienFichier = NULL;
                     $fichier = NULL;
                     break;
                 }
             }
         }
         $changementRef = false;
         $chemin = self::GetCheminReferentielFichiers($nom);
         foreach ($nouveauRef as &$fichier) {
             if ($fichier !== NULL) {
                 if ($changementRef === false) {
                     GReponse::AjouterElementSelect($nom);
                     $changementRef = true;
                 }
                 GReponse::AjouterElementSelectCreation($chemin . $fichier, $fichier, PATH_SERVER_HTTP . $chemin . $fichier);
             }
         }
         foreach ($ancienRef as &$ancienFichier) {
             if ($ancienFichier !== NULL) {
                 if ($changementRef === false && $ancienFichier !== NULL) {
                     GReponse::AjouterElementSelect($nom);
                     $changementRef = true;
                 }
                 GReponse::AjouterElementSelectSuppression($chemin . $ancienFichier);
             }
         }
     }
 }
        $mTypeGroupe = new MTypeGroupe(TYPEGROUPE_JEU);
        $mTypeGroupe->AjouterColSelection(COL_LIBELLE);
        $mTypeGroupe->Charger();
        $select->AjouterElement(-2, $mTypeGroupe->Libelle(), '', GSession::Groupe(COL_TYPEGROUPE) === TYPEGROUPE_JEU, false);
    }
    if ($mJeu != NULL && $mGroupe != NULL) {
        $select->AjouterCategorie($mJeu->Id(), $mJeu->Libelle());
        $select->AjouterElement($mGroupe->Id(), $mGroupe->Nom(), $mGroupe->Description(), true, false);
    }
    $selectGroupe->SetCadreBoutonsCache(1, 2);
    GContexte::AjouterContenu(CADRE_INFO_GROUPE, $selectGroupe);
} else {
    if (GSession::Groupe('change') == 1) {
        GReferentiel::AjouterReferentiel(COL_JEU, $mListeJeux, array(COL_ID, array(COL_LIBELLE, COL_LIBELLE)), true);
        GReferentiel::GetDifferentielReferentielForSelect(COL_JEU, COL_ID, array(COL_LIBELLE, COL_LIBELLE), '', $jeuId);
        $typeGroupe = GSession::Groupe(COL_TYPEGROUPE);
        if ($typeGroupe == TYPEGROUPE_COMMUNAUTE) {
            GReponse::AjouterElementSelect(COL_GROUPE);
            GReponse::AjouterElementSelectSelection(-1);
        } else {
            if ($typeGroupe == TYPEGROUPE_JEU) {
                GReponse::AjouterElementSelect(COL_GROUPE);
                GReponse::AjouterElementSelectSelection(-2);
            } else {
                GReferentiel::AjouterReferentiel(COL_GROUPE, $mListeGroupes, array(COL_ID, COL_NOM, COL_DESCRIPTION, COL_JEU), true);
                GReferentiel::GetDifferentielReferentielForSelect(COL_GROUPE, COL_ID, COL_NOM, COL_DESCRIPTION, $groupeId, COL_JEU, array(COL_JEU, COL_LIBELLE, COL_LIBELLE));
            }
        }
        GSession::Groupe('change', NULL, true);
    }
}
Example #10
0
 protected function ConstruireListe()
 {
     $divElem = NULL;
     if ($this->rechargement === false) {
         $this->AjouterClasse($this->prefixIdClass . LISTECLASS . $this->Niveau(), false);
         $this->AjouterClasse(LISTECLASS . $this->Niveau());
         // Construction de la partie triable de la liste si elle l'est.
         $this->ConstruireListeTriable();
         // Construction de la fonction appelée en cas de changement de page.
         $divChangePageFonc = new SBalise(BAL_DIV);
         $divChangePageFonc->AddClass(LISTE_JQ_PAGE_CHANGEFONC);
         $divChangePageFonc->SetText($this->foncAjaxRechargement);
         $divChangePageFonc->AddProp(PROP_STYLE, 'display: none;');
         $this->Attach($divChangePageFonc);
         // Construction des paramètres pour la fonction appelée en cas de changement de page.
         $divChangePageParam = new SBalise(BAL_DIV);
         $divChangePageParam->AddClass(LISTE_JQ_PAGE_CHANGEPARAM);
         $param = 'contexte=' . $this->contexte . '&' . $this->contexte . '[page][' . $this->TypeSynchro() . '][' . $this->Numero() . ']';
         $divChangePageParam->SetText(to_ajax($param));
         $divChangePageParam->AddProp(PROP_STYLE, 'display: none;');
         $this->Attach($divChangePageParam);
         // Construction du type de synchronisation de la liste (utilisé pour recharger une liste via ajax).
         $divTypeSynchro = new SBalise(BAL_DIV);
         $divTypeSynchro->AddClass(LISTE_JQ_TYPESYNCHRO);
         $divTypeSynchro->SetText($this->TypeSynchroPage());
         $divTypeSynchro->AddProp(PROP_STYLE, 'display: none;');
         $this->Attach($divTypeSynchro);
         // Construction du numéro de la liste (utilisé pour recharger une liste unique via ajax).
         $divNumero = new SBalise(BAL_DIV);
         $divNumero->AddClass(LISTE_JQ_NUMERO);
         $divNumero->SetText(strval($this->Numero()));
         $divNumero->AddProp(PROP_STYLE, 'display: none;');
         $this->Attach($divNumero);
         // Construction du niveau de la liste (utilisé pour savoir si la liste est contenu dans une autre).
         $divNiveau = new SBalise(BAL_DIV);
         $divNiveau->AddClass(LISTE_JQ_NIVEAU);
         $divNiveau->SetText(strval($this->Niveau()));
         $divNiveau->AddProp(PROP_STYLE, 'display: none;');
         $this->Attach($divNiveau);
         // Construction de la ligne de titre.
         $ligneTitre = $this->ConstruireLigneTitre();
         if ($ligneTitre !== NULL) {
             $this->Attach($ligneTitre);
         }
         // Construction d'une ligne de changement de page.
         $changePage = $this->ConstruireChangementPage();
         if ($changePage !== NULL) {
             $this->Attach($changePage);
         }
         $divElem = new SBalise(BAL_DIV);
         $divElem->AddClass(LISTE_JQ_LISTE);
         if ($this->Triable()) {
             $divElem->AddClass($this->typeLiaison);
         }
         $elemModele = $this->ConstruireElementModele();
         if ($elemModele !== NULL) {
             $divElem->Attach($elemModele);
         }
         $this->Attach($divElem);
     }
     // Construction des éléments de la liste.
     $ordre = 0;
     $poidsJavascriptMax = GSession::PoidsJavascriptMax();
     $noSupp = false;
     foreach ($this->elements as &$element) {
         if (GSession::PoidsJavascript() <= $poidsJavascriptMax) {
             $elem = $this->ConstruireElement($element, $ordre);
             if ($element[LISTE_ELEMENT_ACTION] == LISTE_ELEMACTION_CREAT) {
                 GSession::PoidsJavascript(8);
             } else {
                 if ($element[LISTE_ELEMENT_ACTION] == LISTE_ELEMACTION_MODIF && array_key_exists(LISTE_ELEMENT_MODIFIE, $element) && $element[LISTE_ELEMENT_MODIFIE] === true) {
                     GSession::PoidsJavascript(2);
                 }
             }
             if ($this->rechargement === false) {
                 $divElem->Attach($elem);
             } else {
                 $element[LISTE_ELEMENT_CONTENU] = $elem;
             }
             $ordre++;
         } else {
             $noSupp = true;
             GReponse::AjouterElementSuite($this->contexte);
             break;
         }
     }
     // Suppression des éléments qui ne font plus partie de la liste.
     if ($noSupp === false && $this->listeSuppressions !== NULL) {
         foreach ($this->listeSuppressions as $id => $elemSupp) {
             $elementSupp = array();
             $elementSupp[LISTE_ELEMENT_ID] = $id;
             $elementSupp[LISTE_ELEMENT_ACTION] = LISTE_ELEMACTION_SUPP;
             GSession::PoidsJavascript(1);
             $this->elements[] = $elementSupp;
             // Suppression du contexte.
             if (array_key_exists($id, $this->listeContexte)) {
                 unset($this->listeContexte[$id]);
             }
         }
     }
     if ($this->rechargement === false) {
         // Construction d'une ligne de changement de page.
         $changePage = $this->ConstruireChangementPage();
         if ($changePage !== NULL) {
             $this->Attach($changePage);
         }
         // Construction de l'élément de création.
         if ($this->HasDroitCreation()) {
             $elemCreat = $this->ConstruireElementCreation();
             if ($elemCreat) {
                 GSession::PoidsJavascript(8);
                 $this->Attach($elemCreat);
             }
         }
     } else {
         if ($this->HasDroitCreation()) {
             // Rechargement des listes pour l'élément création.
             foreach ($this->champs as $nomChamp => $champ) {
                 $this->GetDifferentielForListeElementCreation($nomChamp);
             }
         }
     }
     // Sauvegarde de la liste dans le contexte.
     // Si on a changé de page, on supprime l'ancienne liste du contexte.
     GContexte::Liste($this->contexte, $this->TypeSynchroPage(), $this->listeContexte);
 }