| 1 |
- MWF.xApplication.Org.Main=new Class({Extends:MWF.xApplication.Common.Main,Implements:[Options,Events],options:{style:"default",name:"Org",icon:"icon.png",width:layout.desktop.size?layout.desktop.size.x*.7:1e3,height:layout.desktop.size?layout.desktop.size.y*.7:700,title:MWF.xApplication.Org.LP.title},onQueryLoad:function(){this.lp=MWF.xApplication.Org.LP;this.restActions=MWF.Actions.get("x_organization_assemble_control")},loadApplication:function(t){this.createNode();this.loadApplicationContent();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)},loadApplicationContent:function(){this.loadStartMenu()},loadStartMenu:function(){this.startMenuNode=new Element("div",{styles:this.css.startMenuNode}).inject(this.node);this.menu=new MWF.xApplication.Org.Menu(this,this.startMenuNode,{onPostLoad:function(){if(this.status){if(this.status.navi!==null){this.menu.doAction(this.menu.startNavis[this.status.navi])}}}.bind(this)});this.addEvent("resize",function(){if(this.menu)this.menu.onResize()}.bind(this))},clearContent:function(){if(this.orgConfiguratorContentNode){if(this.orgConfigurator){this.orgConfigurator.destroy();this.orgConfigurator=null}this.orgConfiguratorContentNode.destroy();this.orgConfiguratorContentNode=null}if(this.identityConfiguratorContentNode){if(this.identityConfigurator)delete this.identityConfigurator;this.identityConfiguratorContentNode.destroy()}if(this.groupConfiguratorContentNode){if(this.groupConfigurator){this.groupConfigurator.destroy();this.groupConfigurator=null}this.groupConfiguratorContentNode.destroy()}if(this.roleConfiguratorContentNode){if(this.roleConfigurator){this.roleConfigurator.destroy();this.roleConfigurator=null}this.roleConfiguratorContentNode.destroy()}if(this.personConfiguratorContentNode){if(this.personConfigurator){this.personConfigurator.destroy();this.personConfigurator=null}this.personConfiguratorContentNode.destroy()}if(this.pingyinArea)this.pingyinArea.empty()},orgConfig:function(){this.clearContent();this.orgConfiguratorContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.loadOrgConfig()},loadOrgConfig:function(){MWF.xDesktop.requireApp("Org","UnitExplorer",function(){this.orgConfigurator=new MWF.xApplication.Org.UnitExplorer(this.orgConfiguratorContentNode,this.restActions);this.orgConfigurator.app=this;this.orgConfigurator.load()}.bind(this))},groupConfig:function(){this.clearContent();this.groupConfiguratorContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.loadGroupConfig()},loadGroupConfig:function(){MWF.xDesktop.requireApp("Org","GroupExplorer",function(){this.groupConfigurator=new MWF.xApplication.Org.GroupExplorer(this.groupConfiguratorContentNode,this.restActions);this.groupConfigurator.app=this;this.groupConfigurator.load()}.bind(this))},roleConfig:function(){this.clearContent();this.roleConfiguratorContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.loadRoleConfig()},loadRoleConfig:function(){MWF.xDesktop.requireApp("Org","RoleExplorer",function(){this.roleConfigurator=new MWF.xApplication.Org.RoleExplorer(this.roleConfiguratorContentNode,this.restActions);this.roleConfigurator.app=this;this.roleConfigurator.load()}.bind(this))},personConfig:function(){this.clearContent();this.personConfiguratorContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.loadPersonConfig()},loadPersonConfig:function(){MWF.xDesktop.requireApp("Org","PersonExplorer",function(){this.personConfigurator=new MWF.xApplication.Org.PersonExplorer(this.personConfiguratorContentNode,this.restActions);this.personConfigurator.app=this;this.personConfigurator.load();debugger}.bind(this))},recordStatus:function(){var t=null;if(this.menu.currentNavi){t=this.menu.startNavis.indexOf(this.menu.currentNavi)}return{navi:t}}});MWF.xApplication.Org.Menu=new Class({Implements:[Options,Events],initialize:function(t,i,e){this.setOptions(e);this.app=t;this.node=$(i);this.currentNavi=null;this.status="start";this.startNavis=[];this.load()},load:function(){var t=MWF.AC.isOrganizationManager()?this.app.path+"startMenu_admin.json":this.app.path+"startMenu.json";MWF.getJSON(t,function(t){t.each(function(t){var i=new Element("div",{styles:this.app.css.startMenuNaviNode,title:t.title});i.store("naviData",t);var e=new Element("div",{styles:this.app.css.startMenuIconNode}).inject(i);e.setStyle("background-image","url("+this.app.path+this.app.options.style+"/icon/"+t.icon+"60.png)");var o=new Element("div",{styles:this.app.css.startMenuTextNode,text:t.title});o.inject(i);i.inject(this.node);this.startNavis.push(i);this.setStartNaviEvent(i,t);this.setNodeCenter(this.node)}.bind(this));this.setStartMenuWidth();this.fireEvent("postLoad")}.bind(this))},setStartNaviEvent:function(t){var i=this;t.addEvents({mouseover:function(){if(i.currentNavi!==this){var t=this.getFirst();this.setStyles(i.app.css.startMenuNaviNode_over);var e=this.retrieve("naviData");t.setStyle("background-image","url("+i.app.path+i.app.options.style+"/icon/"+e.icon+".png)");t.setStyles(i.app.css.startMenuIconNode_over)}},mouseout:function(){var t=this.getFirst();if(i.currentNavi!==this)this.setStyles(i.app.css.startMenuNaviNode);var e=this.retrieve("naviData");t.setStyle("background-image","url("+i.app.path+i.app.options.style+"/icon/"+e.icon+"60.png)");t.setStyles(i.app.css.startMenuIconNode)},mousedown:function(){if(i.currentNavi!==this)this.setStyles(i.app.css.startMenuNaviNode_down)},mouseup:function(){if(i.currentNavi!==this)this.setStyles(i.app.css.startMenuNaviNode_over)},click:function(){i.doAction.apply(i,[this])}})},doAction:function(t){var i=t.retrieve("naviData");var e=i.action;this.startNavis.each(function(t){t.removeEvents("mouseover");t.removeEvents("mouseout");t.removeEvents("mousedown");t.removeEvents("mouseup");t.setStyles(this.app.css.startMenuNaviLeftNode);var i=t.getFirst();var e=t.getLast();var o=t.retrieve("naviData");i.setStyle("background-image","url("+this.app.path+this.app.options.style+"/icon/"+o.icon+"32.png)");i.setStyles(this.app.css.startMenuIconLeftNode);e.setStyles(this.app.css.startMenuTextLeftNode)}.bind(this));t.setStyles(this.app.css.startMenuNaviLeftNode_current);this.currentNavi=t;if(this.status==="start"){this.toNormal();this.status="normal"}if(this.app[e])this.app[e].apply(this.app)},toNormal:function(){debugger;var t=this.app.css.normalStartMenuNode;if(!this.morph){this.morph=new Fx.Morph(this.node,{duration:50,link:"chain"})}this.app.pingyinArea=new Element("div",{styles:this.app.css.startMenuNaviLeftPingyinNode}).inject(this.node,"top");this.morph.start(t).chain(function(){this.node.setStyles(t)}.bind(this))},setNodeCenter:function(t){var i=t.getSize();var e=this.app.node.getSize();var o=e.y/2-i.y/2;var n=e.x/2-i.x/2;if(n<0)n=0;if(o<0)o=0;t.setStyles({left:n,top:o})},getStartMenuNormalSize:function(){var t=this.node.getFirst();var i=t.getComputedSize();var e=t.getStyle("margin-top").toFloat();var o=t.getStyle("margin-bottom").toFloat();var n=i.totalWidth+e+o;var s=t.getStyle("margin-left").toFloat();var r=t.getStyle("margin-right").toFloat();var a=i.totalWidth+s+r;return{width:a,height:n*this.startNavis.length}},setStartMenuWidth:function(){var t=this.node.getFirst();var i=t.getComputedSize();var e=t.getStyle("margin-left").toFloat();var o=t.getStyle("margin-right").toFloat();var n=i.totalWidth+e+o;this.node.setStyle("width",n*this.startNavis.length+"px")},onResize:function(){if(this.status==="start"){this.setNodeCenter(this.node)}}});
|