## -*- coding: utf_8 -*- <%block name="head"> <% from fcp import connection from fcp import fcpdefs from fcutils import util from fcp import mlitem from fcws.fcweb import webutil import os.path import urllib stripNone = webutil.stripNone confGroupID = 'fcfid-'+str(fcpdefs.aConfGroup) accessID = 'fcfid-'+str(fcpdefs.aAccess) membersID = 'fcfid-'+str(fcpdefs.aMembers) myMLItem = fcp.MyMLItem thisWebID = myMLItem.WebID() parentMLItem = None parentServObj = client.FindServerObjectByObjID(fcp.parentObjID) if parentServObj: parentMLItem = parentServObj.GetMLItemByIndex(fcp.getObjectDataIndex) parentSubType = parentMLItem.SubType() if parentMLItem else 0 jsonStr = '{"MYMLITEM":'+myMLItem.AsJSONArrayItem(mlitem.sendAll,(client.serverTZ,client.clientTZ))+',"RIGHTS":'+str(fcp.rights)+'}' context.write('') bIsEditable = True if fcp.rights & fcpdefs.acEditACL else False selectEnableStr = '' if bIsEditable else 'disabled="disabled"' confGroups = fcp.GetMsgNameList(fcpdefs.aConfGroup) numConfGroups = len(confGroups) if confGroups else 0 accessNames = fcp.GetMsgNameList(fcpdefs.aAccess) numAccessNames = len(accessNames) if accessNames else 0 fType,owner = fcp.GetEscapedFormField(2024) if not owner: owner = '' def isCalendarACL(formID): if formID == fcpdefs.CALENDARACLFORMID: return True return False def isContactDBACL(formID): return (formID == fcpdefs.CONTACTDBACLFORMID) if isCalendarACL(fcp.formID): cannedList = (0,2097152,2304,2099456,2100992,2219821) elif isContactDBACL(fcp.formID): cannedList = (0, 512, 87552, 131054) else: cannedList = (0,512,4608,87552,122624,122752,122798,131054,131071) if not isCalendarACL(fcp.formID): toolTips = ["Modifier les autorisations","Modérateur","Supprimer tous les éléments","Créer des éléments","Modifier des éléments en lecture seule","Modifier des éléments","Enregistrer les propriétés de fenêtres et de vues","Approuver","Supprimer vos propres éléments","Ouvrir la conférence","Rechercher ","Envoyer","Ouvrir les éléments","Créer des sous-conférences","Télécharger les fichiers et pièces jointes depuis FirstClass","Afficher les autorisations ","Afficher l'historique"] else: toolTips = ["Modifier les autorisations","Modérateur","Supprimer tous les éléments","Créer des éléments","Modifier des éléments en lecture seule","Modifier des éléments","Enregistrer les propriétés de fenêtres et de vues","Approuver","Supprimer vos propres éléments","Afficher les détails souhaités","Rechercher ","Ajouter des participants","Ouvrir les éléments",'',"Télécharger les fichiers et pièces jointes depuis FirstClass","Afficher les autorisations ","Afficher l'historique","Ouvrir l'agenda"] def resolveIconID(formID,iconID): if formID == fcpdefs.CALENDARACLFORMID or formID == fcpdefs.CALENDARGROUPACLFORMID: if iconID == 9354: iconID = 9382 elif iconID == 9359: iconID = 9383 elif iconID == 9361: iconID = 9384 elif iconID == 9362: iconID = 9385 elif iconID == 9367: iconID = 9386 return iconID def spitPermissionsIcons(index,rights): bIsCalACL = isCalendarACL(fcp.formID) maxIcons = 18 if bIsCalACL else 17 bit = 1 if bIsEditable and index is not -1: context.write('') else: context.write('') for i in range(maxIcons): if (i != 13) or (not bIsCalACL): iconID = resolveIconID(fcp.formID,9350+i) aclBitStr = 'data-x-fcp-aclbit="'+str(bit)+'"' if rights & 1: context.write('') elif bIsEditable: context.write('') else: context.write('') if i==16: rights = rights>>5 bit = bit<<5 else: rights = rights>>1 bit = bit<<1 if index is not -1: context.write('
') context.write('') def spitAccessPopup(index,rights): selVal = rights if rights not in cannedList: selVal = -1 context.write('') def spitAccessRow(index,item): uniqueID = str(index+1)+accessID if item: accRights = item.GetField(fcpdefs.dbAccRights) if accRights==None: accRights = 0 context.write('') if bIsEditable: context.write('X') context.write('>8) + '.png"/>') context.write(''+item.EscapedName()+'') else: accRights = 0 context.write('') spitAccessPopup(index,accRights) context.write('') spitPermissionsIcons(index,accRights) context.write('') def spitConfGroup(index,item): uniqueID = str(index+1)+confGroupID context.write('
  • ') if bIsEditable: context.write('X') context.write('>8) + '.png"/>') context.write(''+item.EscapedName()+'
  • ') def spitAccessRows(): for i in range(numAccessNames): spitAccessRow(i,accessNames[i]) if bIsEditable: spitAccessRow(-1,None) context.write('') def spitConfGroups(): for i in range(numConfGroups): spitConfGroup(i,confGroups[i]) if bIsEditable: context.write('
  • ') %>
    %if not (isContactDBACL(fcp.formID) or parentSubType==66): Ne pas publier dans l'annuaire %endif
    Propriétaire: ${owner}


    %if isContactDBACL(fcp.formID): Utiliser la vue du serveur %endif %if not (isCalendarACL(fcp.formID) or isContactDBACL(fcp.formID) or parentSubType==77):
    Vue, Options message, Approbation, Taille limite, Expiration
    Vue
    Utiliser la vue du serveur Utiliser la vue template seulement Masquer les éléments non-approuvés
    Options message
    Formulaire à utiliser:
    Réponse par défaut:
    Appréciation du type J'aime ou je note:
    Approbation
    Messages à approuver Pièces jointes à approuver
    Taille limite
    Limiter les messages supérieurs à:
    Gestion:
    Expiration
    Limite élément:
    Expiration du message (jours):
    %elif isCalendarACL(fcp.formID):
    Expiration élément: (jours)
    %endif

    %if not isContactDBACL(fcp.formID):
      <% spitConfGroups() %>


    %endif <% spitAccessRows() %>