Restructuration (après griffonage sur papier).
- Organisation des types de pages en modules, - Chaque module contient un fichier "module.php", qui #include les autres, - Conception (partielle) de la partie "admin". - Stockage plus ou moins prévu pour pouvoir stocker dans une base de données si nécessaire. - Conception (partielle) du mécanisme d'authentification et de permissions.
This commit is contained in:
parent
6baacdd20a
commit
ee69af2128
1
__cms__/.htaccess
Normal file
1
__cms__/.htaccess
Normal file
|
@ -0,0 +1 @@
|
|||
deny from all
|
14
__cms__/chemin/chemin.php
Normal file
14
__cms__/chemin/chemin.php
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?php
|
||||
|
||||
function correspond(motif, chemin) {
|
||||
// motif : liste de segments, pouvant être un chaîne ou un jocker
|
||||
// correspondant à "n'importe quelle chaîne pour ce segment". Le
|
||||
// dernier segment peut être le joker "n'importe quelle suite de
|
||||
// segments (le motif doit donc correspondre à un préfixe du chemin
|
||||
// dans ce cas-là).
|
||||
// chemin : liste de segments.
|
||||
|
||||
// les segments de chemin et motif sont déjà nettoyés.
|
||||
}
|
||||
|
||||
?>
|
0
__cms__/modules/admin/connexion.php
Normal file
0
__cms__/modules/admin/connexion.php
Normal file
0
__cms__/modules/admin/couleurs.php
Normal file
0
__cms__/modules/admin/couleurs.php
Normal file
0
__cms__/modules/admin/module.php
Normal file
0
__cms__/modules/admin/module.php
Normal file
0
__cms__/modules/admin/permissions.php
Normal file
0
__cms__/modules/admin/permissions.php
Normal file
0
__cms__/modules/admin/utilisateurs.php
Normal file
0
__cms__/modules/admin/utilisateurs.php
Normal file
0
__cms__/modules/forum/module.php
Normal file
0
__cms__/modules/forum/module.php
Normal file
0
__cms__/modules/galerie/galerie-evenement.php
Normal file
0
__cms__/modules/galerie/galerie-evenement.php
Normal file
0
__cms__/modules/galerie/galerie-index.php
Normal file
0
__cms__/modules/galerie/galerie-index.php
Normal file
0
__cms__/modules/galerie/galerie-periode.php
Normal file
0
__cms__/modules/galerie/galerie-periode.php
Normal file
49
__cms__/modules/galerie/galerie-photo.php
Normal file
49
__cms__/modules/galerie/galerie-photo.php
Normal file
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
|
||||
function action($chemin, $action, $paramètres) {
|
||||
if ($action == "anuler") {
|
||||
return redirect($chemin);
|
||||
} else if ($action == "nouvelle_page") {
|
||||
// Créer la nouvelle page avec les valeurs par défaut.
|
||||
// return Redirect vers cette nouvelle page.
|
||||
} else if ($action == "supprimer") {
|
||||
// Supprimer cette page.
|
||||
// return Redirect vers la page parente.
|
||||
} else {
|
||||
if (is_set($paramètres["fichier_image"])) {
|
||||
// stocker le fichier reçu dans prop_image
|
||||
// redimensionner l'image avec gd, stocker la miniature dans
|
||||
// prop_image_mini
|
||||
}
|
||||
if (is_set($paramètres["titre"])) {
|
||||
// renomer la page
|
||||
}
|
||||
if (is_set($paramètres["description"])) {
|
||||
// set_prop($chemin, "description", $paramètres["description"]);
|
||||
}
|
||||
/* if (is_set($paramètres[""])) {
|
||||
}*/
|
||||
|
||||
if (is_set($paramètres["vue"])) {
|
||||
self::vue($chemin, $paramètres["vue"]);
|
||||
} else {
|
||||
self::vue($chemin);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function vue($chemin, $vue = "normal") {
|
||||
if ($vue == "normal") {
|
||||
// Si l'utilisateur a l'autorisation de modifier les propriétés,
|
||||
// on affiche la version modifiable plutôt que la "vue".
|
||||
return "Vue normale de la page.";
|
||||
} else if ($vue == "miniature") {
|
||||
return "Vue miniature.";
|
||||
} else if ($vue == "image") {
|
||||
// stockage::sendfile_prop("image");
|
||||
} else if ($vue == "image_mini") {
|
||||
// stockage::sendfile_prop("image_mini");
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
6
__cms__/modules/galerie/module.php
Normal file
6
__cms__/modules/galerie/module.php
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?php
|
||||
require_once(dirname(__FILE__) . "/galerie-index.php");
|
||||
require_once(dirname(__FILE__) . "/galerie-periode.php");
|
||||
require_once(dirname(__FILE__) . "/galerie-evenement.php");
|
||||
require_once(dirname(__FILE__) . "/galerie-photo.php");
|
||||
?>
|
41
__cms__/securite/authentification.php
Normal file
41
__cms__/securite/authentification.php
Normal file
|
@ -0,0 +1,41 @@
|
|||
<?php
|
||||
|
||||
function connexion($utilisateur, $mdp) {
|
||||
// vérifie si $utilisateur a pour mot de passe $mdp.
|
||||
// Si oui, on place une variable de session, et on renvoie true.
|
||||
// (Note : session_start doit avoir été exécuté avant.)
|
||||
// La variable de session contient $utilisateur (vérifier si c'est sécurisé...)
|
||||
// Si non, on renvoie false.
|
||||
}
|
||||
|
||||
function déconnexion() {
|
||||
// Efface la variable de session positionnée par connexion().
|
||||
}
|
||||
|
||||
function get_utilisateur() {
|
||||
// Renvoie $utilisateur s'il est connecté, false sinon.
|
||||
}
|
||||
|
||||
function nouvel_utilisateur($utilisateur) {
|
||||
// Crée un nouvel utilisateur nommé $utilisateur.
|
||||
// Lui affecte un mot de passe aléatoire.
|
||||
// Positionne son groupe à "anonyme".
|
||||
}
|
||||
|
||||
function set_groupe($utilisateur, $groupe) {
|
||||
// Positionne le groupe de $utilisateur à $groupe.
|
||||
}
|
||||
|
||||
function get_groupe($utilisateur, $groupe) {
|
||||
// Positionne le groupe de $utilisateur à $groupe.
|
||||
}
|
||||
|
||||
function supprimer_utilisateur($utilisateur) {
|
||||
// Supprime l'utilisateur créé par nouvel_utilisateur
|
||||
}
|
||||
|
||||
function get_mot_de_passe($utilisateur) {
|
||||
// Renvoie le mot de passe de $utilisateur
|
||||
}
|
||||
|
||||
?>
|
6
__cms__/securite/nettoyage.php
Normal file
6
__cms__/securite/nettoyage.php
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?php
|
||||
|
||||
// Fonctions permettant de "nettoyer" les données provenant de
|
||||
// l'utilisateur.
|
||||
|
||||
?>
|
24
__cms__/securite/permissions.php
Normal file
24
__cms__/securite/permissions.php
Normal file
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
function vérifier_permission($chemin, $action, $utilisateur) {
|
||||
// Vérifie si $utilisateur a la permission d'effectuer $action sur $chemin.
|
||||
// Parcourt la liste les règles de sécurité (get_regles()), et
|
||||
// sélectionne la première pour laquelle $chemin correspond au motif
|
||||
// de la règle, $action correspond au motif de la règle, et
|
||||
// $utilisateur a comme groupe le groupe de la règle (get_groupe()).
|
||||
// Si le champ "autorisation" de la règle est true, on renvoie true,
|
||||
// sinon on renvoie false
|
||||
}
|
||||
|
||||
function set_regles($regles) {
|
||||
// $regles est un tableau de quadruplets
|
||||
// (chemin, action, groupe, autorisation).
|
||||
|
||||
// Enregistre $regles pour qu'il puisse être lu par get_regles.
|
||||
}
|
||||
|
||||
function get_regles() {
|
||||
// Renvoie les regles.
|
||||
}
|
||||
|
||||
?>
|
34
__cms__/stockage/stockage.php
Normal file
34
__cms__/stockage/stockage.php
Normal file
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
// Chaque fonction appelle vérifier_permission($chemin, $action, $utilisateur).
|
||||
|
||||
// Chaque fonction ajoute un chemin de base (pour le stockage) avant
|
||||
// $chemin, puis appelle une fonction de systeme-fichiers.php
|
||||
|
||||
function créer_enfant($chemin, $nom) {
|
||||
}
|
||||
|
||||
function set_prop($chemin, $prop, $valeur) {
|
||||
}
|
||||
|
||||
function get_prop($chemin, $prop) {
|
||||
}
|
||||
|
||||
function supprimer($chemin, $récursif) {
|
||||
}
|
||||
|
||||
function liste_enfants($chemin) {
|
||||
}
|
||||
|
||||
/*function parent($chemin) {
|
||||
}*/
|
||||
|
||||
/*function stocker_fichier($chemin_fs_orig, $chemin, $prop) {
|
||||
}*/
|
||||
|
||||
function renomer($chemin, $nouveau_nom) {
|
||||
// Vérifie si l'ancien nom et le nouveau nom sont différents.
|
||||
// Renome le dossier.
|
||||
}
|
||||
|
||||
?>
|
32
__cms__/stockage/systeme-fichiers.php
Normal file
32
__cms__/stockage/systeme-fichiers.php
Normal file
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
|
||||
function créer_dossier($chemin) {
|
||||
// mkdir($chemin)
|
||||
}
|
||||
|
||||
/*function créer_fichier($chemin) {
|
||||
// touch($chemin)
|
||||
}*/
|
||||
|
||||
function supprimer($chemin, $récursif) {
|
||||
// Si non récursif, supprime ssi c'est un fichier.
|
||||
// Sinon, si c'est un fichier ou un lien, supprime,
|
||||
// si c'est un dossier, appelle récursivement puis rmdir.
|
||||
}
|
||||
|
||||
function lire($chemin) {
|
||||
// file_get_contents()
|
||||
}
|
||||
|
||||
function ecrire($chemin, $données) {
|
||||
// file_put_contents();
|
||||
}
|
||||
|
||||
function liste_enfants($chemin) {
|
||||
// Renvoie la liste des sous-fichiers et sous-dossiers.
|
||||
}
|
||||
|
||||
function déplacer($chemin_de, $cemin_vers) {
|
||||
}
|
||||
|
||||
?>
|
Loading…
Reference in New Issue
Block a user