summaryrefslogtreecommitdiff
path: root/controller
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2021-08-14 01:32:59 +0200
committerpolo <ordipolo@gmx.fr>2021-08-14 01:32:59 +0200
commit07e0291bfad8ef3a8b37bf0d0ebf20df936e7b7f (patch)
tree81fa397b2482984554c2d559e8cca7e08dfec312 /controller
parentcd4cffac62363c132d5ce98680b0303dd9b4d4f9 (diff)
downloadmelaine-07e0291bfad8ef3a8b37bf0d0ebf20df936e7b7f.zip
password
Diffstat (limited to 'controller')
-rw-r--r--controller/admin.php48
-rw-r--r--controller/ckeditor.php12
-rw-r--r--controller/password.php16
-rw-r--r--controller/visitor.php8
4 files changed, 68 insertions, 16 deletions
diff --git a/controller/admin.php b/controller/admin.php
index d738dc0..29ccd41 100644
--- a/controller/admin.php
+++ b/controller/admin.php
@@ -31,6 +31,7 @@ function melaineEdit($numArticle, $suppression)
31 { 31 {
32 $Articles->delete(); 32 $Articles->delete();
33 header('Location: index.php?page=' . $page_actuelle); 33 header('Location: index.php?page=' . $page_actuelle);
34 exit();
34 } 35 }
35 // modification 36 // modification
36 else 37 else
@@ -46,22 +47,20 @@ function melaineEdit($numArticle, $suppression)
46 $Articles->reverseFilesArray(); 47 $Articles->reverseFilesArray();
47 $articles = $Articles->getAll(); 48 $articles = $Articles->getAll();
48 49
50 // sécurisation du contenu pré-existant inséré dans l'éditeur
49 if($numArticle >= 0 && !$suppression) 51 if($numArticle >= 0 && !$suppression)
50 { 52 {
51 // traitements PHP pour l'éditeur
52 require('controller/ckeditor.php'); 53 require('controller/ckeditor.php');
53 // sécurisation du contenu pré-existant inséré dans l'éditeur
54 $texte = preparationCKeditor($numArticle, $texte); 54 $texte = preparationCKeditor($numArticle, $texte);
55 } 55 }
56 56
57 // NB: penser à ajouter au template la fonctionnalité "autosave" 57 // NB: penser à ajouter au template la fonctionnalité "autosave"
58 // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html 58 // https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html
59 59
60 // création des morceaux en HTML avant assemblage 60 // morceaux en HTML à assembler
61 61 // variable $editeurHTML, contient $texte
62 // variable $editeurHTML, on insère $texte dedans
63 require('view/template-formulaires.php'); 62 require('view/template-formulaires.php');
64 // variables $css, $js, $header et $content 63 // variables $css, $js, $header et $content,
65 // $content contient $articles et $editeurHTML 64 // $content contient $articles et $editeurHTML
66 require('view/melaine.php'); 65 require('view/melaine.php');
67 // fin de l'assemblage 66 // fin de l'assemblage
@@ -82,25 +81,26 @@ function discoEdit($numArticle, $suppression)
82 // sécurisation du contenu pré-existant inséré dans l'éditeur 81 // sécurisation du contenu pré-existant inséré dans l'éditeur
83 $texte = preparationCKeditor($numArticle, $texte); 82 $texte = preparationCKeditor($numArticle, $texte);
84 83
85 // variable $editeurHTML, on insère $texte dedans 84 // morceaux en HTML à assembler
85 // variable $editeurHTML, contient $texte
86 require('view/template-formulaires.php'); 86 require('view/template-formulaires.php');
87 // variables $css, $js, $header et $content 87 // variables $css, $js, $header et $content,
88 // $content contient ???? et $editeurHTML 88 // $content contient ???? et $editeurHTML
89 require('view/discographie.php'); 89 require('view/discographie.php');
90 // fin de l'assemblage 90 // fin de l'assemblage
91 require('view/template.php'); 91 require('view/template.php');
92} 92}
93 93
94function changerMotDePasse($secret, $from) 94function changerMotDePasse($secret)
95{ 95{
96 // vérification supplémentaire 96 // vérification supplémentaire
97 if($_SESSION['admin'] !== 1) 97 if($_SESSION['admin'] !== 1)
98 { 98 {
99 $_SESSION['admin'] = 0; 99 $_SESSION['admin'] = 0;
100 header('Location: index.php?page=' . $_GET['from']); 100 header('Location: index.php?page=' . $_GET['from']);
101 exit();
101 } 102 }
102 103
103 $title = "nouveau mot de passe";
104 // Ajouter une sécurité par cpatcha avec un "input" supplémentaire 104 // Ajouter une sécurité par cpatcha avec un "input" supplémentaire
105 // Et créer une variable de session pour la réponse au CAPTCHA 105 // Et créer une variable de session pour la réponse au CAPTCHA
106 106
@@ -112,7 +112,33 @@ function changerMotDePasse($secret, $from)
112 112
113 echo($header); 113 echo($header);
114 114
115 // traitements: vérification ancien mot de passe et choix du nouveau 115 // traitements: vérification ancien mot de passe et choix du nouveau
116 // bon mot de passe
117 if(isset ($_POST["ancienMotdepasse"]) AND $_POST["ancienMotdepasse"] == $secret)
118 {
119 // confirmation
120 echo($message);
121 //exit();
122
123 /*header('Location: index.php?page=' . $_GET['from'] . '&message=nouveau_mdp');
124 exit();*/
125 }
126
127 // mauvais mot de passe
128 elseif(isset ($_POST["ancienMotdepasse"]) AND $_POST["ancienMotdepasse"] != $secret)
129 {
130 // défense aux attaques par force brute
131 // pas parfait, ne marche pas si l'attaquant multiplie les connexions au site
132 echo($erreurMDP);
133 sleep(1);
134 echo($formulaireNouveauMDP);
135 }
136
137 // première arrivée sur la page
138 else
139 {
140 echo($formulaireNouveauMDP);
141 }
116 142
117 echo($footer); 143 echo($footer);
118} 144}
diff --git a/controller/ckeditor.php b/controller/ckeditor.php
index 9262da0..d25e5ac 100644
--- a/controller/ckeditor.php
+++ b/controller/ckeditor.php
@@ -71,13 +71,21 @@ function submitCKeditor($nomFichier)
71 { 71 {
72 $titre = $_POST['titre']; 72 $titre = $_POST['titre'];
73 $annee = $_POST['annee']; 73 $annee = $_POST['annee'];
74 $pochette = $_POST['pochette']; 74 $pochette = $_POST['pochette']; // une image
75 75
76 // des formulaires simples
76 $titre = htmLawed($titre, $configHtmLawed, $specHtmLawed); 77 $titre = htmLawed($titre, $configHtmLawed, $specHtmLawed);
77 $titre = trim($titre); 78 $titre = trim($titre);
78 $contenu = htmLawed($contenu, $configHtmLawed, $specHtmLawed);
79 $annee = htmLawed($annee, $configHtmLawed, $specHtmLawed); 79 $annee = htmLawed($annee, $configHtmLawed, $specHtmLawed);
80 $annee = trim($annee); 80 $annee = trim($annee);
81
82 // pochette
83 // Album->imageUpload();
84 // test formats jpg, jpeg, png, gif, tiff
85 // enregistrement du fichier
86
87 // du ckeditor
88 $contenu = htmLawed($contenu, $configHtmLawed, $specHtmLawed);
81 $contenu = trim($contenu); 89 $contenu = trim($contenu);
82 } 90 }
83 else // pages comme "melaine" 91 else // pages comme "melaine"
diff --git a/controller/password.php b/controller/password.php
new file mode 100644
index 0000000..987670f
--- /dev/null
+++ b/controller/password.php
@@ -0,0 +1,16 @@
1<?php
2// password.php
3
4function hashNewPassword()
5{
6 //$hash = password_hash($password, PASSWORD_DEFAULT);
7
8 // écrire dans un fichier
9}
10
11function testPassword()
12{
13 // lire dans un fichier
14
15 //if(password_verify($password, $hash))
16} \ No newline at end of file
diff --git a/controller/visitor.php b/controller/visitor.php
index 16f9c40..539df1f 100644
--- a/controller/visitor.php
+++ b/controller/visitor.php
@@ -87,6 +87,7 @@ function connexion($secret)
87 if($_SESSION['admin'] == 1) 87 if($_SESSION['admin'] == 1)
88 { 88 {
89 header('Location: index.php?page=' . $_GET['from']); 89 header('Location: index.php?page=' . $_GET['from']);
90 exit();
90 } 91 }
91 92
92 // Ajouter une sécurité par cpatcha avec un "input" supplémentaire 93 // Ajouter une sécurité par cpatcha avec un "input" supplémentaire
@@ -105,14 +106,15 @@ function connexion($secret)
105 { 106 {
106 $_SESSION['admin'] = 1; 107 $_SESSION['admin'] = 1;
107 header('Location: index.php?page=' . $_GET['from']); 108 header('Location: index.php?page=' . $_GET['from']);
108 exit (); 109 exit();
109 } 110 }
110 111
111 // mauvaise mot de passe 112 // mauvais mot de passe
112 elseif(isset ($_POST["motdepasse"]) AND $_POST["motdepasse"] != $secret) 113 elseif(isset ($_POST["motdepasse"]) AND $_POST["motdepasse"] != $secret)
113 { 114 {
114 // défense aux attaques par force brute 115 // défense aux attaques par force brute
115 // pas parfait, ne marche pas si l'attaquant multiplie les connexions au site 116 // pas parfait, ne marche pas si l'attaquant multiplie les connexions au site
117 echo($erreurMDP);
116 sleep(1); 118 sleep(1);
117 echo($formulaireConnexion); 119 echo($formulaireConnexion);
118 } 120 }
@@ -124,4 +126,4 @@ function connexion($secret)
124 } 126 }
125 127
126 echo($footer); 128 echo($footer);
127} \ No newline at end of file 129}