Projet

General

Profil

Contrôles

Le module contrôles beCPG fourni les contrôles de formulaire Alfresco Share nécessaires au fonctionnement du designer. Ces contrôles peuvent être installés et utilisés indépendamment du designer.

Installation

Le module contrôles ce compose de deux AMP qui peuvent être téléchargés ici. L'AMP core est à déployer dans Alfresco et l'AMP share est à déployer dans Share:

java -jar  $ALF/bin/alfresco-mmt.jar install becpg-controls-core-$BECPG_VERSION.amp $SERVER/webapps/alfresco.war -force
java -jar  $ALF/bin/alfresco-mmt.jar install becpg-controls-share-$BECPG_VERSION.amp $SERVER/webapps/share.war -force

Utilisation

Pour l'instant le module fourni deux contrôles utilisables en l'état:
  • le contrôle autocomplete.ftl qui permet de suggérer des propositions pour un champs texte
  • le contrôle autocomplete-association.ftl qui permet de suggérer des éléments à associer à un noeud.

Configuration

autocomplete.ftl

Chemin du contrôle:
  • /fr/becpg/components/form/controls/autocomplete.ftl
Paramètres :
  • ds (string) La datasource utilisée par le contrôle
  • parent (optional,string) Le champ parent
  • local (optional,boolean, false) La datasource est local (webscript share/alfresco)
  • style (optional,string) Le style appliqué au champ
  • maxLength (optional,int) La longueur max du champ texte
  • size (optional,int) La taille du champ texte
  • showTooltip (optional,boolean, false) Doit-on montrer les tooltips
  • showPage (optional,boolean, true) Doit-on montrer la pagination
  • saveTitle (optional,boolean, false) Doit-on sauvegarder le libellé ou la valeur

autocomplete-association.ftl

Chemin du contrôle:
  • /fr/becpg/components/form/controls/autocomplete-association.ftl">
Paramètres :
  • ds (string) La datasource utilisée par le contrôle

Source de données

Afin de fournir une datasource au contrôle il est nécessaire d'implémenter un plugin Java.

Un exemple est fourni dans le module designer.

Class Java:

public class ExempleListValuePlugin extends AbstractBaseListValuePlugin {

    @Override
    public String[] getHandleSourceTypes() {
        return new String[] {"exempleSourceType" };
    }

    @Override
    public ListValuePage suggest(String sourceType, String query, Integer pageNum, Map<String, Serializable> props) {
           ...
        }

}

Config Spring:

<bean id="exempleListValuePlugin" parent="baseListValuePlugin"  init-method="init" 
             class="fr.becpg.repo.designer.listvalue.ExempleListValuePlugin"/>

Url de la datasource

<control template="/fr/becpg/components/form/controls/autocomplete.ftl">
   <control-param name="ds">becpg/autocomplete/exempleSourceType</control-param>
</control>