summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2023-06-05 14:51:09 +0200
committerpolo <ordipolo@gmx.fr>2023-06-05 14:51:09 +0200
commitfdef77d4a8817b6e8940951f3301ad94bde0e6c6 (patch)
treea9c4649d5171f7bb15fca6ec21bcd16d716841c5
parenta1c45fb18579f392070a65cf2c48e8b6bf5bf384 (diff)
downloadmelaine-fdef77d4a8817b6e8940951f3301ad94bde0e6c6.zip
suppression de $_SESSION['file_code']
-rw-r--r--controller/admin.php144
-rw-r--r--controller/ckeditor.php43
-rw-r--r--index.php4
-rw-r--r--model/Album.php2
-rw-r--r--model/Article.php3
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é)
93function 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
102function 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}
109function musiqueEdit($fileCode, int $suppression)
110{
111 $page = "musique";
112 $title = "Musique";
113 $headerPaintedTitle = 'Musique';
114 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
115}
116function presseEdit($fileCode, int $suppression)
117{
118 $page = "presse";
119 $title = "La presse";
120 $headerPaintedTitle = 'La Presse';
121 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
122}
123function livresEdit($fileCode, int $suppression)
124{
125 $page = "livres";
126 $title = "Livres";
127 $headerPaintedTitle = 'Dans les livres';
128 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
129}
130function jaimeEdit($fileCode, int $suppression)
131{
132 $page = "jaime";
133 $title = "J'aime";
134 $headerPaintedTitle = 'J\'aime';
135 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
136}
137function peintureEdit($fileCode, int $suppression)
138{
139 $page = "peinture";
140 $title = "peinture";
141 $headerPaintedTitle = 'Celtic Boats';
142 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
143}
144function archivesEdit($fileCode, int $suppression)
145{
146 $page = "archives";
147 $title = "Archives";
148 $headerPaintedTitle = 'Archives';
149 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
150}
151function 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é)
230function 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
239function 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}
246function musiqueEdit($fileCode, int $suppression)
247{
248 $page = "musique";
249 $title = "Musique";
250 $headerPaintedTitle = 'Musique';
251 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
252}
253function presseEdit($fileCode, int $suppression)
254{
255 $page = "presse";
256 $title = "La presse";
257 $headerPaintedTitle = 'La Presse';
258 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
259}
260function livresEdit($fileCode, int $suppression)
261{
262 $page = "livres";
263 $title = "Livres";
264 $headerPaintedTitle = 'Dans les livres';
265 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
266}
267function jaimeEdit($fileCode, int $suppression)
268{
269 $page = "jaime";
270 $title = "J'aime";
271 $headerPaintedTitle = 'J\'aime';
272 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
273}
274function peintureEdit($fileCode, int $suppression)
275{
276 $page = "peinture";
277 $title = "peinture";
278 $headerPaintedTitle = 'Celtic Boats';
279 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
280}
281function archivesEdit($fileCode, int $suppression)
282{
283 $page = "archives";
284 $title = "Archives";
285 $headerPaintedTitle = 'Archives';
286 pageArticlesSimplesAdmin($page, $title, $headerPaintedTitle, $fileCode, $suppression);
287}
288function 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)
306function inversionPositions(string $page, $fileCode, string $class, int $direction) 298function 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()
35function 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
35function submitCKeditor() 58function 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 === '')
diff --git a/index.php b/index.php
index 1888704..2d86f58 100644
--- a/index.php
+++ b/index.php
@@ -47,10 +47,6 @@ if(isset($_SESSION['admin']) && $_SESSION['admin'] == 1
47 47
48 submitCKeditor(); 48 submitCKeditor();
49} 49}
50else
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)