diff options
Diffstat (limited to 'controller/admin.php')
| -rw-r--r-- | controller/admin.php | 88 |
1 files changed, 74 insertions, 14 deletions
diff --git a/controller/admin.php b/controller/admin.php index a35f28a..2f7a7cb 100644 --- a/controller/admin.php +++ b/controller/admin.php | |||
| @@ -2,16 +2,19 @@ | |||
| 2 | // controller/admin.php | 2 | // controller/admin.php |
| 3 | // | 3 | // |
| 4 | // utilisation du site en écriture | 4 | // utilisation du site en écriture |
| 5 | // version des pages en mode admin lorsque celui-ci crée ou modifie quelque chose | ||
| 5 | 6 | ||
| 6 | // pages du site en version admin | 7 | function melaineEdit($numArticle, $suppression) |
| 7 | function melaineEdit($numArticle) | ||
| 8 | { | 8 | { |
| 9 | $page_actuelle = "melaine"; | 9 | $page_actuelle = "melaine"; |
| 10 | 10 | ||
| 11 | // tableau $articles[] | 11 | $Articles = new ArticlesManager; |
| 12 | $croissant = False; | ||
| 13 | $articles = lireArticles($page_actuelle, $croissant); | ||
| 14 | 12 | ||
| 13 | // contenu de la page | ||
| 14 | $Articles->setPage($page_actuelle); | ||
| 15 | $Articles->getFiles(); | ||
| 16 | |||
| 17 | // nouvel article | ||
| 15 | if($numArticle == 0) | 18 | if($numArticle == 0) |
| 16 | { | 19 | { |
| 17 | $title = "Ajouter un article"; | 20 | $title = "Ajouter un article"; |
| @@ -19,10 +22,31 @@ function melaineEdit($numArticle) | |||
| 19 | } | 22 | } |
| 20 | else | 23 | else |
| 21 | { | 24 | { |
| 22 | $title = "Modifier un article"; | 25 | // nom de l'article ciblé (objet et session) |
| 23 | $texte = lireUnArticle($_SESSION['nomFichier']); | 26 | $Articles->findFileName($numArticle); |
| 27 | $_SESSION['nomFichier'] = $Articles->getFileName(); | ||
| 28 | |||
| 29 | // suppression | ||
| 30 | if($suppression) | ||
| 31 | { | ||
| 32 | $Articles->delete(); | ||
| 33 | header('Location: index.php?page=' . $page_actuelle); | ||
| 34 | } | ||
| 35 | // modification | ||
| 36 | else | ||
| 37 | { | ||
| 38 | $title = "Modifier un article"; | ||
| 39 | |||
| 40 | // contenu envoyé à l'éditeur | ||
| 41 | $texte = $Articles->getOne(); | ||
| 42 | } | ||
| 24 | } | 43 | } |
| 25 | 44 | ||
| 45 | // pour l'affichage des articles | ||
| 46 | //$Articles->setAscending(False); | ||
| 47 | $Articles->reverseFilesArray(); | ||
| 48 | $articles = $Articles->getAll(); | ||
| 49 | |||
| 26 | // traitements PHP pour l'éditeur | 50 | // traitements PHP pour l'éditeur |
| 27 | require('controller/ckeditor.php'); | 51 | require('controller/ckeditor.php'); |
| 28 | // sécurisation du contenu pré-existant inséré dans l'éditeur | 52 | // sécurisation du contenu pré-existant inséré dans l'éditeur |
| @@ -31,16 +55,52 @@ function melaineEdit($numArticle) | |||
| 31 | // NB: penser à ajouter au template la fonctionnalité "autosave" | 55 | // NB: penser à ajouter au template la fonctionnalité "autosave" |
| 32 | // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html | 56 | // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html |
| 33 | 57 | ||
| 34 | // variable $editeurHTML, $initial est inséré dedans | 58 | // création des morceaux en HTML avant assemblage |
| 35 | require('view/template-ckeditor.php'); | ||
| 36 | 59 | ||
| 37 | // création des morceaux en HTML avant assemblage, c'est-à-dire; | 60 | // variable $editeurHTML, on insère $texte dedans |
| 38 | // les variables $css, $js, $header et $content | 61 | require('view/template-ckeditor.php'); |
| 62 | |||
| 63 | // variables $css, $js, $header et $content | ||
| 39 | require('view/melaine.php'); | 64 | require('view/melaine.php'); |
| 40 | // le tableau de données ($articles) et l'éditeur ($editeurHTML) | 65 | // le tableau de données ($articles) et l'éditeur ($editeurHTML) font partie de $content |
| 41 | // font partie de $content | 66 | |
| 67 | // fin de l'assemblage | ||
| 68 | require('view/template.php'); | ||
| 69 | } | ||
| 42 | 70 | ||
| 43 | // assemblage de la page! | 71 | function discoEdit($numArticle, $suppression) |
| 72 | { | ||
| 73 | $page_actuelle = "discographie"; | ||
| 74 | $title = "Discographie"; | ||
| 75 | |||
| 76 | // modèle | ||
| 77 | $Albums = new AlbumsManager; | ||
| 78 | $texte = ''; | ||
| 79 | |||
| 80 | // traitements PHP pour l'éditeur | ||
| 81 | require('controller/ckeditor.php'); | ||
| 82 | // sécurisation du contenu pré-existant inséré dans l'éditeur | ||
| 83 | $texte = preparationCKeditor($numArticle, $texte); | ||
| 84 | |||
| 85 | // variable $additionalInputs | ||
| 86 | ob_start(); | ||
| 87 | ?> | ||
| 88 | <p><i>Infos qui seront affichées sur cette page:</i></p> | ||
| 89 | <label for="titre" >Titre</label> | ||
| 90 | <input type="text" name="titre" required ><br /> | ||
| 91 | <label for="annee" >Année</label> | ||
| 92 | <input type="text" name="annee" ><br /> | ||
| 93 | <label for="pochette" >Pochette du disque (jpg ou png)</label> | ||
| 94 | <input type="file" name="pochette" > | ||
| 95 | <br /><br /> | ||
| 96 | <?php | ||
| 97 | $additionalInputs = ob_get_clean(); | ||
| 98 | |||
| 99 | // variable $editeurHTML, on insère $texte dedans | ||
| 100 | require('view/template-ckeditor.php'); | ||
| 101 | // variables $css, $js et $content | ||
| 102 | require('view/discographie.php'); | ||
| 103 | // fin de l'assemblage | ||
| 44 | require('view/template.php'); | 104 | require('view/template.php'); |
| 45 | } | 105 | } |
| 46 | 106 | ||
