Fonctionnalité d'administration
Présentation
Les fonctionnalités d'administration correspondent à l'ensemble des fonctions disponibles dans le module administrateur quelque soit son niveau d'accès : administrateur technique, webmestre ou intervenant local.
A chaque fonctionnalité correspond un droit qui peut être attribué à un utilisateur. Ce droit est nivelé pour distinguer les différents profils d'utilisateurs.
Les valeurs des niveaux de droits sont les suivantes :
0 | Administrateur technique |
1 | Producteur de contenu |
2 | Webmestre |
3 | Intervenant local |
Lorsque l'utilisateur est autorisé, la fonctionnalité s'affiche dans son menu d'accueil sous la forme d'un titre et d'une description. En cliquant sur le lien, l'utilisateur accède à la JSP qui est le point d'entrée de la fonctionnalité.
Création
Pour installer une nouvelle fonctionnalité à Lutèce, celle-ci doit être packagée dans un plugin (voir Les plugins de Lutece).
Implémentation
Cette JSP porte généralement un nom de type Manage<MyFeature>.jsp. Le code de la JSP doit vérifier que l'utilisateur courant est authorisé, et si c'est le cas elle appellera la méthode du JspBean associé à la fonctionnalité (typiquement MyFeatureJspBean) restituant la page d'accueil de celle-ci.
<%@ include file=../PluginAdminHeader.jsp %> <jsp:useBean id=myFeature scope=session class=fr.paris.lutece.plugins.myplugin.web.MyFeatureJspBean /> <jsp:useBean id=user scope=session class=fr.paris.lutece.portal.web.user.UserJspBean /> <% if( user.check( MYFEATURE_MANAGEMENT ) ) { %> <%= myFeature.getManageMyFeature(request) %> <% } else { response.sendRedirect(user.getPluginAccessDeniedUrl() ); } %> <%@ include file=../../AdminFooter.jsp %>
Déclaration
La fonctionnalité doit être déclarée dans le fichier de configuration du plugin se fait par l'ajout des lignes suivantes :
<admin-features> <admin-feature> <feature-id>MYFEATURE_MANAGEMENT</feature-id> <feature-title>My Feature</feature-title> <feature-description>Description of my feature</feature-description> <feature-level>3</feature-level> <feature-url>plugins/myplugin/ManageMyFeature.jsp</feature-url> </admin-feature> ... </admin-features>