Configuration des toolbox
Documentation fonctionnelle
La configuration d'une toolbox peut être définie à plusieurs niveaux :
- avec l'attribut
configurationdu composant toolbox - en fonction du processus, sous forme de clé {nom_processus}, par exemple
SAISIE_PAGELIBRE=/adminsite/ckeditor/configurations/styleParagraphe.json. - en concaténant le nom du processus et le nom du champ, sous forme de clé {nom_processus}.{nom_champ}. Par exemple
SAISIE_PAGELIBRE.COMPLEMENTS=/adminsite/ckeditor/configurations/styleParagraphe.json. - en fonction du nom du champs, sous forme de clé {champ}, par exemple
COMPLEMENTS=/adminsite/ckeditor/configurations/styleParagraphe.json. C'est utilisé notamment pour les champs communs à plusieurs fiches, comme les encadrés.
C'est la configuration la plus précise qui sera utilisée. Pour la page libre, on a la configuration suivante dans pagelibre_ckeditor.properties :
CKEDITOR_DEFAULT_PATH=/adminsite/ckeditor/configurations
SAISIE_PAGELIBRE=${CKEDITOR_DEFAULT_PATH}/styleParagraphe.json
SAISIE_PAGELIBRE.COMPLEMENTS=${CKEDITOR_DEFAULT_PATH}/defaultConfig.json
Cette configuration signifie que toutes les toolbox de la fiche page libre ont la configuration styleParagraphe.json, sauf la toolbox du champ COMPLEMENTS.
Si aucune configuration n'est définie, c'est la configuration par défaut définie dans ckeditor.properties qui sera utilisée :
DEFAULT=${CKEDITOR_DEFAULT_PATH}/defaultConfig.json
Pour ajouter une toolbox dans une jsp, on utilise le composant toolbox. Exemple du champ "Informations complémentaires" de la fiche page libre :
<components:toolbox extension="pagelibre" fieldName="COMPLEMENTS" label="BO_PAGELIBRE_COMPLEMENTS" min="0" max="16000" editOption='<%= FormateurJSP.SAISIE_FACULTATIF %>'/>
Surcharge d’une configuration dans un projet
Le chargement des fichiers *.properties servant à surcharger la configuration des toolbox suit un mécanisme particulier. Il nécessite l’utilisation d’un bean implémentant CkeditorConfigurer, permettant notamment de définir le format du nom des fichiers à rechercher.
Pour effectuer une surcharge, il faut d’abord connaître la clé de la configuration à modifier.
Exemple : pour surcharger CONTENU_ENCADRE dans l’extension article, il faut indiquer cette clé dans un fichier properties adapté.
-
Si la configuration est spécifique à une fiche, on utilise le format suivant :
nomextension_ckeditor-override.properties→ visible uniquement par l’extension concernée. -
Si la configuration est commune à toutes les fiches on utilise le format suivant :
application_nomextension_ckeditor.properties→ visible par le core.
Dans tous les cas, la configuration définie dans le projet prend le pas sur celle du produit (extension ou koreparent).
Tutoriels
Surcharge d’une configuration spécifique à l’extension article : description
Dans le cadre d'un projet, on souhaite modifier la toolbox du champ Description (élément spécifique à Article, défini dans son saisie.jsp).
Objectif : retirer l’élément Accordéon.
-
Création du fichier :
src/main/resources/article_ckeditor-override.properties→ il sera pris en compte uniquement par l’extension Article. -
Clé concernée (d’après
CkeditorConfigurerUtils) :CORPS. -
Contenu du fichier :
SAISIE_ARTICLE.CORPS=/adminsite/ckeditor/configurations/styleParagrapheSpe.json SAISIE_ARTICLE_FRONT.CORPS=/adminsite/ckeditor/configurations/styleParagrapheSpe.json -
Le style par défaut est
styleParagraphe. On crée donc une variantestyleParagrapheSpe.json, sans Accordéon, dans le dossiersrc/main/webapp/adminsite/ckeditor/configurations.
Cette configuration spécifique sera utilisée en priorité grâce à la surcharge réalisée.
Surcharge d’une configuration commune : contenu encadré
Toujours pour un projet, on souhaite cette fois retirer l’élément Onglet de la toolbox contenu encadré, qui n’est pas spécifique à Article (défini dans fiche_bas.jsp de Koreparent).
-
Création du fichier :
src/main/resources/application_article_ckeditor.properties→ visible par le core. -
Clé concernée :
CONTENU_ENCADRE. -
Contenu du fichier :
SAISIE_ARTICLE.CONTENU_ENCADRE=/adminsite/ckeditor/configurations/styleParagrapheSpe2.json SAISIE_ARTICLE_FRONT.CONTENU_ENCADRE=/adminsite/ckeditor/configurations/styleParagrapheSpe2.json -
Le style par défaut étant
styleParagraphe, on crée une version adaptéestyleParagrapheSpe2.json(sans Onglet) dans le même répertoire de configuration que les styles existants de Koreparent.
Cette configuration spécifique sera utilisée en priorité grâce à la surcharge réalisée.