MWF.require("MWF.widget.Common",null,false);MWF.require("MWF.widget.JsonTemplate",null,false);MWF.xApplication.process.ViewDesigner.Property=MWF.FVProperty=new Class({Extends:MWF.widget.Common,Implements:[Options,Events],options:{style:"default",path:"/x_component_process_FormDesigner/property/property.html"},initialize:function(t,e,i,n){this.setOptions(n);this.module=t;this.view=t.view;this.data=t.json;this.data.pid=this.view.json.id+this.data.id;this.htmlPath=this.options.path;this.designer=i;this.propertyNode=e},load:function(){if(this.fireEvent("queryLoad")){MWF.getRequestText(this.htmlPath,function(t,e){this.htmlString=t;this.fireEvent("postLoad")}.bind(this))}this.propertyNode.addEvent("keydown",function(t){t.stopPropagation()})},editProperty:function(t){},getHtmlString:function(t){if(!this.htmlString){MWF.getRequestText(this.htmlPath,function(e,i){this.htmlString=e;if(t)t()}.bind(this))}else{if(t)t()}},show:function(){if(!this.propertyContent){this.getHtmlString(function(){if(this.htmlString){this.JsonTemplate=new MWF.widget.JsonTemplate(this.data,this.htmlString);this.propertyContent=new Element("div",{styles:{overflow:"hidden"}}).inject(this.propertyNode);this.propertyContent.set("html",this.JsonTemplate.load());this.setEditNodeEvent();this.setEditNodeStyles(this.propertyContent);this.loadPropertyTab();this.loadPersonInput();this.loadPersonSelectInput();this.loadViewFilter();this.loadScriptArea();this.loadColumnExportEditor();this.loadJSONArea()}}.bind(this))}else{this.propertyContent.setStyle("display","block")}},hide:function(){if(this.propertyContent)this.propertyContent.setStyle("display","none")},loadJSONArea:function(){var t=this.propertyContent.getElement(".MWFJSONArea");if(t){this.propertyTab.pages.each(function(e){if(e.contentNode==t.parentElement){e.setOptions({onShow:function(){t.empty();MWF.require("MWF.widget.JsonParse",function(){this.json=new MWF.widget.JsonParse(this.module.json,t,null);this.json.load()}.bind(this))}.bind(this)})}}.bind(this))}},loadPropertyTab:function(){var t=this.propertyContent.getElements(".MWFTab");if(t.length){var e=this.propertyContent.getFirst();var i=new Element("div",{styles:this.view.css.propertyTabNode}).inject(e,"before");MWF.require("MWF.widget.Tab",function(){var e=new MWF.widget.Tab(i,{style:"formPropertyList"});e.load();var n=[];t.each(function(t){var i=e.addTab(t,t.get("title"),false);n.push(i);this.setScrollBar(i.contentNodeArea,"small",null,null)}.bind(this));n[0].showTab();this.propertyTab=e;this.designer.resizeNode()}.bind(this),false)}},setEditNodeEvent:function(){var t=this;var e=this.propertyContent.getElements("input");e.each(function(e){var i=e.get("name");if(i&&i.substr(0,1)!="_"){if(this.module){var n=this.module.json.id;e.set("name",n+i)}if(i){var s=e.get("type").toLowerCase();switch(s){case"radio":e.addEvent("change",function(e){t.setRadioValue(i,this)});e.addEvent("blur",function(e){t.setRadioValue(i,this)});e.addEvent("keydown",function(t){t.stopPropagation()});t.setRadioValue(i,e);break;case"checkbox":e.addEvent("change",function(e){t.setCheckboxValue(i,this)});e.addEvent("click",function(e){t.setCheckboxValue(i,this)});e.addEvent("keydown",function(t){t.stopPropagation()});break;default:e.addEvent("change",function(e){t.setValue(i,this.value,this)});e.addEvent("blur",function(e){t.setValue(i,this.value,this)});e.addEvent("keydown",function(e){if(e.code==13){t.setValue(i,this.value,this)}e.stopPropagation()});if(e.hasClass("editTableInputDate")){this.loadCalendar(e)}}}}}.bind(this));var i=this.propertyContent.getElements("select");i.each(function(e){var i=e.get("name");if(i){e.addEvent("change",function(e){t.setSelectValue(i,this)})}});var n=this.propertyContent.getElements("textarea");n.each(function(e){var i=e.get("name");if(i){e.addEvent("change",function(e){t.setValue(i,this.value)});e.addEvent("blur",function(e){t.setValue(i,this.value)});e.addEvent("keydown",function(t){t.stopPropagation()})}}.bind(this))},loadCalendar:function(t){MWF.require("MWF.widget.Calendar",function(){this.calendar=new MWF.widget.Calendar(t,{style:"xform",isTime:false,target:this.module.designer.content,format:"%Y-%m-%d",onComplate:function(){}.bind(this)})}.bind(this))},changeStyle:function(t){this.module.setPropertiesOrStyles(t)},changeData:function(t,e,i){this.module._setEditStyle(t,e,i)},changeJsonDate:function(t,e){if(typeOf(t)!="array")t=[t];var i=this.data;var n=t.length-1;t.each(function(t,e){if(!i[t])i[t]={};if(e逻辑"+"路径"+"比较"+"值";i.set("html",n);var s=new Element("div",{styles:this.module.css.filterAddActionNode}).inject(i.getFirst("th"));s.addEvent("click",function(){this.addFilter(e)}.bind(this));if(this.data.filterList){this.data.filterList.each(function(t){new MWF.xApplication.process.ViewDesigner.Property.Filter(t,e,this)}.bind(this))}}.bind(this))},addFilter:function(t){op={logic:"and",comparison:"",value:""};if(!this.data.filterList)this.data.filterList=[];this.data.filterList.push(op);var e=new MWF.xApplication.process.ViewDesigner.Property.Filter(op,t,this);e.editMode()}});MWF.xApplication.process.ViewDesigner.Property.Filter=new Class({Implements:[Events],initialize:function(t,e,i){this.property=i;this.module=i.module;this.table=e;this.data=t;this.load()},load:function(){this.node=new Element("tr",{styles:this.module.css.filterTableTd}).inject(this.table);var t=""+""+this.data.logic+""+"列值"+""+this.data.comparison+""+""+this.data.value+"";this.node.set("html",t);var e=this.node.getElements("td");this.delActionNode=new Element("div",{styles:this.module.css.filterDelActionNode}).inject(e[0]);this.delActionNode.addEvent("click",function(t){this.delFilter(t);t.stopPropagation()}.bind(this));this.logicNode=e[1];this.comparisonNode=e[3];this.valueNode=e[4];this.node.addEvent("click",function(){if(!this.isEditMode)this.editMode()}.bind(this));this.node.addEvent("blur",function(){if(this.isEditMode)this.readMode()}.bind(this))},delFilter:function(t){var e=this;this.property.designer.confirm("warn",t,MWF.APPVD.LP.notice.deleteFilterTitle,MWF.APPVD.LP.notice.deleteFilter,300,120,function(){e.node.destroy();e.property.data.filterList.erase(e.data);MWF.release(e);this.close()},function(){this.close()},null)},editMode:function(){if(this.property.editModeFilter){if(this.property.editModeFilter!=this)this.property.editModeFilter.readMode()}var t=this.logicNode.getSize().x-9;this.logicNode.empty();var e=new Element("select",{styles:{width:"90%"}}).inject(this.logicNode);var i="";if(this.data.logic=="and"){i=''}else{i=''}e.set("html",i);e.addEvent("change",function(){this.data.logic=e.options[e.selectedIndex].value}.bind(this));t=this.comparisonNode.getSize().x-9;this.comparisonNode.empty();var n=new Element("select",{styles:{width:"90%"}}).inject(this.comparisonNode);i="";switch(this.property.data.type){case"text":i+=""+""+"";break;case"date":i+=""+""+""+"";break;case"number":i+=""+""+""+""+""+"";break;case"boolean":i+=""+"";break}n.set("html",i);n.addEvent("change",function(){this.data.comparison=n.options[n.selectedIndex].value}.bind(this));t=this.valueNode.getSize().x-9;this.valueNode.empty();var s="text";switch(this.property.data.type){case"date":var o=new Element("input",{styles:{width:"90%"},type:"text",value:this.data.value}).inject(this.valueNode);MWF.require("MWF.widget.Calendar",function(){this.calendar=new MWF.widget.Calendar(o,{style:"xform",isTime:true,target:this.property.designer.content,format:"%Y-%m-%d %H:%M:%S"})}.bind(this));break;case"number":var o=new Element("input",{styles:{width:"90%"},type:"number",value:this.data.value}).inject(this.valueNode);break;case"boolean":var o=new Element("select",{styles:{width:""+t+"px"},html:'"}).inject(this.valueNode);break;default:var o=new Element("input",{styles:{width:"90%"},type:"text",value:this.data.value}).inject(this.valueNode)}if(o.tagName.toLowerCase()=="select"){o.addEvent("change",function(){var t=o.options[o.selectedIndex].value;this.data.value=(t="true")?true:false}.bind(this))}else{o.addEvent("change",function(t){this.data.value=o.get("value")}.bind(this));o.addEvent("blur",function(t){this.data.value=o.get("value")}.bind(this));o.addEvent("keydown",function(t){if(t.code==13){this.data.value=o.get("value");this.readMode()}t.stopPropagation()}.bind(this))}this.isEditMode=true;this.property.editModeFilter=this},readMode:function(){if(this.isEditMode){var t=this.logicNode.getElement("select");this.data.logic=t.options[t.selectedIndex].value;var e=this.comparisonNode.getElement("select");this.data.comparison=e.options[e.selectedIndex].value;var i=this.valueNode.getFirst();if(i.tagName.toLowerCase()=="select"){var n=i.options[i.selectedIndex].value;this.data.value=(n="true")?true:false}else{this.data.value=i.get("value")}this.logicNode.empty();this.comparisonNode.empty();this.valueNode.empty();this.logicNode.set("text",this.data.logic);this.comparisonNode.set("text",this.data.comparison);this.valueNode.set("text",this.data.value);this.isEditMode=false;this.property.editModeFilter=null}}});