Uploaded image for project: 'Offre de formation'
  1. Offre de formation
  2. ODF-1140

In a program, add container xml info when inside a subprogram

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Major Major
    • 2.4.1, 2.5.0
    • None
    • None
    • None

      When container (and courselist and course) is not inside a subprogram, we have all the information in the xml of the program.
      But when these are in a subprogram, we only have the subprogram url.

      When there is a subprogram, I would like to add all the information about container, courselist and course in the xml of a Program.

          [ODF-1140] In a program, add container xml info when inside a subprogram

          Laurence Aumeunier added a comment - - edited

          Deux nouvelles méthodes dans ODFXSLTHelper

          public static Node getSubProgramStructure (String subprogramId)
          Pour obtenir toute la structure d'un sous-programme, y compris la structure de ses sous-programmes enfants sans limitation.

          public static Node getSubProgramStructure (String subprogramId, int depth)
          Pour obtenir toute la structure d'un sous-programme, et celle de ses ses sous-programmes enfants jusqu'à une profondeur de "depth"
          Definir un nombre positif pour "depth" pour obtenir la structure des sous-programmes enfants jusqu'à la profondeur "depth". Définir une valeur négative pour obtenir toute la structure, y compris la structure de sous-programmes de l'enfant sans limitation.
          Ce paramètre ne concerne que les sous-programmes, les container, courselist et UE sont toujours retournés sans limitation

          Laurence Aumeunier added a comment - - edited Deux nouvelles méthodes dans ODFXSLTHelper public static Node getSubProgramStructure (String subprogramId) Pour obtenir toute la structure d'un sous-programme, y compris la structure de ses sous-programmes enfants sans limitation. public static Node getSubProgramStructure (String subprogramId, int depth) Pour obtenir toute la structure d'un sous-programme, et celle de ses ses sous-programmes enfants jusqu'à une profondeur de "depth" Definir un nombre positif pour "depth" pour obtenir la structure des sous-programmes enfants jusqu'à la profondeur "depth". Définir une valeur négative pour obtenir toute la structure, y compris la structure de sous-programmes de l'enfant sans limitation. Ce paramètre ne concerne que les sous-programmes, les container, courselist et UE sont toujours retournés sans limitation

          Bérénice Maurel added a comment - - edited

          Exemple d'utilisation :

          • Dans la XSL, déclarer le namespace odf :
            xmlns:odf="org.ametys.odf.OdfXSLTHelper"
          • Il est possible de surcharger le template subprogram dans program-main.xsl comme suit :
            <xsl:template match="subprogram">
            	<li>
            		<a href="{resolver:resolve('odf', @id)}"><xsl:value-of select="@title"/></a>
            		
            		<!-- Affichage de la structure d'un sous programme -->
            		<xsl:variable name="structure" select="odf:getSubProgramStructure(@id, 1)"/>
            		<xsl:if test="$structure/*">
            			<ul>
            				<xsl:apply-templates select="$structure/*"/>
            			</ul>
            		</xsl:if>
            	</li>
            </xsl:template>

          Bérénice Maurel added a comment - - edited Exemple d'utilisation : Dans la XSL, déclarer le namespace odf : xmlns:odf = "org.ametys.odf.OdfXSLTHelper" Il est possible de surcharger le template subprogram dans program-main.xsl comme suit : < xsl:template match= "subprogram" > <li> <a href= "{resolver:resolve( 'odf' , @id)}" > < xsl:value-of select= "@title" /> </a> <!-- Affichage de la structure d'un sous programme --> < xsl:variable name= "structure" select= "odf:getSubProgramStructure(@id, 1)" /> < xsl:if test= "$structure/*" > <ul> < xsl:apply-templates select= "$structure/*" /> </ul> </ xsl:if > </li> </ xsl:template >

            bmaurel Bérénice Maurel
            jonathan Jonathan Wendlinger
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: