MWF.SRVID=MWF.xApplication.service.InvokeDesigner=MWF.xApplication.service.InvokeDesigner||{};MWF.SRVID.options={multitask:true,executable:false};MWF.xDesktop.requireApp("service.InvokeDesigner","Invoke",null,false);MWF.require("MWF.xDesktop.UserData",null,false);MWF.xApplication.service.InvokeDesigner.Main=new Class({Extends:MWF.xApplication.Common.Main,Implements:[Options,Events],options:{style:"default",name:"service.InvokeDesigner",icon:"icon.png",title:MWF.SRVID.LP.title,appTitle:MWF.SRVID.LP.title,id:"",actions:null,category:null,serviceData:null},onQueryLoad:function(){if(this.status){this.options.id=this.status.id}if(!this.options.id){this.options.desktopReload=false;this.options.title=this.options.title+"-"+MWF.SRVID.LP.newInvoke}this.actions=MWF.Actions.get("x_program_center");this.lp=MWF.xApplication.service.InvokeDesigner.LP;this.addEvent("queryClose",function(t){if(this.explorer){this.explorer.reload()}}.bind(this))},loadApplication:function(t){this.createNode();if(!this.options.isRefresh){this.maxSize(function(){this.openInvoke()}.bind(this))}else{this.openInvoke()}if(t)t()},createNode:function(){this.content.setStyle("overflow","hidden");this.node=new Element("div",{styles:{width:"100%",height:"100%",overflow:"hidden"}}).inject(this.content)},openInvoke:function(){this.loadNodes();this.loadInvokeListNodes();this.loadContentNode(function(){this.loadProperty();this.resizeNode();this.addEvent("resize",this.resizeNode.bind(this));this.loadInvoke();if(this.toolbarContentNode){this.setScrollBar(this.toolbarContentNode,null,{V:{x:0,y:0},H:{x:0,y:0}});this.setScrollBar(this.propertyDomArea,null,{V:{x:0,y:0},H:{x:0,y:0}})}}.bind(this))},loadNodes:function(){this.invokeListNode=new Element("div",{styles:this.css.invokeListNode}).inject(this.node);this.propertyNode=new Element("div",{styles:this.css.propertyNode}).inject(this.node);this.contentNode=new Element("div",{styles:this.css.contentNode}).inject(this.node)},loadInvokeListNodes:function(){this.invokeListTitleNode=new Element("div",{styles:this.css.invokeListTitleNode,text:MWF.SRVID.LP.invokeLibrary}).inject(this.invokeListNode);this.invokeListResizeNode=new Element("div",{styles:this.css.invokeListResizeNode}).inject(this.invokeListNode);this.invokeListAreaSccrollNode=new Element("div",{styles:this.css.invokeListAreaSccrollNode}).inject(this.invokeListNode);this.invokeListAreaNode=new Element("div",{styles:this.css.invokeListAreaNode}).inject(this.invokeListAreaSccrollNode);this.loadInvokeListResize();this.loadInvokeList()},loadInvokeListResize:function(){this.invokeListResize=new Drag(this.invokeListResizeNode,{snap:1,onStart:function(t,e){var i=Browser.name=="firefox"?e.event.clientX:e.event.x;var o=Browser.name=="firefox"?e.event.clientY:e.event.y;t.store("position",{x:i,y:o});var n=this.invokeListAreaSccrollNode.getSize();t.store("initialWidth",n.x)}.bind(this),onDrag:function(t,e){var i=Browser.name=="firefox"?e.event.clientX:e.event.x;var o=this.content.getSize();var n=t.retrieve("position");var s=t.retrieve("initialWidth").toFloat();var r=i.toFloat()-n.x.toFloat();var a=s+r;if(a>o.x/2)a=o.x/2;if(a<40)a=40;this.contentNode.setStyle("margin-left",a+1);this.invokeListNode.setStyle("width",a)}.bind(this)})},loadInvokeList:function(){this.actions.listInvoke(function(t){t.data.each(function(t){this.createListInvokeItem(t)}.bind(this))}.bind(this),null,false)},createListInvokeItem:function(t,e){var i=this;var o=new Element("div",{styles:this.css.listInvokeItem}).inject(this.invokeListAreaNode,e?"top":"bottom");var n=new Element("div",{styles:this.css.listInvokeItemIcon}).inject(o);var s=new Element("div",{styles:this.css.listInvokeItemText,text:t.name?t.name+" ("+t.alias+")":this.lp.newInvoke}).inject(o);o.store("invoke",t);o.addEvents({dblclick:function(t){i.loadInvokeByData(this,t)},mouseover:function(){if(i.currentListInvokeItem!=this)this.setStyles(i.css.listInvokeItem_over)},mouseout:function(){if(i.currentListInvokeItem!=this)this.setStyles(i.css.listInvokeItem)}});this.listInvokeItemMove(o)},createInvokeListCopy:function(t){var e=t.clone().inject(this.node);e.position({relativeTo:t,position:"upperLeft",edge:"upperLeft"});var i=e.getSize();e.setStyles({width:""+i.x+"px",height:""+i.y+"px","z-index":50001});return e},listDrinvokeer:function(t,e){var i=e.retrieve("markNode");if(!i){var o=e.getSize();i=new Element("div",{styles:this.css.dragListItemMark}).inject(this.node);i.setStyles({width:""+o.x+"px",height:""+o.y+"px",position:"absolute","background-color":"#666","z-index":5e4,opacity:.3});i.position({relativeTo:e,position:"upperLeft",edge:"upperLeft"});var n=i.getStyle("top").toFloat()-1;var s=i.getStyle("left").toFloat()-2;i.setStyles({left:""+s+"px",top:""+n+"px"});e.store("markNode",i)}},listDragLeave:function(t,e){var i=e.retrieve("markNode");if(i)i.destroy();e.eliminate("markNode")},listInvokeItemMove:function(s){var t=s.getFirst();t.addEvent("mousedown",function(t){var e=s.retrieve("invoke");if(e.id!=this.invokeTab.showPage.invoke.data.id){var i=this.createInvokeListCopy(s);var o=[this.designNode,this.propertyDomArea];var n=new Drag.Move(i,{droppables:o,onEnter:function(t,e){this.listDrinvokeer(t,e)}.bind(this),onLeave:function(t,e){this.listDragLeave(t,e)}.bind(this),onDrag:function(t){}.bind(this),onDrop:function(t,e){if(e){this.listDragLeave(t,e);i.destroy()}else{i.destroy()}}.bind(this),onCancel:function(t){i.destroy()}.bind(this)});n.start(t)}}.bind(this))},addIncludeInvoke:function(t){var e=this.invokeTab.showPage.invoke;if(e.data.dependInvokeList.indexOf(t.name)==-1){e.data.dependInvokeList.push(t.name);this.addIncludeToList(t.name)}},addIncludeToList:function(t){this.actions.getInvokeByName(t,function(t){var e=t.data;var i=new Element("div",{styles:this.css.includeInvokeItem}).inject(this.propertyIncludeListArea);var o=new Element("div",{styles:this.css.includeInvokeItemAction}).inject(i);var n=new Element("div",{styles:this.css.includeInvokeItemText}).inject(i);n.set("text",e.name+" ("+e.alias+")");i.store("invoke",e);var s=this;o.addEvent("click",function(){var t=this.getParent();var e=t.retrieve("invoke");if(e){s.invokeTab.showPage.invoke.data.dependInvokeList.erase(e.name)}t.destroy()})}.bind(this),function(){this.invokeTab.showPage.invoke.data.dependInvokeList.erase(t)}.bind(this))},loadInvokeByData:function(t,e){var i=t.retrieve("invoke");var o=true;for(var n=0;no.x/2)a=o.x/2;if(a<40)a=40;this.contentNode.setStyle("margin-right",a+1);this.propertyNode.setStyle("width",a)}.bind(this)})},loadPropertyContentResize:function(){this.propertyContentResize=new Drag(this.propertyContentResizeNode,{snap:1,onStart:function(t,e){var i=Browser.name=="firefox"?e.event.clientX:e.event.x;var o=Browser.name=="firefox"?e.event.clientY:e.event.y;t.store("position",{x:i,y:o});var n=this.propertyDomArea.getSize();t.store("initialHeight",n.y)}.bind(this),onDrag:function(t,e){var i=this.propertyContentNode.getSize();var o=Browser.name=="firefox"?e.event.clientY:e.event.y;var n=t.retrieve("position");var s=o.toFloat()-n.y.toFloat();var r=t.retrieve("initialHeight").toFloat();var a=r+s;if(a<40)a=40;if(a>i.y-40)a=i.y-40;this.propertyDomPercent=a/i.y;this.setPropertyContentResize()}.bind(this)})},setPropertyContentResize:function(){var t=this.propertyContentNode.getSize();this.propertyContentArea.setStyle("height",""+t.y+"px")},resizeNode:function(){if(!this.isMax){var t=this.node.getSize();this.contentNode.setStyle("height",""+t.y+"px");this.propertyNode.setStyle("height",""+t.y+"px");var e=this.contentToolbarNode.getStyle("margin-top").toFloat();var i=this.contentToolbarNode.getStyle("margin-bottom").toFloat();var o=this.contentToolbarNode.getComputedSize();var n=t.y-o.totalHeight-e-i;this.editContentNode.setStyle("height",""+n+"px");if(this.designNode){var s=this.designNode.getStyle("margin-top").toFloat();var r=this.designNode.getStyle("margin-bottom").toFloat();n=t.y-o.totalHeight-e-i-s-r;this.designNode.setStyle("height",""+n+"px")}titleSize=this.propertyTitleNode.getSize();titleMarginTop=this.propertyTitleNode.getStyle("margin-top").toFloat();titleMarginBottom=this.propertyTitleNode.getStyle("margin-bottom").toFloat();titlePaddingTop=this.propertyTitleNode.getStyle("padding-top").toFloat();titlePaddingBottom=this.propertyTitleNode.getStyle("padding-bottom").toFloat();n=titleSize.y+titleMarginTop+titleMarginBottom+titlePaddingTop+titlePaddingBottom;n=t.y-n;this.propertyContentNode.setStyle("height",""+n+"px");this.propertyResizeBar.setStyle("height",""+n+"px");this.setPropertyContentResize();titleSize=this.invokeListTitleNode.getSize();titleMarginTop=this.invokeListTitleNode.getStyle("margin-top").toFloat();titleMarginBottom=this.invokeListTitleNode.getStyle("margin-bottom").toFloat();titlePaddingTop=this.invokeListTitleNode.getStyle("padding-top").toFloat();titlePaddingBottom=this.invokeListTitleNode.getStyle("padding-bottom").toFloat();nodeMarginTop=this.invokeListAreaSccrollNode.getStyle("margin-top").toFloat();nodeMarginBottom=this.invokeListAreaSccrollNode.getStyle("margin-bottom").toFloat();n=titleSize.y+titleMarginTop+titleMarginBottom+titlePaddingTop+titlePaddingBottom+nodeMarginTop+nodeMarginBottom;n=t.y-n;this.invokeListAreaSccrollNode.setStyle("height",""+n+"px");this.invokeListResizeNode.setStyle("height",""+n+"px")}},loadInvoke:function(){debugger;this.getInvokeData(this.options.id,function(t){this.invoke=new MWF.xApplication.service.InvokeDesigner.Invoke(this,t);this.invoke.load();if(this.status){if(this.status.openInvokes){this.status.openInvokes.each(function(t){this.loadInvokeData(t,function(t){var e=true;if(this.status.currentId){if(this.status.currentId!=t.id)e=false}var i=new MWF.xApplication.service.InvokeDesigner.Invoke(this,t,{showTab:e});i.load()}.bind(this),true)}.bind(this))}}if(!this.invokeHelpMenu){MWF.require("MWF.widget.ScriptHelp",function(){this.invokeHelpMenu=new MWF.widget.ScriptHelp($("MWFScriptAutoCode"),this.invoke.editor);this.invokeHelpMenu.getEditor=function(){if(this.invokeTab.showPage)return this.invokeTab.showPage.invoke.editor.editor;return null}.bind(this)}.bind(this))}}.bind(this))},getInvokeData:function(t,e){if(!t){this.loadNewInvokeData(e)}else{this.loadInvokeData(t,e)}},loadNewInvokeData:function(i){MWF.Actions.get("x_cms_assemble_control").getUUID(function(t){var e={name:"",id:t,alias:"",description:"",isNewInvoke:true,text:"",enable:true,remoteAddrRegex:"",lastStartTime:"",lastEndTime:""};this.createListInvokeItem(e,true);if(i)i(e)}.bind(this))},loadInvokeData:function(t,i,o){this.actions.getInvoke(t,function(t){if(t){var e=t.data;if(!o){this.setTitle(this.options.appTitle+"-"+e.name);this.taskitem.setText(this.options.appTitle+"-"+e.name);this.options.appTitle=this.options.appTitle+"-"+e.name}if(i)i(e)}}.bind(this))},saveInvoke:function(){if(this.invokeTab.showPage){var e=this.invokeTab.showPage.invoke;e.save(function(){if(e==this.invoke){var t=e.data.name;this.setTitle(MWF.SRVID.LP.title+"-"+t);this.options.desktopReload=true;this.options.id=e.data.id}}.bind(this))}},saveDictionaryAs:function(){this.dictionary.saveAs()},dictionaryExplode:function(){this.dictionary.explode()},dictionaryImplode:function(){this.dictionary.implode()},recordStatus:function(){if(this.invokeTab){var e=[];this.invokeTab.pages.each(function(t){if(t.invoke.data.id!=this.options.id)e.push(t.invoke.data.id)}.bind(this));var t=this.invokeTab.showPage.invoke.data.id;var i={id:this.options.id,openInvokes:e,currentId:t};return i}return{id:this.options.id}}});