Manual for graphical migration from version 2.6.2 to version 2.6.3


Migration of the training research service

Please note that this migration also requires a technical migration Manual for technical migration from version 2.6.2 to version 2.6.3

 

The "Show routes" service parameter has been modified. It is no longer a Boolean, but a drop-down list with 4 possible options:

  • none: do not display routes
  • all: display all routes
  • matching_search_only: display only routes matching search criteria
  • all_with_highlight: display all routes, highlighting those that match the search criteria

In your overloads, look for places where you use the parameter <xsl:param name="displaySubProgram" select="ametys:serviceParameter('displaySubProgram')"/>
The value is no longer "true" or "false", but one of the 4 values listed above.

Route display

In the search results, the logic for displaying routes has therefore evolved to take into account the 4 possible values:

  • none: routes are not available at XML .
  • all: the courses are all available at XML , you can display them under the course.
  • matching_search_only: only courses matching the search criteria are available at XML . You can display them below the course.
  • all_with_highlight: all routes are available in the input XML , but those with the "highlight " attribute are those that meet the search criteria, so you can customize the display between those that meet the criteria and others.

You have 3 additional XSL templates to manage the display of routes, which you can use or override as you wish:

<xsl:template name="hit-subprograms">
<xsl:param name="class">custom</xsl:param>

<xsl:if test="$displaySubProgram != 'none' and subprogram">
<!-- Parcours répondant aux critère de recherche -->
<xsl:if test="subprogram[not(@highlight) or @highlight = 'true']">
<ul class="{$class} subprogram">
<xsl:for-each select="subprogram[not(@highlight) or @highlight = 'true']">
<li>
<xsl:if test="@highlight = 'true'"><xsl:attribute name="class">highlight</xsl:attribute></xsl:if>
<xsl:call-template name="hit-subprogram" />
</li>
</xsl:for-each>
</ul>
</xsl:if>

<!-- Autres parcours -->
<xsl:call-template name="hit-subprograms-others">
<xsl:with-param name="class" select="$class"/>
</xsl:call-template>
</xsl:if>
</xsl:template>

<xsl:template name="hit-subprograms-others">
<xsl:param name="class">custom</xsl:param>

<xsl:if test="$displaySubProgram = 'all_with_highlight' and subprogram[@highlight = 'false']">
<div class="other-subprograms">
<a class="collapsed" href="#" onclick="$j(this).toggleClass('collapsed')">
<span>
<xsl:choose>
<xsl:when test="subprogram[@highlight = 'true']">
<i18n:text i18n:key="PLUGINS_ODFWEB_SERVICE_SEARCH_NOT_MATCHING_SUBPROGRAM_OTHERS" i18n:catalogue="plugin.odf-web"/> 
</xsl:when>
<xsl:otherwise>
<i18n:text i18n:key="PLUGINS_ODFWEB_SERVICE_SEARCH_NOT_MATCHING_SUBPROGRAM_SEE" i18n:catalogue="plugin.odf-web"/> 
</xsl:otherwise>
</xsl:choose>
</span>
</a>
<ul id="other-subprograms-{$uniqueId}-{position()}" class="{$class} subprogram others">
<xsl:for-each select="subprogram[@highlight = 'false']">
<li>
<xsl:call-template name="hit-subprogram" />
</li>
</xsl:for-each>
</ul>
</div>
</xsl:if>
</xsl:template>

<xsl:template name="hit-subprogram" >
<a>
<xsl:attribute name="href">
<xsl:call-template name="hit-href">
<xsl:with-param name="url" select="concat(../uri, '/', @path)"/>
</xsl:call-template>
</xsl:attribute>
<xsl:value-of select="@title"/>
</a>
</xsl:template>

Display example :

To display/hide "other" routes, click on the "View routes" link and add the following to your list CSS

.other-subprograms a.collapsed + ul { display: none }

.other-subprograms > a > span:before {content: '« '}
.other-subprograms a.collapsed > span:before { content: '» '}
Back to top

Installation, administration and configuration of Ametys ODF