Le CMS Ametys met à disposition des intégrateurs de nombreuses méthodes accessibles à partir des fichiers XSLT, facilitant l'intégration des chartes graphique.
Ajouter ce namespace "odf" dans l'entête des fichiers XSL comme suit:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" ... xmlns:odf="org.ametys.plugins.odfweb.xslt.OdfXSLTHelper" ... extension-element-prefixes="... ametys ...">
De sorte à pouvoir appeler n'importe quelle fonction définie ci-dessous, en utilisant "ametys:functionName(argument1, argument2)"
Description :
Retourne autant de nœuds <program> qu'il y a de formations intégrant ce sous-programme, incluant la structure des sous-programmes jusque la profondeur indiquée.
Si vous connaissez l'identifiant de la formation souhaitée, utilisez plutôt la méthode getProgramStructure.
Signature :
NodeList getParentProgramStructure (String subprogramId, int depth)
Arguments :
Nom |
Type |
Description |
---|---|---|
subprogramId |
String |
Identifiant du sous-programme |
depth |
int |
Profondeur Indiquer un chiffre positif pour récupérer la structure des sous-programmes jusqu'à une profondeur de depth. Indiquer un chiffre négatif pour récupérer la structure complète récursivement. Ce paramètre concerne uniquement les sous-programmes. |
Exemple : voir getProgramStructure
Description :
Retourne autant de noeuds <program> qu'il y a de formations intégrant ce sous-programme.
Si vous connaissez l'identifiant de la formation parente, utilisez plutôt la méthode getProgram.
Signature :
NodeList getParentProgram (String subprogramId)
Arguments :
Nom |
Type |
Description |
---|---|---|
subprogramId |
String |
Identifiant du sous-programme |
Exemple : voir getProgram
Description :
Retourne un nœud <program> contenant la structure de la formation jusqu'à une profondeur de depth
Signature :
NodeList getProgramStructure (String programId, int depth)
Arguments :
Nom |
Type |
Description |
---|---|---|
programId |
String |
Identifiant de la formation |
depth |
int |
Profondeur Indiquer un chiffre positif pour récupérer la structure jusqu'à une profondeur de depth. Indiquer un chiffre négatif pour récupérer la structure complète récursivement. Ce paramètre concerne uniquement les sous-programmes. |
Exemple :
<program ects="content://766a60bb-0048-4c0f-9018-9a5cf3cb5a6a" code="H7AHQYZO" catalog="2013-2017" degree="content://47383714-55b6-441b-b43c-4ef27db82e1c" id="programContent://25be5972-5e5a-4068-bd30-dd97b400c8ff" title="Licence Mathématiques"> <subprogram ects="content://8cbc13c3-b44d-42a4-842f-71456b3d9a1e" code="H7AHWVC8" catalog="2013-2017" id="subProgramContent://627f8540-be41-4797-bd18-82f9c09be35e" title="L3 parcours Mathématiques générales"> <container code="K42UDTSB" catalog="2013-2017" id="container://c10dd651-afbb-4913-b813-78430749c960" title="L3 parcours Mathématiques générales"> <container code="K42UR3PX" catalog="2013-2017" id="container://19d5cb9b-7f70-45b5-bb95-ff188cdd85db" title="Semestre 5"> <courselist code="LMP1A3M" catalog="2013-2017" id="courseListContent://a18375e2-c581-430b-88f6-4817f77b71e5" title="Math. Options 3e année" type="MANDATORY"> <course code="H7AI4Z0J" catalog="2013-2017" name="course-fruai3182988bcoh7ai4z0j" id="courseContent://03a77422-20d2-4a7b-a315-74de76c327fa" title="Arithmétique"></course> <!-- // ... --> </courselist> </container> <container code="K42UOQ9N" catalog="2013-2017" id="container://466926e2-6107-43a5-af73-0539263f0178" title="Semestre 6"> <!-- // ... --> </container> </container> </subprogram> <subprogram code="H7AHX5R3" catalog="2013-2017" id="subProgramContent://b503cb25-5a69-4596-b7bb-5d9cdff18af4" title="Parcours Mathématiques pour l’assurance et la finance"> <!-- // ... --> </subprogram> </program>
Description :
Retourne un nœud <program> contenant les informations de la formation
Signature :
Node getProgram (String programId)
Arguments :
Nom |
Type |
Description |
---|---|---|
programId |
String |
Identifiant du programme |
Exemple d'information retournée:
<program ects="content://766a60bb-0048-4c0f-9018-9a5cf3cb5a6a" code="H7AHQYZO" catalog="2013-2017" degree="content://47383714-55b6-441b-b43c-4ef27db82e1c" id="programContent://25be5972-5e5a-4068-bd30-dd97b400c8ff" title="Licence Mathématiques"> </program>
Description :
Retourne un noeud <subprogram> contenant la structure du sous-programme , incluant la structure des sous-programmes.
Si l'attribut depth est précisé, la structure est retournée jusqu'à une profondeur de depth.
Sans attribut depth, la structure est complète.
Signature :
Node getSubProgramStructure(String subprogramId)
Node getSubProgramStructure(String subprogramId, int depth)
Arguments :
Nom |
Type |
Description |
---|---|---|
subprogramId |
String |
Identifiant du sous-programme |
depth |
int |
Profondeur Indiquer un chiffre positif pour récupérer la structure jusqu'à une profondeur de depth. Indiquer un chiffre négatif pour récupérer la structure complète récursivement. Ce paramètre concerne uniquement les sous-programmes. |
Exemple :
<subprogram ects="content://8cbc13c3-b44d-42a4-842f-71456b3d9a1e" code="H7AHWVC8" catalog="2013-2017" id="subProgramContent://627f8540-be41-4797-bd18-82f9c09be35e" title="L3 parcours Mathématiques générales"> <container code="K42UDTSB" catalog="2013-2017" id="container://c10dd651-afbb-4913-b813-78430749c960" title="L3 parcours Mathématiques générales"> <container code="K42UR3PX" catalog="2013-2017" id="container://19d5cb9b-7f70-45b5-bb95-ff188cdd85db" title="Semestre 5"> <courselist code="LMP1A3M" catalog="2013-2017" id="courseListContent://a18375e2-c581-430b-88f6-4817f77b71e5" title="Math. Options 3e année" type="MANDATORY"> <course code="H7AI4Z0J" catalog="2013-2017" name="course-fruai3182988bcoh7ai4z0j" id="courseContent://03a77422-20d2-4a7b-a315-74de76c327fa" title="Arithmétique"></course> <!-- // ... --> </courselist> </container> <container code="K42UOQ9N" catalog="2013-2017" id="container://466926e2-6107-43a5-af73-0539263f0178" title="Semestre 6"> <!-- // ... --> </container> </container> </subprogram>
Description :
Retourne l'identifiant du programme parent à partir de la page courante.
La méthode retourne null le programme n'est pas trouvé.
Signature :
String parentProgramId()
Description :
Retourne l'identifiant de la page racine ODF pour un site spécifique, une langue, et éventuellement un catalogue.
S'il y a plusieurs pages racines, c'est la première de la liste qui est retournée
Si la page racine de l'ODF n'est pas trouvée, la méthode retourne null
Signature :
String odfRootPage (String siteName, String language)
String odfRootPage (String siteName, String language, String catalog)
Arguments :
Nom |
Type |
Description |
---|---|---|
siteName |
String |
Nom du site |
language |
String |
Langue |
catalog |
String |
Nom du catalogue |
Description :
Retourne l'URL du PDF d'un programme ou d'un sous-programme.
Si l'identifiant du contenu ne correspond pas à un programme ou à un sous-programme, la méthode renvoie une chaîne vide.
Signature :
String odfPDFUrl (String contentId, String siteName)
Arguments :
Nom |
Type |
Description |
---|---|---|
contentId |
String |
Identifiant du programme ou du sous-programme |
siteName |
String |
Nom du site |
Exemple d'utilisation :
<a href="{odf:odfPDFUrl($programId, $site)}" target="blank" >Télécharger le PDF</a>
Description :
Retourne le libellé de la certification du programme ou du sous-programme.
Si la formation n'est pas certifiée, la méthode retourne null.
Signature :
String getCertificationLabel(String abstractProgramId)
Arguments :
Nom |
Type |
Description |
---|---|---|
abstractProgramId |
String |
Identifiant du programme ou du sous-programme |
Exemple d'utilisation :
<xsl:variable name="label" select="odf:getCertificationLabel(@id)"/> <xsl:if test="$label != ''"> <xsl:variable name="labelImgPath" select="concat('img/labels/', $label, '.svg')"/> <img class="ametys-main-banner-label__img" src="{ametys:skinURL($labelImgPath)}" alt="" /> </xsl:if>
Cette méthode est disponible à partir de la version 4.4
Description :
Retourne le livret pédagogique au format PDF le plus récent pour un sous-programme.
Si le sous-programme n'existe pas ou s'il n'existe pas de livret pédagogique sur le sous-programme, la méthode renvoie null.
Signature :
AmetysNodeList getEducationalBooklet (String subProgramId)
Arguments :
Nom |
Type |
Description |
---|---|---|
subProgramId |
String |
Identifiant du sous-programme |
Exemple :
<pdf filename="Livret pédagogique L3 parcours Mathématiques générales - 2020-11-27.pdf" lastmodified="2020-11-27T17:06:26.000Z" mime-type="application/pdf" multiple="false" path="educational-booklets[1]/pdf" size="135670" type="attribute" typeid="file" uri="educational-booklets[1]/pdf"> </pdf>
Description :
Retourne le code associé à une entrée de table de référence.
Si l'entrée n'est pas trouvée, la méthode retourne null.
Signature :
String getCode (String tableRefEntryId)
Arguments :
Nom |
Type |
Description |
---|---|---|
tableRefEntryId |
String |
Identifiant de l'entrée de la table de référence |
Exemple d'utilisation:
<xsl:variable name="degreeId" select="metadata/degree/@id"/> <xsl:variable name="degreeCode" select="odf:getCode($degreeId)"/>
Description :
Retourne l'identifiant d'une entrée de table de référence à partir de son code.
La méthode retourne null si l'entrée n'est pas trouvée.
Signature :
String getEntryId (String tableRefId, String code)
Arguments :
Nom |
Type |
Description |
---|---|---|
tableRefId |
String |
Identifiant de la table de référence |
code |
String |
Code de l'entrée de la table de référence |
Exemple :
<xsl:variable name="degreeId" select="odf:getEntryId('odf-enumeration.Degree', 'XA')"/>
Description :
Retourne les entrées d'une table de référence
Signature :
Node getTableRefItems (String tableRefId, String lang)
Node getTableRefItems (String tableRefId, String lang, boolean ordered)
Arguments :
Nom |
Type |
Description |
---|---|---|
tableRefId |
String |
Identifiant de la table de référence |
lang |
String |
Langue à utiliser pour les libellés |
ordered | booléen |
Si ce booléen est positionné à true, alors les entrées seront triés selon l'attribut "ordre". |
Exemple :
<items id="odf-enumeration.Domain"> <item code="STS" id="content://305e6e9e-1ec2-4adb-8ffc-2274ab807907" title="Sciences, Technologies, Santé"></item> <item code="ALL" id="content://47bb25ce-234c-4ed4-9e29-ce2c0227ddbe" title="Arts, Lettres, Langues"></item> <item code="SHS" id="content://64e192e6-31cd-4a12-88b4-d8d38267bce5" title="Sciences humaines et sociales"></item> <item code="DEG" id="content://fb0f2f0e-fc29-4ceb-8d2b-70bf1ef3b729" title="Droit, Economie, Gestion"></item> <item code="HD" id="content://fe887b17-fc96-42ac-a698-0e9868e56e7c" title="Hors domaines de formation"></item> <item code="STA" id="content://34170b44-174a-44fc-937b-c6c56d8e8910" title="Sciences et Techniques des Activités Physiques et sportives"></item> </items>
Description :
Retourne le libellé du diplôme associé à la valeur CDM du diplôme.
Si la clef n'est pas trouvée, la méthode retourne une chaîne vide
Signature :
String degreeLabel (String cmdValue)
String degreeLabel (String cmdValue, String language)
Arguments :
Nom |
Type |
Description |
---|---|---|
cmdValue |
String |
Clef du diplôme |
language |
String |
Langue |
Exemple d'utilisation :
<xsl:variable name="degreeLabel" select="odf:degreeLabel('licence', $lang)"/>
Description :
Retourne l'identifiant de la composante racine.
Signature :
String getRootOrgUnitId()
A partir de Ametys ODF 4.3.11
Description :
Retourne l'identifiant de la composante correspondant au code UAI ou null si aucune composante n'a été trouvée.
Signature :
String getOrgUnitIdByUAICode(String uaiCode)
Arguments :
Nom |
Type |
Description |
---|---|---|
uaiCode |
String |
Code UAI de la composante |
A partir de Ametys 4.4
Description :
Retourne le cumul des heures sur le contenu identifié en paramètre.
Pour cela, l'algorithme descend l'arborescence du contenu fourni en paramètre jusqu'aux contenus ayant le champ nbHours renseigné.
Les heures d'enseignement sont lues uniquement si l'ELP est au dernier niveau.
Pour les listes d'ELP, le calcul est effectué comme suit selon le type de liste :
Signature :
Double getCumulatedHours(String contentId)
Arguments :
Nom |
Type |
Description |
---|---|---|
contentId |
String |
Identifiant du contenu sur lequel le calcul est effectué |