affinage du contrôleur des pages (structure)

This commit is contained in:
Georges Dupéron 2010-06-19 01:39:20 +02:00
parent c1db7292f2
commit 496a41e532

View File

@ -1,48 +1,59 @@
<?php <?php
// Protocole : http://site/actualités/?nouveau=Le%20titre // Protocole : http://site/actualités/?nouveau=Le%20titre
// TODO : Constructeur.
class Page { class Page {
// sous_article/prop_article // article/prop_article
// /prop_modèle // ??? // /prop_type
// /prop_photo // /prop_photo
// /prop_date // /prop_date
// /prop_lieu // /prop_lieu
// /sous_article_1 // /article_1 // Sous article
// /sous_article_2 // /article_2 // Sous article
public function liste_enfants() { public function liste_enfants() {
// Ouvrir le dossier (fopen).
// Lister les dossiers.
// Construire un objet Page pour chacun (code commun avec Page::enfant(nom)).
// renvoyer la liste.
} }
public function enfant(nom) { public function enfant(nom) {
// Récupéere le sous-dossier "nom"
// Construire un objet Page (code commun avec Page::liste_enfants()).
} }
public function parent() { public function parent() {
// Récupère le dossier parent
// Construire un objet Page (code commun avec Page::enfant(nom)).
} }
public function nouveau(nom) { public function nouveau(nom) {
// Si nom est null, utiliser "Article" + numéro // Si nom est null, utiliser "Article" + numéro
// Créer un sous-dossier "nom"
// L'initialiser avec le modèle donné dans prop_modele_enfants
// Construire un objet Page (code commun avec Page::enfant(nom)).
} }
public function supprimer(récursif) { public function supprimer(récursif) {
// Si récursif || il n'y a pas de sous-dossiers
// alors supprimer récursivement le dossier courant
// sinon renvoyer FAUX
} }
public function get_prop(nom_propriété) { public function get_prop(nom_propriété) {
// lire le contenu du fichier prop_nom_propriété
} }
public function set_prop(nom_propriété, valeur) { public function set_prop(nom_propriété, valeur) {
// écrire le contenu du fichier prop_nom_propriété
} }
public function url() { public function url() {
// calculer l'url de cette page en fonction de son chemin et de l'url de base
} }
public function nouvel_enfant() {
// Crée le dossier de cet article
// Crée un une propriété "article" pour le contenu de cet article à partir du modèle du dossier parent
// Crée un une propriété "modèle" pour les nouveaux sous-articles (?)
} }
}
?> ?>