GO.sieve.ActionRecord=Ext.data.Record.create([{name:"type",type:"string"},{name:"copy",type:"string"},{name:"target",type:"string"},{name:"days",type:"string"},{name:"addresses",type:"string"},{name:"reason",type:"string"}]);GO.sieve.ActionPanel=function(a){a=a||{};this.cmbAction=new GO.form.ComboBox({hiddenName:"type",fieldLabel:GO.sieve.lang.action,valueField:"value",displayField:"field",store:GO.sieve.cmbActionStore,mode:"local",value:"fileinto",triggerAction:"all",editable:false,selectOnFocus:true,forceSelection:true,allowBlank:false,width:150,emptyText:GO.sieve.lang.action});this.cmbFolder=new GO.form.ComboBox({hiddenName:"target",fieldLabel:GO.sieve.lang.folder,valueField:"name",value:"INBOX",displayField:"name",store:GO.email.subscribedFoldersStore,mode:"local",triggerAction:"all",editable:false,selectOnFocus:true,forceSelection:true,allowBlank:false,width:150,emptyText:GO.sieve.lang.folder});this.txtEmailAddress=new Ext.form.TextField({name:"email",hidden:true,allowBlank:true,width:180,emptyText:GO.sieve.lang.addresses});this.txtMessage=new Ext.form.TextArea({name:"message",hidden:true,allowBlank:false,hideLabel:true,anchor:"100%",height:80,emptyText:GO.sieve.lang.reason,listeners:{scope:this,focus:function(){this.setHeight(100)}}});this.txtDays=new Ext.form.TextField({name:"days",hidden:true,allowBlank:true,width:170,emptyText:GO.sieve.lang.days});this.cmbAction.on("select",function(c,b){this.setVisibleFields(b,false)},this);this.btnAddAction=new Ext.Button({text:GO.lang.cmdAdd,handler:function(){var h=false;var e="";var b="";var g="";var d="";var k="";switch(this.cmbAction.getValue()){case"fileinto":h=false;e="fileinto";b=this.cmbFolder.getValue();break;case"copyto":h=true;e="fileinto";b=this.cmbFolder.getValue();break;case"redirect":h=false;e="redirect";b=this.txtEmailAddress.getValue();break;case"redirect_copy":h=true;e="redirect";b=this.txtEmailAddress.getValue();break;case"reject":h="";e="reject";b=this.txtMessage.getValue();break;case"vacation":h="";e="vacation";b="";g=this.txtDays.getValue();d=this.txtEmailAddress.getValue();k=this.txtMessage.getValue();break;case"discard":h="";e="discard";b="";break;case"stop":h="";e="stop";b="";break}var i={type:e,copy:h,target:b,days:g,addresses:d,reason:k};var f;if(this.btnAddAction.getText()==GO.lang.cmdAdd){f=new GO.sieve.ActionRecord(i);var c=this.grid.store.getCount();if(this.grid.store.getCount()>0&&this.grid.store.getAt(this.grid.store.getCount()-1).data.type=="stop"){c=this.grid.store.getCount()-1}else{switch(this.cmbAction.getValue()){case"redirect_copy":case"vacation":break;default:var j=new GO.sieve.ActionRecord({type:"stop",copy:false,target:"",days:"",addresses:"",reason:""});this.grid.store.insert(c,j);break}}if(this.cmbAction.getValue()=="vacation"){c=0}this.grid.store.insert(c,f)}else{f=this.grid.store.getAt(this.index);Ext.apply(f.data,i);f.commit()}this.resetForm()},scope:this});this.btnClearAction=new Ext.Button({text:GO.sieve.lang.clear,handler:function(){this.resetForm()},scope:this});a.bodyStyle="padding:5px";a.border=false;a.autoHeight=true;a.region="center";a.baseParams={task:"addAction",account_id:0,script_name:"",rule_name:"",script_index:0};a.items=[{xtype:"compositefield",items:[this.cmbAction,this.cmbFolder,this.txtDays,this.txtEmailAddress,this.btnAddAction,this.btnClearAction],hideLabel:true},this.txtMessage];GO.sieve.ActionPanel.superclass.constructor.call(this,a)};Ext.extend(GO.sieve.ActionPanel,Ext.FormPanel,{index:0,setVisibleFields:function(a,d,b){this.index=b?b:0;this.cmbFolder.reset();this.txtEmailAddress.reset();this.txtDays.reset();this.txtMessage.reset();var c="";this.form.setValues(a.data);if(d){this.btnAddAction.setText(GO.lang.cmdSave);this.btnClearAction.setText(GO.lang.cmdCancel);c=a.data.type;if(a.data.type=="redirect"&&a.data.copy==true){c="redirect_copy";this.cmbAction.setValue(c);this.txtEmailAddress.setValue(a.data.target)}else{if(a.data.type=="fileinto"&&a.data.copy==true){c="copyto";this.cmbAction.setValue(c)}else{if(a.data.type=="vacation"){this.txtEmailAddress.setValue(a.data.addresses);this.txtMessage.setValue(a.data.reason)}}}}else{this.btnAddAction.setText(GO.lang.cmdAdd);this.btnClearAction.setText(GO.sieve.lang.clear);c=a.data.value}switch(c){case"fileinto":this.cmbFolder.show();this.txtEmailAddress.hide();this.txtMessage.hide();this.txtDays.hide();break;case"copyto":this.cmbFolder.show();this.txtEmailAddress.hide();this.txtMessage.hide();this.txtDays.hide();break;case"redirect":this.cmbFolder.hide();this.txtEmailAddress.show();this.txtMessage.hide();this.txtDays.hide();break;case"redirect_copy":this.cmbFolder.hide();this.txtEmailAddress.show();this.txtMessage.hide();this.txtDays.hide();break;case"reject":this.cmbFolder.hide();this.txtEmailAddress.hide();this.txtMessage.show();this.txtDays.hide();break;case"vacation":this.cmbFolder.hide();this.txtDays.show();this.txtEmailAddress.show();this.txtMessage.show();break;case"discard":this.cmbFolder.hide();this.txtDays.hide();this.txtEmailAddress.hide();this.txtMessage.hide();break;case"stop":this.cmbFolder.hide();this.txtEmailAddress.hide();this.txtDays.hide();this.txtMessage.hide();break}this.doLayout()},resetForm:function(){this.btnAddAction.setText(GO.lang.cmdAdd);this.btnClearAction.setText(GO.sieve.lang.clear);this.form.reset();this.cmbFolder.show();this.txtEmailAddress.hide();this.txtMessage.hide();this.txtDays.hide();this.doLayout()},onShow:function(){GO.sieve.ActionPanel.superclass.onShow.call(this);this.actionGrid.store.load()}});GO.sieve.TestsPanel=function(a){a=a||{};this.cmbField=new GO.form.ComboBox({hiddenName:"arg1",valueField:"value",displayField:"field",value:"Subject",store:GO.sieve.cmbFieldStore,mode:"local",triggerAction:"all",editable:false,forceSelection:true,allowBlank:false,width:90,emptyText:GO.sieve.lang.field});this.cmbOperator=new GO.form.ComboBox({hiddenName:"type",value:"contains",valueField:"value",displayField:"field",store:GO.sieve.cmbOperatorStore,mode:"local",triggerAction:"all",editable:false,selectOnFocus:true,forceSelection:true,allowBlank:false,width:110,emptyText:GO.sieve.lang.operator});this.txtCondition=new Ext.form.TextField({name:"arg2",emptyText:"...",allowBlank:false,width:150});this.txtCustom=new Ext.form.TextField({name:"custom",emptyText:GO.sieve.lang.custom,fieldLabel:GO.sieve.lang.custom,allowBlank:false,width:140,hidden:true});this.cmbUnderOver=new GO.form.ComboBox({hiddenName:"underover",hidden:true,value:"under",valueField:"value",displayField:"field",store:GO.sieve.cmbUnderOverStore,mode:"local",triggerAction:"all",editable:false,selectOnFocus:true,forceSelection:true,allowBlank:false,width:70});this.rgSize=new Ext.form.RadioGroup({columns:4,width:150,hidden:true,items:[{items:{boxLabel:"B",name:"size",inputValue:"B",style:"margin-left: 4px; margin-right: -2px;"}},{items:{boxLabel:"KB",name:"size",inputValue:"K",style:"margin-left: 4px; margin-right: -2px;",checked:true}},{items:{boxLabel:"MB",name:"size",inputValue:"M",style:"margin-left: 4px; margin-right: -2px;"}},{items:{boxLabel:"GB",name:"size",inputValue:"G",style:"margin-left: 4px; margin-right: -2px;"}}],hideLabel:true});this.cmbField.on("select",function(d,c){this.setVisibleFields()},this);this.cmbOperator.on("select",function(d,c){this.setVisibleFields()},this);var b=Ext.data.Record.create([{name:"test",type:"string"},{name:"not",type:"string"},{name:"type",type:"string"},{name:"arg1",type:"string"},{name:"arg2",type:"string"}]);this.btnAddRule=new Ext.Button({text:GO.lang.cmdAdd,handler:function(){var j="";var i=true;var h="";var f="";var e=this.cmbField.getValue();var c=this.txtCondition.getValue();if(this.cmbOperator.getValue()=="exists"||this.cmbOperator.getValue()=="notexists"||this.cmbField.getValue()=="X-Spam-Flag"){c="sometext"}if(c!=""){if(this.cmbField.getValue()=="custom"){j="header";f="";e=this.txtCustom.getValue();c=this.txtCondition.getValue();if(this.cmbOperator.getValue()=="exists"||this.cmbOperator.getValue()=="notexists"){j="exists";f=this.txtCustom.getValue();e="";c=""}if(this.cmbOperator.getValue()=="notcontains"||this.cmbOperator.getValue()=="notis"||this.cmbOperator.getValue()=="notexists"){i=true}else{i=false}if(this.cmbOperator.getValue()=="contains"||this.cmbOperator.getValue()=="notcontains"){h="contains"}else{if(this.cmbOperator.getValue()=="is"||this.cmbOperator.getValue()=="notis"){h="is"}}}else{if(this.cmbField.getValue()=="X-Spam-Flag"){j="header";i=false;h=this.cmbOperator.getValue();f="";e="X-Spam-Flag";c="YES"}else{if(this.cmbField.getValue()=="size"){j="size";i=false;h=this.cmbUnderOver.getValue();e="";c="";if(this.rgSize.getValue().inputValue=="B"){f=this.txtCondition.getValue()}else{f=this.txtCondition.getValue()+this.rgSize.getValue().inputValue}}else{if(this.cmbOperator.getValue()=="exists"||this.cmbOperator.getValue()=="notexists"){j="exists";h="";f=this.cmbField.getValue();e="";c="";if(this.cmbOperator.getValue()=="notexists"){i=true}else{i=false}}else{j="header";f="";e=this.cmbField.getValue();c=this.txtCondition.getValue();if(this.cmbOperator.getValue()=="notcontains"||this.cmbOperator.getValue()=="notis"){i=true}else{i=false}if(this.cmbOperator.getValue()=="contains"||this.cmbOperator.getValue()=="notcontains"){h="contains"}else{if(this.cmbOperator.getValue()=="is"||this.cmbOperator.getValue()=="notis"){h="is"}}}}}}var d;var g={test:j,not:i,type:h,arg:f,arg1:e,arg2:c};if(this.index==-1){d=new b(g);this.grid.store.insert(this.grid.store.getCount(),d)}else{d=this.grid.store.getAt(this.index);Ext.apply(d.data,g);d.commit()}this.resetForm()}},scope:this});this.btnClearRule=new Ext.Button({text:GO.sieve.lang.clear,handler:function(){this.resetForm()},scope:this});a.bodyStyle="padding:5px";a.border=false;a.autoHeight=true;a.region="center";a.url=GO.settings.modules.sieve.url+"fileIO.php";a.baseParams={task:"addRule",account_id:0,script_name:"",rule_name:"",script_index:0};a.items=[{xtype:"compositefield",items:[this.cmbField,this.txtCustom,this.cmbUnderOver,this.cmbOperator,this.txtCondition,this.rgSize,this.btnAddRule,this.btnClearRule],hideLabel:true}];GO.sieve.TestsPanel.superclass.constructor.call(this,a)};Ext.extend(GO.sieve.TestsPanel,Ext.FormPanel,{index:-1,grid:false,setFormValues:function(a,b){this.index=typeof(b)=="undefined"?-1:b;this.form.setValues(a.data);if(a.data.test=="size"){this.cmbField.setValue(a.data.test);this.cmbUnderOver.setValue(a.data.type);var c=a.data.arg.substr(a.data.arg.length-1,1);var d=a.data.arg.substr(0,a.data.arg.length-1);if(c!="K"&&c!="M"&&c!="G"){d=d+c;c="B"}this.txtCondition.setValue(d);this.rgSize.setValue(c)}if(a.data.arg1!="Subject"&&a.data.arg1!="From"&&a.data.arg1!="To"&&a.data.arg1!="size"&&a.data.test!="size"&&a.data.arg1!="X-Spam-Flag"){this.cmbField.setValue("custom");this.txtCustom.setValue(a.data.arg1)}if(a.data.type=="contains"&&a.data.not==true){this.cmbOperator.setValue("notcontains")}else{if(a.data.type=="is"&&a.data.not==true){this.cmbOperator.setValue("notis")}else{if(a.data.test=="exists"&&a.data.not==true){this.cmbOperator.setValue("notexists");if(a.data.arg!=""&&(a.data.arg=="notis"||a.data.arg=="is"||a.data.arg=="notcontains"||a.data.arg=="contains"||a.data.arg=="exists"||a.data.arg=="notexists")){this.cmbField.setValue(a.data.arg)}else{this.cmbField.setValue("custom");if(a.data.arg=="notis"||a.data.arg=="is"||a.data.arg=="notcontains"||a.data.arg=="contains"||a.data.arg=="exists"||a.data.arg=="notexists"){this.txtCustom.setValue(a.data.arg1)}else{this.txtCustom.setValue(a.data.arg)}}}else{if(a.data.test=="exists"&&a.data.not==false){this.cmbOperator.setValue("exists");if(a.data.arg!=""&&(a.data.arg=="notis"||a.data.arg=="is"||a.data.arg=="notcontains"||a.data.arg=="contains"||a.data.arg=="exists"||a.data.arg=="notexists")){this.cmbField.setValue(a.data.arg)}else{this.cmbField.setValue("custom");if(a.data.arg=="notis"||a.data.arg=="is"||a.data.arg=="notcontains"||a.data.arg=="contains"||a.data.arg=="exists"||a.data.arg=="notexists"){this.txtCustom.setValue(a.data.arg1)}else{this.txtCustom.setValue(a.data.arg)}}}}}}this.setVisibleFields();this.btnAddRule.setText(GO.lang.cmdEdit);this.btnClearRule.setText(GO.lang.cmdCancel)},toggleCondition:function(){var a=this.cmbOperator.getValue();if(this.cmbField.getValue()!="size"&&(a=="exists"||a=="notexists")){this.txtCondition.hide()}else{this.txtCondition.show()}},setVisibleFields:function(){this.toggleCondition();switch(this.cmbField.getValue()){case"size":this.txtCustom.hide();this.cmbOperator.hide();this.cmbUnderOver.show();this.rgSize.show();break;case"From":this.txtCustom.hide();this.cmbOperator.show();this.cmbUnderOver.hide();this.rgSize.hide();break;case"To":this.txtCustom.hide();this.cmbOperator.show();this.cmbUnderOver.hide();this.rgSize.hide();break;case"Subject":this.txtCustom.hide();this.cmbOperator.show();this.cmbUnderOver.hide();this.rgSize.hide();break;case"X-Spam-Flag":this.txtCustom.hide();this.cmbOperator.hide();this.txtCondition.hide();this.cmbUnderOver.hide();this.rgSize.hide();break;case"custom":this.txtCustom.show();this.cmbOperator.show();if(this.cmbOperator.getValue()=="exists"||this.cmbOperator.getValue()=="notexists"){this.txtCondition.hide()}else{this.txtCondition.show()}this.cmbUnderOver.hide();this.rgSize.hide();break}this.doLayout()},onShow:function(){GO.sieve.TestsPanel.superclass.onShow.call(this)},resetForm:function(){this.btnAddRule.setText(GO.lang.cmdAdd);this.btnClearRule.setText(GO.sieve.lang.clear);this.form.reset();this.setVisibleFields();this.index=-1}});GO.moduleManager.onModuleReady("email",function(){Ext.override(GO.email.AccountDialog,{sieveCheckedAccountId:0,initComponent:GO.email.AccountDialog.prototype.initComponent.createSequence(function(){this.sieveGrid=new GO.sieve.SieveGrid();var a=this.tabPanel.items.indexOf(this.filtersTab);this.tabPanel.insert(a,this.sieveGrid);this.tabPanel.on("beforetabchange",function(d,b,c){if(b==this.sieveGrid&&this.sieveCheckedAccountId!=this.account_id){this.sieveCheck();return false}},this);this.on("show",function(){this.tabPanel.hideTabStripItem(this.filtersTab);this.tabPanel.unhideTabStripItem(this.sieveGrid.getId());this.sieveCheckedAccountId=0},this);this.tabPanel.hideTabStripItem(this.filtersTab)}),sieveCheck:function(){if(this.account_id>0&&this.sieveCheckedAccountId!=this.account_id){this.getEl().mask(GO.lang.waitMsgLoad);Ext.Ajax.request({url:GO.settings.modules.sieve.url+"fileIO.php",success:function(a){var b=Ext.decode(a.responseText);if(b.sieve_supported){this.tabPanel.hideTabStripItem(this.filtersTab);this.tabPanel.unhideTabStripItem(this.sieveGrid);this.sieveGrid.show()}else{this.tabPanel.hideTabStripItem(this.sieveGrid);this.tabPanel.unhideTabStripItem(this.filtersTab);this.filtersTab.show()}this.getEl().unmask()},failure:function(a){alert(GO.sieve.lang.checksieveerror);this.getEl().unmask()},params:{task:"check_is_supported",account_id:this.account_id},scope:this})}this.sieveCheckedAccountId=this.account_id},setAccountId:GO.email.AccountDialog.prototype.setAccountId.createSequence(function(a){this.sieveGrid.setAccountId(a)})})});GO.sieve.SieveDialog=function(a){if(!a){a={}}this.rgMethod=new Ext.form.RadioGroup({columns:3,anchor:"100%",value:"anyof",items:[{columnWidth:0.4,items:{boxLabel:GO.sieve.lang.allfollowingrules,name:"join",inputValue:"allof"}},{columnWidth:0.4,items:{boxLabel:GO.sieve.lang.somefollowingrules,name:"join",inputValue:"anyof"}},{columnWidth:0.2,items:{boxLabel:GO.sieve.lang.allmessages,name:"join",inputValue:"any"}}],listeners:{scope:this,change:function(){if(this.rgMethod.getValue()){if(this.rgMethod.getValue().inputValue=="any"){this.testsGrid.hide();this.testsPanel.hide()}else{if(this.testsGrid.store.getCount()>0){if(this.testsGrid.store.getAt(0).data.test=="true"){this.testsGrid.store.removeAll()}}this.testsGrid.show();this.testsPanel.show()}}}},hideLabel:true});this.formPanel=new Ext.FormPanel({style:"padding:5px;",autoHeight:true,border:false,url:GO.settings.modules.sieve.url+"fileIO.php",baseParams:{task:"load_rule"},items:[{fieldLabel:GO.lang.strName,name:"rule_name",xtype:"textfield",allowBlank:false},{name:"disabled",checked:false,xtype:"checkbox",fieldLabel:GO.sieve.lang.disablefilter},new Ext.form.Label({text:GO.sieve.lang.ruletext,width:"100%",style:"padding-bottom: 10px; font-weight:bold;"}),this.rgMethod]});this.testsGrid=new GO.sieve.TestsGrid();this.testsPanel=new GO.sieve.TestsPanel({grid:this.testsGrid});this.testsGrid.on("rowdblclick",function(d,c,f){var b=this.testsGrid.store.getAt(c);this.testsPanel.setFormValues(b,c)},this);this.actionGrid=new GO.sieve.ActionGrid();this.actionPanel=new GO.sieve.ActionPanel({grid:this.actionGrid});this.actionGrid.on("rowdblclick",function(d,c,f){var b=this.actionGrid.store.getAt(c);this.actionPanel.setVisibleFields(b,true,c)},this);this.currentScriptName="";this.currentRuleName="";this.currentScriptIndex=0;this.currentAccountId=0;a.items={autoScroll:true,layout:"anchor",items:[this.formPanel,this.testsPanel,this.testsGrid,new Ext.form.Label({text:GO.sieve.lang.actiontext,width:"100%",style:"padding-bottom: 10px; margin: 5px; font-weight:bold;"}),this.actionPanel,this.actionGrid]};a.collapsible=true;a.maximizable=true;a.layout="fit";a.modal=false;a.resizable=true;a.width=700;a.height=640;a.closeAction="hide";a.title=GO.sieve.lang.sieverules;a.buttons=[{text:GO.lang.cmdOk,handler:function(){if(this.actionGrid.store.getCount()==0||(this.testsGrid.store.getCount()==0&&this.rgMethod.getValue().inputValue!="any")){alert(GO.sieve.lang.erroremptygrids)}else{if(this.actionPanel.btnAddAction.getText()==GO.lang.cmdEdit||this.testsPanel.btnAddRule.getText()==GO.lang.cmdEdit){alert(GO.sieve.lang.errorineditmode)}else{this.saveAll()}}},scope:this},{text:GO.lang.cmdClose,handler:function(){this.hide()},scope:this}];GO.sieve.SieveDialog.superclass.constructor.call(this,a);this.addEvents({save:true})};Ext.extend(GO.sieve.SieveDialog,GO.Window,{show:function(b,c,a){GO.sieve.SieveDialog.superclass.show.call(this);this.formPanel.baseParams.script_index=b;this.formPanel.baseParams.account_id=a;this.formPanel.baseParams.script_name=c;if(b>-1){this.title=GO.sieve.lang.editsieve;this.formPanel.load({success:function(d,e){this.rgMethod.setValue(e.result.data.join);this.actionGrid.store.loadData(e.result);this.testsGrid.store.loadData(e.result)},failure:function(d,e){Ext.Msg.alert(GO.lang.strError,e.result.feedback)},scope:this})}else{this.title=GO.sieve.lang.newsieverule;this.resetForms();this.resetGrids();this.rgMethod.setValue("anyof")}},saveAll:function(){this.formPanel.form.submit({params:{task:"save_sieve_rules",tests:Ext.encode(this.testsGrid.getGridData()),actions:Ext.encode(this.actionGrid.getGridData())},success:function(a,b){this.hide();this.body.unmask()},failure:function(a,b){if(b.failureType=="client"){Ext.MessageBox.alert(GO.lang.strError,GO.lang.strErrorsInForm)}else{Ext.MessageBox.alert(GO.lang.strError,b.result.feedback)}this.body.unmask()},scope:this})},resetForms:function(){this.formPanel.form.reset();this.testsPanel.resetForm();this.actionPanel.resetForm()},resetGrids:function(){this.actionGrid.store.removeAll();this.testsGrid.store.removeAll()}});GO.sieve.SieveGrid=function(b){this.selectScript=new Ext.form.ComboBox({hiddenName:"selectScript",valueField:"value",displayField:"name",store:new GO.data.JsonStore({url:GO.settings.modules.sieve.url+"fileIO.php",baseParams:{task:"get_sieve_scripts",account_id:0},fields:["name","value"],root:"results"}),mode:"local",triggerAction:"all",editable:false,selectOnFocus:true,forceSelection:true,allowBlank:false,width:140});this.selectScript.on("select",function(e,d){this.setSelectedScript(d.json.value);this.store.reload()},this);var a={fields:["id","name","index","script_name","disabled"],columns:[{header:GO.sieve.lang.name,dataIndex:"name"},{header:GO.sieve.lang.disabled,dataIndex:"disabled",renderer:function(h,e,d,i,g,f){if(h){h=GO.lang.cmdYes}else{h=GO.lang.cmdNo}return h}}]};if(!b){b={}}b.title=GO.email.lang.filters;b.layout="fit";b.region="center";b.autoScroll=true;b.border=false;b.store=new GO.data.JsonStore({url:GO.settings.modules.sieve.url+"fileIO.php",baseParams:{task:"get_sieve_rules",script_name:""},root:"results",id:"index",totalProperty:"total",fields:a.fields,remoteSort:true});b.paging=true;var c=new Ext.grid.ColumnModel({defaults:{sortable:true,autoFill:true,forceFit:true},columns:a.columns});b.cm=c;b.view=new Ext.grid.GridView({autoFill:true,forceFit:true,emptyText:GO.lang.strNoItems});b.sm=new Ext.grid.RowSelectionModel();b.loadMask=true;this.sieveDialog=new GO.sieve.SieveDialog();this.sieveDialog.on("hide",function(d){this.store.reload()},this);b.enableDragDrop=true;b.ddGroup="SieveFilterDD";b.tbar=[{iconCls:"btn-add",text:GO.lang.cmdAdd,cls:"x-btn-text-icon",handler:function(){this.sieveDialog.show(-1,this.selectScript.getValue(),this.store.baseParams.account_id)},scope:this},{iconCls:"btn-delete",text:GO.lang.cmdDelete,cls:"x-btn-text-icon",handler:function(){this.deleteSelected()},scope:this},GO.sieve.lang.filterset,this.selectScript,{iconCls:"btn-delete",text:GO.sieve.lang.activate,cls:"x-btn-text-icon",handler:function(){Ext.Ajax.request({url:GO.settings.modules.sieve.url+"fileIO.php",scope:this,params:{task:"set_active_script",script_name:this.selectScript.getValue(),account_id:this.store.baseParams.account_id},success:function(){this.selectScript.store.reload();this.setSelectedScript();this.selectScript.setRawValue(this.selectScript.getRawValue()+" ("+GO.sieve.lang.active+")");this.store.reload()},failure:function(){}},this)},scope:this}];GO.sieve.SieveGrid.superclass.constructor.call(this,b);this.on("rowdblclick",function(e,f){var d=e.getStore().getAt(f);this.sieveDialog.show(d.data.index,d.data.script_name,this.store.baseParams.account_id)},this);this.on("show",function(){this.store.load();this.selectScript.store.load({callback:function(){this.selectScript.setValue(this.selectScript.store.reader.jsonData.active)},scope:this})},this);this.on("render",function(){var d=new Ext.dd.DropTarget(this.getView().mainBody,{ddGroup:"SieveFilterDD",copy:false,notifyDrop:this.onNotifyDrop.createDelegate(this)})},this)};Ext.extend(GO.sieve.SieveGrid,GO.grid.GridPanel,{setAccountId:function(a){this.store.baseParams.account_id=a;this.selectScript.store.baseParams.account_id=a},setSelectedScript:function(a){if(a){this.store.baseParams.script_name=a}else{this.store.baseParams.script_name=this.selectScript.getValue()}},onNotifyDrop:function(h,g,f){var k=this.selModel.getSelections();var d=h.getDragData(g);var j=d.rowIndex;if(j=="undefined"){j=this.store.data.length-1}for(c=0;c<k.length;c++){var b=this.store.getById(k[c].id);if(!this.copy){this.store.remove(this.store.getById(k[c].id))}this.store.insert(j,b)}var a=[];for(var c=0;c<this.store.data.items.length;c++){a.push(this.store.data.items[c].get("index"))}Ext.Ajax.request({url:GO.settings.modules.sieve.url+"fileIO.php",params:{task:"save_scripts_sort_order",sort_order:Ext.encode(a),account_id:this.store.baseParams.account_id}})}});GO.sieve.TestsGrid=function(b){if(!b){b={}}b.autoScroll=true;b.height=180;b.style="margin: 5px;";b.border=true;var a={fields:["test","not","type","arg","arg1","arg2","text"],header:false,columns:[{header:false,dataIndex:"text",renderer:function(h,e,d,j,g,f){var i="";switch(d.data.test){case"header":if(d.data.type=="contains"){if(d.data.not){if(d.data.arg1=="Subject"){i=GO.sieve.lang.subjectcontainsnot+" "+d.data.arg2}else{if(d.data.arg1=="From"){i=GO.sieve.lang.fromcontainsnot+" "+d.data.arg2}else{if(d.data.arg1=="To"){i=GO.sieve.lang.tocontainsnot+" "+d.data.arg2}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg1+" "+GO.sieve.lang.notcontains+" "+d.data.arg2}}}}else{if(d.data.arg1=="Subject"){i=GO.sieve.lang.subjectcontains+" "+d.data.arg2}else{if(d.data.arg1=="From"){i=GO.sieve.lang.fromcontains+" "+d.data.arg2}else{if(d.data.arg1=="To"){i=GO.sieve.lang.tocontains+" "+d.data.arg2}else{if(d.data.arg1=="X-Spam-Flag"){i=GO.sieve.lang.markedasspam}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg1+" "+GO.sieve.lang.contains+" "+d.data.arg2}}}}}}else{if(d.data.type=="is"){if(d.data.not){if(d.data.arg1=="Subject"){i=GO.sieve.lang.subjectequalsnot+" "+d.data.arg2}else{if(d.data.arg1=="From"){i=GO.sieve.lang.fromequalsnot+" "+d.data.arg2}else{if(d.data.arg1=="To"){i=GO.sieve.lang.toequalsnot+" "+d.data.arg2}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg1+" "+GO.sieve.lang.notis+" "+d.data.arg2}}}}else{if(d.data.arg1=="Subject"){i=GO.sieve.lang.subjectequals+" "+d.data.arg2}else{if(d.data.arg1=="From"){i=GO.sieve.lang.fromequals+" "+d.data.arg2}else{if(d.data.arg1=="To"){i=GO.sieve.lang.toequals+" "+d.data.arg2}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg1+" "+GO.sieve.lang.is+" "+d.data.arg2}}}}}}break;case"exists":if(d.data.not){if(d.data.arg=="Subject"){i=GO.sieve.lang.subjectexistsnot}else{if(d.data.arg=="From"){i=GO.sieve.lang.fromexistsnot}else{if(d.data.arg=="To"){i=GO.sieve.lang.toexistsnot}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg+" "+GO.sieve.lang.notexists}}}}else{if(d.data.arg=="Subject"){i=GO.sieve.lang.subjectexists}else{if(d.data.arg=="From"){i=GO.sieve.lang.fromexists}else{if(d.data.arg=="To"){i=GO.sieve.lang.toexists}else{i=GO.sieve.lang.custommailheader+" "+d.data.arg+" "+GO.sieve.lang.notexists}}}}break;case"true":i="Alle";break;case"size":if(d.data.type=="under"){i=GO.sieve.lang.sizesmallerthan+" "+d.data.arg}else{i=GO.sieve.lang.sizebiggerthan+" "+d.data.arg}break;default:i=GO.sieve.lang.errorshowtext;break}return i}}]};var c=new Ext.grid.ColumnModel({columns:a.columns});b.store=new GO.data.JsonStore({root:"tests",id:"id",totalProperty:"total",fields:a.fields,remoteSort:true});enableDragDrop:true,b.enableDragDrop=true;b.ddGroup="SieveTestDD";b.cm=c;b.view=new Ext.grid.GridView({autoFill:true,forceFit:true,emptyText:GO.lang.strNoItems});b.sm=new Ext.grid.RowSelectionModel();b.loadMask=true;b.tbar=[{iconCls:"btn-delete",text:GO.lang.cmdDelete,cls:"x-btn-text-icon",handler:function(){this.deleteSelected()},scope:this}];GO.sieve.TestsGrid.superclass.constructor.call(this,b);this.on("render",function(){var d=new Ext.dd.DropTarget(this.getView().mainBody,{ddGroup:"SieveTestDD",copy:false,notifyDrop:this.onNotifyDrop.createDelegate(this)})},this)};Ext.extend(GO.sieve.TestsGrid,GO.grid.GridPanel,{deleteSelected:function(){this.store.remove(this.getSelectionModel().getSelections())},onNotifyDrop:function(h,g,f){var k=this.selModel.getSelections();var d=h.getDragData(g);var j=d.rowIndex;if(j=="undefined"){j=this.store.data.length-1}for(c=0;c<k.length;c++){var b=this.store.getById(k[c].id);if(!this.copy){this.store.remove(this.store.getById(k[c].id))}this.store.insert(j,b)}var a={};for(var c=0;c<this.store.data.items.length;c++){a[this.store.data.items[c].get("id")]=c}}});GO.sieve.cmbFieldStore=new Ext.data.ArrayStore({idIndex:1,fields:["field","value"],data:[[GO.sieve.lang.subject,"Subject"],[GO.sieve.lang.from,"From"],[GO.sieve.lang.to,"To"],[GO.sieve.lang.size,"size"],[GO.sieve.lang.spamflag,"X-Spam-Flag"],[GO.sieve.lang.custom,"custom"]]});GO.sieve.cmbOperatorStore=new Ext.data.ArrayStore({idIndex:1,fields:["field","value"],data:[[GO.sieve.lang.contains,"contains"],[GO.sieve.lang.notcontains,"notcontains"],[GO.sieve.lang.is,"is"],[GO.sieve.lang.notis,"notis"],[GO.sieve.lang.exists,"exists"],[GO.sieve.lang.notexists,"notexists"]]});GO.sieve.cmbActionStore=new Ext.data.ArrayStore({idIndex:1,fields:["field","value"],data:[[GO.sieve.lang.fileinto,"fileinto"],[GO.sieve.lang.copyto,"copyto"],[GO.sieve.lang.redirect,"redirect"],[GO.sieve.lang.redirect_to,"redirect_copy"],[GO.sieve.lang.replyToMessage,"vacation"],[GO.sieve.lang.reject,"reject"],[GO.sieve.lang.discard,"discard"],[GO.sieve.lang.stop,"stop"]]});GO.sieve.cmbUnderOverStore=new Ext.data.ArrayStore({idIndex:1,fields:["field","value"],data:[[GO.sieve.lang.under,"under"],[GO.sieve.lang.over,"over"]]});GO.sieve.ActionGrid=function(b){if(!b){b={}}b.height=180;b.style="margin: 5px;";b.border=true;b.cls="go-grid3-hide-headers";var a={fields:["type","copy","target","days","addresses","reason","text"],header:false,columns:[{header:false,dataIndex:"text",renderer:function(h,e,d,j,g,f){var i="";switch(d.data.type){case"fileinto":if(d.data.copy){i=GO.sieve.lang.copyto+" "+d.data.target}else{i=GO.sieve.lang.fileinto+" "+d.data.target}break;case"redirect":if(d.data.copy){i=GO.sieve.lang.sendcopyto+" "+d.data.target}else{i=GO.sieve.lang.forwardto+" "+d.data.target}break;case"vacation":i=GO.sieve.lang.vacsendevery+" "+d.data.days+" "+GO.sieve.lang.vacdaystoadresses+" "+d.data.addresses+" "+GO.sieve.lang.vacationmessage+" "+d.data.reason;break;case"reject":i=GO.sieve.lang.refusewithmesssage+" "+d.data.target;break;case"discard":i=GO.sieve.lang.discard;break;case"stop":i=GO.sieve.lang.stop;break;default:i=GO.sieve.lang.errorshowtext;break}return i}}]};var c=new Ext.grid.ColumnModel({columns:a.columns});b.store=new GO.data.JsonStore({root:"actions",id:"id",totalProperty:"total",fields:a.fields,remoteSort:true});b.enableDragDrop=true;b.ddGroup="SieveActionDD";b.cm=c;b.view=new Ext.grid.GridView({autoFill:true,forceFit:true,emptyText:GO.lang.strNoItems});b.sm=new Ext.grid.RowSelectionModel();b.loadMask=true;b.tbar=[{iconCls:"btn-delete",text:GO.lang.cmdDelete,cls:"x-btn-text-icon",handler:function(){this.deleteSelected()},scope:this}];GO.sieve.SieveGrid.superclass.constructor.call(this,b);this.on("render",function(){var d=new Ext.dd.DropTarget(this.getView().mainBody,{ddGroup:"SieveActionDD",copy:false,notifyDrop:this.onNotifyDrop.createDelegate(this)})},this)};Ext.extend(GO.sieve.ActionGrid,GO.grid.GridPanel,{deleteSelected:function(){this.store.remove(this.getSelectionModel().getSelections())},onNotifyDrop:function(h,g,f){var k=this.selModel.getSelections();var d=h.getDragData(g);var j=d.rowIndex;if(j=="undefined"){j=this.store.data.length-1}for(c=0;c<k.length;c++){var b=this.store.getById(k[c].id);if(!this.copy){this.store.remove(this.store.getById(k[c].id))}this.store.insert(j,b)}var a={};for(var c=0;c<this.store.data.items.length;c++){a[this.store.data.items[c].get("id")]=c}}});