Cette page ne doit être appliquée que si le script vous demande de passer la migration manuelle skin.20220127.UD.signup

Si le script de migration vous demande de passer cette migration c'est que vous avez surcharger un ou plusieurs templates noyau pour le rendu du formulaire d'inscription

Le XML d'entrée a été modifié et le helper XSL contenant les templates pour le rendu des champs, bouton et formulaire ont été réécrit.

Avant de faire la migration graphique, exécutez le script suivant pour savoir si le service "Proposition de contenu" est réellement utilisé:

let count = 0;
Repository.query("//element(*, ametys:zoneItem)[@ametys-internal:service='org.ametys.web.service.UserSignup']").forEach(function(zoneItem) {
    count++;
});
print(`${count} signup services found`);

Si le script remonte 0 résultat, il est sans doute préférable de simplement supprimer la surcharge du rendu du service. Pour cela supprimez le dossier services/user-directory/pages/services/user-signup de vos chartes.

Sinon, le service va devoir être ré-intégré en évitant au maximum les surcharges des templates XSL du helper "service:web://pages/services/contenttype/helper/form.xsl"

Il est fortement déconseiller de surcharger (voir interdit) de surcharger ces templates notamment les templates "contenttype-form" et "contenttype-form-***" au risque de ne bénéficier d'aucune évolutions ou corrections.

Pour le rendu des champs du formulaire, si une surcharge avait été faite pour changer une classe css, il faut bannir cette surcharge et modifier plutôt la css pour s'assurer du bon rendu.

Si la charte comporte une surcharge des templates du type "contenttype-form-field-string", "contenttype-form-field-content", ... comparez les avec leur équivalent dans form.xsl de la forme:

  • <xsl:template match="metadata[@type='string']" mode="contenttype-form-field">
  • <xsl:template match="metadata[@type='content']" mode="contenttype-form-field">

Si ils sont identiques à une classe CSS près, supprimer la surcharge et modifier la css de rendu.

Si il est nécessaire de surcharger le rendu d'un type de champ en particulier, les templates de la forme:

<xsl:template match="email" mode="contenttype-form-field">

sont à remplacer par:

<xsl:template match="metadata[@name='email']" mode="contenttype-form-field">

Rechercher également toutes occurrences de "user-content-type-view/metadataSet". Celles-ci correspondent à l'ancien XML et ne sont plus valides, elles doivent être remplacées.

Par exemple :

<xsl:apply-templates select="/user-signup/user-content-type-view/metadataSet/*[local-name() != 'firstname' and local-name() != 'lastname']">
</xsl:apply-templates>

se remplace par:

<xsl:apply-templates select="/user-signup/view/*[@name != 'firstname' and @name != 'lastname']">
</xsl:apply-templates>

Vous pouvez vous inspirer de la surcharge existant dans la charte Workspaces.

 

 

 

Retour en haut

User directory