## -*- coding: utf_8 -*- <% from fcp import fcpdefs from fcp import mlitem from fcutils import util from fcws.fcweb import webutil from cStringIO import StringIO import base64 %> <%namespace name="toolbar" file="toolbars.html" import="create"/> <% def spitRulesForm(): str = '"FORM":{"ID":20,"13800":{"t":"Ingeschakeld","v":1},"13801":"=-1;Ontvangen=0;Verzenden=1;Maken=2;Verwijderen=3;Verplaatsen=4;Openen=5;Verlooptijd=6;Gewijzigd=7;Beantwoorden=8;Doorsturen=9;Handmatig=10;Lezen=11;Sluiten=12;Bewerken=13;Herinnering=14;Container open=15","13806":"Ongeldig=0;Gelijk aan 1=1;Is niet gelijk aan 1;Is gelijk aan 2;Is niet gelijk aan 2;Is gelijk aan 3;Is niet gelijk aan 3;Is groter dan 1;Is kleiner dan 1;Is groter dan 2;Is kleiner dan 2;Is groter dan 3;Is kleiner dan 3;Maakt deel uit van=21;Maakt geen deel uit van;Bestaat=31;Bestaat niet;Bevat=41;Bevat niet;Begint met=51;Begint niet met;Eindigt met=61;Eindigt niet met;Aangepast 1=101;Niet aangepast 1;Aangepast 2;Niet aangepast 2;Aangepast 3;Niet aangepast 3;Aangepast 4;Niet aangepast 4;Aangepast 5;Niet aangepast 5;Aangepast 6;Niet aangepast 6;Aangepast 7;Niet aangepast 7;Aangepast 8;Niet aangepast 8;Aangepast 9;Niet aangepast 9;Aangepast 10;Niet aangepast 10;Aangepast 11;Niet aangepast 11;Aangepast 12;Niet aangepast 12;Aangepast 13;Niet aangepast 13;Aangepast 14;Niet aangepast 14;Aangepast 15;Niet aangepast 15","13807":"Alle criteria;E\u00e9n van de criteria","13810":"----=0;De Aan-lijst;De Cc-lijst;De Bcc-lijst;De lijst Doorsturen;Alle ontvangers;De verzender;Iedere doorstuurder;Iedere Aan-naam;Iedere Cc-naam;Iedere Bcc-naam;Iedere ontvanger;Het object;De verzenddatum;De ontvangstdatum;De aanmaakdatum;De laatste wijzigingsdatum;De verloopdatum;De grootte;De naam;Het onderwerp;De lijst van bijlagen;Een van de bijlagen;De berichtinhoud;De Internetheader;De geschiedenis;Het objecttype;Het bestandstype;Het formuliertype;Het pictogram;Het mediatype;De veldgegevens;Een veld;Altijd;Nooit;Als de kans is;Als het SPAM-niveau is;Als de container;Als de gebruiker","13830":"=-1;Niets doen=0;Verplaatsen=1;Kopi\u00ebren=2;Verwijderen=3;Antwoord maken=4;Weigeren=5;Doorsturen=6;Heradresseren=7;Een pieperbericht verzenden=8;Melding verzenden=9;Een nieuw bericht verzenden=10;Goedkeuringsstatus van dit item instellen=11;Vlag Gelezen van dit item instellen=12;Dit item instellen op automatisch openen=13;Dit item beveiligen tegen verwijderen=14;Opslaan als Alleen-lezen=54;Pictogram van dit item instellen=15;Kleur van dit item instellen=16;Prioriteit van dit item instellen=17;Gevoeligheid van dit item instellen=18;Verlooptijd van dit item instellen=19;Tekenset van dit item instellen=20;De standaardacties onderdrukken=21;Tekstveld bij dit item instellen=22;Numeriek veld bij dit item instellen=23;Datumveld bij dit item instellen=24;Geluid afspelen=25;Waarschuwingsscherm openen=26;Bevestiging voor uitvoering ontvangen=27;Geselecteerde naam aan machtigingenlijst toevoegen=28;Geselecteerde naam van machtigingenlijst verwijderen=29;Machtiging verlenen aan geselecteerde naam=30;Machtigingen intrekken voor geselecteerde naam=31;Geselecteerde naam aan mijn adresboek toevoegen=32;Geselecteerde naam uit mijn adresboek verwijderen=33;Geselecteerde naam deelnemer van een conferentie maken=34;Geselecteerde naam als deelnemer van een conferentie verwijderen=35;Geselecteerde naam aan mijn verzendlijst toevoegen=36;Geselecteerde naam uit mijn verzendlijst verwijderen=37;Deze naam aan globale verzendlijst toevoegen=38;Deze naam uit globale verzendlijst verwijderen=39;Deze naam aan gebruikersgroep toevoegen=40;Deze naam uit gebruikersgroep verwijderen=41;Berichtregel logbestand maken=42;Onderwerp instellen=43;Verwerking berichtregel stoppen=44;Batchbeheerscript uitvoeren=45;Help-toepassing uitvoeren=46;Formuliertype wijzigen=47;Naam instellen=48;Koppelen=49;Teller kopi\u00ebren=50;Persoon koppelen=51;Kiezer openen=52;Objecttype instellen=53;Weergave instellen=55"}' return str def spitManagedTasksForm(): str = '"FORM":{"ID":20508,"1012":"-=0;Toegewezen=6;Erkend=7;In Voortgang=2;Voltooid=1;In de wacht=3;Uitgesteld=4;Geannuleerd=5"}' return str itemsStrIO = StringIO() jsonStr = '' myMLItem = fcp.MyMLItem thisWebID = myMLItem.WebID() type = myMLItem.Type() subType = myMLItem.SubType() fType,forceColumnarValue = fcp.GetEscapedFormField(13395,0) bForceColumnar = subType==20 or subType==77 or (forceColumnarValue==1 and type == fcpdefs.oMailBox) windowTitle = webutil.stripNone(fcp, fcpdefs.dObjName) nFiles = fcp.NFiles if nFiles==None: nFiles = 0 nFolders = fcp.NFolders if nFolders==None: nFolders = 0 view = fcp.view if view==None: view = 0 nUpperPaneItems = 0 # render for a new window or just add more records bFullPage = False if (Page=='NEXT' or Page=='PREVIOUS' or Page=='ALL') else True bIsThreadListing = True if Thread else False bShowingDeleted = True if Deleted=='' else False if subType==7 or subType==40 or type==fcpdefs.oMailBox: splitType = fcpdefs.viewInfo.splitVertical else: splitType, splitPos, splitPercent = fcp.GetSplitInfo() if Navigator=="1": bIsViewByIcon = True navigatorString = 'fcNavigator="1" ' else: bIsViewByIcon = fcp.IsViewByIcon() if (not bForceColumnar and not bShowingDeleted and subType!=7 and subType!=40 and subType!=66 and type!=fcpdefs.oMailBox) else False navigatorString = '' ratingType = fcp.solicitationMethod if not ratingType: ratingType = 0 parentWebID = myMLItem.ParentWebID() if parentWebID: parentWebIDStr = 'data-x-fcp-parentid="'+parentWebID+'"' else: parentWebIDStr = '' options = fcp.options if options==None: options = 0 if bForceColumnar: options = options | 0x0200 if subList!=None: nItems = len(subList) for i in range(nItems): item = subList[i] if item: itemsStrIO.write(item.AsJSONArrayItem(mlitem.sendAll,(client.serverTZ,client.clientTZ)) + ',') if not item.IsContainer() and item.IsUpperPaneItem(): nUpperPaneItems += 1 else: i = 0 item = fcp.GetNthMLItem(i) while item: itemsStrIO.write(item.AsJSONArrayItem(mlitem.sendAll,(client.serverTZ,client.clientTZ)) + ',') if not item.IsContainer() and item.IsUpperPaneItem(): nUpperPaneItems += 1 i = i + 1 item = fcp.GetNthMLItem(i) if bFullPage: jsonStr += '{"MYMLITEM":'+myMLItem.AsJSONArrayItem(mlitem.sendAll,(client.serverTZ,client.clientTZ))+',"NFILES":'+str(nFiles)+',"NFOLDERS":'+str(nFolders)+',"NUPPERPANEITEMS":'+str(nUpperPaneItems)+',"RIGHTS":'+str(fcp.rights) jsonStr += ',"VIEW":'+str(view)+',"OPTIONS":'+str(options)+',"RATINGTYPE":'+str(ratingType) if subType==29: jsonStr += ','+spitRulesForm() elif subType==77: jsonStr += ','+spitManagedTasksForm() formData = fcp.FormFieldDataAsJSON() if formData!=None: jsonStr += ','+formData else: fType,colLayout = fcp.GetEscapedFormField(13100) if colLayout==None or len(colLayout)==0: fType,colLayout = fcp.GetEscapedFormField(13000) if colLayout and len(colLayout): colLayoutBase64 = base64.standard_b64encode(colLayout) jsonStr += ',"FORMDATA":{"13100":{"b64":"'+colLayoutBase64+'"}}' jsonStr += ',"MLDS":[' else: jsonStr += '{"MLDS":[' strOut = itemsStrIO.getvalue() itemsStrIO.close() lenStrOut = len(strOut) if lenStrOut>0 and strOut[lenStrOut-1]==',': strOut = strOut[0:lenStrOut-1] jsonStr += strOut + ']}' if bFullPage: fldrStyle = '' if nFolders else ' style="display:none;"' upperPaneStyle = '' if nUpperPaneItems else ' style="display:none;"' bIsColumnView = True if Columnar=="1" and (((options & 0x200) != 0 and not (subType==67 or subType==66 or subType==33) and not bShowingDeleted) or (subType==40 or subType==32 or subType==42 or subType==29 or subType==20)) else False bLowerLayoutIsSet = fcp.UseLowerLayout() bUseLowerLayout = True if (bIsColumnView and bLowerLayoutIsSet) or (not bIsColumnView and bLowerLayoutIsSet) else False bSplitView = not bShowingDeleted and not bIsViewByIcon and not subType==16 bHideSplit = bSplitView and (bIsColumnView or subType==67 or subType==66 or subType==33 or subType==20 or type==19) if Retrieve=='SUMMARY': extraData = 'data-x-fc-viewitems="0x0008"' elif bShowingDeleted: extraData = 'data-x-fc-viewitems="0x0007" data-x-fcp-keepopen="true"' elif bIsViewByIcon and navigatorString == '': extraData = 'data-x-fc-viewitems="0x0003"' elif subType==42: extraData = 'data-x-fc-viewitems="0x0007"' elif splitType==fcpdefs.viewInfo.splitNone: extraData = 'data-x-fc-viewitems="0x0003"' else: extraData = '' containerClasses = '' listClasses = ' fc-servobj-view fc-scrolling-view' if bShowingDeleted or bIsThreadListing or subType==42 or type==19: extraData = extraData + ' data-x-fc-getting-more-items=1' wrapperClassList = 'fc-views-wrapper' if bShowingDeleted or subType==42: listClasses += ' fc-only-deleted' if not bShowingDeleted: tbOptions = {'bIsViewByIcon':bIsViewByIcon,'bSplitView':bSplitView,'bHideSplit':bHideSplit,'bShowingDeleted':(bShowingDeleted or subType==42),'nUpperPaneItems':nUpperPaneItems,'bIsColumnView':bIsColumnView,'bIsThreadListing':bIsThreadListing}; toolbar.create(fcp,tbOptions) if subType==66: wrapperData = 'data-x-fc-tab-name="cmd_ShowFeed"' elif subType==33: wrapperData = 'data-x-fc-tab-name="cmd_ShowBlogs"' elif type==19: wrapperData = 'data-x-fc-tab-name="cmd_ShowHitListContent"' extraData = extraData + ' data-x-fcp-updatehandler="FC.updateSearchStatus"' else: wrapperData = '' if fcp.solicitationMethod: extraData = extraData + ' data-x-fcp-ratingtype="'+str(fcp.solicitationMethod)+'"' context.write('