## -*- coding: utf_8 -*- <%namespace name="fcnames" file="fcnames.html" import="renderFCNames"/> <% from fcp import fcpdefs from fcutils import util from fcp import mlitem from fcws.fcweb import webutil from extension import clib import json stripNone = webutil.stripNone parseEnumerations = webutil.parseEnumerations valueForFieldWithKey = webutil.valueForFieldWithKey myMLItem = fcp.MyMLItem thisWebID = myMLItem.WebID() sessionObject = client.FindServerObjectByObjID(fcpdefs.SESSIONDATAOBJID) canEdit = None editableVal = util.getValueFromDictionary('Editable', pageargs, None) eStatus = myMLItem.GetEStatus() if not (eStatus & fcpdefs.BackVersion) and editableVal=='0': parent = client.FindServerObjectByObjID(fcp.parentObjID) if parent: canEdit = True if parent.rights & fcpdefs.acWrite else False if canEdit is None: canEdit = True if fcp.rights & fcpdefs.acWrite else False isEditable = canEdit if isEditable and not editableVal=='1': isEditable = False editableClass = " editable" if isEditable else " readonly" shortInfoStatus = myMLItem.Status() protected = shortInfoStatus & fcpdefs.Protected jsonStr = fcp.MeAsJSON() iconID = myMLItem.IconID() parentID = myMLItem.ParentWebID() threadID = util.binToString(myMLItem.GetField(fcpdefs.dThreadID,''), False)[0] fType,subject = fcp.GetEscapedFormField(fcpdefs.dSubject) if subject is None: subject = "" fType,objName = fcp.GetEscapedFormField(fcpdefs.dObjName) if objName is None: objName = "" windowTitle = subject if subject != "" else objName if objName != "" else " " fType,mtgAlarm = fcp.GetEscapedFormField(fcpdefs.mtgAlarm) if mtgAlarm is None: mtgAlarm = 0 fType,mtgAlarmTimeBefore = fcp.GetEscapedFormField(fcpdefs.mtgAlarmTimeBefore) if mtgAlarmTimeBefore is None: mtgAlarmTimeBefore = 0 #TZ is: 0 on existing event when not set; None on a new event fType,mtgTimeZone = fcp.GetEscapedFormField(fcpdefs.mtgTimeZone) clientTZ = client.clientTZ fType,serverTZ = sessionObject.GetEscapedFormField(fcpdefs.serverTimeZone) if serverTZ is None or serverTZ == 0: serverTZ = mtgTimeZone = clientTZ = 0 else: if clientTZ == 0 or clientTZ is None: clientTZ = serverTZ if mtgTimeZone == 0: mtgTimeZone = serverTZ elif mtgTimeZone is None: mtgTimeZone = clientTZ fType,mtgStartDate = fcp.GetEscapedFormField(fcpdefs.mtgStartDate) if mtgStartDate is not None: mtgStartDate = mtgStartDate & 0xFFFFFFFF if (serverTZ != clientTZ): clientStartTime = clib.ConvertTime(mtgStartDate,serverTZ,clientTZ) else: clientStartTime = mtgStartDate if ( serverTZ != mtgTimeZone ): meetingStartTime = clib.ConvertTime(mtgStartDate,serverTZ,mtgTimeZone) else: meetingStartTime = mtgStartDate else: mtgStartDate = clientStartTime = meetingStartTime = 0 fType,mtgEndTime = fcp.GetEscapedFormField(fcpdefs.mtgEndTime) if mtgEndTime is not None: mtgEndTime = mtgEndTime & 0xFFFFFFFF if (serverTZ != clientTZ): clientEndTime = clib.ConvertTime(mtgEndTime,serverTZ,clientTZ) else: clientEndTime = mtgEndTime if ( serverTZ != mtgTimeZone ): meetingEndTime = clib.ConvertTime(mtgEndTime,serverTZ,mtgTimeZone) else: meetingEndTime = mtgEndTime else: mtgEndTime = clientEndTime = meetingEndTime = 0 fType,mtgDuration = fcp.GetEscapedFormField(fcpdefs.mtgDuration) if mtgDuration is None: mtgDuration = 0 mtgDuration = mtgDuration & 0xFFFFFFFF fType,msgOptions = fcp.GetEscapedFormField(fcpdefs.dMsgOptions) visibility = msgOptions & 0x1C00 priority = msgOptions & 0xE000 msgOptions = msgOptions - visibility - priority visibility = visibility / 0x400 priority = priority / 0x2000 fType,mtgColour = fcp.GetEscapedFormField(fcpdefs.mtgColour) if mtgColour is None or mtgColour is 0: mtgColour = "#FFFFFF"; else: mtgColour = mtgColour & 0xFFFFFFFF mtgColour = "#%06X" % (mtgColour>>8) mtgRepeatUntil = fcp.GetEscapedFormField(fcpdefs.mtgRepeatUntil)[1] if mtgRepeatUntil is not None: mtgRepeatUntil = mtgRepeatUntil & 0xFFFFFFFF if ( serverTZ != mtgTimeZone ): mtgRepeatUntil = clib.ConvertTime(mtgRepeatUntil,serverTZ,mtgTimeZone) subjectID = 'fcfid-'+str(fcpdefs.dSubject) objNameID = 'fcfid-'+str(fcpdefs.dObjName) mtgIconID = 'fcfid-' + str(3002) mtgTaskID = 'fcfid-'+str(fcpdefs.mtgTask) mtgCategoryID = 'fcfid-'+str(fcpdefs.mtgCategory) mtgStartDateID = 'fcfid-'+str(fcpdefs.mtgStartDate) mtgEndTimeID = 'fcfid-'+str(fcpdefs.mtgEndTime) mtgDurationID = 'fcfid-'+str(fcpdefs.mtgDuration) mtgColorID = 'fcfid-'+str(fcpdefs.mtgColour) mtgTimeZoneID = 'fcfid-'+str(fcpdefs.mtgTimeZone) greetingTypeID = 'fcfid-8202' greetingStatusID = 'fcfid-8200' fieldEnableStr = '' if isEditable else 'disabled="disabled"' iconEnableStr = 'onclick="WM.handleCmd(this)" data-x-fcp-cmd="cmd_IconPicker"' if isEditable else '' helpTextEnableStr = '' if isEditable else 'style="display:none;"' jsonStrLen = len(jsonStr) jsonStr = jsonStr[0:jsonStrLen-1] if mtgDuration is None: mtgDurationInitVal = "None" else: mtgDurationInitVal = mtgDuration endif if mtgRepeatUntil is None: mtgRepeatUntilInitVal = "None" else: mtgRepeatUntilInitVal = mtgRepeatUntil endif calInitForm = { "clientStartTime":clientStartTime, "mtgStartDate":mtgStartDate, "meetingStartTime":meetingStartTime, "mtgTimeZone":mtgTimeZone, "clientTZ":clientTZ, "serverTZ":serverTZ, "clientEndTime":clientEndTime, "mtgEndTime":mtgEndTime, "meetingEndTime":meetingEndTime, "mtgDuration":mtgDurationInitVal, "mtgAlarm":mtgAlarm, "mtgAlarmTimeBefore":mtgAlarmTimeBefore, "mtgTaskStatus":0, "mtgTaskCompletedDate":"None", "mtgRepeatUntil":mtgRepeatUntilInitVal, "msgOptions":msgOptions, "threadID":str(threadID), "iconID":iconID, "fcpRetCode":client.fcpRetCode } calInitFormJsonStr = json.dumps(calInitForm) jsonStr = jsonStr+',"FCCalInitForm":'+calInitFormJsonStr+'}' %>
 
%if isEditable: %elif canEdit: %endif
%if isEditable: %else: ${objName} %endif
General
Comentarios:
%if isEditable: %else: ${subject} %endif
Personalizar saludos
Si desea que el saludo se reproduzca para determinados números, introdúzcalos aquí. Separe los distintos números con comas.
Números marcados:
%if isEditable: %else: ${stripNone(fcp,8210)} %endif
Reproduce el saludo cuando recibe una llamada de uno de estos números
Números desde los que se realiza la llamada:
%if isEditable: %else: ${stripNone(fcp,8211)} %endif Obligar a los emisores de llamadas desconocidos a pulsar una tecla
Planificación
Inicio:
Terminación:
Duración:
Intervalo de repetición:
Color:
Franja horaria:
%if serverTZ != 0: %else: %endif
Gestión adicional
Después de escuchar el saludo Grabar mensaje
Grabar y convertir en urgente
Transferir al emisor de llamada al número cero por defecto
Transferencia llamada a este número: 
Desconectar
Transferencia iniciada por el que llama Permitir al emisor de llamada realizar transferencia   
Sobrescribir preferencias del menú de transferencia   
Opciones de direccionamiento  
Faxes
Use esta pestaña para especificar cómo son manejados los saludos con las llamadas de fax.
Iniciar tonos CNG de fax
%if isEditable:
%else:
%endif
    %if isEditable: %else:
    %endif