Panel de chargement

Pour notifier l’utilisateur d’un traitement en cours lors de l’exécution de JavaScript, le panel de chargement peut être afficher puis cacher lors de la fin du traitement avec les fonctions suivantes disponibles sur l’API FlowerJSAPI.get() :

Fonctions Description
showLoadingPanel() Affiche le panel de chargement
hideLoadingPanel() Cache le panel de chargement

Exemple d’affichage du panel de chargement pendant 3 secondes

JSAPI.get().showLoadingPanel();
setTimeout(function() {
	JSAPI.get().hideLoadingPanel();
}, 3000)

Fonctions utilitaires

Permissions

Il est possible de déterminer si l’utilisateur courant a une permission :

  • à partir d’un composant
ACLHelper.isGranted(component,"CREATE", function(granted){console.info("granted: "+granted);});
  • à partir d’un identifiant d’ACL
ACLHelper.isGranted(component.getACL(),"CREATE", function(granted){console.info("granted: "+granted);});

Extraction d’identifiants

Afin d’extraire les identifiants d’un tableau de composants, il est possible d’utiliser la fonction suivante :

Ids.from(components)

Propagation de tags

Afin de propager les valeurs de tags communs d’un ou plusieurs composants vers un composant cible, les fonctions suivantes sont à disposition :

Fonctions Description
predict(sourceComponent, targetComponent) Propage les tags communs d’un composant vers un composant cible
predict(sourceComponents, targetComponent) Propage les tags communs d’un ensemble de composant vers un composant cible

Création d’une tâche à partir de deux documents

ContextualMenuAPI.get().registerForLoad(function(api){
	if(api.getSelected().length != 2 || api.getCategory() != "DOCUMENT"){
		return;
	}
	var icon = new Icon();
	icon.setContent("fa fa-user flat-mauve");
	api.add("createTask", icon.asElement() , "Tâche", function(){
		var newTask = new Task();
		newTask.setClassId("GEC_Step0_Creation");
		TagOracle.predict(api.getSelected(), newTask);			
		newTask.addAttachments("Courrier", Ids.from(api.getSelected()), "DOCUMENT");			
		var popup = JSAPI.get().getPopupAPI().buildComponentCreation(newTask);
		popup.show();
	});  
});