Thèmes et Layout

De Sydonie

Mettre en place un thème

Les thèmes sont définis dans le répertoire indiqué par la constante UI_DIRECTORY

Chaque thème correspond à un répertoire, et le thème actif est mentionné dans config/site/config_site.php

Un répertoire de thème contient les sous-répertoires :

  • css : pour toutes les feuilles de style utiles pour l'application. C'est dans ce répertoire que l'on installera, le cas échéant, les framework CSS choisis par le développeur.
  • fonts : pour les polices de caractères spécifiques (woff ou otf)
  • fragments : pour les parties de code html qui sont utilisées globalement dans le site (header, footer,...). Voir la description des usages ci-après
  • images : placer les illustrations qui servent pour le style. On mettra ici les images qui sont appelées en images de fond par la feuille de style (qui sait donc toujourz retrouver une image d'illustration par url(../images/nomDeImage.extension).
    • Un sous-répertoire fileIcons contient les icones généralistes permettant de définir les types de fichiers (à préciser et compléter...).
  • layout : les gabarits des pages principales. On définit en général la page d'accueil et une page dite "service" qui correspond aux autres pages... la différence étant fournie par les appels à des fonctions ou l'insertion de fragments...

Les informations sur les thèmes utilisés sont données par les constantes définies dans config/site/config_site.php


Utilisation des fragments

Les fragments sont l'équivalents de templates mais ils sont indépendants de tout objet. Ils sont stockés dans le thème du site.

Pour afficher le contenu d'un fragment, on utilise la fonction getFragment($name)

Créer des tabs pour les diverses activités : displaySideBar()

La fonction displaySideBar() permet de défnir des tabs sur une colonne qui font basculer entre la colonne spécifique du visiteur, de l'utilisateur connecté et de l'administrateur.

Pour fonctionner, cette fonction a besoin que soient créés dans le thème les fragments :

  • asideAdmin
  • asideUser
  • asidePublic