- Comment positionner la taille "horizontale" d'un canal ?
La solution consiste à modifier directement vos fichiers "layout" en ajoutant le paramètre "width" :
<folder mutable="True" removable="True" type="regular">
<name>Points études</name>
<folder mutable="True" removable="True" type="regular" width="50%">
<name>Column 1</name>
<channel fName="UHB-CHtmlInfoPointEtu"/>
</folder> |
- Comment permettre l'affichage d'une double hauteur d'onglets sous Internet Explorer 6 et 7 ?
La solution consiste à modifier directement vos feuilles de style "CSS" en utilisant le paramètre "z-index" :
(Apparemment les z-index ne sont pas correctement interprétés sous IE s'ils ne sont pas associés au terme position autre que static.Pour ce qui est des / et - , il permettent d'indiquer des styles à interpréter uniquement pour IE 6 et IE 7)
/*style avec / et - specifiques IE */
#tabs ul#tabList li:hover {
/position:relative;
/z-index:1000;
-position:relative;
-z-index:1000;
} |
- Comment permettre l'affichage d'un seul canal lorsqu'on clique sur le menu principal ?
La solution consiste à modifier le fichier "xhtml-theme.xsl" :
<xsl:choose>
<xsl:when test="@activeTab='false'">
<!-- INACTIVE TAB -->
<li
id=" tab_{@ID}">
<!-- recuperation de l'id du 1er channel de la tab -->
<xsl:variable name="numChannel" select="./chans/chan[1]/@ID"/>
<a href="{$baseActionURL}?uP_root={$numChannel}&uP_sparam=activeTab&activeTab={$tabPosition}">-->
à la place de :
<xsl:choose>
<xsl:when test="@activeTab='false'">
<!-- INACTIVE TAB -->
<li
id=" tab_{@ID}">
<a id="activeTabLink" href="{$baseActionURL}?uP_root=root&uP_sparam=activeTab&activeTab={position()}"> |
* Comment permettre l'affichage d'un seul canal lorsqu'on clique sur le menu principal mais uniquement si l'onglet ne contient qu'une seule colonne ?
La solution consiste à modifier le fichier "tab-column.xsl", puis d'adapter la solution précédente en faisant un test sur la colonne :
<navigation>
<xsl:for-each select="/layout/folder/folder[@type='regular' and @hidden='false']">
<tab>
<xsl:attribute name="ID">
<xsl:value-of select="@ID"/>
</xsl:attribute>
<xsl:attribute name="cols">
<xsl:value-of select="count(folder[@hidden='false'])"/>
</xsl:attribute>
...
|
- Comment désactiver le rendu inutile des canaux ?
Quelque soit la requête sur le portail, que l'on cible un onglet ou un canal, tous les canaux du layout sont "rendus", c'est-à-dire que le portail calcul le code HTML à afficher. L'affichage se décide dans les fichiers xsl et bien souvent ce rendu est inutile, voir problématique.
Pour remédier à ce problème, nous avons ajouté un processeur fixe dans le fichier "dlmContext.xml" :
<property name="fixedProcessors">
<list>
...
<bean class="org.esupportail.portal.layout.dlm.processing.DisableUselessChannelRendering" singleton="false"/>
...
</list>
</property>
|
Ce processeur remplace les "channel" qu'il est inutile de rendre en balise "chan". Il faut alors modifier légèrement le fichier "tab-column.xsl" pour conserver la partie "navigation".
<chans>
<xsl:for-each select="folder">
<xsl:for-each select="channel | chan">
<chan>
...
</chan>
</xsl:for-each>
</xsl:for-each>
</chans>
|