## -*- 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
Allmänt
Kommentarer:
%if isEditable: %else: ${subject} %endif
Anpassa hälsning
Om du vill att den här hälsningen ska spelas upp för specifika telefonnummer så anger du dem här. Skilj telefonnumren åt med komma.
Slagna nummer:
%if isEditable: %else: ${stripNone(fcp,8210)} %endif
Spelar upp den här hälsningen när du får ett samtal från något av de här numren
Uppringandes nummer:
%if isEditable: %else: ${stripNone(fcp,8211)} %endif Kräv att okända ringare trycker en siffra
Schemaläggning
Börjar:
Slutar:
Varaktighet:
Intervall:
Färg:
Tidszon:
%if serverTZ != 0: %else: %endif
Alternativ hantering
Efter hälsning spelats Spela in meddelande
Spela in och märk som brådskande
Överför ringaren till det ursprungliga numret
Överför ringare till detta nummer: 
Koppla ner
Ringarinitierad överföring Tillåt ringare att överföra   
Åsidosätt inställningar för kopplingsmeny   
Addreseringsalternativ  
Fax
Använd den här fliken för att ange hur inkommande faxsamtal som får den här hälsningen ska hanteras.
Initiera fax CNG toner
%if isEditable:
%else:
%endif
    %if isEditable: %else:
    %endif