Encore des notes.
This commit is contained in:
parent
5c4ed5ebd9
commit
73282aa93a
|
@ -1,3 +1,23 @@
|
||||||
|
@titre : url
|
||||||
|
@description :
|
||||||
|
|
||||||
|
Enfants : galerie-photo
|
||||||
|
Actions : créer_enfant, supprimer, vue
|
||||||
|
|
||||||
|
Vue normale :
|
||||||
|
(titre @titre)
|
||||||
|
(action supprimer "Supprimer cet événement")
|
||||||
|
(texte-riche @description)
|
||||||
|
+ liste des enfants :
|
||||||
|
<li>[miniature][titre]</li>
|
||||||
|
si permission créer page :
|
||||||
|
<li>(action nouvelle_page)</li>
|
||||||
|
|
||||||
|
Vue miniature :
|
||||||
|
Sélectionner le 1er enfant, lui demander sa vue "miniature", en renvoyer la partie image.
|
||||||
|
|
||||||
|
Donnée statique : icône "nouvelle image".
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
class GalerieÉvènement {
|
class GalerieÉvènement {
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
|
|
||||||
<%titre @titre %>
|
<%titre @titre %>
|
||||||
<%texte @description %>
|
<%texte-riche @description %>
|
||||||
<%list ./periodes %>
|
<%list ./periodes %>
|
||||||
<li>
|
<li>
|
||||||
<a href="<?php echo $periode->url(); ?>">
|
<a href="<?php echo $periode->url(); ?>">
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
(document @titre
|
(document @titre
|
||||||
(titre @titre)
|
(titre @titre)
|
||||||
(texte @description)
|
(texte-riche @description)
|
||||||
(list ./periodes
|
(list ./periodes
|
||||||
(lambda (p)
|
(lambda (p)
|
||||||
(let ((rendu (rendu p)))
|
(let ((rendu (rendu p)))
|
||||||
|
@ -45,7 +45,7 @@
|
||||||
|
|
||||||
(document @titre
|
(document @titre
|
||||||
(titre @titre)
|
(titre @titre)
|
||||||
(texte @description)
|
(texte-riche @description)
|
||||||
(<ul>
|
(<ul>
|
||||||
(foreach/rendu ((p ./periodes))
|
(foreach/rendu ((p ./periodes))
|
||||||
(<li>
|
(<li>
|
||||||
|
@ -78,8 +78,53 @@ Dans la base de données, chaque "page" a :
|
||||||
Langage de requêtes :
|
Langage de requêtes :
|
||||||
- Récupérer un attribut
|
- Récupérer un attribut
|
||||||
- Récupérer une page enfant d'une certaine catégorie (?)
|
- Récupérer une page enfant d'une certaine catégorie (?)
|
||||||
- Trier selon un certain critère sur les éléments renvoyés.
|
- Trier selon une propriété des éléments renvoyés (plus tard, on pourra trier en fonction d'autres critères).
|
||||||
- Limiter le nombre de résultats (LIMIT et OFFSET).
|
- Limiter le nombre de résultats (LIMIT et OFFSET).
|
||||||
|
- Ne renvoie que les éléments que l'utilisateur a la permission de voir.
|
||||||
|
|
||||||
Un module peut déclarer des ressources statiques (par ex. un fragment de less/css).
|
Un module peut déclarer des ressources statiques (par ex. un fragment de less/css).
|
||||||
Les ressources doivent pouvoir être accédées via une certaine url.
|
Les ressources doivent pouvoir être accédées via une certaine url.
|
||||||
|
|
||||||
|
Notes en vrac :
|
||||||
|
===============
|
||||||
|
|
||||||
|
On doit pouvoir insérer des éléments supplémentaires dans une liste (entre autres le bouton "nouvelle page").
|
||||||
|
Donc la "macro" (liste) ne fonctionnera pas. À moins que insérer soit la seule chose à ajouter. Ou si on fait
|
||||||
|
un mécanisme qui permet d'ajouter d'autre choses à la liste (prepend / append, ou paramètres supplémentaires).
|
||||||
|
|
||||||
|
Il faut une macro (action), qui génère en html un bouton.
|
||||||
|
|
||||||
|
Dans les actions de chaque module, il y a :
|
||||||
|
- vue (toujours)
|
||||||
|
- set_prop (toujours?)
|
||||||
|
- supprimer (souvent? toujours?)
|
||||||
|
- créer_enfant (souvent)
|
||||||
|
|
||||||
|
Problème des class css.
|
||||||
|
|
||||||
|
Pour les aperçus dans la galerie : prendre le 1er enfant (ou l'enfant marqué 'aperçu').
|
||||||
|
|
||||||
|
Pour les titres :
|
||||||
|
"@titre url" signifie :
|
||||||
|
Lorsqu'on modifie le titre, on modifie aussi l'emplacement de la page de pseudo-réécriture d'url.
|
||||||
|
De plus, lorsqu'on demande l'adresse de cette page, elle est calculée en fonction du titre.
|
||||||
|
Il faut trouver comment générer automatiquement une url / titre / je-ne-sais-quoi dans le cas où
|
||||||
|
le titre n'est pas renseigné (par ex. pour les 250 photos de la galerie, pour que les utilisateurs
|
||||||
|
n'aient pas à indiquer le titre à chaque fois.
|
||||||
|
|
||||||
|
Totues les pages ont une date de création et de modification automatiquement.
|
||||||
|
|
||||||
|
TODO : pouvoir accéder l'attribut @image directement depuis l'extérieur.
|
||||||
|
|
||||||
|
Abstractions :
|
||||||
|
- Valeur avec binding
|
||||||
|
- Action (créer page, supprimer)
|
||||||
|
- Getter et setter optionnels sur les valeurs.
|
||||||
|
Ex: getter de titre : Renvoie "Photo [date]" si le titre est indéfini, sinon le titre.
|
||||||
|
- Vue vs ressource (chaque ressource a une vue, une page "photo" est une ressource (celle par défaut), l'image elle-même est une autre ressource).
|
||||||
|
|
||||||
|
Valeurs par défaut pour les @attributs, définies dans le module lui-même.
|
||||||
|
|
||||||
|
Pour la galerie : 3 vues : normal, miniature (image + caption), mini-miniature (juste l'image).
|
||||||
|
Pour les photos : 4 ressources : la page (ressource par défaut), l'image en grand, l'image en 800x600 (par ex.), l'image mini (64x64).
|
||||||
|
La page affiche la photo 800x600, et si on clique dessus, c'est la version en grand qui est affichée.
|
||||||
|
|
|
@ -1,3 +1,23 @@
|
||||||
|
@titre : url
|
||||||
|
@description :
|
||||||
|
|
||||||
|
Enfants : galerie-evenement
|
||||||
|
Actions : créer_enfant, supprimer, vue
|
||||||
|
|
||||||
|
Vue normale :
|
||||||
|
(titre @titre)
|
||||||
|
(texte-riche @description)
|
||||||
|
(action supprimer "Supprimer cette période.") # ssi permission supprimer
|
||||||
|
+ liste des enfants :
|
||||||
|
<li>[miniature][titre]</li>
|
||||||
|
si permission créer page :
|
||||||
|
<li>(action nouvelle_page)</li>
|
||||||
|
|
||||||
|
Vue miniature :
|
||||||
|
Sélectionner le 1er enfant, lui demander sa vue "miniature", en renvoyer la partie image.
|
||||||
|
|
||||||
|
Donnée statique : icône "nouvel évènement".
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
class GaleriePériode {
|
class GaleriePériode {
|
||||||
|
|
|
@ -1,3 +1,22 @@
|
||||||
|
@titre : url
|
||||||
|
@description :
|
||||||
|
# external signifie : ne pas stocker dans la bdd.
|
||||||
|
@image : external
|
||||||
|
# private signifie : ne peut pas être modifié directement par l'utilisateur / la requête / les autres modules.
|
||||||
|
@miniature : private,external
|
||||||
|
set_image : fonction php qui crée la miniature.
|
||||||
|
|
||||||
|
Vue normale :
|
||||||
|
(@titre titre)
|
||||||
|
(action supprimer "Supprimer cet évènement")
|
||||||
|
(@texte-riche description)
|
||||||
|
(@image image)
|
||||||
|
|
||||||
|
Vue miniature :
|
||||||
|
(@titre titre)
|
||||||
|
(@image miniature)
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
class GaleriePhoto {
|
class GaleriePhoto {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user