fileCode = $fileCode; $_SESSION['target'] = $Articles->fileCode; // suppression if($suppression) { $Articles->delete(); // redirection immédiate avant affichage header('Location: index.php?page=' . $page_actuelle); exit(); } // modification else { $title = "Modifier un article"; $texte = $Articles->readOne(); // entrée de l'éditeur } } // ajout des données dans $Articles->fileList['content'] if(!empty($Articles->fileList)) { $Articles->readAll(); $Articles->fileList = array_reverse($Articles->fileList); } // sécurisation du contenu pré-existant inséré dans l'éditeur if(!empty($fileCode) && !$suppression) { $fileCodeArgument = '&article=' . $fileCode; require('controller/ckeditor.php'); $texte = preparationCKeditor($texte); } else { $fileCodeArgument = ''; } // NB: penser à ajouter au template la fonctionnalité "autosave" // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html // morceaux en HTML à assembler // variable $editeurHTML, contient $texte require('view/template-formulaires.php'); // variables $css, $js, $header et $content, // $content contient $articles et $editeurHTML require('view/melaine.php'); // fin de l'assemblage require('view/template.php'); } function discoEdit($fileCode, $suppression) { $page_actuelle = "discographie"; $title = "Discographie"; // modèle $Albums = new Album($page_actuelle); $Albums->makeFileList(); // contenu: JSON, HTML, noms et chemins des fichiers $Albums->readAll(); if(!empty($Albums->fileList)) { $Albums->fileList = array_reverse($Albums->fileList); } //var_dump($Albums->fileList); // nouvel album if($fileCode == '') { $title = "Ajouter un album"; $imageFormulaire = ''; // formulaires vides $vignette = ['', '', '']; $texte = ''; } else { // album ciblé $Albums->fileCode = $fileCode; // suppression if($suppression) { $Albums->delete(); header('Location: index.php?page=' . $page_actuelle); exit(); } // modification else { $_SESSION['target'] = $fileCode; $title = "Modifier un album"; for($i = 0; $i < $Albums->fileListCount; $i++) { if($fileCode == $Albums->fileList[$i]['fileCode']) { // json $vignette[0] = $Albums->fileList[$i]['titre']; $vignette[1] = $Albums->fileList[$i]['annee']; $vignette[2] = $Albums->fileList[$i]['pochette']; // html $texte = $Albums->fileList[$i]['HTMLcontent']; // image affichée à côté des formulaires if(!empty($vignette[2])) { $imageFormulaire = '
'; } else { $imageFormulaire = ''; } } } } } // traitements PHP pour l'éditeur // sécurisation du contenu pré-existant inséré dans l'éditeur if(!empty($fileCode) && !$suppression && !empty($texte)) { // dans l'adresse dans la balise
$fileCodeArgument = '&article=' . $fileCode; require('controller/ckeditor.php'); $texte = preparationCKeditor($texte); } else { $fileCodeArgument = ''; } // préremplir le champ // c'est normallement impossible // tri des albums avec l'année dans le .json // noms des fichiers JSON //$albumNamesJSON = $Albums->fileList; //$annees = []; //for($i = 0; $i < $Albums->fileListCount; $i++) //{ // une case supplémentaire contient le "fileCode" //$albumsJSON[$i][3] = pathinfo($albumNamesJSON[$i])['filename']; //$albumsJSON[$i][3] = pathinfo($Albums->fileList[$i]['fileCode'])['filename']; //$annees[$i] = $albumsJSON[$i][1]; //} //var_dump($annee); die(); // tri d'un tableau multidimensionnel //array_multisort($annees, $albumsJSON); // liens dans la page et le menu chronologie // ce dernier comporte une ancre lorsque le html n'existe pas /*$lienAlbum = []; $avecLien = []; $linkDiscoChrono = [];*/ for($i = 0; $i < $Albums->fileListCount; $i++) { if(file_exists('data/discographie/html/' . $Albums->fileList[$i]['fileCode'] . '.html')) { /*$lienAlbum[$i] = 'page=album&album_name=' . $Albums->fileList[$i]['titre'] . '&file_code=' . $Albums->fileList[$i]['fileCode'];*/ $lienAlbum[$i] = 'page=album&file_code=' . $Albums->fileList[$i]['fileCode']; $avecLien[$i] = true; $linkDiscoChrono[$i] = 'linkChrono'; // css } else { $lienAlbum[$i] = 'page=discographie#' . $Albums->fileList[$i]['titre']; $avecLien[$i] = false; $linkDiscoChrono[$i] = 'noLinkChrono'; // css } $lienBoutonModif[$i] = 'page=discographie&action=edition&file_code=' . $Albums->fileList[$i]['fileCode']; } // morceaux en HTML à assembler // variable $editeurHTML, contient $texte require('view/template-formulaires.php'); // variables $css, $js, $header et $content, // $content contient ???? et $editeurHTML require('view/discographie.php'); // fin de l'assemblage require('view/template.php'); }