| 1 |
- MWF.xDesktop.requireApp("Organization","Selector.package",null,false);MWF.xApplication.Organization.Main=new Class({Extends:MWF.xApplication.Common.Main,Implements:[Options,Events],options:{style:"default",name:"Organization",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.Organization.LP.title},onQueryLoad:function(){this.lp=MWF.xApplication.Organization.LP},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(t){this.startMenuNode=new Element("div",{styles:this.css.startMenuNode}).inject(this.node);this.menu=new MWF.xApplication.Organization.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)MWF.release(this.orgConfigurator);this.orgConfiguratorContentNode.destroy();this.orgConfiguratorContentNode=null}if(this.identityConfiguratorContentNode){if(this.identityConfigurator)delete this.identityConfigurator;this.identityConfiguratorContentNode.destroy()}if(this.groupConfiguratorContentNode){if(this.groupConfigurator)delete this.groupConfigurator;this.groupConfiguratorContentNode.destroy()}if(this.roleConfiguratorContentNode){if(this.roleConfigurator)delete this.roleConfigurator;this.roleConfiguratorContentNode.destroy()}if(this.personConfiguratorContentNode){if(this.personConfigurator)delete this.personConfigurator;this.personConfiguratorContentNode.destroy()}},orgConfig:function(){this.clearContent();this.orgConfiguratorContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.loadOrgConfig()},loadOrgConfig:function(){MWF.xDesktop.requireApp("Organization","OrgExplorer",function(){MWF.xDesktop.requireApp("Organization","Actions.RestActions",function(){if(!this.restActions)this.restActions=new MWF.xApplication.Organization.Actions.RestActions;this.orgConfigurator=new MWF.xApplication.Organization.OrgExplorer(this.orgConfiguratorContentNode,this.restActions);this.orgConfigurator.app=this;this.orgConfigurator.load()}.bind(this))}.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("Organization","GroupExplorer",function(){MWF.xDesktop.requireApp("Organization","Actions.RestActions",function(){if(!this.restActions)this.restActions=new MWF.xApplication.Organization.Actions.RestActions;this.groupConfigurator=new MWF.xApplication.Organization.GroupExplorer(this.groupConfiguratorContentNode,this.restActions);this.groupConfigurator.app=this;this.groupConfigurator.load()}.bind(this))}.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("Organization","RoleExplorer",function(){MWF.xDesktop.requireApp("Organization","Actions.RestActions",function(){if(!this.restActions)this.restActions=new MWF.xApplication.Organization.Actions.RestActions;this.roleConfigurator=new MWF.xApplication.Organization.RoleExplorer(this.roleConfiguratorContentNode,this.restActions);this.roleConfigurator.app=this;this.roleConfigurator.load()}.bind(this))}.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("Organization","PersonExplorer",function(){MWF.xDesktop.requireApp("Organization","Actions.RestActions",function(){if(!this.restActions)this.restActions=new MWF.xApplication.Organization.Actions.RestActions;this.personConfigurator=new MWF.xApplication.Organization.PersonExplorer(this.personConfiguratorContentNode,this.restActions);this.personConfigurator.app=this;this.personConfigurator.load()}.bind(this))}.bind(this))},recordStatus:function(){var t=null;if(this.menu.currentNavi){t=this.menu.startNavis.indexOf(this.menu.currentNavi)}return{navi:t}}});MWF.xApplication.Organization.Menu=new Class({Implements:[Options,Events],initialize:function(t,i,n){this.setOptions(n);this.app=t;this.node=$(i);this.currentNavi=null;this.status="start";this.startNavis=[];this.load()},load:function(){var t=MWF.AC.isAdministrator()?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});i.store("naviData",t);var n=new Element("div",{styles:this.app.css.startMenuIconNode}).inject(i);n.setStyle("background-image","url("+this.app.path+this.app.options.style+"/icon/"+t.icon+")");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)this.setStyles(i.app.css.startMenuNaviNode_over)},mouseout:function(){if(i.currentNavi!=this)this.setStyles(i.app.css.startMenuNaviNode)},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 n=i.action;if(this.currentNavi)this.currentNavi.setStyles(this.app.css.startMenuNaviNode);t.setStyles(this.app.css.startMenuNaviNode_current);this.currentNavi=t;if(this.app[n])this.app[n].apply(this.app);if(this.status=="start"){this.toNormal();this.status="normal"}},toNormal:function(){var t=this.app.css.normalStartMenuNode;if(!this.morph){this.morph=new Fx.Morph(this.node,{duration:50,link:"chain"})}this.morph.start(t).chain(function(){this.node.setStyles(t);MWF.require("MWF.widget.ScrollBar",function(){new MWF.widget.ScrollBar(this.node,{style:"xApp_ProcessManager_StartMenu",distance:100,friction:4,axis:{x:false,y:true}})}.bind(this))}.bind(this))},setNodeCenter:function(t){var i=t.getSize();var n=this.app.node.getSize();var o=n.y/2-i.y/2;var e=n.x/2-i.x/2;if(e<0)e=0;if(o<0)o=0;t.setStyles({left:e,top:o})},getStartMenuNormalSize:function(){var t=this.node.getFirst();var i=t.getComputedSize();var n=t.getStyle("margin-top").toFloat();var o=t.getStyle("margin-bottom").toFloat();var e=i.totalWidth+n+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:e*this.startNavis.length}},setStartMenuWidth:function(){var t=this.node.getFirst();var i=t.getComputedSize();var n=t.getStyle("margin-left").toFloat();var o=t.getStyle("margin-right").toFloat();var e=i.totalWidth+n+o;this.node.setStyle("width",e*this.startNavis.length+"px")},onResize:function(){if(this.status=="start"){this.setNodeCenter(this.node)}}});
|