diff options
author | polo <ordipolo@gmx.fr> | 2023-06-05 14:51:09 +0200 |
---|---|---|
committer | polo <ordipolo@gmx.fr> | 2023-06-05 14:51:09 +0200 |
commit | fdef77d4a8817b6e8940951f3301ad94bde0e6c6 (patch) | |
tree | a9c4649d5171f7bb15fca6ec21bcd16d716841c5 | |
parent | a1c45fb18579f392070a65cf2c48e8b6bf5bf384 (diff) | |
download | melaine-fdef77d4a8817b6e8940951f3301ad94bde0e6c6.zip |
suppression de $_SESSION['file_code']
-rw-r--r-- | controller/admin.php | 144 | ||||
-rw-r--r-- | controller/ckeditor.php | 43 | ||||
-rw-r--r-- | index.php | 4 | ||||
-rw-r--r-- | model/Album.php | 2 | ||||
-rw-r--r-- | model/Article.php | 3 |
5 files changed, 100 insertions, 96 deletions
diff --git a/controller/admin.php b/controller/admin.php index 21a8f6f..83ee702 100644 --- a/controller/admin.php +++ b/controller/admin.php | |||
@@ -31,7 +31,6 @@ function pageArticlesSimplesAdmin(string $page, string $title, string $headerPai | |||
31 | { | 31 | { |
32 | // nom de l'article ciblé (objet et session) | 32 | // nom de l'article ciblé (objet et session) |
33 | $Articles->fileCode = $fileCode; | 33 | $Articles->fileCode = $fileCode; |
34 | $_SESSION['file_code'] = $Articles->fileCode; | ||
35 | 34 | ||
36 | if($suppression) | 35 | if($suppression) |
37 | { | 36 | { |
@@ -89,80 +88,6 @@ function pageArticlesSimplesAdmin(string $page, string $title, string $headerPai | |||
89 | require('view/template.php'); | 88 | require('view/template.php'); |
90 | } | 89 | } |
91 | 90 | ||
92 | // un article (= actualité) | ||
93 | function menuEdit($fileCode, int $suppression) | ||
94 | { | ||
95 | $page = "menu"; | ||
96 | $title = "Melaine Favennec - menu BD"; | ||
97 | $headerPaintedTitle = 'Choisissez une rubrique'; | ||
98 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
99 | } | ||
100 | |||
101 | // plusieurs articles | ||
102 | function melaineEdit($fileCode, int $suppression) | ||
103 | { | ||
104 | $page = "melaine"; | ||
105 | $title = "Mais qui est Melaine Favennec?"; | ||
106 | $headerPaintedTitle = 'Melaine Favennec'; | ||
107 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
108 | } | ||
109 | function musiqueEdit($fileCode, int $suppression) | ||
110 | { | ||
111 | $page = "musique"; | ||
112 | $title = "Musique"; | ||
113 | $headerPaintedTitle = 'Musique'; | ||
114 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
115 | } | ||
116 | function presseEdit($fileCode, int $suppression) | ||
117 | { | ||
118 | $page = "presse"; | ||
119 | $title = "La presse"; | ||
120 | $headerPaintedTitle = 'La Presse'; | ||
121 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
122 | } | ||
123 | function livresEdit($fileCode, int $suppression) | ||
124 | { | ||
125 | $page = "livres"; | ||
126 | $title = "Livres"; | ||
127 | $headerPaintedTitle = 'Dans les livres'; | ||
128 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
129 | } | ||
130 | function jaimeEdit($fileCode, int $suppression) | ||
131 | { | ||
132 | $page = "jaime"; | ||
133 | $title = "J'aime"; | ||
134 | $headerPaintedTitle = 'J\'aime'; | ||
135 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
136 | } | ||
137 | function peintureEdit($fileCode, int $suppression) | ||
138 | { | ||
139 | $page = "peinture"; | ||
140 | $title = "peinture"; | ||
141 | $headerPaintedTitle = 'Celtic Boats'; | ||
142 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
143 | } | ||
144 | function archivesEdit($fileCode, int $suppression) | ||
145 | { | ||
146 | $page = "archives"; | ||
147 | $title = "Archives"; | ||
148 | $headerPaintedTitle = 'Archives'; | ||
149 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
150 | } | ||
151 | function legalEdit($fileCode, int $suppression) | ||
152 | { | ||
153 | $page = "legal"; | ||
154 | $title = "Mentions légales"; | ||
155 | $headerPaintedTitle = 'Mentions légales'; | ||
156 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
157 | } | ||
158 | |||
159 | |||
160 | // l'éditeur est ouvert dans la page album | ||
161 | // ne servirait que pour les positions | ||
162 | /*function discoEdit() | ||
163 | { | ||
164 | inversionPositions(); | ||
165 | }*/ | ||
166 | 91 | ||
167 | // page complexe avec albums et articles | 92 | // page complexe avec albums et articles |
168 | // cas où on fait quelque chose: ouvrir l'éditeur, monter, descendre, supprimer | 93 | // cas où on fait quelque chose: ouvrir l'éditeur, monter, descendre, supprimer |
@@ -214,7 +139,6 @@ function albumEdit($fileCode, int $suppression) | |||
214 | { | 139 | { |
215 | $page = 'album'; | 140 | $page = 'album'; |
216 | $Albums->readOne(); | 141 | $Albums->readOne(); |
217 | $_SESSION['file_code'] = $fileCode; | ||
218 | $title = "Modifier un album"; | 142 | $title = "Modifier un album"; |
219 | 143 | ||
220 | for($i = 0; $i < $Albums->fileListCount; $i++) | 144 | for($i = 0; $i < $Albums->fileListCount; $i++) |
@@ -302,6 +226,74 @@ function albumEdit($fileCode, int $suppression) | |||
302 | } | 226 | } |
303 | 227 | ||
304 | 228 | ||
229 | // un article (= actualité) | ||
230 | function menuEdit($fileCode, int $suppression) | ||
231 | { | ||
232 | $page = "menu"; | ||
233 | $title = "Melaine Favennec - menu BD"; | ||
234 | $headerPaintedTitle = 'Choisissez une rubrique'; | ||
235 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
236 | } | ||
237 | |||
238 | // plusieurs articles | ||
239 | function melaineEdit($fileCode, int $suppression) | ||
240 | { | ||
241 | $page = "melaine"; | ||
242 | $title = "Mais qui est Melaine Favennec?"; | ||
243 | $headerPaintedTitle = 'Melaine Favennec'; | ||
244 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
245 | } | ||
246 | function musiqueEdit($fileCode, int $suppression) | ||
247 | { | ||
248 | $page = "musique"; | ||
249 | $title = "Musique"; | ||
250 | $headerPaintedTitle = 'Musique'; | ||
251 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
252 | } | ||
253 | function presseEdit($fileCode, int $suppression) | ||
254 | { | ||
255 | $page = "presse"; | ||
256 | $title = "La presse"; | ||
257 | $headerPaintedTitle = 'La Presse'; | ||
258 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
259 | } | ||
260 | function livresEdit($fileCode, int $suppression) | ||
261 | { | ||
262 | $page = "livres"; | ||
263 | $title = "Livres"; | ||
264 | $headerPaintedTitle = 'Dans les livres'; | ||
265 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
266 | } | ||
267 | function jaimeEdit($fileCode, int $suppression) | ||
268 | { | ||
269 | $page = "jaime"; | ||
270 | $title = "J'aime"; | ||
271 | $headerPaintedTitle = 'J\'aime'; | ||
272 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
273 | } | ||
274 | function peintureEdit($fileCode, int $suppression) | ||
275 | { | ||
276 | $page = "peinture"; | ||
277 | $title = "peinture"; | ||
278 | $headerPaintedTitle = 'Celtic Boats'; | ||
279 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
280 | } | ||
281 | function archivesEdit($fileCode, int $suppression) | ||
282 | { | ||
283 | $page = "archives"; | ||
284 | $title = "Archives"; | ||
285 | $headerPaintedTitle = 'Archives'; | ||
286 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
287 | } | ||
288 | function legalEdit($fileCode, int $suppression) | ||
289 | { | ||
290 | $page = "legal"; | ||
291 | $title = "Mentions légales"; | ||
292 | $headerPaintedTitle = 'Mentions légales'; | ||
293 | pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression); | ||
294 | } | ||
295 | |||
296 | |||
305 | // version sans JS (l'autre est dans ajax.php) | 297 | // version sans JS (l'autre est dans ajax.php) |
306 | function inversionPositions(string $page, $fileCode, string $class, int $direction) | 298 | function inversionPositions(string $page, $fileCode, string $class, int $direction) |
307 | { | 299 | { |
diff --git a/controller/ckeditor.php b/controller/ckeditor.php index 3765261..7b4f1bb 100644 --- a/controller/ckeditor.php +++ b/controller/ckeditor.php | |||
@@ -31,6 +31,29 @@ function preparationCKeditor($html) | |||
31 | return($html); | 31 | return($html); |
32 | } | 32 | } |
33 | 33 | ||
34 | // utilisée par submitCKeditor() | ||
35 | function getFileCodeFromHTTPReferrer(): string | ||
36 | { | ||
37 | if(isset($_SERVER['HTTP_REFERER'])) | ||
38 | { | ||
39 | $referrer = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_QUERY); | ||
40 | $pattern = '#file_code=#'; | ||
41 | $split = preg_split($pattern, $referrer); | ||
42 | if(isset($split[1]) && is_numeric($split[1])) | ||
43 | { | ||
44 | return $split[1]; | ||
45 | } | ||
46 | else | ||
47 | { | ||
48 | return ''; | ||
49 | } | ||
50 | } | ||
51 | else | ||
52 | { | ||
53 | return ''; | ||
54 | } | ||
55 | } | ||
56 | |||
34 | // réception du HTML créé par l'éditeur | 57 | // réception du HTML créé par l'éditeur |
35 | function submitCKeditor() | 58 | function submitCKeditor() |
36 | { | 59 | { |
@@ -66,11 +89,12 @@ function submitCKeditor() | |||
66 | if($_GET['page'] === 'discographie' || $_GET['page'] === 'album') | 89 | if($_GET['page'] === 'discographie' || $_GET['page'] === 'album') |
67 | { | 90 | { |
68 | $Album = new Album($_GET['page'], 'discographie'); | 91 | $Album = new Album($_GET['page'], 'discographie'); |
92 | |||
93 | $Album->fileCode = getFileCodeFromHTTPReferrer(); | ||
69 | 94 | ||
70 | // on retrouve les données si nécessaire | 95 | // on retrouve les données si nécessaire |
71 | if(isset($_SESSION['file_code']) && $_SESSION['file_code'] != '') | 96 | if($Album->fileCode != '') |
72 | { | 97 | { |
73 | $Album->fileCode = $_SESSION['file_code']; | ||
74 | $Album->readOne(); | 98 | $Album->readOne(); |
75 | } | 99 | } |
76 | 100 | ||
@@ -87,7 +111,6 @@ function submitCKeditor() | |||
87 | $Image->setThumbnailWidth(201); | 111 | $Image->setThumbnailWidth(201); |
88 | 112 | ||
89 | $nouvellePochette = $nomFichier; | 113 | $nouvellePochette = $nomFichier; |
90 | /*$nouvellePochetteMini = pathinfo($_FILES['upload']['name'], PATHINFO_FILENAME) . '-mini.' . pathinfo($_FILES['upload']['name'], PATHINFO_EXTENSION);*/ | ||
91 | $nouvellePochetteMini = pathinfo($nomFichier, PATHINFO_FILENAME) . '-mini.' . pathinfo($nomFichier, PATHINFO_EXTENSION); | 114 | $nouvellePochetteMini = pathinfo($nomFichier, PATHINFO_FILENAME) . '-mini.' . pathinfo($nomFichier, PATHINFO_EXTENSION); |
92 | 115 | ||
93 | $Image->upload(); | 116 | $Image->upload(); |
@@ -104,11 +127,9 @@ function submitCKeditor() | |||
104 | $nouvellePochette = ''; | 127 | $nouvellePochette = ''; |
105 | $nouvellePochetteMini = ''; | 128 | $nouvellePochetteMini = ''; |
106 | } | 129 | } |
107 | |||
108 | //var_dump($nouvellePochetteMini); die(); | ||
109 | 130 | ||
110 | // enregistrement du texte JSON | 131 | // enregistrement du texte JSON |
111 | if(!isset($_SESSION['file_code']) || $_SESSION['file_code'] == '') | 132 | if($Album->fileCode === '') |
112 | { | 133 | { |
113 | // page disco | 134 | // page disco |
114 | $Album->createVignetteJSON($nouveauTitre, $nouvelleAnnee, $nouvellePochette, $nouvellePochetteMini); | 135 | $Album->createVignetteJSON($nouveauTitre, $nouvelleAnnee, $nouvellePochette, $nouvellePochetteMini); |
@@ -123,8 +144,6 @@ function submitCKeditor() | |||
123 | // modification | 144 | // modification |
124 | else | 145 | else |
125 | { | 146 | { |
126 | $Album->albumCode = $_SESSION['file_code']; | ||
127 | |||
128 | // page disco | 147 | // page disco |
129 | $Album->format = 'json'; | 148 | $Album->format = 'json'; |
130 | 149 | ||
@@ -142,7 +161,9 @@ function submitCKeditor() | |||
142 | { | 161 | { |
143 | $Article = new Article($_GET['page'], $_GET['page']); | 162 | $Article = new Article($_GET['page'], $_GET['page']); |
144 | 163 | ||
145 | if(!isset($_SESSION['file_code']) || $_SESSION['file_code'] === '') | 164 | $Article->fileCode = getFileCodeFromHTTPReferrer(); |
165 | |||
166 | if($Article->fileCode === '') | ||
146 | { | 167 | { |
147 | $Article->create($html); | 168 | $Article->create($html); |
148 | 169 | ||
@@ -150,16 +171,12 @@ function submitCKeditor() | |||
150 | } | 171 | } |
151 | else | 172 | else |
152 | { | 173 | { |
153 | $Article->fileCode = $_SESSION['file_code']; // erreur ici? | ||
154 | $Article->update($html); | 174 | $Article->update($html); |
155 | 175 | ||
156 | // update html-mini | 176 | // update html-mini |
157 | } | 177 | } |
158 | } | 178 | } |
159 | 179 | ||
160 | // nettoyage | ||
161 | unset($_SESSION['file_code']); | ||
162 | |||
163 | if($_GET['page'] === 'discographie' || $_GET['page'] === 'album') | 180 | if($_GET['page'] === 'discographie' || $_GET['page'] === 'album') |
164 | { | 181 | { |
165 | if($html === '') | 182 | if($html === '') |
@@ -47,10 +47,6 @@ if(isset($_SESSION['admin']) && $_SESSION['admin'] == 1 | |||
47 | 47 | ||
48 | submitCKeditor(); | 48 | submitCKeditor(); |
49 | } | 49 | } |
50 | else | ||
51 | { | ||
52 | unset($_SESSION['file_code']); | ||
53 | } | ||
54 | 50 | ||
55 | 51 | ||
56 | // déconnexion | 52 | // déconnexion |
diff --git a/model/Album.php b/model/Album.php index 801afef..1954800 100644 --- a/model/Album.php +++ b/model/Album.php | |||
@@ -160,7 +160,7 @@ class Album extends Article | |||
160 | $albumJSON = json_encode([$titre, $annee, $pochette, $pochetteMini]); | 160 | $albumJSON = json_encode([$titre, $annee, $pochette, $pochetteMini]); |
161 | 161 | ||
162 | // écriture | 162 | // écriture |
163 | $nom_fichier = 'data/discographie/json/' . $this->albumCode . '.json'; | 163 | $nom_fichier = 'data/discographie/json/' . $this->fileCode . '.json'; |
164 | $fichier = fopen($nom_fichier, 'w+'); // w pour créer ou écraser | 164 | $fichier = fopen($nom_fichier, 'w+'); // w pour créer ou écraser |
165 | fputs($fichier, $albumJSON); | 165 | fputs($fichier, $albumJSON); |
166 | fclose($fichier); | 166 | fclose($fichier); |
diff --git a/model/Article.php b/model/Article.php index d94ba01..3eca127 100644 --- a/model/Article.php +++ b/model/Article.php | |||
@@ -17,8 +17,7 @@ class Article | |||
17 | public $fileList; // = toutes les données | 17 | public $fileList; // = toutes les données |
18 | 18 | ||
19 | // pour un article (ou album) spécifique | 19 | // pour un article (ou album) spécifique |
20 | //public $fileName = ''; // = $_SESSION['nomFichier'] | 20 | public $fileCode = ''; // = $_SERVER['HTTP_REFERER'] |
21 | public $fileCode = ''; // = $_SESSION['file_code'] | ||
22 | protected $time; // timestamp pour noms des fichiers créés | 21 | protected $time; // timestamp pour noms des fichiers créés |
23 | 22 | ||
24 | public function __construct(string $page, string $folder) | 23 | public function __construct(string $page, string $folder) |