Date de création : | 30/06/2003 | |
Dernière modification : | 30/06/2003 | |
Diffusion : | internet |
Toutes les informations, structurées sous forme de channel, reçues par l'environnement uPortal sont transformées via des feuilles xsl pour différents médias de sortie : html pour un navigateur, wml pour un portable.
L'objectif de ce document est d'expliquer la structure des différents fichiers xsl utilisés, leurs emplacements. Quelques exemples de modifications possibles de ces feuilles permettront de paramétrer UPortal afin qu'il respecte la charte graphique de l'établissement.
Pour le rendu de l'arbre xml, uPortal se repose sur deux types de feuilles :
Par défaut, uPortal propose des feuilles xsl pour le rendu de la structure et de channels. Il est possible de modifier ces feuilles.
Par défaut c'est une représentation sous forme d'onglets et de colonnes qui sert au rendu de la structure du document. Le fichier utilisé pour cette transformation est placé dans le répertoire stylesheets/org/jasig/portal/layout/tab-column/nested-tables. Le fichier pour le rendu html est nested-tables.xsl. Cette feuille fait appel aux transformations individuelles des channels, ces feuilles sont placées dans uportal/webpages/stylesheets/org/jasig/portal/channels.
les motifs :
déclenchement des règles :
Appel aux transformations :
Les feuilles de style pour le rendu structurel d'un channel sont situées dans le répertoire uportal/stylesheets/org/asig/portal/channels. Dans l'exemple ci dessous, les fichiers associés au channel CHeader qui traitent de la barre de commande après authentification.
la feuille de la transformation est html.xsl . Elle est située dans uportal/stylesheets/org/jasig/portal/channels/Cheader. Ci-dessous, le visuel du Cheader et le code utilisé pour la transformation.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:param name="baseActionURL">default</xsl:param>
<xsl:param name="authenticated">false</xsl:param>
<xsl:template match="header">
<xsl:if test="$authenticated != 'false'">
<a href="{$baseActionURL}?uP_root=root" class="uportal-navigation-category">Accueil </a> | <xsl:if test="chan-mgr-chanid">
<a href="{$baseActionURL}?uP_root={chan-mgr-chanid}" class="uportal-navigation-category"> Channel Admin </a> | </xsl:if>
<a href="{$baseActionURL}?uP_root={preferences-chanid}" class="uportal-navigation-category"> Préférences </a> | <a href="Logout" class="uportal-navigation-category"> Déconnexion </a>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Le fichier de transformation du canal CImage est situé dans le répertoire
uportal/stylesheets/org/jasig/portal/channels/CImage : CImage.xsl.
Pour un channel de type CImage, on veut créer un rendu sous forme de
tableau avec l'affichage du titre de l'image sur la première ligne,
puis l'image avec possibilité
d'un hyperlien, cette image possédant un texte de secours via des balises
alt et title, un sous-titre pouvant apparaître dans une troisième
ligne.
Un élément de type Image possède dans sa structure un élément image
avec les attributs src (source de l'image), width et height (largeur et
hauteur de l'image), link (lien vers un site),
un élément caption (libellé
de l'image), subcaption (sous-titre de l'image),
link
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl= "http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="content"> <table width="100%" border="0" cellspacing="0" cellpadding="3"> <tr class="uportal-background-med" align="center"> <td class="uportal-channel-subtitle"> <xsl:value-of select="caption"/> </td> </tr> <tr class="uportal-background-med"> <td align="center"> <a href="{image/@link}"> <image src="{image/@src}" width="{image/@width}" height="{image/@height}" hspace="3" vspace="3" border="{image/@border}" title="{caption}" alt="{caption}"/> </a> </td> </tr> <tr class="uportal-background-med"> <td class="uportal-channel-subtitle" align="center"> <xsl:value-of select="subcaption"/> </td> </tr> </table> < /xsl:template> </xsl:stylesheet>
Création : 30/06/2003 Séb [UHP Nancy I] | |
Modifications : |