FlowerDocs s’appuie sur un mécanisme de place permettant de définir dans l’URL, l’activité (ou écran) sur laquelle se trouve l’utilisateur.
Le fait que cette place soit portée par l’URL permet aux utilisateurs de pouvoir :
- rafraîchir leur navigateur tout en restant dans le même contexte
- de naviguer à travers l’historique du navigateur (boutons Précédent et Suivant)
Navigation
Pour piloter ces fonctionnalités à travers l’API JS, une API de navigation est mise à disposition :
var navigationJSAPI = JSAPI.get().getNavigationAPI();
Fonction | Description |
---|---|
reload() | Permet de recharger la place courante sans confirmation |
goBack(confirmation) | Permet de revenir à la place précédente - confirmation : booléen permettant de désactiver la confirmation au changement de place s’il y a des modifications non sauvegardées |
goToComponentPlace(category, identifiant, confirmation) | Permet de rediriger l’utilisateur vers l’écran de modification d’un composant en fournissant : - category : DOCUMENT , FOLDER , TASK , VIRTUAL_FOLDER - identifiant : identifiant du composant à ouvrir - confirmation : booléen permettant de désactiver la confirmation au changement de place s’il y a des modifications non sauvegardées |
goTo(place, confirmation) | Permet de rediriger l’utilisateur vers une place - place : identifiant de la place à ouvrir - confirmation : booléen permettant de désactiver la confirmation au changement de place s’il y a des modifications non sauvegardées |
Il est possible de rediriger l’utilisateur vers une place construite à partir de différents tokens.
Exemple : Redirection vers un écran de création de tâche GEC_Step0_Creation
var navigationJSAPI = JSAPI.get().getNavigationAPI();
var placeToken = 'storeTask(GEC_Step0_Creation)';
navigationJSAPI.goTo(flower.docs.PlaceBuilder.build(placeToken),false);
L’API de navigation permet également de surcharger la place par défaut (définie au niveau du profil).
Pour cela, il est possible de s’abonner à son ouverture via la fonction registerForPlaceChange(callback)
Exemple : Surcharger la place par défaut par le formulaire de recherche pliSearch
var navigationJSAPI = JSAPI.get().getNavigationAPI();
navigationJSAPI.registerForPlaceChange(function(placeToken, callback){
callback.go(flower.docs.PlaceBuilder.build("search(pliSearch)"));
});
Place courante
Grâce à l’API de navigation, il est également possible de récupérer la place courante et ses caractéristiques grâce à la méthode getWherePlace()
.
var navigationJSAPI = JSAPI.get().getNavigationAPI();
var place = navigationJSAPI.getWherePlace();
Cet objet expose les méthodes suivantes :
Fonction | Description |
---|---|
getWhereId() | Permet d’obtenir l’identifiant de la place courante |
getPlaceType() | Permet d’obtenir le type de la place courante : HomePlace , SearchPlace , BrowsePlace , ModifyVirtualFolderPlace , ModifyFolderPlace , AdminPlace |
getSelectedLeaf() | Permet d’obtenir l’aggrégation sélectionnée dans le dossier virtuel |
getOpenedItems() | Permet de récupérer l’arborescence ouverte dans le dossier virtuel |
getTemplate() | Permet d’obtenir le modèle de recherche sélectionné |
getRequest() | Permet de récupérer la requête exécutée dans les recherches et les dossiers virtuels (visible dans l’URL) |
getSearchDisplayMode() | Récupère le mode d’affichage de la recherche : CARD ou TABLE |
getVirtualFolderMode() | Récupère le mode d’affichage du dossier virtuel : VIEWER ou AGGREGATION |
isAdminPlace() | Indique si la page est côté administration |