summaryrefslogtreecommitdiff
path: root/controller/ckeditor.php
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2021-11-29 03:25:19 +0100
committerpolo <ordipolo@gmx.fr>2021-11-29 03:25:19 +0100
commit29df6f1362745eabf4fbcaedf309eb63795152fa (patch)
tree8c2f4839c119db193eca4f35aeac96356a8ef439 /controller/ckeditor.php
parentb97a68343ec5c4ff1fae25ff5dc41f1a2ce6a17f (diff)
downloadmelaine-29df6f1362745eabf4fbcaedf309eb63795152fa.zip
discographie
Diffstat (limited to 'controller/ckeditor.php')
-rw-r--r--controller/ckeditor.php63
1 files changed, 31 insertions, 32 deletions
diff --git a/controller/ckeditor.php b/controller/ckeditor.php
index 2b9f168..661e0e3 100644
--- a/controller/ckeditor.php
+++ b/controller/ckeditor.php
@@ -7,41 +7,33 @@
7// il y a aussi un fichier CSS parce que le HTML créé par l'éditeur ne suffit pas à lui-même 7// il y a aussi un fichier CSS parce que le HTML créé par l'éditeur ne suffit pas à lui-même
8 8
9// avant de placer l'éditeur 9// avant de placer l'éditeur
10function preparationCKeditor($numArticle, $texte) 10function preparationCKeditor($html)
11{ 11{
12 // ici $numArticle sert uniquement à savoir si on crée ou modifie un article 12 // texte initial inséré avec setData() dans l'éditeur
13 // danger!
14 // setData() n'insère pas le texte si il ne respecte pas certains critères, l'utilisateur risque de perdre des données en validant un nouveau contenu sans avoir pu modifier l'ancien
13 15
14 // texte initial inséré avec setData() dans l'éditeur, 16 if(empty($html))
15 // on recherche ici les causes expliquant qu'il n'apparaisse pas à l'ouverture de l'éditeur,
16 // les données précédentes sont écrasées à la validation du nouveau texte
17 if ($numArticle > 0)
18 { 17 {
19 if(empty($texte)) 18 header('Location: index.php?erreur=empty_input');
20 { 19 }
21 header('Location: index.php?erreur=empty_input');
22 }
23 20
24 // supprimer espaces, tabulations et sauts de ligne en début et fin de chaine 21 // supprimer espaces, tabulations et sauts de ligne en début et fin de chaine
25 $texte = trim($texte); 22 $html = trim($html);
26 23
27 // supprimer les sauts de ligne 24 // supprimer les sauts de ligne
28 $sautsDeLigne = array("\n", "\r", "\r\n"); 25 $sautsDeLigne = array("\n", "\r", "\r\n");
29 $texte = str_replace($sautsDeLigne, '', $texte); 26 $html = str_replace($sautsDeLigne, '', $html);
30 27
31 // échapper tous les ', ", \ et caractère NULL 28 // échapper tous les ', ", \ et caractère NULL
32 $texte = addslashes($texte); 29 $html = addslashes($html);
33 }
34 else
35 {
36 $texte = ''; // nouveau contenu
37 }
38 30
39 return($texte); 31 return($html);
40} 32}
41 33
42// réception du HTML créé par l'éditeur 34// réception du HTML créé par l'éditeur
43// le nom du fichier est celui dans $_SESSION['nomFichier'] 35// le nom du fichier est celui dans $_SESSION['nomFichier']
44function submitCKeditor($nomFichier) 36function submitCKeditor($target)
45{ 37{
46 $page = $_GET['page']; 38 $page = $_GET['page'];
47 39
@@ -79,10 +71,10 @@ function submitCKeditor($nomFichier)
79 $Album = new Album($page); 71 $Album = new Album($page);
80 72
81 // enregistrement 73 // enregistrement
82 if($_GET['article'] == 0) 74 if($target == '')
83 { 75 {
84 // page disco 76 // page disco
85 $Album->createVignette($titre, $annee, $pochette); 77 $_SESSION['erreur'] = $Album->createVignette($titre, $annee, $pochette);
86 78
87 // page de l'album 79 // page de l'album
88 if(!empty($_POST['contenu'])) 80 if(!empty($_POST['contenu']))
@@ -92,28 +84,35 @@ function submitCKeditor($nomFichier)
92 } 84 }
93 else 85 else
94 { 86 {
87 $Album->albumCode = $target;
88
95 // page disco 89 // page disco
96 $Album->updateVignette($titre, $annee, $pochette); 90 $_SESSION['erreur'] = $Album->updateVignetteJSON($titre, $annee, $pochette);
97 91
98 // page de l'album 92 // page de l'album
99 if(isset($_POST['contenu'])) 93 if(isset($_POST['contenu']))
100 { 94 {
101 $Album->update($content); 95 $Album->format = 'html';
96 $Album->setFileName();
97 if(!empty($Album->fileName))
98 {
99 $Album->update($_POST['contenu']);
100 }
102 } 101 }
103 } 102 }
104 } 103 }
105 // autres pages 104 // autres pages
106 else 105 else
107 { 106 {
108 $Article = new Page($page, 'html'); 107 $Article = new Page($page);
109 108
110 if($_GET['article'] == 0) 109 if($target == '')
111 { 110 {
112 $Article->create($contenu); 111 $Article->create($contenu);
113 } 112 }
114 else 113 else
115 { 114 {
116 $Article->fileName = $nomFichier; 115 $Article->fileName = $target;
117 $Article->update($contenu); 116 $Article->update($contenu);
118 } 117 }
119 } 118 }