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); } }
$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();
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); } } } } }
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);
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()); } } }
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); } }
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); }