<% /****************************************************************************** * 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="java.util.*" %> <%@ page import="com.edeal.frontline.navigation.FlRequest"%> <%@ page import="com.edeal.frontline.*" %> <%@ page import="com.edeal.frontline.FlContext"%> <%@ page import="com.edeal.frontline.DataDictionary"%> <%@ page import="com.edeal.frontline.FieldNotInitializedException"%> <%@ page import="com.edeal.frontline.FrontlineException"%> <%@ page import="com.edeal.frontline.ActorBean"%> <%@ page import="com.edeal.frontline.custom.Signataire_Bean"%> <%@ page import="com.edeal.frontline.custom.Contrat_Bean"%> <%@ page import="java.util.Vector" %> <%@ page import="java.util.Hashtable"%> <%@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 id = null; try { id = Contrat_.getID(); } catch (FieldNotInitializedException fnie) {} String idCtrPrincipal = null; try { idCtrPrincipal = Contrat_.getCt_ContratPrincipal(); } catch (FieldNotInitializedException fnie) {} String valideState = null; String rompuState = null; String suspenduState = null; String archiveState = null; String enCoursvalideState = null; String ct_TypeContrat = null; try { ct_TypeContrat = Contrat_.getCt_TypeContrat(); } catch (FieldNotInitializedException e){ } try { valideState = dico.getRefIdByCode("Cs_", "Te1", "VAL"); } catch (Exception e) { valideState = ""; } try { enCoursvalideState = dico.getRefIdByCode("Cs_", "Te1", "EAV"); } catch (Exception e) { enCoursvalideState = ""; } try { rompuState = dico.getRefIdByCode("Cs_", "Te1", "RMP"); } catch (Exception e) { rompuState = ""; } try { suspenduState = dico.getRefIdByCode("Cs_", "Te1", "SUS"); } catch (Exception e) { suspenduState = ""; } try { archiveState = dico.getRefIdByCode("Cs_", "Te1", "ARC"); } catch (Exception e) { archiveState = ""; } // id de la famille de produits "Enseignes" String enseigneFamID = null; try { //enseigneFamID = dico.getRefIdByCode("Pf_", "Te1", "ENS"); enseigneFamID = "STACI"; } catch (Exception e) { } // voir si le contrat est valide boolean isValide = false; boolean isEncoursValidation = false; boolean isRompu = false; boolean isSuspendu = false; boolean isArchive = false; String statutContrat = null; try { statutContrat = (String)Contrat_.getCt_Statut(); if(statutContrat.equals(valideState)) { isValide = true; } else if(statutContrat.equals(rompuState)) { isRompu = true; } else if(statutContrat.equals(suspenduState)) { isSuspendu = true; } else if(statutContrat.equals(archiveState)) { isArchive = true; } else if(statutContrat.equals(enCoursvalideState)) { isEncoursValidation = true; } } catch (FieldNotInitializedException fnie) { } // récupérer le Tiers signataire du contrat String sgTiers = null; Vector sg_List = new Vector(); try { sg_List = Contrat_.getContrat_Signataires("1"); // on prend le premier if (sg_List != null && !sg_List.isEmpty()) { Hashtable tabSgs = (Hashtable)sg_List.firstElement(); sgTiers = (String)tabSgs.get("EntID"); } } catch (FrontlineException fe) { } // récupérer les exploitants signataires du contrat String sgExploitant = null; Vector sgExp_List = new Vector(); try { sgExp_List = Contrat_.getContrat_Signataires("2Exp"); // on prend le premier if (sgExp_List != null && !sgExp_List.isEmpty()) { Hashtable tabSgsExp = (Hashtable)sgExp_List.firstElement(); sgExploitant = (String)tabSgsExp.get("PerID"); } } catch (FrontlineException fe) { } // voir si on a besoin de notifier STACI Boolean isNotifierStaci = false; try { isNotifierStaci = (Boolean)Contrat_.isCt_STACINotification(); } catch (FieldNotInitializedException fnie) { } // l'affilié ne peut avoir d'enseignes boolean isCt_LocationEnseigne = false; try { isCt_LocationEnseigne = Contrat_.isCt_LocationEnseigne(); } catch (FieldNotInitializedException fnie) { } String todoID; try { todoID = dico.getRefIdByCode("IntType_", "ACT"); } catch (FrontlineException e) { todoID = ""; } Boolean fHasRightModif = false; Boolean fHasRightSupp = false; String actID = null; if (session != null) { actID = (String)session.getAttribute("effectiveActorID"); if (actID == null) { actID = (String)session.getAttribute("actorID"); if (actID == null) { throw new FrontlineException("there is not an actor ID in session"); } } } /* try { ActorBean act = new ActorBean(actID, context); Vector actRolesIDs = new Vector(); actRolesIDs.addAll(act.getRoles()); /*String roleADMID = dico.getRefIdByCode("ActRoles", "ADMIN"); /* Role Administrateur*/ /*String roleTECHADMID = dico.getRefIdByCode("ActRoles", "S_ADM_TECH"); /* Role Administrateur Technique*/ /*String roleCommID = dico.getRefIdByCode("ActRoles", "C_COMRCLE"); /* Role Commercial*/ /*String roleResAchID = dico.getRefIdByCode("ActRoles", "A_RESP_ACHAT"); /* Role Resp achat*/ /*String roleAssAchID = dico.getRefIdByCode("ActRoles", "A_ASSIST_ACHAT"); /* Role Asst Resp achat*/ /*String roleRespResAffID = dico.getRefIdByCode("ActRoles", "R_RESP_RES_AFFIL"); /* Role Responsable Affilies */ /*String roleDevAffID = dico.getRefIdByCode("ActRoles", "R_DEV_AFFIL"); /* Role Dev Affilies */ /*String roleRespPoleJurID = dico.getRefIdByCode("ActRoles", "J_RESP_POLE_JUR"); /* Responsable Pôle Juridique */ /*String roleAssPoleJurID = dico.getRefIdByCode("ActRoles", "J_ASSIST_POLE_JUR"); /* Assistant Pôle Juridique */ /* String roleAssResAffID = dico.getRefIdByCode("ActRoles", "R_ASSIST_RES_AFFIL"); /* Assistant Réseau Affiliés */ /* for (int i = 0; i < actRolesIDs.size(); i++) { String actRoleIDactuel = actRolesIDs.get(i).toString(); if (ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "PT")) && actRoleIDactuel.equalsIgnoreCase(roleCommID)) { fHasRightModif = true; } else if( (ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "FA"))) && (actRoleIDactuel.equalsIgnoreCase(roleResAchID) || actRoleIDactuel.equalsIgnoreCase(roleAssAchID)) ) { fHasRightModif = true; /* si c'est le contrat de type Logis ou Logis d'exception } else if( (ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "L")) || ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "LE"))) && ( actRoleIDactuel.equalsIgnoreCase(roleRespResAffID) || actRoleIDactuel.equalsIgnoreCase(roleDevAffID) || actRoleIDactuel.equalsIgnoreCase(roleRespPoleJurID) || actRoleIDactuel.equalsIgnoreCase(roleAssPoleJurID) || actRoleIDactuel.equalsIgnoreCase(roleAssResAffID) ) ) { fHasRightModif = true; } else if( !(ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "L")) || ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "LE")) || ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "FA")) || ct_TypeContrat.equals((String)dico.getRefIdByCode("Ct_TypeContrat", "PT")) ) ) { fHasRightModif = true; } else if( (actRoleIDactuel.equalsIgnoreCase(roleADMID) || actRoleIDactuel.equalsIgnoreCase(roleTECHADMID)) ) { fHasRightModif = true; } } } catch (FrontlineException e) { } */ try { String typOrganisation = null; typOrganisation = Contrat_.getCt_TypeContrat(); ActorBean act = new ActorBean(actID, context); Vector actRolesIDs = new Vector(); actRolesIDs.addAll(act.getRoles()); String roleADMID = dico.getRefIdByCode("ActRoles", "ADMIN"); /* Role Administrateur*/ String roleTECHADMID = dico.getRefIdByCode("ActRoles", "S_ADM_TECH"); /* Role Administrateur Technique*/ String role6ID = dico.getRefIdByCode("ActRoles", "R_CHARGE_WEB"); /* Role charge web*/ // rappatrier les rôles concernés par le type actuel de l'entreprise String roles = ""; roles = (String)dico.getRefDisp(session, "Cp_", "Te3", typOrganisation); String rolesTab[] = roles.split(";"); for (int i = 0; i < actRolesIDs.size(); i++) { String actRoleIDactuel = actRolesIDs.get(i).toString(); if( (actRoleIDactuel.equalsIgnoreCase(roleADMID) ) ) { fHasRightModif = true; fHasRightSupp = true; } else if (actRoleIDactuel.equalsIgnoreCase(roleTECHADMID)){ fHasRightModif = true; } for (int j=0; j roleNameType = Utils.explodeList(roletabActuel, "|"); String roleType = roleNameType.firstElement(); String roleName = roleNameType.lastElement(); if(roleType.equals("M")) { // Modification String refValueRole = (String) dico.getRefCode("ActRoles", actRoleIDactuel); if(refValueRole.equals(roleName)) { fHasRightModif = true; } else if("ALL".equals(roleName)) { fHasRightModif = true; } } else if (roleType.equals("S")) { // Suppression // Modification String refValueRole = (String) dico.getRefCode("ActRoles", actRoleIDactuel); if(refValueRole.equals(roleName)) { fHasRightSupp = true; } else if("ALL".equals(roleName)) { fHasRightSupp = true; } } } } } catch (Exception e) { } /* String idSignataire = null; String[] fields = {"Sg_ID"}; String[][] query = {{"Sg_Contrat = '" + id + "'"}}; Vector list = Signataire_Bean.listSummary(context, fields, query); if(list != null && !list.isEmpty()) { Hashtable tab = (Hashtable)list.firstElement(); idSignataire = (String)tab.get("Sg_ID"); } */ %> <% if(fHasRightModif) { %> <%} if (fHasRightSupp) { %> <%} %> <% if( isRompu || isSuspendu || isArchive ) { %> <% } else { %> <%} %> <% if(isValide || isEncoursValidation) { %> <% if(idCtrPrincipal == null){ %> <%} %> <%-- --%> <%-- --%> <%-- Mantis 29110 --%> <%} %> <% if(isValide && !isCt_LocationEnseigne) { %> <%} %> <% if(isNotifierStaci && isValide) { %> <%-- --%> <%} %> <% if(idCtrPrincipal == null){ %> <%} %>