| 1 |
- MWF.xApplication.cms=MWF.xApplication.cms||{};MWF.CMSE=MWF.xApplication.cms.Module=MWF.xApplication.cms.Module||{};MWF.require("MWF.widget.O2Identity",null,false);MWF.xApplication.cms.Module.options={multitask:false,executable:true};MWF.xApplication.cms.Module.Main=new Class({Extends:MWF.xApplication.Common.Main,Implements:[Options,Events],options:{style:"default",name:"cms.Module",icon:"icon.png",width:"1200",height:"700",isResize:true,isMax:true,isCategory:false,searchKey:"",title:MWF.xApplication.cms.Module.LP.title},onQueryLoad:function(){this.lp=MWF.xApplication.cms.Module.LP},loadApplication:function(t){this.isAdmin=false;this.restActions=MWF.Actions.get("x_cms_assemble_control");this.createNode();this.loadApplicationContent()},createNode:function(){this.content.setStyle("overflow","hidden");this.node=new Element("div",{styles:this.css.node}).inject(this.content);this.naviContainerNode=new Element("div.naviContainerNode",{styles:this.css.naviContainerNode}).inject(this.node);this.leftTitleNode=new Element("div.leftTitleNode",{styles:this.css.leftTitleNode}).inject(this.naviContainerNode);this.rightContentNode=new Element("div",{styles:this.css.rightContentNode}).inject(this.node);this.titleBar=new Element("div",{styles:this.css.titleBar}).inject(this.rightContentNode)},loadApplicationContent:function(){if(this.options.columnData){this.setTitle(this.options.columnData.appName);this.loadController(function(){this.loadTitle(function(){this.loadMenu()}.bind(this))}.bind(this))}else if(this.status&&this.status.columnId||this.options.columnId){var t=this.options.columnId||this.status.columnId;this.loadColumnData(t,function(){this.loadController(function(){this.loadTitle(function(){this.loadMenu()}.bind(this))}.bind(this))}.bind(this))}else if(this.options.columnAlias){this.restActions.getColumnByAlias(this.options.columnAlias,function(t){this.options.columnData=t.data;this.setTitle(this.options.columnData.appName);this.loadController(function(){this.loadTitle(function(){this.loadMenu()}.bind(this))}.bind(this))}.bind(this))}},loadColumnData:function(t,i){this.restActions.getColumn(t,function(t){this.options.columnData=t.data;this.setTitle(this.options.columnData.appName);if(i)i()}.bind(this))},loadController:function(i){this.restActions.isAppInfoManager(this.options.columnData.id,function(t){this.isAdmin=MWF.AC.isCMSManager()||t.data.value;if(i)i(t)}.bind(this))},loadTitle:function(t){if(this.isAdmin){this.loadImportActionNode();this.loadExportActionNode()}this.loadCreateDocumentActionNode(function(){this.loadTitleIconNode();this.loadTitleContentNode();this.loadSearchNode();if(t)t()}.bind(this))},loadCreateDocumentActionNode:function(i){this.restActions.listCategoryByPublisher(this.options.columnData.id,function(t){if(t.data&&t.data.length){this.createDocumentAction=new Element("div",{styles:this.css.createDocumentAction,text:this.lp.start}).inject(this.titleBar);this.createDocumentAction.addEvents({click:function(t){MWF.xDesktop.requireApp("cms.Index","Newer",null,false);this.creater=new MWF.xApplication.cms.Index.Newer(this.options.columnData,null,this,this.view,{restrictToColumn:true});this.creater.load()}.bind(this),mouseover:function(t){this.createDocumentAction.setStyles(this.css.createDocumentAction_over)}.bind(this),mouseout:function(t){this.createDocumentAction.setStyles(this.css.createDocumentAction)}.bind(this)})}if(i)i()}.bind(this))},loadImportActionNode:function(){this.importAction=new Element("div",{styles:this.css.importAction,text:this.lp.import}).inject(this.titleBar);this.importAction.setStyle("display","none");this.importAction.addEvents({click:function(t){MWF.xDesktop.requireApp("cms.Module","ExcelForm",null,false);var i=this.navi.currentObject.isCategory?this.navi.currentObject.data:this.navi.currentObject.category.data;this.import=new MWF.xApplication.cms.Module.ImportForm({app:this},i,{});this.import.edit()}.bind(this),mouseover:function(t){this.importAction.setStyles(this.css.importAction_over)}.bind(this),mouseout:function(t){this.importAction.setStyles(this.css.importAction)}.bind(this)})},loadExportActionNode:function(){this.exportAction=new Element("div",{styles:this.css.exportAction,text:this.lp.export}).inject(this.titleBar);this.exportAction.setStyle("display","none");this.exportAction.addEvents({click:function(t){MWF.xDesktop.requireApp("cms.Module","ExcelForm",null,false);var i=this.navi.currentObject.isCategory?this.navi.currentObject.data:this.navi.currentObject.category.data;this.export=new MWF.xApplication.cms.Module.ExportForm({app:this},i,{});this.export.edit()}.bind(this),mouseover:function(t){this.exportAction.setStyles(this.css.exportAction_over)}.bind(this),mouseout:function(t){this.exportAction.setStyles(this.css.exportAction)}.bind(this)})},loadTitleIconNode:function(){this.defaultColumnIcon="/x_component_cms_Index/$Main/"+this.options.style+"/icon/column.png";var t=this.iconAreaNode=new Element("div",{styles:this.css.titleIconAreaNode}).inject(this.leftTitleNode);var i=this.iconNode=new Element("img",{styles:this.css.titleIconNode}).inject(t);if(this.options.columnData.appIcon){this.iconNode.set("src","data:image/png;base64,"+this.options.columnData.appIcon+"")}else{this.iconNode.set("src",this.defaultColumnIcon)}i.makeLnk({par:this._getLnkPar()})},_getLnkPar:function(){var t=this.defaultColumnIcon;if(this.options.columnData.appIcon)t="data:image/png;base64,"+this.options.columnData.appIcon;var i="cms.Module"+this.options.columnData.id;return{icon:t,title:this.options.columnData.appName,par:'cms.Module#{"columnId": "'+this.options.columnData.id+'", "appId": "'+i+'"}'}},loadTitleContentNode:function(){this.titleContentNode=new Element("div.titleContentNode",{styles:this.css.titleContentNode}).inject(this.leftTitleNode);this.titleTextNode=new Element("div.titleTextNode",{styles:this.css.titleTextNode,text:this.options.columnData.appName,title:this.options.columnData.appName}).inject(this.titleContentNode);this.titleDescriptionNode=new Element("div.titleDescriptionNode",{styles:this.css.titleDescriptionNode,text:this.options.columnData.description?this.options.columnData.description:this.lp.noDescription,title:this.options.columnData.description?this.options.columnData.description:this.lp.noDescription}).inject(this.titleContentNode)},loadSearchNode:function(){this.searchNode=new Element("div").inject(this.titleBar)},loadMenu:function(t){this.naviNode=new Element("div.naviNode",{styles:this.css.naviNode}).inject(this.naviContainerNode);MWF.require("MWF.widget.ScrollBar",function(){new MWF.widget.ScrollBar(this.naviContainerNode,{style:"xApp_ProcessManager_StartMenu",distance:100,friction:4,axis:{x:false,y:true}})}.bind(this));this.addEvent("resize",function(){this.setNaviSize()}.bind(this));if(this.options.categoryId=="all"){this.options.categoryId="whole"}if(this.status&&this.status.categoryId){this._loadMenu(this.status)}else if(this.options.categoryId&&this.options.categoryId!=""){if(this.options.viewId&&this.options.viewId!=""){this._loadMenu({categoryId:this.options.categoryId,viewId:this.options.viewId})}else{this._loadMenu({categoryId:this.options.categoryId,isCategory:this.options.isCategory,naviIndex:this.options.naviIndex||0})}}else if(this.options.categoryAlias&&this.options.categoryAlias!=""){this.restActions.getCategoryByAlias(this.options.categoryAlias,function(t){this.options.categoryId=t.data.id;if(this.options.viewId&&this.options.viewId!=""){this._loadMenu({categoryId:this.options.categoryId,viewId:this.options.viewId})}else{this._loadMenu({categoryId:this.options.categoryId,isCategory:this.options.isCategory,naviIndex:this.options.naviIndex||0})}}.bind(this))}else{this._loadMenu({categoryId:"whole"})}},_loadMenu:function(t){this.navi=new MWF.xApplication.cms.Module.Navi(this,this.naviNode,this.options.columnData,t);this.setNaviSize()},clearContent:function(){if(this.moduleContent){if(this.view)delete this.view;this.moduleContent.destroy();this.searchNode.empty();this.moduleContent=null}},openView:function(t,i,e,s,n){if(e&&e.type=="queryview"){this.loadQueryView(t,i,e,s,n)}else{this.loadList(t,i,e,s,n)}},loadQueryView:function(t,i,e,s,n){MWF.xDesktop.requireApp("cms.Module","ViewExplorer",function(){this.clearContent();this.moduleContent=new Element("div",{styles:this.css.moduleContent}).inject(this.rightContentNode);this.view=new MWF.xApplication.cms.Module.ViewExplorer(this.moduleContent,this,this.options.columnData,i,e,{isAdmin:this.isAdmin,searchKey:s},this.searchNode);this.view.load()}.bind(this))},loadList:function(t,i,e,s,n){MWF.xDesktop.requireApp("cms.Module","ListExplorer",function(){this.clearContent();this.moduleContent=new Element("div",{styles:this.css.moduleContent}).inject(this.rightContentNode);if(!this.restActions)this.restActions=MWF.Actions.get("x_cms_assemble_control");this.view=new MWF.xApplication.cms.Module.ListExplorer(this.moduleContent,this.restActions,this.options.columnData,i,e,{isAdmin:this.isAdmin,searchKey:s},this.searchNode);this.view.app=this;this.view.load()}.bind(this))},recordStatus:function(){var t=this.navi.currentObject;if(t){var i=t.getCategoryId();if(i){return{columnId:this.options.columnData.id,categoryId:i,isCategory:t.isCategory,viewId:t.data.id}}else{return{columnId:this.options.columnData.id,categoryId:"whole"}}}else{return{columnId:this.options.columnData.id,categoryId:"whole"}}},setNaviSize:function(){var t=this.node.getSize();this.naviContainerNode.setStyle("height",""+t.y+"px")}});MWF.xApplication.cms.Module.Navi=new Class({Implements:[Options,Events],options:{categoryId:"",viewId:"",isCategory:false,navi:-1},initialize:function(t,i,e,s){this.setOptions(s);this.app=t;this.node=$(i);this.columnData=e;this.categoryList=[];this.css=this.app.css;this.load()},load:function(){var t=this;this.allView=new MWF.xApplication.cms.Module.NaviAllView(this,this.node,{});new Element("div",{styles:this.css.viewNaviBottom}).inject(this.node);this.app.restActions.listCategory(this.columnData.id,function(t){t.data.each(function(t){var i=false;var e=new MWF.xApplication.cms.Module.NaviCategory(this,this.node,t,{});this.categoryList.push(e);this.fireEvent("postLoad")}.bind(this))}.bind(this))}});MWF.xApplication.cms.Module.NaviCategory=new Class({Implements:[Options,Events],options:{style:"default"},initialize:function(t,i,e,s){this.setOptions(s);this.navi=t;this.app=t.app;this.container=$(i);this.data=e;this.css=this.app.css;this.load()},load:function(){var t=this;this.isCategory=true;this.isCurrent=false;this.isExpended=false;this.hasSub=false;this.naviViewList=[];if(this.navi.options.categoryId==this.data.id&&this.navi.options.isCategory){this.isCurrent=true}this.reveal=this.getRevealData();this.node=new Element("div.categoryNaviNode",{styles:this.css.categoryNaviNode}).inject(this.container);this.expendNode=new Element("div.expendNode").inject(this.node);this.setExpendNodeStyle();if(this.hasSub){this.expendNode.addEvent("click",function(t){this.triggerExpend();t.stopPropagation()}.bind(this))}this.textNode=new Element("div.categoryNaviTextNode",{styles:this.css.categoryNaviTextNode,text:this.data.name}).inject(this.node);this.node.addEvents({mouseover:function(){if(!t.isCurrent)this.setStyles(t.app.css.categoryNaviNode_over)},mouseout:function(){if(!t.isCurrent)this.setStyles(t.app.css.categoryNaviNode)},click:function(){t.setCurrent(this)}});this.listNode=new Element("div.viewNaviListNode",{styles:this.css.viewNaviListNode}).inject(this.container);this.loadListContent();if(this.isCurrent){this.setCurrent()}},getRevealData:function(){var t=this.data.extContent;if(t){this.extContent=JSON.parse(t)}if(!this.extContent||!this.extContent.reveal||this.extContent.reveal.length==0){this.extContent={reveal:[]};this.app.restActions.listViewByCategory(this.data.id,function(t){(t.data||[]).each(function(t){var i={type:"list",name:t.name,showName:t.name,id:t.id,alias:t.alias,appId:t.appId,formId:t.formId,formName:t.formName};this.extContent.reveal.push(i)}.bind(this))}.bind(this),null,false)}this.extContent.reveal.each(function(t){if(this.data.defaultViewName&&t.id==this.data.defaultViewName){this.defaultRevealData=t}else{this.isExpended=true;this.hasSub=true}}.bind(this));if(!this.extContent||!this.extContent.reveal||this.extContent.reveal.length==0){this.extContent={reveal:[{id:"defaultList",showName:"系统列表",name:"系统列表"}]}}this.revealData=this.extContent.reveal;if(!this.defaultRevealData){this.defaultRevealData={id:"defaultList",showName:"系统列表",name:"系统列表"}}},setExpendNodeStyle:function(){var t;if(this.hasSub){if(this.isExpended){if(this.isCurrent){t=this.css.categoryExpendNode_selected}else{t=this.css.categoryExpendNode}}else{if(this.isCurrent){t=this.css.categoryCollapseNode_selected}else{t=this.css.categoryCollapseNode}}}else{t=this.css.emptyExpendNode}this.expendNode.setStyles(t)},triggerExpend:function(){if(this.hasSub){if(this.isExpended){this.isExpended=false;this.listNode.setStyle("display","none")}else{this.isExpended=true;this.listNode.setStyle("display","")}this.setExpendNodeStyle()}},setCurrent:function(){if(this.navi.currentObject){this.navi.currentObject.cancelCurrent()}this.node.setStyles(this.css.categoryNaviNode_selected);if(this.hasSub){if(this.isExpended){this.expendNode.setStyles(this.css.categoryExpendNode_selected)}else{this.expendNode.setStyles(this.css.categoryCollapseNode_selected)}}this.isCurrent=true;this.navi.currentObject=this;var t=this.app.importAction;if(t){t.setStyle("display",this.data.importViewId&&this.app.isAdmin?"":"none")}t=this.app.exportAction;if(t){t.setStyle("display",this.data.importViewId&&this.app.isAdmin?"":"none")}this.loadView()},cancelCurrent:function(){this.isCurrent=false;this.node.setStyles(this.css.categoryNaviNode);if(this.hasSub){if(this.isExpended){this.expendNode.setStyles(this.css.categoryExpendNode)}else{this.expendNode.setStyles(this.css.categoryCollapseNode)}}},loadView:function(t){this.app.openView(this,this.data,this.viewData||this.defaultRevealData,t||"",this)},loadListContent:function(){this.revealData.each(function(t,i){if(t.id!=this.defaultRevealData.id){var e=new MWF.xApplication.cms.Module.NaviView(this.navi,this,this.listNode,t,{style:this.options.style,index:i});this.naviViewList.push(e)}}.bind(this));new Element("div",{styles:this.css.viewNaviSepartorNode}).inject(this.listNode)},getCategoryId:function(){return this.data.id}});MWF.xApplication.cms.Module.NaviView=new Class({Implements:[Options,Events],options:{style:"default",index:0},initialize:function(t,i,e,s,n){this.setOptions(n);this.navi=t;this.category=i;this.app=t.app;this.data=s;this.container=$(e);this.css=this.app.css;this.load()},load:function(){this.isDefault=this.data.id=="defaultList";this.isCurrent=false;this.isCategory=false;if(this.navi.options.categoryId==this.category.data.id&&!this.navi.options.isCategory){if(this.navi.options.viewId=="defaultList"&&this.isDefault){this.isCurrent=true}else if(this.navi.options.viewId==this.data.id){this.isCurrent=true}else if(this.navi.options.naviIndex==this.options.index){this.isCurrent=true}}var i=this;this.node=new Element("div.viewNaviNode",{styles:this.css.viewNaviNode,text:this.isDefault?this.app.lp.defaultView:this.data.showName}).inject(this.container);this.node.addEvents({mouseover:function(){if(!i.isCurrent)this.setStyles(i.css.viewNaviNode_over)},mouseout:function(){if(!i.isCurrent)this.setStyles(i.css.viewNaviNode)},click:function(t){i.setCurrent()}});if(this.isCurrent){this.setCurrent()}},setCurrent:function(){if(this.navi.currentObject){this.navi.currentObject.cancelCurrent()}this.node.setStyles(this.css.viewNaviNode_selected);this.isCurrent=true;this.navi.currentObject=this;var t=this.app.importAction;if(t){t.setStyle("display",this.category.data.importViewId&&this.app.isAdmin?"":"none")}t=this.app.exportAction;if(t){t.setStyle("display",this.category.data.importViewId&&this.app.isAdmin?"":"none")}this.loadView()},cancelCurrent:function(){this.isCurrent=false;this.node.setStyles(this.css.viewNaviNode)},getCategoryId:function(){return this.category.data.id},loadView:function(t){this.app.openView(this,this.category.data,this.data,t||"",this)}});MWF.xApplication.cms.Module.NaviAllView=new Class({Implements:[Options,Events],options:{style:"default"},initialize:function(t,i,e){this.setOptions(e);this.navi=t;this.app=t.app;this.container=$(i);this.css=this.app.css;this.data={isAll:true,id:"defaultList"};this.load()},load:function(){var i=this;this.isDefault=true;this.isAll=true;this.isCurrent=false;this.isCategory=false;if(this.navi.options.categoryId=="whole"){this.isCurrent=true}this.listNode=new Element("div.viewNaviListNode_all",{styles:this.css.viewNaviListNode_all}).inject(this.container);this.node=new Element("div.viewNaviNode_all",{styles:this.css.viewNaviNode_all,text:this.app.lp.allDocument}).inject(this.listNode);this.node.addEvents({mouseover:function(){if(!i.isCurrent)this.setStyles(i.css.viewNaviNode_all_over)},mouseout:function(){if(!i.isCurrent)this.setStyles(i.css.viewNaviNode_all)},click:function(t){i.setCurrent()}});new Element("div",{styles:this.css.viewNaviSepartorNode}).inject(this.listNode);if(this.isCurrent){this.setCurrent()}},setCurrent:function(){if(this.navi.currentObject){this.navi.currentObject.cancelCurrent()}this.node.setStyles(this.css.viewNaviNode_all_selected);this.isCurrent=true;this.navi.currentObject=this;var t=this.app.importAction;if(t){t.setStyle("display","none")}var t=this.app.exportAction;if(t){t.setStyle("display","none")}this.loadView()},cancelCurrent:function(){this.isCurrent=false;this.node.setStyles(this.css.viewNaviNode_all)},getCategoryId:function(){return null},loadView:function(t){this.app.openView(this,null,this.data,t||"",this)}});
|