LemonLDAP::NG est fournit avec 3 thèmes :
On peut faire le sien, voir comment personnaliser le thème ci-dessous.
On peut changer le thème par défaut dans le manager : paramètres généraux
> Portail
> Personnalisation
> Skin
.
On peut vouloir utiliser différents thèmes en fonction de l'URL demandée avant la redirection au portail ou en fonction de l'adresse IP de l'utilisateur.
Pour le réaliser, il faut créer une règle dans le manager : choisir paramètres généraux
> Portail
> Personnalisation
> Règle d'affichage du thème
et cliquer sur “Nouvelle clef”. Renseigner ensuite les deux champs ;
Un thème est composé de différents fichiers :
Un thème se réfère souvent au thème common
, qui n'est pas un thème réel mais contient des objects partagés (tels les scripts, images et CSS).
Pour personnaliser un thème, la meilleure façon est de créer un nouveau répertoire :
cd portal/skins mkdir myskin mkdir myskin/css mkdir myskin/images
Créer ensuite des liens symboliques pour éviter de réécrire tous les fichiers HTML (sauf si c'est souhaité).
cd myskin ln -s ../pastel/*.tpl .
Nous incluons des fichiers modèles qui peuvent être personnalisés :
Pour utiliser des fichiers personnalisés, effacer les liens et copier les fichiers dans le répertoire du thème :
rm custom* cp ../pastel/custom* .
Il suffit ensuite d'écrire myskin/css/styles.css
et d'ajouter les médias dans myskin/images
. Mettre tous les codes HTML personnalisés dans les fichiers modèles personnalisés.
Pour configurer le nouveau thème dans le manager, selectionner le thème personnalisé et entrer le nom du nouveau thème dans le champ.
Les messages d'erreur sont définis dans le code source. S'ils ne conviennent pas, il peuvent être surchargés. Il suffit de connaître l'ID de l'erreur (voir Portal/Simple.pm) et de l'ajouter dans lemonldap-ng.ini
:
[portal] # Custom error messages error_0 = Big brother is watching you, authenticated user
Des paramètres modèles sont définis dans le code source. Pour ajouter un paramètre de modèle, l'ajouter dans lemonldap-ng.ini
:
[portal] # Custom template parameters tpl_myparam = world
On peut ensuite l'utiliser dans le modèle comme suit :
Hello <TMPL_VAR NAME="myparam">!
This node allows to enable/disable buttons on the login page:
Connecté en tant que
dans le menu