SP:Composant:SiteModel

De Hegyd Doc.

(Différences entre les versions)
(Base de données)
(Implémentation)
Ligne 9 : Ligne 9 :
=== Base de données ===
=== Base de données ===
-
Chaque thème est enregistré dans la table '''model'''.
+
Chaque thème est enregistré dans la table '''model''', comprenant le nom du modele, et son espace de nom notamment.
La correspondance entre un modele et les blocs qui le compose est enregistré dans la table '''jTypeBloc_Model'''.
La correspondance entre un modele et les blocs qui le compose est enregistré dans la table '''jTypeBloc_Model'''.
Ligne 19 : Ligne 19 :
La classe '''SiteModel''' est associée a l'entité.
La classe '''SiteModel''' est associée a l'entité.
 +
 +
=== Feuilles de style associées ===
 +
 +
Pour chaque modèle, une feuille de style permet de définir les style des blocs, afin de bien les placer au sein de la page pour le modele (menu a droite...).
 +
Ainsi dans le répertoire de style dédié aux modeles (défini dans la variable de [[SP:Configuration_Générale|configuration]] '''MODEL_FOLDER'''), il y a un répertoire par modele crée portant le nom correspondant a son espace de nom. A l'intérieur, le fichier style.css contient les consignes.
 +
 +
En production, ce fichier sera inclus avec les autres modifications concernant les [[SP:ComposantStyleProperties|propriétés de style]].
 +
En mode éditeur, il sera inclus à part. Cela permet de faciliter la réactualisation du template de site lors du changement de modèle: le chemin de la feuille de style CSS sera modifié a la volée.
== Choix du modèle sur l'éditeur ==
== Choix du modèle sur l'éditeur ==

Version du 5 juillet 2010 à 14:34


Sommaire

Les Modèles

Un modéle définit une mise en page spécifique. Elle correspond a un assemblage spécifique de Blocs.

Implémentation

Base de données

Chaque thème est enregistré dans la table model, comprenant le nom du modele, et son espace de nom notamment.

La correspondance entre un modele et les blocs qui le compose est enregistré dans la table jTypeBloc_Model. Cette jointure permet de définir:

  • la position du bloc pour le modele donné
  • la présence ou non d'un bloc dans le modèle (si pas de jointure => bloc non présent)

Classe associée

La classe SiteModel est associée a l'entité.

Feuilles de style associées

Pour chaque modèle, une feuille de style permet de définir les style des blocs, afin de bien les placer au sein de la page pour le modele (menu a droite...). Ainsi dans le répertoire de style dédié aux modeles (défini dans la variable de configuration MODEL_FOLDER), il y a un répertoire par modele crée portant le nom correspondant a son espace de nom. A l'intérieur, le fichier style.css contient les consignes.

En production, ce fichier sera inclus avec les autres modifications concernant les propriétés de style. En mode éditeur, il sera inclus à part. Cela permet de faciliter la réactualisation du template de site lors du changement de modèle: le chemin de la feuille de style CSS sera modifié a la volée.

Choix du modèle sur l'éditeur

Le choix se fait selon deux choix:

  • la mise en page du header (combo header et menu d'entete)
  • la mise en page de la partie centrale de la page (menus et contenu)

Une mise en page de header + mise en page partie centrale = model.

Cette relation est établie grace au fichier de configuration conf/models.php. Ce fichier de config définit la liste des possibiltié pour chaque type de choix, et un tableau permet de récupéer l'identifiant du model selon le choix effectué.