%
/******************************************************************************
* 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.
*
*
******************************************************************************/
/* a.stouky@e-deal.ma : 16/08/06
Modifications:
Afficher le nom du logiciel au lieu de l'ID avec un lien
Afficher "oui" si true et "non" si false dans "par défaut"
Aligner les informations avec le titre
Enlever les champs icones
Diminuer la taille des liens et les espacements entre les icônes dans les smalltabs
*/
%><%@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="java.util.Hashtable" %>
<%@ page import="java.util.Vector" %>
<%@ page import="com.edeal.frontline.MenuBean" %>
<%@ page import="com.edeal.frontline.ListBean" %>
<%@ page import="com.edeal.frontline.MenuElementBean" %>
<%@taglib uri="http://www.e-deal.com/taglib/fl" prefix="fl" %>
<%
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 ouiStr = Utils.getMessage(session, "L2005", "Oui");
String nonStr = Utils.getMessage(session, "L2006", "Non");
String id = null;
try { id = Menu.getID(); }
catch (FieldNotInitializedException e) {}
Vector nodes = new Vector();
Vector leaves = new Vector();
//get first level menuelements (nodes)
String[] fields1 = {"MelID", "MelLabel", "MelLabelIsCode", "MelType", "MelIconName", "MelPosition", "MelLink"};
String[][] query1 = {{"MelMenID = " + Utils.formatToSQL(context, Menu.getMenID()),
"MelParentID = null"}};
String[] orderBy1 = {"MelPosition"};
nodes = MenuElementBean.listSummary(context, fields1, query1, orderBy1);
//get second level menuelements (leaves) ordered by their parent's position
String[] fields2 = {"MelID", "MelLabel", "MelLabelIsCode", "MelIconName", "MelParentID", "MelPosition", "MelLink", "MelParentID:MelPosition"};
String[][] query2 = {{"MelMenID = " + Utils.formatToSQL(context, Menu.getMenID()),
"MelParentID <> null"}};
String[] orderBy2 = {"MelParentID:MelPosition","MelParentID", "MelPosition"};
leaves = MenuElementBean.listSummary(context, fields2, query2, orderBy2);
String menMainList = null;
try { menMainList = Menu.getMenMainList(); }
catch (FieldNotInitializedException e) {}
String listName = "";
if (menMainList != null) {
try {
ListBean list = new ListBean(menMainList, context);
listName = list.getLstCode() + " - " + list.getLstName();
} catch (Exception e) {}
}
String menMainLink = null;
try { menMainLink = Menu.getMenMainLink(); }
catch (FieldNotInitializedException e) {}
%>
" ou="<%= \"/read_menu.fl\" + (id != null ? \"?id=\" + id : \"\") %>">
|
|
<% String fullTitle = null;
try {
if (Menu.isMenTitleIsCode())
fullTitle = Utils.getMessage(session, Menu.getMenTitle(), "Libellé indisponible");
} catch (Exception e) {}
%>
<%= fullTitle == null ? "" : " (" + fullTitle + ")"%>
|
|
|
|
<% if (menMainList != null) { %>" target="_blank"><%=listName%>
<% } else if (menMainLink != null) { %>
<% } %>" target="_blank">
<% } else { %>
<% } %>
|
|
|
|
<%
//leavesIndex is used to navigate on the leaves vector
int leavesIndex = 0;
//for each node
for (int i=0 ; i
|
<% if (nodeType != null && nodeType.equals("NODE")){
%>
|
<% }
%>
<%
boolean atLeastOneLeaf = false;
while (leavesIndex < leaves.size()) {
Hashtable leaf = (Hashtable)leaves.elementAt(leavesIndex);
String leafParentID = (String)leaf.get("MelParentID");
//if this leaf belongs to current node, display info
if (leafParentID.equals(nodeID)) {
atLeastOneLeaf = true;
String leafID = (String)leaf.get("MelID");
String leafLabel = (String)leaf.get("MelLabel");
Boolean leafLabelIsCode = (Boolean)leaf.get("MelLabelIsCode");
String leafIconName = (String)leaf.get("MelIconName");
String leafLink = (String)leaf.get("MelLink");
title = (leafLink != null ? "title='" + Utils.formatToJavascript(leafLink) + "'" : "");
int leafPosition = 0;
if (leaf.get("MelPosition") != null)
leafPosition = ((Number)leaf.get("MelPosition")).intValue();
String leafLabelDisplay = (leafLabelIsCode.equals(Boolean.FALSE) ? leafLabel : Utils.getMessage(session, leafLabel, "Libellé indisponible"));
leavesIndex++;
%>
|
|
<%
} else {
break;
}
}
%>
<% if (!atLeastOneLeaf && nodeType != null && nodeType.equals("NODE")) {
%> | <%
}
%>
<% }
%>