Indexation

Un formulaire d’indexation permet la visualisation et la modification des tags d’un composant. Afin de pouvoir intéragir avec ce type de formulaire, il est nécessaire de s’abonner à son ouverture :

JSAPI.get().registerForComponentChange(function(componentFormAPI, component, phase) {
	// Utilisation de l'objet componentFormAPI permettant d'intéragir avec le formulaire
});

Nota : Dans le cas de l’affichage de plusieurs formulaires de composant, il peut être nécessaire d’accéder à un formulaire en particulier : JSAPI.get().getComponentFormAPI(<identifiant du composant>). Il est également possible d’accéder au dernier formulaire grâce à JSAPI.get().getLastComponentFormAPI().

Actions dans un formulaire

L’objet componentFormAPI.getActions() permet d’intéragir avec les actions d’un formulaire présentant un document, dossier…

Pour cela plusieurs fonctions sont exposées.

Fonctions Description
getHeaderActions() Récupère le conteneur d’action dans l’en-tête
getTaskActions() Récupère le conteneur d’action des tâches
getFooterActions() Récupère le conteneur d’action dans le pied de page (validation, annulation…)

Afin d’intéragir avec les actions récupérées depuis les 3 conteneurs d’actions, les fonctions disponibles sont documentées dans la partie Actions. Si le but est d’intéragir avec les différents conteneurs d’actions, pour, par exemple, leurs ajouter des action les fonctions disponibles sont documentées dans la sous-partie Actions.

Ajout de cartes

Un formulaire d’indexation est composé d’un ensemble de carte contenant les informations du composant, les tags, pièces jointes et dossiers parent. Il est également possible d’ajouter des cartes grâce à l’API JS avec la fonction addCardContainer(cardContainer) qui nécessite une carte de type conteneur en entrée.

Les fonctions disponibles sur cet objet sont disponible dans la partie Cartes.

Exemple : ajout de carte conteneur personnalisée

var formAPI = JSAPI.get().getLastComponentFormAPI();

var desc1 = buildDescription("Description 1");
var card1 = buildCard("Card", "Heading card", "card-style");

var div = document.createElement("div");
div.className="custom-card-container";
addChildren(div, [desc1,card1]);

var cardContainer = buildCardContainer("fa fa-clone","Title","Caption","card-box custom-card-container");
cardContainer.setContent(div);
formAPI.addCardContainer(cardContainer);

function buildCardContainer(icon,title,caption, style){
	var cardContainer = new CardContainer();
	cardContainer.setIcon(icon);
	cardContainer.setTitle(title);
	cardContainer.setCaption(caption);
	cardContainer.setVisible(true);
	cardContainer.addStyle(style);
	return cardContainer;
}
function buildDescription(description){
	var desc = document.createElement("div");
	desc.innerHTML = description;
	return desc;
}
function buildCard(title, heading, style){
	var card = new Card();
	card.setTitle(title);
	card.setHeading(heading);
	card.addStyle(style);
	return card.asElement();
}
function addChildren(parent, children){
	for (i=0; i < children.length; ++i) {
    	parent.appendChild(children[i]);
	}
}