| 1 |
- MWF.xDesktop.requireApp("process.Xform","$Module",null,false);MWF.require("MWF.widget.Tree",null,false);MWF.xApplication.process.Xform.Sidebar=MWF.APPSidebar=new Class({Extends:MWF.APP$Module,_loadUserInterface:function(){this.node.setStyles(this.form.css.sidebar);this.toolbarNode=this.node.getFirst("div");this.toolbarNode.empty();if(this.form.businessData.task){MWF.require("MWF.widget.Toolbar",function(){var s=[];this.form.businessData.task.routeNameList.each(function(t,o){if(!this.json.defaultTools)this.json.defaultTools=[];var e={type:"MWFToolBarButton",img:"submit.png",title:t,action:"processWork:"+t,text:t,id:"action_processWork",control:"allowProcessing",condition:"",read:false};s.push(e)}.bind(this));this.json.defaultTools=s.concat(this.json.defaultTools);this.toolbarWidget=new MWF.widget.Toolbar(this.toolbarNode,{style:this.json.style},this);debugger;if(this.json.hideSystemTools){if(this.json.tools.length){this.setCustomToolbars(this.json.tools,this.toolbarNode);this.toolbarWidget.load()}else{this.toolbarNode.setStyle("display","none")}}else{if(this.json.defaultTools.length||this.json.tools.length){if(this.json.defaultTools){this.setToolbars(this.json.defaultTools,this.toolbarNode,this.readonly);this.setCustomToolbars(this.json.tools,this.toolbarNode);this.toolbarWidget.load()}else{MWF.getJSON(this.form.path+"toolbars.json",function(t){this.setToolbars(t,this.toolbarNode,this.readonly,true);this.setCustomToolbars(this.json.tools,this.toolbarNode);this.toolbarWidget.load()}.bind(this),false)}}else{this.toolbarNode.setStyle("display","none")}}if(this.toolbarWidget.children.length){this.node.setStyle("display","none");window.setTimeout(this.loadPosition.bind(this),500);var o=this;this.form.app.content.getFirst().addEvent("scroll",function(t){o.loadPosition(this)});this.form.app.addEvent("resize",function(t){o.loadPosition(this)})}else{this.toolbarNode.setStyle("display","none")}}.bind(this))}},loadPosition:function(){this.node.setStyle("display","block");var t=this.node.getParent();while(t&&!t.get("MWFtype"))t=t.getParent();this.sideNode=t||this.form.node;var o=this.form.app.content.getSize();var e=this.sideNode.getSize();var s=this.sideNode.getPosition(this.sideNode.getOffsetParent());var i=this.node.getSize();if(e.y>o.y){var n=o.y/2-i.y/2;if(n<s.y){this.node.setStyle("top",""+s.y+"px")}else if(n>s.y+e.y){var r=s.y+e.y-i.y;this.node.setStyle("top",""+r+"px")}else{this.node.setStyle("top",""+n+"px")}}else{var a=s.y+e.y/2-i.y/2;if(a>o.y){if(s.y+i.y>o.y){this.node.setStyle("top",""+s.y+"px")}else{var r=o.y-i.y;this.node.setStyle("top",""+r+"px")}}else if(a<=0){if(s.y+e.y<i.y){var r=s.y+e.y-i.y;this.node.setStyle("top",""+r+"px")}else{this.node.setStyle("top","45px")}}else{this.node.setStyle("top",""+a+"px")}}var l=e.x+s.x+5;this.node.setStyle("left",""+l+"px");this.node.setStyle("position","absolute");this.node.setStyles({right:"auto",bottom:"auto"})},setCustomToolbars:function(t,n){t.each(function(t){var o=true;if(this.readonly){o=t.readShow}else{o=t.editShow}if(o){o=true;if(t.control){o=this.form.businessData.control[t.control]}if(t.condition){var e=this.form.Macro.exec(t.condition,this);o=!e}if(o){var s=new Element("div",{id:t.id,MWFnodetype:t.type,MWFButtonImage:this.form.path+""+this.form.options.style+"/actionbar/"+t.img,title:t.title,MWFButtonAction:"runCustomAction",MWFButtonText:t.text}).inject(n);if(t.actionScript){s.store("script",t.actionScript)}if(t.sub){var i=n.getLast();this.setCustomToolbars(t.sub,i)}}}}.bind(this))},setToolbars:function(t,n,r,a){debugger;t.each(function(t){var o=true;if(t.control){o=this.form.businessData.control[t.control]}if(!a)if(t.condition){var e=this.form.Macro.exec(t.condition,this);o=!e}if(t.id=="action_processWork"){if(!this.form.businessData.task){o=false}}if(r)if(!t.read)o=false;if(o){var s=new Element("div",{id:t.id,MWFnodetype:t.type,MWFButtonImage:this.form.path+""+this.form.options.style+"/actionbar/"+t.img,title:t.title,MWFButtonAction:t.action,MWFButtonText:t.text}).inject(n);if(t.sub){var i=n.getLast();this.setToolbars(t.sub,i,r,a)}}}.bind(this))},runCustomAction:function(t){var o=t.node.retrieve("script");this.form.Macro.exec(o,this)},saveWork:function(){debugger;this.form.saveWork()},closeWork:function(){this.form.closeWork()},processWork:function(t){opinion=this.form.getOpinion();this.form.submitWork(t,opinion)},resetWork:function(){this.form.resetWork()},retractWork:function(t,o){this.form.retractWork(t,o)},rerouteWork:function(t,o){this.form.rerouteWork(t,o)},deleteWork:function(){this.form.deleteWork()},printWork:function(){this.form.printWork()}});
|