$mPresentation->Nom(GContexte::LirePost(COL_NOM));
        $mPresentation->CreateurJoueur(GSession::Joueur(COL_ID));
        $mPresentation->CreateurGroupe($groupe);
        if ($mPresentation->Nom() === NULL) {
            GLog::LeverException(EXF_0040, GSession::Libelle(LIB_PRS_NOMINVALIDE), true, false);
            $formulaire = false;
        }
        $retour = true;
        if ($formulaire === true) {
            $mPresentation->AjouterJointure(COL_VERSION, COL_ID, 0, NULL, SQL_RIGHT_JOIN);
            $mPresentation->AjouterColInsertionMaxExt(1, COL_VERSION, COL_ID);
            $retour = $mPresentation->Ajouter();
        }
        if ($formulaire === false || $retour === false) {
            GLog::LeverException(EXF_0041, GSession::Libelle(LIB_PRS_PRESNONCREEE), true, false);
        } else {
            GSession::PresentationModif($mPresentation->Id());
        }
    } else {
        $ongletContexte = GContexte::LireVariablePost($nomContexte, 'ongletContexte');
        $ancienOngletContexte = GContexte::LireVariableSession($nomContexte, 'ongletContexte');
        // Si on a changé d'onglet ou que l'on recharge toute la page.
        if ($ancienOngletContexte !== $ongletContexte) {
            GContexte::DesactiverContexte($ancienOngletContexte);
            GContexte::EcrireVariableSession($nomContexte, 'ongletContexte', $ongletContexte);
            GContexte::AjouterContexte($ongletContexte, true, false);
        } else {
            GContexte::ChargerContexte($ancienOngletContexte);
        }
    }
}
<?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);
require_once PATH_METIER . 'mPresentation.php';
require_once PATH_METIER . 'mPresentationModule.php';
require_once PATH_METIER . 'mTypePresentationModule.php';
require_once PATH_METIER . 'mListePresentationsModules.php';
require_once PATH_METIER . 'mListeTypesPresentationsModules.php';
$groupe = GSession::Groupe(COL_ID);
if ($groupe !== NULL && GDroit::ADroitPopErreur(FONC_PRS_CREERMODIFIER) === true) {
    if (SListe::IsChargementEtage() === true) {
        $cListeModificationPresentation = new cListeModificationPresentation('', 'ModifPres', $nomContexte, -1, -1, false, '', true, '', '', '', '', '', '', '', AJAXFONC_RECHARGER);
        $libelle = GSession::Libelle(LIB_PRS_CHAMP, true, true);
        $cListeModificationPresentation->AjouterElement($libelle . '10', $libelle, '', $libelle, $libelle, $libelle);
        $cListeModificationPresentation->AjouterElement($libelle . '11', $libelle, '', $libelle, $libelle, $libelle);
        $cListeModificationPresentation->AjouterElement($libelle . '12', $libelle, '', $libelle, $libelle, $libelle);
        GContexte::AjouterListe($cListeModificationPresentation);
    } else {
        $presentationModif = GSession::PresentationModif();
        $presentationModule = GSession::PresentationModule($module);
        if ($presentationModif !== $presentationModule || $dejaCharge === false) {
            GSession::PresentationModule($module, $presentationModif, true);
            $prefixIdClass = PIC_PRES;
            // Récupération du nom de fichier.
            $mPresentationModule = new MPresentationModule();
            $mPresentationModule->TypePresentationModule($module);
            $mTypePresentationModule = $mPresentationModule->TypePresentationModule();
            $mTypePresentationModule->AjouterColSelection(COL_NOMFICHIER);
            $mTypePresentationModule->Charger();
            $nomFichier = $mTypePresentationModule->NomFichier();
            /*********************************************/
            $cListeCssParties = new CListeCssParties($nomFichier, $presentationModif, $prefixIdClass, 'CssParties', $nomContexte, -1);
            $vue = new SOrganiseur(4, 1, true);
            $org = new SOrganiseur(5, 1, true);
 $select = $selectPresActive->AjouterInputSelect(1, 1, GSession::Libelle(LIB_PRS_PRESACTIVE), '', true, GContexte::FormaterVariable($nomContexte, COL_PRESENTATION . 'active'), '', '', '', '', '', '', '', $changeFonc, $changeParam);
 $select->AjouterElementsFromListe(COL_PRESENTATION . 'active', COL_ID, COL_NOM, '', GSession::PresentationActive());
 $selectPresActive->SetCadreBoutonsCache(1, 2);
 $elemPresActive = new SCentreur($selectPresActive);
 $selectPresModif = new SForm($prefixIdClass, 1, 2, false, false);
 $selectPresModif->SetCadreInputs(1, 1, 1, 1);
 $select = $selectPresModif->AjouterInputNewSelect(1, 1, GSession::Libelle(LIB_PRS_PRESMODIF), true, GContexte::FormaterVariable($nomContexte, COL_PRESENTATION . 'modif'), '', '', '', '', '', '', '', $changeFonc, $changeParam);
 $formCreerPres = new SForm($prefixIdClass, 2, 1);
 $formCreerPres->SetCadreInputs(1, 1, 1, 1);
 $formCreerPres->AjouterInputText(1, 1, GSession::Libelle(LIB_PRS_NOM), '', true, GContexte::FormaterVariable($nomContexte, COL_NOM), '', 1, 200, 40);
 $formCreerPres->SetCadreBoutons(2, 1, 1, 2);
 $bouton = $formCreerPres->AjouterInputButtonAjouterAuContexte(1, 1, $nomContexte);
 $bouton->AjouterParamRetour('nouvPres', '1');
 $formCreerPres->AjouterInputButtonAnnuler(1, 2);
 $select->AjouterFormulaire(GSession::Libelle(LIB_PRS_CREERPRES), $formCreerPres);
 $select->AjouterElementsFromListe(COL_PRESENTATION . 'modif', COL_ID, COL_NOM, '', GSession::PresentationModif());
 $selectPresModif->SetCadreBoutonsCache(1, 2);
 $elemPresModif = new SCentreur($selectPresModif);
 $classeurPres = new SClasseur($prefixIdClass, 'pres', true, true);
 $mListe = new MListeTypesPresentationsModules();
 $mListe->AjouterColSelection(COL_ID);
 $mListe->AjouterColSelection(COL_LIBELLE);
 $mListe->AjouterFiltreEgal(COL_ACTIF, true);
 $mListe->Charger();
 $liste = $mListe->GetListe();
 foreach ($liste as $mObjet) {
     GContexte::AjouterOnglet('pres', $mObjet->Libelle(), '', AJAXFONC_AJOUTERAUCONTEXTE, 'contexte=' . CONT_PRESENTATION . '&' . GContexte::FormaterVariable(CONT_PRESENTATION, 'ongletContexte') . '=' . CONT_PRESENTATIONMODULE . '_' . $mObjet->Id(), false, GContexte::IsContexteExiste(CONT_PRESENTATIONMODULE . '_' . $mObjet->Id(), true));
 }
 $org->AttacherCellule(1, 1, $elemInfo);
 $org->AttacherCellule(2, 1, new SSeparateur($prefixIdClass));
 $org->AttacherCellule(3, 1, $elemInfoPresActive);