| 1 |
- MWF.xApplication.cms.ColumnManager=MWF.xApplication.cms.ColumnManager||{};MWF.xApplication.cms.ColumnManager.PermissionSetting=new Class({Implements:[Options],options:{objectId:"",objectType:"APPINFO",permission:"VIEW"},initialize:function(t,i,e,s){this.app=t;this.node=$(e);this.lp=i;this.setOptions(s);this.data=[];this.personList=[];this.unitList=[]},load:function(){this.listData(function(t){t.data=t.data||[];this.data=t.data;t.data.each(function(t){if(t.usedObjectType=="USER"){this.personList.push(t.usedObjectName)}else if(t.usedObjectType=="UNIT"){this.unitList.push(t.usedObjectName)}}.bind(this));this.createNode()}.bind(this))},createNode:function(){if(!this.personActions)this.personActions=new MWF.xAction.org.express.RestActions;this.titleNode=new Element("div.availableTitleNode",{styles:this.app.css.availableTitleNode,text:this.lp.title}).inject(this.node);this.contentNode=new Element("div",{styles:{overflow:"hidden"}}).inject(this.node);this.itemsContentNode=new Element("div.availableItemsContentNode",{styles:this.app.css.availableItemsContentNode}).inject(this.contentNode);this.actionAreaNode=new Element("div",{styles:{overflow:"hidden"}}).inject(this.node);var t=new Element("div.selectButtonStyle",{styles:this.app.css.selectButtonStyle,text:this.lp.setPerson}).inject(this.actionAreaNode);t.addEvent("click",function(){this.changeIdentitys()}.bind(this));var i=new Element("div.selectButtonStyle",{styles:this.app.css.selectButtonStyle,text:this.lp.setUnit}).inject(this.actionAreaNode);i.addEvent("click",function(){this.changeUnit()}.bind(this));this.setItems()},setItems:function(){if(this.personList){this.personList.each(function(t){if(t)new MWF.widget.O2Person({name:t},this.itemsContentNode,{style:"application"})}.bind(this))}if(this.unitList){this.unitList.each(function(t){if(t)new MWF.widget.O2Unit({name:t},this.itemsContentNode,{style:"application"})}.bind(this))}},changeIdentitys:function(){var t={type:"person",title:this.lp.setPerson,values:this.personList||[],onComplete:function(t){var n=[];t.each(function(t){n.push(t.data.distinguishedName)}.bind(this));n.each(function(t){if(!this.personList.contains(t)){var i={objectType:this.options.objectType,objectId:this.options.objectId,usedObjectType:"USER",usedObjectCode:t,usedObjectName:t,permission:this.options.permission};this.saveData(i,function(t){i.id=t.data.id;this.data.push(i)}.bind(this),null,false)}}.bind(this));this.personList.each(function(i){if(!n.contains(i)){var e=null;var s="";this.data.each(function(t){if(t.usedObjectName==i){e=t;s=t.id}}.bind(this));this.removeData(s,function(t){this.data.erase(e)}.bind(this))}}.bind(this));this.personList=n;this.itemsContentNode.empty();this.setItems();this.app.notice(this.lp.setIdentitySuccess,"success")}.bind(this)};var i=new MWF.O2Selector(this.app.content,t)},changeUnit:function(){var t={type:"unit",title:this.lp.setUnit,values:this.unitList||[],onComplete:function(t){var n=[];t.each(function(t){n.push(t.data.distinguishedName)}.bind(this));n.each(function(t){if(!this.unitList.contains(t)){var i={objectType:this.options.objectType,objectId:this.options.objectId,usedObjectType:"UNIT",usedObjectCode:t,usedObjectName:t,permission:this.options.permission};this.saveData(i,function(t){i.id=t.data.id;this.data.push(i)}.bind(this))}}.bind(this));this.unitList.each(function(i){if(!n.contains(i)){var e=null;var s="";this.data.each(function(t){if(t.usedObjectName==i){e=t;s=t.id}}.bind(this));this.removeData(s,function(t){this.data.erase(e)}.bind(this))}}.bind(this));this.unitList=n;this.itemsContentNode.empty();this.setItems();this.app.notice(this.lp.setUnitSuccess,"success")}.bind(this)};var i=new MWF.O2Selector(this.app.content,t)},listData:function(i){this.app.restActions.listColumnPermission(this.options.objectId,function(t){if(i)i(t)}.bind(this),null,false)},removeData:function(t,i){this.app.restActions.removePermission(t,function(t){if(i)i(t)}.bind(this),null,false)},saveData:function(t,i){this.app.restActions.savePermission(t,function(t){if(i)i(t)}.bind(this),null,false)}});
|