blob: d738dc006a8a9a677991f9201e7969ebf79821b5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
<?php
// controller/admin.php
//
// utilisation du site en écriture
// version des pages en mode admin lorsque celui-ci crée ou modifie quelque chose
function melaineEdit($numArticle, $suppression)
{
$page_actuelle = "melaine";
$Articles = new ArticlesManager;
// contenu de la page
$Articles->setPage($page_actuelle);
$Articles->getFiles();
// nouvel article
if($numArticle == 0)
{
$title = "Ajouter un article";
$texte = '';
}
else
{
// nom de l'article ciblé (objet et session)
$Articles->findFileName($numArticle);
$_SESSION['nomFichier'] = $Articles->getFileName();
// suppression
if($suppression)
{
$Articles->delete();
header('Location: index.php?page=' . $page_actuelle);
}
// modification
else
{
$title = "Modifier un article";
// contenu envoyé à l'éditeur
$texte = $Articles->getOne();
}
}
// pour l'affichage des articles
$Articles->reverseFilesArray();
$articles = $Articles->getAll();
if($numArticle >= 0 && !$suppression)
{
// traitements PHP pour l'éditeur
require('controller/ckeditor.php');
// sécurisation du contenu pré-existant inséré dans l'éditeur
$texte = preparationCKeditor($numArticle, $texte);
}
// NB: penser à ajouter au template la fonctionnalité "autosave"
// https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/saving-data.html
// création des morceaux en HTML avant assemblage
// variable $editeurHTML, on insère $texte dedans
require('view/template-formulaires.php');
// variables $css, $js, $header et $content
// $content contient $articles et $editeurHTML
require('view/melaine.php');
// fin de l'assemblage
require('view/template.php');
}
function discoEdit($numArticle, $suppression)
{
$page_actuelle = "discographie";
$title = "Discographie";
// modèle
$Albums = new AlbumsManager;
$texte = '';
// traitements PHP pour l'éditeur
require('controller/ckeditor.php');
// sécurisation du contenu pré-existant inséré dans l'éditeur
$texte = preparationCKeditor($numArticle, $texte);
// variable $editeurHTML, on insère $texte dedans
require('view/template-formulaires.php');
// variables $css, $js, $header et $content
// $content contient ???? et $editeurHTML
require('view/discographie.php');
// fin de l'assemblage
require('view/template.php');
}
function changerMotDePasse($secret, $from)
{
// vérification supplémentaire
if($_SESSION['admin'] !== 1)
{
$_SESSION['admin'] = 0;
header('Location: index.php?page=' . $_GET['from']);
}
$title = "nouveau mot de passe";
// Ajouter une sécurité par cpatcha avec un "input" supplémentaire
// Et créer une variable de session pour la réponse au CAPTCHA
$title = "nouveau mot de passe";
$subHeading = "Veuillez saisir votre actuel mot de passe suivi du nouveau.";
// cette page utilise la même vue que la fonction connexion() dans controller/visiteur.php
require('view/connexion.php');
echo($header);
// traitements: vérification ancien mot de passe et choix du nouveau
echo($footer);
}
|