summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--controller/ajax.php7
-rw-r--r--controller/ckeditor.php20
-rw-r--r--controller/installation.php9
-rw-r--r--model/Article.php29
-rw-r--r--model/Image.php10
-rw-r--r--public/css/menu.css32
-rw-r--r--view/articlesContent.php20
7 files changed, 74 insertions, 53 deletions
diff --git a/controller/ajax.php b/controller/ajax.php
index 489e814..13f5c08 100644
--- a/controller/ajax.php
+++ b/controller/ajax.php
@@ -19,10 +19,15 @@ if(isset($_GET['action']) && isset($_GET['page']) && $_GET['action'] == 'upload_
19 $Image = new Image(true); 19 $Image = new Image(true);
20 $Image->upload(); 20 $Image->upload();
21 echo($Image->reponseAjax); // attendu par l'éditeur 21 echo($Image->reponseAjax); // attendu par l'éditeur
22
23 $Image->makeThumbnail(630); // => taille de la <div>
24 // on pourra l'agrandir en cliquant dessus
25 // code exécuté alors que l'utilisateur récupère la main
22 } 26 }
23 exit; // stop !! 27 exit(); // stop !!
24} 28}
25 29
30
26// page restauration quand le fichier zip est lourd 31// page restauration quand le fichier zip est lourd
27// -> input file onchange 32// -> input file onchange
28if(isset($_GET['action']) && $_GET['action'] == 'restauration' 33if(isset($_GET['action']) && $_GET['action'] == 'restauration'
diff --git a/controller/ckeditor.php b/controller/ckeditor.php
index 43fd2e2..3e14494 100644
--- a/controller/ckeditor.php
+++ b/controller/ckeditor.php
@@ -34,12 +34,10 @@ function preparationCKeditor($html)
34// réception du HTML créé par l'éditeur 34// réception du HTML créé par l'éditeur
35function submitCKeditor() 35function submitCKeditor()
36{ 36{
37 $page = $_GET['page'];
38
39 // déjà fait mais on ne sait jamais 37 // déjà fait mais on ne sait jamais
40 if(!isset($_SESSION['admin']) || $_SESSION['admin'] != 1) 38 if(!isset($_SESSION['admin']) || $_SESSION['admin'] != 1)
41 { 39 {
42 header('Location: index.php?page=' . $page . '&erreur=connexion'); 40 header('Location: index.php?page=' . $_GET['page'] . '&erreur=connexion');
43 exit(); 41 exit();
44 } 42 }
45 43
@@ -56,32 +54,36 @@ function submitCKeditor()
56 //$contenu = mediaSubmit($contenu); 54 //$contenu = mediaSubmit($contenu);
57 55
58 // ne pas continuer si la variable est vide (javascript mal supporté ou utilisation de IE, bug?, erreur de l'utilisateur), risque perte de contenu !! 56 // ne pas continuer si la variable est vide (javascript mal supporté ou utilisation de IE, bug?, erreur de l'utilisateur), risque perte de contenu !!
59 if($page != 'discographie' && $contenu == '') 57 if($_GET['page'] != 'discographie' && $contenu == '')
60 { 58 {
61 header('Location: index.php?page=' . $page . '&erreur=contenu_vide'); 59 header('Location: index.php?page=' . $_GET['page'] . '&erreur=contenu_vide');
62 exit(); 60 exit();
63 } 61 }
64 } 62 }
65 63
66 // pages avec des articles simples (melaine...) 64 // pages avec des articles simples (melaine...)
67 if($page != 'discographie') 65 if($_GET['page'] != 'discographie')
68 { 66 {
69 $Article = new Article($page); 67 $Article = new Article($_GET['page']);
70 68
71 if(!isset($_SESSION['target']) || $_SESSION['target'] == '') 69 if(!isset($_SESSION['target']) || $_SESSION['target'] == '')
72 { 70 {
73 $Article->create($contenu); 71 $Article->create($contenu);
72
73 // create html-mini
74 } 74 }
75 else 75 else
76 { 76 {
77 $Article->fileCode = $_SESSION['target']; // erreur ici? 77 $Article->fileCode = $_SESSION['target']; // erreur ici?
78 $Article->update($contenu); 78 $Article->update($contenu);
79
80 // update html-mini
79 } 81 }
80 } 82 }
81 // page discographie 83 // page discographie
82 else if($page == 'discographie') 84 else if($_GET['page'] == 'discographie')
83 { 85 {
84 $Album = new Album($page); 86 $Album = new Album($_GET['page']);
85 87
86 // on retrouve les données si nécessaire 88 // on retrouve les données si nécessaire
87 if(isset($_SESSION['target']) && $_SESSION['target'] != '') 89 if(isset($_SESSION['target']) && $_SESSION['target'] != '')
diff --git a/controller/installation.php b/controller/installation.php
index b2a687c..3745189 100644
--- a/controller/installation.php
+++ b/controller/installation.php
@@ -77,6 +77,15 @@ function installation()
77 { 77 {
78 createIndexPHP('data/' . $page . '/html/index.php', $droitsFichiers); 78 createIndexPHP('data/' . $page . '/html/index.php', $droitsFichiers);
79 } 79 }
80 if(!file_exists('data/' . $page . '/html-mini-images'))
81 {
82 mkdir('data/' . $page . '/html-mini-images');
83 chmod('data/' . $page . '/html-mini-images', $droitsDossiers);
84 }
85 if(!file_exists('data/' . $page . '/html-mini-images/index.php'))
86 {
87 createIndexPHP('data/' . $page . '/html-mini-images/index.php', $droitsFichiers);
88 }
80 if(!file_exists('data/' . $page . '/images')) 89 if(!file_exists('data/' . $page . '/images'))
81 { 90 {
82 mkdir('data/' . $page . '/images'); 91 mkdir('data/' . $page . '/images');
diff --git a/model/Article.php b/model/Article.php
index 4063feb..f9c5b89 100644
--- a/model/Article.php
+++ b/model/Article.php
@@ -1,27 +1,9 @@
1<?php 1<?php
2// model/Article.php 2// model/Article.php
3 3
4// structure de données de la variable $fileList 4// éventuellement: utiliser une classe structure de données
5// on a 3 possibilités (on prendra la 3ème): 5// accesssible avec des GET et des SET
6 6// à voir alors si on utilise des variables statiques
7// - un tableau simple contenant des tableaux associatifs (avec des index façon BDD)
8// $fileList[0] => [$fileCode => 'code', $fileName => 'nom, $content => 'contenu'],
9
10// - un tableau associatif contenant des tableaux simples
11// les catégories sont au premier niveau
12// mauvaise idée, risque de croiser les fichiers
13// $fileList['fileCode'] => [$fileCode1, $fileCode2]
14// $fileList['fileName'] => [$fileName1, $fileName2], etc
15
16// - un tableau associatif contenant des tableaux associatifs
17// les catégories sont au deuxième niveau
18// $fileList[$fileCode] => [$fileName => 'code', $content => 'contenu'], etc
19
20
21// ma struture est mauvaise, elle n'est pas très orientée objet
22// créer une classe structure de données
23// celle-ci sera instanciée dans la première (ou pas du tout)
24// et accesssible avec des GET et des SET
25 7
26 8
27class Article 9class Article
@@ -70,13 +52,13 @@ class Article
70 // GET 52 // GET
71 53
72 // SET 54 // SET
73 public function setFileName() 55 /*public function setFileName()
74 { 56 {
75 if(file_exists('data/' . $this->page . '/' . $this->format . '/' . $this->fileCode . '.' . $this->format)) 57 if(file_exists('data/' . $this->page . '/' . $this->format . '/' . $this->fileCode . '.' . $this->format))
76 { 58 {
77 $this->fileName = 'data/' . $this->page . '/' . $this->format . '/' . $this->fileCode . '.' . $this->format; 59 $this->fileName = 'data/' . $this->page . '/' . $this->format . '/' . $this->fileCode . '.' . $this->format;
78 } 60 }
79 } 61 }*/
80 62
81 // fonctions CRUD (create - read - update - delete) 63 // fonctions CRUD (create - read - update - delete)
82 64
@@ -103,6 +85,7 @@ class Article
103 { 85 {
104 $this->fileList[$i]['content'] = file_get_contents($this->fileList[$i]['fileName']); 86 $this->fileList[$i]['content'] = file_get_contents($this->fileList[$i]['fileName']);
105 } 87 }
88 //var_dump($this->fileList); die();
106 } 89 }
107 public function readOne() 90 public function readOne()
108 { 91 {
diff --git a/model/Image.php b/model/Image.php
index 59665e9..61f25c6 100644
--- a/model/Image.php
+++ b/model/Image.php
@@ -67,8 +67,14 @@ class Image
67 if($imageLibrary == 'imagick') 67 if($imageLibrary == 'imagick')
68 { 68 {
69 $Image = new Imagick($this->path . $_FILES['upload']['name']); 69 $Image = new Imagick($this->path . $_FILES['upload']['name']);
70 // 0 signifie qu'on conserve les proportions 70
71 $Image->thumbnailImage($largeur, 0); 71 $source = $Image->getImageGeometry();
72 if($source['width'] > $largeur)
73 {
74 // 0 signifie qu'on conserve les proportions
75 $Image->thumbnailImage($largeur, 0);
76 }
77
72 // écriture dans un fichier 78 // écriture dans un fichier
73 $Image->writeImage($this->pathMini . $this->pathInfos['filename'] . '-mini.' . $this->pathInfos['extension']); 79 $Image->writeImage($this->pathMini . $this->pathInfos['filename'] . '-mini.' . $this->pathInfos['extension']);
74 } 80 }
diff --git a/public/css/menu.css b/public/css/menu.css
index 559a594..28cba08 100644
--- a/public/css/menu.css
+++ b/public/css/menu.css
@@ -27,9 +27,10 @@ header h3
27 text-align: center; 27 text-align: center;
28} 28}
29 29
30.articleActu > *:not(.boutonArticle) 30/*.articleActu > *:not(.boutonArticle)*/
31.articleActu
31{ 32{
32 max-width: 50%; 33 /*max-width: 50%;*/
33 margin: auto; 34 margin: auto;
34} 35}
35 36
@@ -75,6 +76,11 @@ header h3
75 background-image: url("../mouette.png"); 76 background-image: url("../mouette.png");
76 } 77 }
77 78
79 .articleActu
80 {
81 max-width: 50%;
82 }
83
78 #contenu 84 #contenu
79 { 85 {
80 position: relative; 86 position: relative;
@@ -86,8 +92,8 @@ header h3
86 height: 588px; 92 height: 588px;
87 } 93 }
88 94
89 /* pour IE, 95 /* pour IE, indique la bonne taille du bloc
90 indique la bonne taille du bloc pour que la colonne 2 se place correctement */ 96 pour que la colonne 2 se place correctement */
91 #colonne1 97 #colonne1
92 { 98 {
93 min-width: 310px; 99 min-width: 310px;
@@ -175,6 +181,11 @@ header h3
175 margin: auto; 181 margin: auto;
176 } 182 }
177 183
184 .articleActu
185 {
186 max-width: 65%;
187 }
188
178 #contenu 189 #contenu
179 { 190 {
180 position: relative; 191 position: relative;
@@ -186,8 +197,8 @@ header h3
186 height: 447px; 197 height: 447px;
187 } 198 }
188 199
189 /* pour IE, 200 /* pour IE, indique la bonne taille du bloc
190 indique la bonne taille du bloc pour que la colonne 2 se place correctement */ 201 pour que la colonne 2 se place correctement */
191 #colonne1 202 #colonne1
192 { 203 {
193 min-width: 237px; 204 min-width: 237px;
@@ -275,6 +286,11 @@ header h3
275 margin: auto; 286 margin: auto;
276 } 287 }
277 288
289 .articleActu
290 {
291 max-width: 90%;
292 }
293
278 #contenu 294 #contenu
279 { 295 {
280 position: relative; 296 position: relative;
@@ -286,8 +302,8 @@ header h3
286 height: 298px; 302 height: 298px;
287 } 303 }
288 304
289 /* pour IE, 305 /* pour IE, indique la bonne taille du bloc
290 indique la bonne taille du bloc pour que la colonne 2 se place correctement */ 306 pour que la colonne 2 se place correctement */
291 #colonne1 307 #colonne1
292 { 308 {
293 min-width: 158px; 309 min-width: 158px;
diff --git a/view/articlesContent.php b/view/articlesContent.php
index fe71204..5f6b587 100644
--- a/view/articlesContent.php
+++ b/view/articlesContent.php
@@ -82,20 +82,20 @@ for($i = 0; $i < $Articles->fileListCount; $i++)
82 if($_SESSION['admin'] == 1) 82 if($_SESSION['admin'] == 1)
83 { 83 {
84 ?> 84 ?>
85 <p class="boutonArticle" > 85 </div>
86 <a href="index.php?page=<?= $page ?>&action=editor&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>#<?= $Articles->fileList[$i]['fileCode'] ?>" > 86 <p class="boutonArticle" >
87 Modifier cet article 87 <a href="index.php?page=<?= $page ?>&action=editor&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>#<?= $Articles->fileList[$i]['fileCode'] ?>" >
88 </a> 88 Modifier cet article
89 &nbsp;<!-- un espace --> 89 </a>
90 <a href="index.php?page=<?= $page ?>&action=suppression&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" > 90 &nbsp;<!-- un espace -->
91 Supprimer cet article 91 <a href="index.php?page=<?= $page ?>&action=suppression&file_code=<?= $Articles->fileList[$i]['fileCode'] ?>" onclick="confirmerSuppression()" >
92 </a> 92 Supprimer cet article
93 </p> 93 </a>
94 </p>
94 <?php 95 <?php
95 } 96 }
96 } 97 }
97?> 98?>
98 </div>
99 </article> 99 </article>
100<?php 100<?php
101} 101}