% /****************************************************************************** * Copyright (c) 2000-2004 e-Deal * * e-Deal S.A. * 55 rue Brillat Savarin * 75013 Paris * France * * T: +33 (0)1 53 80 80 30 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous êtes autorisés à modifier ce code source uniquement pour votre usage * propre et sous réserve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'état. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donnée. En aucun cas E-DEAL ne pourra être tenu pour * responsable des dommages pouvant résulter de l'utilisation de ce code * source. * * ******************************************************************************/ %><%@page session="true"%> <%@ page import="com.edeal.frontline.navigation.FlRequest" %> <%@ page import="com.edeal.frontline.FlContext" %> <%@ page import="com.edeal.frontline.Utils" %> <%@ page import="com.edeal.frontline.FieldNotInitializedException" %> <%@ page import="com.edeal.frontline.DataDictionary" %> <%@ page import="com.edeal.frontline.EnterpriseBean" %> <%@ page import="java.util.Date" %> <%@ page import="java.util.Hashtable" %> <%@ page import="com.edeal.frontline.FrontlineException" %> <%@ page import="com.edeal.frontline.ActorBean" %> <%@ page import="java.util.Vector" %> <%@ page import="com.edeal.frontline.LicenceManager" %> <%@ page import="com.edeal.frontline.SiteBean" %> <%@ page import="com.edeal.frontline.MenuByRoleBean" %> <%@ page import="com.edeal.frontline.MenuBean" %> <%@taglib uri="http://www.e-deal.com/taglib/fl" prefix="fl" %> <%@ page isELIgnored="false"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <% final org.apache.commons.logging.Log logger = org.apache.commons.logging.LogFactory.getLog(getClass()); FlRequest flRequest = new FlRequest(request); FlContext context = flRequest.getContext(); DataDictionary dico = context.getDataDictionary(); String id = null; try { id = Software.getSfwID(); } catch (FieldNotInitializedException e) {} String sfwName = null; try { sfwName = Software.getSfwName(); } catch (FieldNotInitializedException e) {} boolean sfwStandard = false; try { sfwStandard = Software.isSfwStandard(); } catch (FieldNotInitializedException e) {} Vector menus = new Vector(); Hashtable menuByRolesH = new Hashtable(); if (id != null) { //get the different menus for this software String[] fields1 = {"MenID", "MenLabel", "MenValue", "MenDefault"}; String[][] query1 = {{"MenSfwID = " + Utils.formatToSQL(context, id)}}; String[] orderBy1 = {"MenValue DESC"}; menus = MenuBean.listSummary(context, fields1, query1, orderBy1); //get the different menuByRoles for this software String[] fields2 = {"MbrID", "MbrRole", "MbrMenID"}; String[][] query2 = {{"MbrMenID:MenSfwID = " + Utils.formatToSQL(context, id)}}; Vector menuByRoles = MenuByRoleBean.listSummary(context, fields2, query2); //Hashtable menuByRolesH : key role id, value menu id for (int i=0 ; i " ou="<%= \"/read_software.fl\" + (id != null ? \"?id=\" + id : \"\") %>"> <%= Utils.formatToWeb(sfwName,false) %> <% String fullTitle = null; try { if (Software.isSfwDisplayNameIsCode()) fullTitle = Utils.getMessage(session, Software.getSfwDisplayName(), "Libellé indisponible"); } catch (Exception e) {} %> <%= fullTitle == null ? "" : " (" + fullTitle + ")"%> "> <% //for each role for (int i=0 ; i < roles.size() ; i++) { String roleID = (String)((Vector)roles.elementAt(i)).elementAt(0); String roleName = (String)((Vector)roles.elementAt(i)).elementAt(1); %> <%= roleName %> <% //display corresponding menu if any for (int j=0 ; j < menus.size() ; j++) { Hashtable menu = (Hashtable)menus.elementAt(j); String menuID = (String)menu.get("MenID"); String menuLabel = menu.get("MenLabel") + (menu.get("MenDefault").equals(Boolean.TRUE) ? " *" : ""); if (menuByRolesH.get(roleID)!=null && menuByRolesH.get(roleID).equals(menuID)) { %> <%= menuLabel %> <% } %> <% } %> <% } %> <% for (int i=0 ; i < roles.size() ; i++) { String roleID = (String)((Vector)roles.elementAt(i)).elementAt(0); %> " for="SfwRoleHidden"> <%= sfwRoleHidde != null && sfwRoleHidde.contains(roleID) ? ouiStr : nonStr %> <% } %>