diff options
-rw-r--r-- | controller/admin.php | 23 | ||||
-rw-r--r-- | controller/backup.php | 3 | ||||
-rw-r--r-- | controller/installation.php | 2 | ||||
-rw-r--r-- | controller/visitor.php | 35 | ||||
-rw-r--r-- | index.php | 9 | ||||
-rw-r--r-- | public/css/donnees_hors_editeur.css | 3 | ||||
-rw-r--r-- | public/css/menu.css | 28 | ||||
-rw-r--r-- | public/file_upload.js | 6 | ||||
-rw-r--r-- | public/icone_modifier.png | bin | 0 -> 8809 bytes | |||
-rw-r--r-- | public/icone_supprimer.png | bin | 7277 -> 7087 bytes | |||
-rw-r--r-- | view/articlesContent.php | 102 | ||||
-rw-r--r-- | view/discographie.php | 3 | ||||
-rw-r--r-- | view/menu.php | 30 | ||||
-rw-r--r-- | view/pageArticlesSimples.php | 123 | ||||
-rw-r--r-- | à faire après livraison.txt | 6 |
15 files changed, 223 insertions, 150 deletions
diff --git a/controller/admin.php b/controller/admin.php index f092135..c79f761 100644 --- a/controller/admin.php +++ b/controller/admin.php | |||
@@ -1,7 +1,7 @@ | |||
1 | <?php | 1 | <?php |
2 | // controller/admin.php | 2 | // controller/admin.php |
3 | // | 3 | // |
4 | // utilisation du site en écriture (admin uniquement) | 4 | // utilisation du site en écriture (admin uniquement): |
5 | // éditeur ouvert ou suppression d'un élément | 5 | // éditeur ouvert ou suppression d'un élément |
6 | 6 | ||
7 | function pageArticlesSimplesAdmin(string $page, string $title, string $headerPaintedTitle, $fileCode, int $suppression) | 7 | function pageArticlesSimplesAdmin(string $page, string $title, string $headerPaintedTitle, $fileCode, int $suppression) |
@@ -73,16 +73,33 @@ function pageArticlesSimplesAdmin(string $page, string $title, string $headerPai | |||
73 | // NB: penser à ajouter au template la fonctionnalité "autosave" | 73 | // NB: penser à ajouter au template la fonctionnalité "autosave" |
74 | // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html | 74 | // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html |
75 | 75 | ||
76 | // morceaux en HTML à assembler | 76 | // Assemblage |
77 | |||
77 | // variable $editeurHTML, contient $texte | 78 | // variable $editeurHTML, contient $texte |
78 | require('view/template-formulaires.php'); | 79 | require('view/template-formulaires.php'); |
79 | // variables $css, $js, $header et $content, | 80 | // variables $css, $js, $header, $content et $headerImage |
80 | // $content contient $articles et $editeurHTML | 81 | // $content contient $articles et $editeurHTML |
82 | require('view/articlesContent.php'); | ||
83 | if($page == 'menu') | ||
84 | { | ||
85 | // variables $css, $js, $header et $content | ||
86 | require('view/menu.php'); | ||
87 | } | ||
81 | require('view/pageArticlesSimples.php'); | 88 | require('view/pageArticlesSimples.php'); |
82 | // fin de l'assemblage | 89 | // fin de l'assemblage |
83 | require('view/template.php'); | 90 | require('view/template.php'); |
84 | } | 91 | } |
85 | 92 | ||
93 | // un article (= actualité) | ||
94 | function menuEdit($fileCode, $suppression) | ||
95 | { | ||
96 | $page = "menu"; | ||
97 | $title = "Melaine Favennec - menu BD"; | ||
98 | $headerPaintedTitle = 'Choisissez une rubrique'; | ||
99 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
100 | } | ||
101 | |||
102 | // plusieurs articles | ||
86 | function melaineEdit($fileCode, $suppression) | 103 | function melaineEdit($fileCode, $suppression) |
87 | { | 104 | { |
88 | $page = "melaine"; | 105 | $page = "melaine"; |
diff --git a/controller/backup.php b/controller/backup.php index b1a2491..62f08a1 100644 --- a/controller/backup.php +++ b/controller/backup.php | |||
@@ -64,7 +64,8 @@ function createZip($destinationPath, $zipFileName, array $targetDirectories, arr | |||
64 | // recherche récursive dans les dossiers dans $directories | 64 | // recherche récursive dans les dossiers dans $directories |
65 | foreach($targetDirectories as $path) | 65 | foreach($targetDirectories as $path) |
66 | { | 66 | { |
67 | // les deux lignes suivantes reviennent à utiliser le paramètre "-r" dans la console | 67 | // les deux lignes suivantes permettent de le faire |
68 | // c'est comme utiliser le paramètre "-r" dans la console | ||
68 | $directory = new RecursiveDirectoryIterator($path); | 69 | $directory = new RecursiveDirectoryIterator($path); |
69 | $iterator = new RecursiveIteratorIterator($directory); | 70 | $iterator = new RecursiveIteratorIterator($directory); |
70 | 71 | ||
diff --git a/controller/installation.php b/controller/installation.php index 3b940c8..1c90026 100644 --- a/controller/installation.php +++ b/controller/installation.php | |||
@@ -83,7 +83,7 @@ function installation() | |||
83 | createIndexPHP('data/index.php', $droitsFichiers); | 83 | createIndexPHP('data/index.php', $droitsFichiers); |
84 | } | 84 | } |
85 | 85 | ||
86 | $listePages = array('melaine', 'musique', 'discographie', 'presse', 'jaime', 'peinture', 'archives', 'legal'); | 86 | $listePages = array('menu', 'melaine', 'musique', 'discographie', 'presse', 'jaime', 'peinture', 'archives', 'legal'); |
87 | foreach ($listePages as $page) | 87 | foreach ($listePages as $page) |
88 | { | 88 | { |
89 | if(!file_exists('data/' . $page)) | 89 | if(!file_exists('data/' . $page)) |
diff --git a/controller/visitor.php b/controller/visitor.php index 38f24e8..333c628 100644 --- a/controller/visitor.php +++ b/controller/visitor.php | |||
@@ -1,7 +1,8 @@ | |||
1 | <?php | 1 | <?php |
2 | // controller/visitor.php | 2 | // controller/visitor.php |
3 | // | 3 | // |
4 | // affichage du site en lecture seul (visiteur ou admin) | 4 | // affichage du site en lecture seul: |
5 | // mode visiteur ou mode admin sans éditeur ouvert | ||
5 | 6 | ||
6 | // pages du sites | 7 | // pages du sites |
7 | function accueil() | 8 | function accueil() |
@@ -16,18 +17,7 @@ function accueil() | |||
16 | require('view/template.php'); | 17 | require('view/template.php'); |
17 | } | 18 | } |
18 | 19 | ||
19 | function menu() | 20 | // toutes les pages du menu sauf discographie |
20 | { | ||
21 | $title = "Melaine Favennec - menu BD"; | ||
22 | $page = "menu"; | ||
23 | |||
24 | // variables $css, $js, $header et $content | ||
25 | require('view/menu.php'); | ||
26 | // fin de l'assemblage | ||
27 | require('view/template.php'); | ||
28 | } | ||
29 | |||
30 | // toutes celles du menu sauf: menu et discographie | ||
31 | function pageArticlesSimplesVisitor(string $page, string $title, string $headerPaintedTitle) | 21 | function pageArticlesSimplesVisitor(string $page, string $title, string $headerPaintedTitle) |
32 | { | 22 | { |
33 | // infos sur les fichiers $Articles->fileList | 23 | // infos sur les fichiers $Articles->fileList |
@@ -45,12 +35,27 @@ function pageArticlesSimplesVisitor(string $page, string $title, string $headerP | |||
45 | $Articles->fileList = array_reverse($Articles->fileList); | 35 | $Articles->fileList = array_reverse($Articles->fileList); |
46 | } | 36 | } |
47 | 37 | ||
48 | // variables $css, $js, $header, $content et $headerImage | 38 | // Assemblage |
39 | require('view/articlesContent.php'); | ||
40 | if($page == 'menu') | ||
41 | { | ||
42 | // variables $css, $js, $header et $content | ||
43 | require('view/menu.php'); | ||
44 | } | ||
49 | require('view/pageArticlesSimples.php'); | 45 | require('view/pageArticlesSimples.php'); |
50 | // HTML | ||
51 | require('view/template.php'); | 46 | require('view/template.php'); |
52 | } | 47 | } |
53 | 48 | ||
49 | // un article (= actualité) | ||
50 | function menuVisitor() | ||
51 | { | ||
52 | $page = "menu"; | ||
53 | $title = "Melaine Favennec - menu BD"; | ||
54 | $headerPaintedTitle = 'Choisissez une rubrique'; | ||
55 | pageArticlesSimplesVisitor($page, $title, $headerPaintedTitle); | ||
56 | } | ||
57 | |||
58 | // plusieurs articles | ||
54 | function melaineVisitor() | 59 | function melaineVisitor() |
55 | { | 60 | { |
56 | $page = "melaine"; | 61 | $page = "melaine"; |
@@ -125,7 +125,8 @@ if(isset($_GET['action']) && isset($_GET['page'])) | |||
125 | require('controller/visitor.php'); | 125 | require('controller/visitor.php'); |
126 | 126 | ||
127 | // modèle | 127 | // modèle |
128 | if(isset($_GET['page']) && $_GET['page'] != 'menu') | 128 | //if(isset($_GET['page']) && $_GET['page'] != 'menu') |
129 | if(isset($_GET['page'])) // utile? | ||
129 | { | 130 | { |
130 | require('model/Article.php'); | 131 | require('model/Article.php'); |
131 | if($_GET['page'] == 'discographie' || $_GET['page'] == 'album') | 132 | if($_GET['page'] == 'discographie' || $_GET['page'] == 'album') |
@@ -151,7 +152,7 @@ else | |||
151 | // page du site demandée | 152 | // page du site demandée |
152 | if(isset($_GET['page'])) | 153 | if(isset($_GET['page'])) |
153 | { | 154 | { |
154 | $pagesArticlesSimples = ['melaine', 'musique', 'presse', 'jaime', 'peinture', 'archives', 'legal']; | 155 | $pagesArticlesSimples = ['menu', 'melaine', 'musique', 'presse', 'jaime', 'peinture', 'archives', 'legal']; |
155 | 156 | ||
156 | // page d'accueil | 157 | // page d'accueil |
157 | if($_GET['page'] == 'accueil') | 158 | if($_GET['page'] == 'accueil') |
@@ -159,10 +160,10 @@ if(isset($_GET['page'])) | |||
159 | accueil(); | 160 | accueil(); |
160 | } | 161 | } |
161 | // page menu | 162 | // page menu |
162 | elseif($_GET['page'] == 'menu') | 163 | /*elseif($_GET['page'] == 'menu') |
163 | { | 164 | { |
164 | menu(); | 165 | menu(); |
165 | } | 166 | }*/ |
166 | // pages avec articles simples | 167 | // pages avec articles simples |
167 | elseif(in_array($_GET['page'], $pagesArticlesSimples)) | 168 | elseif(in_array($_GET['page'], $pagesArticlesSimples)) |
168 | { | 169 | { |
diff --git a/public/css/donnees_hors_editeur.css b/public/css/donnees_hors_editeur.css index d54d7ff..409dc59 100644 --- a/public/css/donnees_hors_editeur.css +++ b/public/css/donnees_hors_editeur.css | |||
@@ -23,7 +23,8 @@ input[type="checkbox"]:checked{border: none; background: #26ab33;} | |||
23 | td p{margin: 0px;} | 23 | td p{margin: 0px;} |
24 | 24 | ||
25 | .image{width: fit-content;margin: 0px;text-align: center;margin: auto;/*height: 100%;*/} | 25 | .image{width: fit-content;margin: 0px;text-align: center;margin: auto;/*height: 100%;*/} |
26 | .image img{width: 100%;} | 26 | /*.image img{width: 100%;}*/ |
27 | img{max-width: 100%;} | ||
27 | .image-style-side{float: right;} | 28 | .image-style-side{float: right;} |
28 | .image-style-side:not(.image_resized){max-width: 50%;} | 29 | .image-style-side:not(.image_resized){max-width: 50%;} |
29 | .image>figcaption{padding: 7px; text-align: center; font-size: small; background-color: #f0f0f0;} | 30 | .image>figcaption{padding: 7px; text-align: center; font-size: small; background-color: #f0f0f0;} |
diff --git a/public/css/menu.css b/public/css/menu.css index 4c521c0..559a594 100644 --- a/public/css/menu.css +++ b/public/css/menu.css | |||
@@ -5,6 +5,34 @@ | |||
5 | color: #e8c5c0; | 5 | color: #e8c5c0; |
6 | } | 6 | } |
7 | 7 | ||
8 | .boutonArticle | ||
9 | { | ||
10 | border-bottom: 3px black double; | ||
11 | } | ||
12 | .boutonNouvelArticle | ||
13 | { | ||
14 | font-size: 90%; | ||
15 | } | ||
16 | .boutonArticle a | ||
17 | { | ||
18 | padding: 2px; | ||
19 | border: 4px black groove; | ||
20 | } | ||
21 | |||
22 | .sectionActu | ||
23 | {} | ||
24 | |||
25 | header h3 | ||
26 | { | ||
27 | text-align: center; | ||
28 | } | ||
29 | |||
30 | .articleActu > *:not(.boutonArticle) | ||
31 | { | ||
32 | max-width: 50%; | ||
33 | margin: auto; | ||
34 | } | ||
35 | |||
8 | #contenu | 36 | #contenu |
9 | { | 37 | { |
10 | display: flex; | 38 | display: flex; |
diff --git a/public/file_upload.js b/public/file_upload.js index 8106806..dd47803 100644 --- a/public/file_upload.js +++ b/public/file_upload.js | |||
@@ -1,8 +1,8 @@ | |||
1 | // public/file_upload.js | 1 | // public/file_upload.js |
2 | 2 | ||
3 | // envoie gros fichier ZIP | 3 | // envoie d'un gros fichier ZIP en contournant la limite du php.ini |
4 | // ce fichier est "caché", le serveur ne l'envoit | 4 | // ce fichier est "caché", le serveur ne l'envoit qu'à |
5 | // qu'un utilisateur connecté et sur la page "restauration" | 5 | // un utilisateur connecté et sur la page "restauration" |
6 | 6 | ||
7 | // -> input file onchange | 7 | // -> input file onchange |
8 | function sendFileSize() | 8 | function sendFileSize() |
diff --git a/public/icone_modifier.png b/public/icone_modifier.png new file mode 100644 index 0000000..3691389 --- /dev/null +++ b/public/icone_modifier.png | |||
Binary files differ | |||
diff --git a/public/icone_supprimer.png b/public/icone_supprimer.png index bfcf263..a9f3eaf 100644 --- a/public/icone_supprimer.png +++ b/public/icone_supprimer.png | |||
Binary files differ | |||
diff --git a/view/articlesContent.php b/view/articlesContent.php new file mode 100644 index 0000000..fe71204 --- /dev/null +++ b/view/articlesContent.php | |||
@@ -0,0 +1,102 @@ | |||
1 | <?php | ||
2 | // view/articlesContent.php | ||
3 | |||
4 | // variable $articlesContent | ||
5 | ob_start(); | ||
6 | if($_SESSION['admin'] == 1) | ||
7 | { | ||
8 | // à la place du bouton après rechargement | ||
9 | if(isset($_GET['action']) && $_GET['action'] == 'editor' && !isset($_GET['file_code'])) | ||
10 | { | ||
11 | $style = 'class="articleAvecEditeur"'; | ||
12 | ?> | ||
13 | <div <?= $style ?>> | ||
14 | <h3>Rédiger un nouvel article</h3> | ||
15 | <?php | ||
16 | echo($editeurHTML); // injection de template-formulaires.php | ||
17 | } | ||
18 | |||
19 | // bouton | ||
20 | else | ||
21 | { | ||
22 | ?> | ||
23 | <div> | ||
24 | <p class="boutonArticle boutonNouvelArticle" > | ||
25 | <a href="index.php?page=<?= $page ?>&action=editor" > | ||
26 | Nouvel article | ||
27 | </a> | ||
28 | </p> | ||
29 | <?php | ||
30 | } | ||
31 | ?> | ||
32 | </div> | ||
33 | <?php | ||
34 | } | ||
35 | |||
36 | // PAGINATION ?? | ||
37 | |||
38 | |||
39 | // tableau articles[] du plus récent au plus ancien | ||
40 | for($i = 0; $i < $Articles->fileListCount; $i++) | ||
41 | { | ||
42 | // la div invisible sert à la compensation des liens d'ancre # | ||
43 | |||
44 | // article modifié sur fond coloré | ||
45 | if(isset($fileCode) && $Articles->fileList[$i]['fileCode'] == $fileCode) | ||
46 | { | ||
47 | $style = 'class="articleAvecEditeur"'; | ||
48 | } | ||
49 | elseif($page == 'menu') | ||
50 | { | ||
51 | $style = 'class="articleActu"'; | ||
52 | } | ||
53 | else | ||
54 | { | ||
55 | $style = ''; | ||
56 | } | ||
57 | ?> | ||
58 | <div class="zoneVideNav" ></div> | ||
59 | <article id="<?= $Articles->fileList[$i]['fileCode'] ?>"> | ||
60 | <div <?= $style ?>> | ||
61 | <?php | ||
62 | |||
63 | // remplacer un article par l'éditeur | ||
64 | if($_SESSION['admin'] == 1 && isset($_GET['action']) && $_GET['action'] == 'editor' && isset($_GET['file_code']) | ||
65 | && $_GET['file_code'] == $Articles->fileList[$i]['fileCode'] | ||
66 | ) | ||
67 | { | ||
68 | // on pourrait utiliser ici le timedate, ou encore le nom de l'article | ||
69 | ?> | ||
70 | <h3>Modification d'un article</h3> | ||
71 | <?php | ||
72 | echo($editeurHTML); // injection de template-editor.php | ||
73 | } | ||
74 | |||
75 | // placer un article | ||
76 | else | ||
77 | { | ||
78 | // et voila | ||
79 | echo($Articles->fileList[$i]['content'] . "\n"); | ||
80 | |||
81 | // bouton | ||
82 | if($_SESSION['admin'] == 1) | ||
83 | { | ||
84 | ?> | ||
85 | <p class="boutonArticle" > | ||
86 | <a href="index.php?page=<?= $page ?>&action=editor&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>#<?= $Articles->fileList[$i]['fileCode'] ?>" > | ||
87 | Modifier cet article | ||
88 | </a> | ||
89 | <!-- un espace --> | ||
90 | <a href="index.php?page=<?= $page ?>&action=suppression&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" > | ||
91 | Supprimer cet article | ||
92 | </a> | ||
93 | </p> | ||
94 | <?php | ||
95 | } | ||
96 | } | ||
97 | ?> | ||
98 | </div> | ||
99 | </article> | ||
100 | <?php | ||
101 | } | ||
102 | $ArticlesContent = ob_get_clean(); \ No newline at end of file | ||
diff --git a/view/discographie.php b/view/discographie.php index 552eeab..2220715 100644 --- a/view/discographie.php +++ b/view/discographie.php | |||
@@ -149,9 +149,8 @@ for($i = 0; $i < $Albums->fileListCount; $i++) | |||
149 | ?> | 149 | ?> |
150 | <p> | 150 | <p> |
151 | <a href="index.php?<?= $lienBoutonModif[$i] ?>" > | 151 | <a href="index.php?<?= $lienBoutonModif[$i] ?>" > |
152 | Modifier l'album | 152 | <img src="public/icone_modifier.png" > |
153 | </a> | 153 | </a> |
154 | <!-- --><!-- un espace --> | ||
155 | <a href="index.php?page=discographie&action=suppression&file_code=<?= $Albums->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" > | 154 | <a href="index.php?page=discographie&action=suppression&file_code=<?= $Albums->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" > |
156 | <img src="public/icone_supprimer.png" > | 155 | <img src="public/icone_supprimer.png" > |
157 | </a> | 156 | </a> |
diff --git a/view/menu.php b/view/menu.php index 719c036..9ca47d7 100644 --- a/view/menu.php +++ b/view/menu.php | |||
@@ -1,33 +1,7 @@ | |||
1 | <?php | 1 | <?php |
2 | // view/menu.php | 2 | // view/menu.php |
3 | 3 | ||
4 | // variable $css | 4 | // variable $menu |
5 | ob_start(); | ||
6 | ?> | ||
7 | <link rel="stylesheet" type="text/css" href="public/css/<?= $page ?>.css" /> | ||
8 | <?php | ||
9 | $css = ob_get_clean(); | ||
10 | |||
11 | //variable $js | ||
12 | ob_start(); | ||
13 | ?> | ||
14 | <script type="text/javascript" src="public/main.js" ></script> | ||
15 | <?php | ||
16 | $js = ob_get_clean(); | ||
17 | |||
18 | // variable $header | ||
19 | ob_start(); | ||
20 | echo "\n\n"; | ||
21 | ?> | ||
22 | <header> | ||
23 | <div id="titre" > | ||
24 | <div class="police_titre" >Choisissez une rubrique</div> | ||
25 | </div> | ||
26 | </header> | ||
27 | <?php | ||
28 | $header = ob_get_clean(); | ||
29 | |||
30 | // variable $content | ||
31 | ob_start(); | 5 | ob_start(); |
32 | echo "\n"; | 6 | echo "\n"; |
33 | ?> | 7 | ?> |
@@ -69,4 +43,4 @@ echo "\n"; | |||
69 | <a id="hey_ho" href="index.php?page=discographie" ></a> | 43 | <a id="hey_ho" href="index.php?page=discographie" ></a> |
70 | </div> | 44 | </div> |
71 | <?php | 45 | <?php |
72 | $content = ob_get_clean(); \ No newline at end of file | 46 | $menu = ob_get_clean(); \ No newline at end of file |
diff --git a/view/pageArticlesSimples.php b/view/pageArticlesSimples.php index 88cce4c..34f5dca 100644 --- a/view/pageArticlesSimples.php +++ b/view/pageArticlesSimples.php | |||
@@ -3,13 +3,23 @@ | |||
3 | 3 | ||
4 | // variable $css | 4 | // variable $css |
5 | ob_start(); | 5 | ob_start(); |
6 | if($page == 'menu') | ||
7 | { | ||
8 | ?> | ||
9 | <link rel="stylesheet" type="text/css" href="public/css/menu.css" /> | ||
10 | <?php | ||
11 | } | ||
12 | else | ||
13 | { | ||
6 | ?> | 14 | ?> |
7 | <link rel="stylesheet" type="text/css" href="public/css/pages_articles_simples.css" /> | 15 | <link rel="stylesheet" type="text/css" href="public/css/pages_articles_simples.css" /> |
16 | <?php | ||
17 | } | ||
18 | ?> | ||
8 | <link rel="stylesheet" type="text/css" href="public/css/donnees_hors_editeur.css" /> | 19 | <link rel="stylesheet" type="text/css" href="public/css/donnees_hors_editeur.css" /> |
9 | <?php | 20 | <?php |
10 | $css = ob_get_clean(); | 21 | $css = ob_get_clean(); |
11 | 22 | ||
12 | |||
13 | //variable $js | 23 | //variable $js |
14 | ob_start(); | 24 | ob_start(); |
15 | ?> | 25 | ?> |
@@ -51,107 +61,40 @@ ob_start(); | |||
51 | echo "\n"; | 61 | echo "\n"; |
52 | ?> | 62 | ?> |
53 | <header> | 63 | <header> |
64 | |||
65 | <?php | ||
66 | if($page == 'menu' && !empty($ArticlesContent)) | ||
67 | { | ||
68 | ?> | ||
69 | <h3>Actualité</h3> | ||
70 | <div class="sectionActu" > | ||
71 | <?= $ArticlesContent ?> | ||
72 | </div> | ||
73 | <?php | ||
74 | } | ||
75 | ?> | ||
54 | <div id="titre" > | 76 | <div id="titre" > |
55 | <div class="police_titre" ><?= $headerPaintedTitle ?></div> | 77 | <div class="police_titre" ><?= $headerPaintedTitle ?></div> |
56 | </div> | 78 | </div> |
57 | <?= $headerImage ?> | 79 | <?php |
80 | if($page != 'menu') | ||
81 | { | ||
82 | echo($headerImage); | ||
83 | } | ||
84 | ?> | ||
58 | </header> | 85 | </header> |
59 | <?php | 86 | <?php |
60 | $header = ob_get_clean(); | 87 | $header = ob_get_clean(); |
61 | 88 | ||
62 | 89 | ||
63 | |||
64 | // variable $content | 90 | // variable $content |
65 | ob_start(); | 91 | ob_start(); |
66 | if($_SESSION['admin'] == 1) | 92 | if($page == 'menu') |
67 | { | 93 | { |
68 | // à la place du bouton après rechargement | 94 | echo($menu); |
69 | if(isset($_GET['action']) && $_GET['action'] == 'editor' && !isset($_GET['file_code'])) | ||
70 | { | ||
71 | $style = 'class="articleAvecEditeur"'; | ||
72 | ?> | ||
73 | <div <?= $style ?>> | ||
74 | <h3>Rédiger un nouvel article</h3> | ||
75 | <?php | ||
76 | echo($editeurHTML); // injection de template-editor.php | ||
77 | } | ||
78 | |||
79 | // bouton | ||
80 | else | ||
81 | { | ||
82 | ?> | ||
83 | <div> | ||
84 | <p class="boutonArticle boutonNouvelArticle" > | ||
85 | <a href="index.php?page=<?= $page ?>&action=editor" > | ||
86 | Nouvel article | ||
87 | </a> | ||
88 | </p> | ||
89 | <?php | ||
90 | } | ||
91 | ?> | ||
92 | </div> | ||
93 | <?php | ||
94 | } | 95 | } |
95 | 96 | else | |
96 | // on pourrait paginer avec des onglets de par exemple 10 articles | ||
97 | |||
98 | // tableau articles[] du plus récent au plus ancien | ||
99 | for($i = 0; $i < $Articles->fileListCount; $i++) | ||
100 | { | 97 | { |
101 | // la div invisible sert à la compensation des liens d'ancre # | 98 | echo($ArticlesContent); |
102 | |||
103 | // article modifié sur fond coloré | ||
104 | if(isset($fileCode) && $Articles->fileList[$i]['fileCode'] == $fileCode) | ||
105 | { | ||
106 | $style = 'class="articleAvecEditeur"'; | ||
107 | } | ||
108 | else | ||
109 | { | ||
110 | $style = ''; | ||
111 | } | ||
112 | ?> | ||
113 | <div class="zoneVideNav" ></div> | ||
114 | <article id="<?= $Articles->fileList[$i]['fileCode'] ?>"> | ||
115 | <div <?= $style ?>> | ||
116 | <?php | ||
117 | |||
118 | // remplacer un article par l'éditeur | ||
119 | if($_SESSION['admin'] == 1 && isset($_GET['action']) && $_GET['action'] == 'editor' && isset($_GET['file_code']) | ||
120 | && $_GET['file_code'] == $Articles->fileList[$i]['fileCode'] | ||
121 | ) | ||
122 | { | ||
123 | // on pourrait utiliser ici le timedate, ou encore le nom de l'article | ||
124 | ?> | ||
125 | <h3>Modification d'un article</h3> | ||
126 | <?php | ||
127 | echo($editeurHTML); // injection de template-editor.php | ||
128 | } | ||
129 | |||
130 | // placer un article | ||
131 | else | ||
132 | { | ||
133 | // et voila | ||
134 | echo($Articles->fileList[$i]['content'] . "\n"); | ||
135 | |||
136 | // bouton | ||
137 | if($_SESSION['admin'] == 1) | ||
138 | { | ||
139 | ?> | ||
140 | <p class="boutonArticle" > | ||
141 | <a href="index.php?page=<?= $page ?>&action=editor&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>#<?= $Articles->fileList[$i]['fileCode'] ?>" > | ||
142 | Modifier cet article | ||
143 | </a> | ||
144 | <!-- un espace --> | ||
145 | <a href="index.php?page=<?= $page ?>&action=suppression&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" > | ||
146 | Supprimer cet article | ||
147 | </a> | ||
148 | </p> | ||
149 | <?php | ||
150 | } | ||
151 | } | ||
152 | ?> | ||
153 | </div> | ||
154 | </article> | ||
155 | <?php | ||
156 | } | 99 | } |
157 | $content = ob_get_clean(); | 100 | $content = ob_get_clean(); |
diff --git a/à faire après livraison.txt b/à faire après livraison.txt index 843971a..965d456 100644 --- a/à faire après livraison.txt +++ b/à faire après livraison.txt | |||
@@ -1,10 +1,12 @@ | |||
1 | créer page peinture | 1 | créer page peinture |
2 | 2 | ||
3 | hyperlien avec liens relatifs (par exemple dans emoi des mots) | ||
4 | |||
3 | créer page musique | 5 | créer page musique |
4 | 6 | ||
5 | choix des polices dans les images de BD | 7 | choix des polices dans les images de BD, police des titres avec caractère "ê" |
6 | 8 | ||
7 | n'utiliser que les grandes dans le menu | 9 | n'utiliser que les grandes images dans le menu |
8 | 10 | ||
9 | images d'en-tête svg? | 11 | images d'en-tête svg? |
10 | 12 | ||