Person.min.js 25 KB

1
  1. MWF.xApplication.Selector=MWF.xApplication.Selector||{};MWF.xDesktop.requireApp("Selector","lp."+MWF.language,null,false);MWF.xApplication.Selector.Person=new Class({Extends:MWF.widget.Common,Implements:[Options,Events],options:{style:"default",count:0,title:MWF.xApplication.Selector.LP.selectPerson,groups:[],roles:[],values:[],zIndex:1e3,expand:true},initialize:function(e,t){this.setOptions(t);this.path="/x_component_Selector/$Selector/";this.cssPath="/x_component_Selector/$Selector/"+this.options.style+"/css.wcss";this._loadCss(true);this.container=$(e);this.orgAction=MWF.Actions.get("x_organization_assemble_control");this.processAction=MWF.Actions.get("x_processplatform_assemble_surface");this.designerAction=MWF.Actions.get("x_processplatform_assemble_designer");this.cmsAction=MWF.Actions.get("x_cms_assemble_control");this.queryAction=MWF.Actions.get("x_query_assemble_designer");this.lastPeople="";this.pageCount="13";this.selectedItems=[];this.items=[]},load:function(){if(layout.mobile){this.loadMobile()}else{this.loadPc()}this.fireEvent("load")},loadMobile:function(){this.container.mask({destroyOnHide:true,style:this.css.maskNode});this.node=new Element("div",{styles:this.css.containerNodeMobile});this.node.setStyle("z-index",this.options.zIndex.toInt()+1);this.titleNode=new Element("div",{styles:this.css.titleNodeMobile}).inject(this.node);this.titleCancelActionNode=new Element("div",{styles:this.css.titleCancelActionNodeMobile,text:MWF.SelectorLP.back}).inject(this.titleNode);this.titleOkActionNode=new Element("div",{styles:this.css.titleOkActionNodeMobile,text:MWF.SelectorLP.ok}).inject(this.titleNode);this.titleTextNode=new Element("div",{styles:this.css.titleTextNodeMobile,text:this.options.title}).inject(this.titleNode);this.contentNode=new Element("div",{styles:this.css.contentNode}).inject(this.node);var e=this.container.getSize();var t=e.y-40;this.contentNode.setStyle("height",""+t+"px");this.loadContent();this.node.inject(this.container);this.node.setStyles({top:"0px",left:"0px"});this.setEvent()},setMaskResize:function(){var t=this.container.getSize();this.maskInterval=window.setInterval(function(){var e=this.container.getSize();if(t.x!==e.x||t.y!==e.y){this.mask.position();this.mask.resize();t.x=e.x;t.y=e.y}}.bind(this),66)},loadPc:function(){this.css.maskNode["z-index"]=this.options.zIndex;var e=this.container.getPosition(this.container.getOffsetParent());this.mask=new Mask(this.container,{destroyOnHide:true,style:this.css.maskNode,useIframeShim:true,iframeShimOptions:{browsers:true},onShow:function(){this.shim.shim.setStyles({opacity:0,top:""+e.y+"px",left:""+e.x+"px"})}});this.mask.show();this.setMaskResize();this.node=new Element("div",{styles:this.options.count.toInt()===1?this.css.containerNodeSingle:this.css.containerNode,events:{click:function(e){e.stopPropagation()},mousedown:function(e){e.stopPropagation()},mouseover:function(e){e.stopPropagation()},mouseout:function(e){e.stopPropagation()},keydown:function(e){e.stopPropagation()}}});this.node.setStyle("z-index",this.options.zIndex.toInt()+1);this.titleNode=new Element("div",{styles:this.css.titleNode}).inject(this.node);this.titleActionNode=new Element("div",{styles:this.css.titleActionNode}).inject(this.titleNode);this.titleTextNode=new Element("div",{styles:this.css.titleTextNode,text:this.options.title}).inject(this.titleNode);this.contentNode=new Element("div",{styles:this.css.contentNode}).inject(this.node);this.loadContent();this.actionNode=new Element("div",{styles:this.css.actionNode}).inject(this.node);if(this.options.count.toInt()===1)this.actionNode.setStyle("text-align","center");this.loadAction();this.node.inject(this.container);this.node.position({relativeTo:this.container,position:"center",edge:"center"});var t=this.container.getSize();var s=this.node.getSize();this.node.makeDraggable({handle:this.titleNode,limit:{x:[0,t.x-s.x],y:[0,t.y-s.y]}});this.setEvent()},setEvent:function(){if(this.titleActionNode){this.titleActionNode.addEvent("click",function(){this.fireEvent("cancel");this.close()}.bind(this))}if(this.titleCancelActionNode){this.titleCancelActionNode.addEvent("click",function(){this.fireEvent("cancel");this.close()}.bind(this))}if(this.titleOkActionNode){this.titleOkActionNode.addEvent("click",function(){this.fireEvent("complete",[this.selectedItems]);this.close()}.bind(this))}},close:function(){this.fireEvent("close");this.node.destroy();this.container.unmask();if(this.maskInterval){window.clearInterval(this.maskInterval);this.maskInterval=null}MWF.release(this);delete this},loadAction:function(){this.okActionNode=new Element("button",{styles:this.css.okActionNode,text:MWF.SelectorLP.ok}).inject(this.actionNode);this.cancelActionNode=new Element("button",{styles:this.css.cancelActionNode,text:MWF.SelectorLP.cancel}).inject(this.actionNode);this.okActionNode.addEvent("click",function(){this.fireEvent("complete",[this.selectedItems]);this.close()}.bind(this));this.cancelActionNode.addEvent("click",function(){this.fireEvent("cancel");this.close()}.bind(this))},loadContent:function(e){if(e)this.contentNode=e;if(layout.mobile){if(this.options.count.toInt()!==1)this.loadSelectedNodeMobile();this.loadSelectNodeMobile()}else{if(this.options.count.toInt()!==1)this.loadSelectedNode();this.loadSelectNode()}},loadSelectNodeMobile:function(){this.selectNode=new Element("div",{styles:this.css.selectNodeMobile}).inject(this.contentNode);var e=this.container.getSize();var t=e.y-40-20-6;this.selectNode.setStyle("height",""+t+"px");this.searchInputDiv=new Element("div",{styles:this.css.searchInputDiv}).inject(this.selectNode);this.searchInput=new Element("input",{styles:this.options.count.toInt()===1?this.css.searchInputSingle:this.css.searchInput,type:"text"}).inject(this.searchInputDiv);var s=e.x-20-18;this.searchInput.setStyle("width",""+s+"px");this.searchInput.setStyle("height","20px");this.initSearchInput();this.letterAreaNode=new Element("div",{styles:this.css.letterAreaMobileNode}).inject(this.selectNode);s=e.x-18;this.letterAreaNode.setStyle("width",""+s+"px");this.loadLetters();this.itemAreaScrollNode=new Element("div",{styles:this.css.itemAreaScrollNode}).inject(this.selectNode);t=e.y-40-20-78;this.itemAreaScrollNode.setStyle("height",""+t+"px");this.itemAreaScrollNode.setStyle("overflow","auto");this.itemAreaNode=new Element("div",{styles:this.css.itemAreaNode}).inject(this.itemAreaScrollNode);this.itemSearchAreaNode=new Element("div",{styles:this.css.itemAreaNode}).inject(this.itemAreaScrollNode);this.itemSearchAreaNode.setStyle("display","none");this.initLoadSelectItems();this.checkLoadSelectItems()},checkLoadSelectItems:function(){if(!this.options.groups.length&&!this.options.roles.length){this.loadSelectItems()}else{this.loadSelectItemsByCondition()}},loadSelectNode:function(){this.selectNode=new Element("div",{styles:this.options.count.toInt()===1?this.css.selectNodeSingle:this.css.selectNode}).inject(this.contentNode);this.searchInputDiv=new Element("div",{styles:this.css.searchInputDiv}).inject(this.selectNode);this.searchInput=new Element("input",{styles:this.options.count.toInt()===1?this.css.searchInputSingle:this.css.searchInput,type:"text"}).inject(this.searchInputDiv);this.initSearchInput();this.letterAreaNode=new Element("div",{styles:this.css.letterAreaNode}).inject(this.selectNode);this.loadLetters();this.itemAreaScrollNode=new Element("div",{styles:this.css.itemAreaScrollNode}).inject(this.selectNode);this.itemAreaNode=new Element("div",{styles:this.css.itemAreaNode}).inject(this.itemAreaScrollNode);this.itemSearchAreaNode=new Element("div",{styles:this.css.itemAreaNode}).inject(this.itemAreaScrollNode);this.itemSearchAreaNode.setStyle("display","none");MWF.require("MWF.widget.ScrollBar",function(){var t=this;new MWF.widget.ScrollBar(this.itemAreaScrollNode,{style:"xApp_Organization_Explorer",where:"before",distance:30,friction:4,axis:{x:false,y:true},onScroll:function(e){t._scrollEvent(e)}})}.bind(this));this.initLoadSelectItems();this.checkLoadSelectItems()},initSearchInput:function(){this.searchInput.addEvents({keydown:function(e){var t=this.searchInput.retrieve("searchTimer",null);if(t){window.clearTimeout(t);this.searchInput.eliminate("searchTimer")}t=window.setTimeout(function(){this.search()}.bind(this),800);this.searchInput.store("searchTimer",t)}.bind(this),change:function(e){var t=this.searchInput.get("value");if(!t)this.initSearchArea(false)}.bind(this),blur:function(){var e=this.searchInput.get("value");if(!e)this.initSearchArea(false)}.bind(this)})},initSearchArea:function(e){if(e){this.itemSearchAreaNode.empty();this.itemAreaNode.setStyle("display","none");this.itemSearchAreaNode.setStyle("display","block")}else{this.itemAreaNode.setStyle("display","block");this.itemSearchAreaNode.setStyle("display","none")}},search:function(){if(!this.options.groups.length&&!this.options.roles.length){var e=this.searchInput.get("value");if(e){this._listItemByKey(function(e){this.initSearchArea(true);e.data.each(function(e){this._newItemSearch(e,this,this.itemSearchAreaNode)}.bind(this))}.bind(this),null,e)}else{this.initSearchArea(false)}}else{var e=this.searchInput.get("value");if(e){this.initSearchArea(true);this.searchInItems(e)}else{this.initSearchArea(false)}}},searchInItems:function(e){this.createItemsSearchData(function(){var s=e.toLowerCase();var i=[];this.itemsSearchData.each(function(e){var t=e.text+"#"+e.pinyin+"#"+e.firstPY;if(t.indexOf(s)!==-1){if(i.indexOf(e.data.distinguishedName)===-1){this._newItem(e.data,this,this.itemSearchAreaNode);i.push(e.data.distinguishedName)}}}.bind(this));delete i}.bind(this))},createItemsSearchData:function(e){if(!this.itemsSearchData){this.itemsSearchData=[];MWF.require("MWF.widget.PinYin",function(){var n=[];this.items.each(function(e){if(n.indexOf(e.data.distinguishedName)==-1){var t=e._getShowName().toLowerCase();var s=t.toPY().toLowerCase();var i=t.toPYFirst().toLowerCase();this.itemsSearchData.push({text:t,pinyin:s,firstPY:i,data:e.data});n.push(e.data.distinguishedName)}}.bind(this));delete n;if(e)e()}.bind(this))}else{if(e)e()}},loadSelectedNode:function(){this.selectedContainerNode=new Element("div",{styles:this.css.selectedContainerNode}).inject(this.contentNode);this.selectedScrollNode=new Element("div",{styles:this.css.selectedScrollNode}).inject(this.selectedContainerNode);this.selectedNode=new Element("div",{styles:this.css.selectedNode}).inject(this.selectedScrollNode);this.setSelectedItem();MWF.require("MWF.widget.ScrollBar",function(){var e=this;new MWF.widget.ScrollBar(this.selectedScrollNode,{style:"xApp_Organization_Explorer",where:"before",distance:100,friction:4,axis:{x:false,y:true}})}.bind(this))},loadSelectedNodeMobile:function(){this.selectedScrollNode=new Element("div",{styles:this.css.selectedScrollNode}).inject(this.contentNode);this.selectedNode=new Element("div",{styles:this.css.selectedNode}).inject(this.selectedScrollNode);this.setSelectedItem();MWF.require("MWF.widget.ScrollBar",function(){var e=this;new MWF.widget.ScrollBar(this.selectedScrollNode,{style:"xApp_Organization_Explorer",where:"before",distance:100,friction:4,axis:{x:false,y:true}})}.bind(this));this.selectedScrollNode.setStyle("display","none")},setSelectedItem:function(){if(this.options.values.length){this.options.values.each(function(e,t){if(typeOf(e)==="object"){this.selectedItems.push(this._newItemSelected(e,this,null))}else{this._getItem(function(e){this.options.values[t]=e.data;this.selectedItems.push(this._newItemSelected(e.data,this,null))}.bind(this),null,e,false)}}.bind(this))}},loadLetters:function(){var s=this;letters=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];if(layout.mobile){var e=this.container.getSize();var t=layout.mobile?(e.x-18)/13:(e.x-20-4-18)/13;this.css.letterNode.width=""+t+"px";this.css.letterNode_over.width=""+t+"px"}letters.each(function(e){var t=new Element("div",{styles:this.css.letterNode,text:e}).inject(this.letterAreaNode);if(layout.mobile){t.addEvents({click:function(){s.listPersonByPinyin(this)}})}else{t.addEvents({mouseover:function(e){e.target.setStyles(this.css.letterNode_over);var t=new Element("div",{styles:this.css.letterShowNode,text:e.target.get("text")}).inject(this.selectNode);t.position({relativeTo:this.itemAreaScrollNode,position:"center",edge:"center"});e.target.store("showNode",t)}.bind(this),mouseout:function(e){var t=e.target.retrieve("showNode");t.destroy();e.target.setStyles(this.css.letterNode)}.bind(this),click:function(){s.listPersonByPinyin(this)}})}}.bind(this))},listPersonByPinyin:function(e){this.searchInput.focus();var t=this.searchInput.get("value");t=t+e.get("text");this.searchInput.set("value",t);if(!this.options.groups.length&&!this.options.roles.length){if(t){this._listItemByPinyin(function(e){this.initSearchArea(true);e.data.each(function(e){this._newItemSearch(e,this,this.itemSearchAreaNode)}.bind(this))}.bind(this),null,t.toLowerCase())}}else{if(t){this.initSearchArea(true);this.searchInItems(t)}else{this.initSearchArea(false)}}},initLoadSelectItems:function(){this.loaddingItems=false;this.isItemLoaded=false;this.loadItemsQueue=0;this.initSearchArea(false)},loadSelectItems:function(e){if(!this.isItemLoaded){if(!this.loaddingItems){this.loaddingItems=true;var t=20;this._listItemNext(this.getLastLoadedItemId(),t,function(e){if(e.data.length){e.data.each(function(e){var t=this._newItem(e,this,this.itemAreaNode);this.items.push(t)}.bind(this));this.loaddingItems=false;if(e.data.length<t){this.isItemLoaded=true}else{if(this.loadItemsQueue>0){this.loadItemsQueue--;this.loadSelectItems()}}}else{this.isItemLoaded=true;this.loaddingItems=false}}.bind(this))}else{if(e)this.loadItemsQueue++}}},getLastLoadedItemId:function(){return this.items.length?this.items[this.items.length-1].data.distinguishedName:"(0)"},loadSelectItemsByCondition:function(){this.options.groups.each(function(e){this.orgAction.listGroupByKey(function(e){if(e.data.length){var t=e.data[0];var s=this._newItemCategory("ItemGroupCategory",t,this,this.itemAreaNode);this._getChildrenItemIds(t).each(function(e){this._getItem(function(e){var t=this._newItem(e.data,this,s.children);this.items.push(t)}.bind(this),null,e)}.bind(this))}}.bind(this),null,e)}.bind(this));this.options.roles.each(function(e){this.orgAction.listRoleByKey(function(e){if(e.data.length){var t=e.data[0];var s=this._newItemCategory("ItemRoleCategory",t,this,this.itemAreaNode);this._getChildrenItemIds(t).each(function(e){this._getItem(function(e){var t=this._newItem(e.data,this,s.children);this.items.push(t)}.bind(this),null,e)}.bind(this))}}.bind(this),null,e)}.bind(this))},_getChildrenItemIds:function(e){return e.personList},_newItemCategory:function(e,t,s,i){return new MWF.xApplication.Selector.Person[e](t,s,i)},_listItemByKey:function(t,e,s){this.orgAction.listPersonByKey(function(e){if(t)t.apply(this,[e])}.bind(this),e,s)},_getItem:function(t,e,s,i){this.orgAction.getPerson(function(e){if(t)t.apply(this,[e])}.bind(this),e,typeOf(s)==="string"?s:s.distinguishedName,i)},_newItemSelected:function(e,t,s){return new MWF.xApplication.Selector.Person.ItemSelected(e,t,s)},_listItemByPinyin:function(t,e,s){this.orgAction.listPersonByPinyin(function(e){if(t)t.apply(this,[e])}.bind(this),e,s)},_newItem:function(e,t,s){return new MWF.xApplication.Selector.Person.Item(e,t,s)},_newItemSearch:function(e,t,s){return this._newItem(e,t,s)},_listItemNext:function(e,t,s){this.orgAction.listPersonNext(e,t,function(e){if(s)s.apply(this,[e])}.bind(this))},_scrollEvent:function(e){if(!this.options.groups.length&&!this.options.roles.length){var t=this.itemAreaScrollNode.getScrollSize();var s=this.itemAreaScrollNode.getSize();var i=t.y-s.y;if(e+30>i){if(!this.isItemLoaded)this.loadSelectItems()}}}});MWF.xApplication.Selector.Person.Item=new Class({initialize:function(e,t,s,i){this.data=e;this.selector=t;this.container=s;this.isSelected=false;this.level=i?i.toInt():1;this.load()},_getShowName:function(){return this.data.name+"("+this.data.employee+")"},_getTtiteText:function(){return this.data.name+"("+this.data.employee+")"},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/personicon.png)")},load:function(){this.node=new Element("div",{styles:this.selector.css.selectorItem}).inject(this.container);this.levelNode=new Element("div",{styles:this.selector.css.selectorItemLevelNode}).inject(this.node);var e=this.level*10;this.levelNode.setStyle("width",""+e+"px");this.iconNode=new Element("div",{styles:this.selector.css.selectorItemIconNode}).inject(this.node);this._setIcon();this.actionNode=new Element("div",{styles:this.selector.css.selectorItemActionNode}).inject(this.node);this.textNode=new Element("div",{styles:this.selector.css.selectorItemTextNode,text:this._getShowName(),title:this._getTtiteText()}).inject(this.node);var t=this.textNode.getStyle("margin-left").toFloat()+e;this.textNode.setStyle("margin-left",""+t+"px");this.loadSubItem();this.setEvent();this.check()},loadSubItem:function(){},check:function(){if(this.selector.options.count.toInt()===1){this.checkSelectedSingle()}else{this.checkSelected()}},checkSelectedSingle:function(){var e=this.selector.options.values.filter(function(e,t){if(typeOf(e)==="object")return this.data.distinguishedName===e.distinguishedName;if(typeOf(e)==="string")return this.data.distinguishedName===e;return false}.bind(this));if(e.length){this.selectedSingle()}},checkSelected:function(){var e=this.selector.selectedItems.filter(function(e,t){return e.data.distinguishedName===this.data.distinguishedName}.bind(this));if(e.length){e[0].addItem(this);this.selectedItem=e[0];this.setSelected()}},setSelected:function(){this.isSelected=true;this.node.setStyles(this.selector.css.selectorItem_selected);this.textNode.setStyles(this.selector.css.selectorItemTextNode_selected);this.actionNode.setStyles(this.selector.css.selectorItemActionNode_selected)},setEvent:function(){this.node.addEvents({mouseover:function(){this.overItem()}.bind(this),mouseout:function(){this.outItem()}.bind(this),click:function(){this.clickItem()}.bind(this)})},clickItem:function(){if(this.selector.options.count.toInt()===1){this.selectedSingle()}else{if(this.isSelected){this.unSelected()}else{this.selected()}}},overItem:function(){if(!this.isSelected){this.node.setStyles(this.selector.css.selectorItem_over);this.actionNode.setStyles(this.selector.css.selectorItemActionNode_over)}},outItem:function(){if(!this.isSelected){this.node.setStyles(this.selector.css.selectorItem);this.actionNode.setStyles(this.selector.css.selectorItemActionNode)}},selectedSingle:function(){if(!this.isSelected){if(this.selector.currentItem)this.selector.currentItem.unSelectedSingle();this.getData(function(){this.selector.currentItem=this;this.isSelected=true;this.selector.selectedItems.push(this);this.node.setStyles(this.selector.css.selectorItem_selected);this.textNode.setStyles(this.selector.css.selectorItemTextNode_selected);this.actionNode.setStyles(this.selector.css.selectorItemActionNode_selected)}.bind(this))}else{this.unSelectedSingle()}},getData:function(e){if(e)e()},unSelectedSingle:function(){this.selector.currentItem=null;this.isSelected=false;this.selector.selectedItems.erase(this);this.node.setStyles(this.selector.css.selectorItem);this.textNode.setStyles(this.selector.css.selectorItemTextNode);this.actionNode.setStyles(this.selector.css.selectorItemActionNode)},selected:function(){if(this.selector.options.count.toInt()===0||this.selector.selectedItems.length+1<=this.selector.options.count){this.isSelected=true;this.node.setStyles(this.selector.css.selectorItem_selected);this.textNode.setStyles(this.selector.css.selectorItemTextNode_selected);this.actionNode.setStyles(this.selector.css.selectorItemActionNode_selected);this.selectedItem=this.selector._newItemSelected(this.data,this.selector,this);this.selectedItem.check();this.selector.selectedItems.push(this.selectedItem)}else{MWF.xDesktop.notice("error",{x:"right",y:"top"},"最多可选择"+this.selector.options.count+"个选项",this.selector.node)}},unSelected:function(){this.isSelected=false;this.node.setStyles(this.selector.css.selectorItem);this.textNode.setStyles(this.selector.css.selectorItemTextNode);this.actionNode.setStyles(this.selector.css.selectorItemActionNode);if(this.selectedItem){this.selector.selectedItems.erase(this.selectedItem);this.selectedItem.items.each(function(e){if(e!=this){e.isSelected=false;e.node.setStyles(this.selector.css.selectorItem);e.textNode.setStyles(this.selector.css.selectorItemTextNode);e.actionNode.setStyles(this.selector.css.selectorItemActionNode)}}.bind(this));this.selectedItem.destroy();this.selectedItem=null}}});MWF.xApplication.Selector.Person.ItemSelected=new Class({Extends:MWF.xApplication.Selector.Person.Item,initialize:function(e,t,s){this.data=e;this.selector=t;this.container=this.selector.selectedNode;this.isSelected=false;this.items=[];if(s)this.items.push(s);this.level=0;this.getData(function(){this.load()}.bind(this))},getData:function(e){if(e)e()},clickItem:function(){if(this.items.length){this.items.each(function(e){e.unSelected()})}else{this.destroy();this.selector.selectedItems.erase(this)}},overItem:function(){if(!this.isSelected){this.node.setStyles(this.selector.css.selectorItem_over);this.actionNode.setStyles(this.selector.css.selectorItemActionNode_selected_over)}},addItem:function(e){if(this.items.indexOf(e)===-1)this.items.push(e)},check:function(){if(this.selector.items.length){var e=this.selector.items.filter(function(e,t){return e.data.distinguishedName===this.data.distinguishedName}.bind(this));this.items=e;if(e.length){e.each(function(e){e.selectedItem=this;e.setSelected()}.bind(this))}}},destroy:function(){this.node.destroy();delete this}});MWF.xApplication.Selector.Person.ItemCategory=new Class({Extends:MWF.xApplication.Selector.Person.Item,initialize:function(e,t,s,i){this.data=e;this.selector=t;this.container=s;this.isSelected=false;this.level=i?i.toInt():1;this.load()},createNode:function(){this.node=new Element("div",{styles:this.selector.css.selectorItemCategory}).inject(this.container)},load:function(){debugger;this.createNode();this.levelNode=new Element("div",{styles:this.selector.css.selectorItemLevelNode}).inject(this.node);var e=this.level*10;this.levelNode.setStyle("width",""+e+"px");this.iconNode=new Element("div",{styles:this.selector.css.selectorItemIconNode}).inject(this.node);this._setIcon();this.actionNode=new Element("div",{styles:this.selector.options.expand?this.selector.css.selectorItemCategoryActionNode_expand:this.selector.css.selectorItemCategoryActionNode_collapse}).inject(this.node);this.textNode=new Element("div",{styles:this.selector.css.selectorItemCategoryTextNode,text:this._getShowName()}).inject(this.node);var t=this.textNode.getStyle("margin-left").toFloat()+e;this.textNode.setStyle("margin-left",""+t+"px");this.children=new Element("div",{styles:this.selector.css.selectorItemCategoryChildrenNode}).inject(this.node,"after");if(!this.selector.options.expand)this.children.setStyle("display","none");var s=this.selector._getChildrenItemIds(this.data);if(s){var i=s.length;this.childrenHeight=i*29;this.children.setStyle("height",""+this.childrenHeight+"px")}if(!this._hasChild()){this.actionNode.setStyle("background","transparent");this.textNode.setStyle("color","#777")}this.setEvent();this.check();if(this.level===1)this.clickItem()},clickItem:function(){if(this._hasChild()){if(!this.fx){this.fx=new Fx.Tween(this.children,{duration:200})}if(!this.fx.isRunning()){var e=this.children.getStyle("display");if(e==="none"){this.children.setStyles({display:"block",height:"0px"});this.fx.start("height","0px",""+this.childrenHeight+"px");this.actionNode.setStyles(this.selector.css.selectorItemCategoryActionNode_expand)}else{if(!this.childrenHeight)this.childrenHeight=this.children.getStyle("height").toFloat();this.fx.start("height",""+this.childrenHeight+"px","0px").chain(function(){this.children.setStyles({display:"none",height:"0px"})}.bind(this));this.actionNode.setStyles(this.selector.css.selectorItemCategoryActionNode_collapse)}}}},overItem:function(){},outItem:function(){},_hasChild:function(){var e=this.selector._getChildrenItemIds(this.data);if(e)if(e.length)return true;return false}});MWF.xApplication.Selector.Person.ItemGroupCategory=new Class({Extends:MWF.xApplication.Selector.Person.ItemCategory,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/groupicon.png)")}});MWF.xApplication.Selector.Person.ItemRoleCategory=new Class({Extends:MWF.xApplication.Selector.Person.ItemCategory,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/roleicon.png)")}});MWF.xApplication.Selector.Person.Filter=new Class({Implements:[Options,Events],options:{style:"default",groups:[],roles:[]},initialize:function(e,t){this.setOptions(t);this.value=e;this.orgAction=MWF.Actions.get("x_organization_assemble_control")},filter:function(e,t){this.value=e;var s=this.value;if(this.options.groups.length||this.options.roles.length)s={key:s,groupList:this.options.groupList,roleList:this.options.roleList};this.orgAction.listPersonByKey(function(e){data=e.data;if(t)t(data)}.bind(this),null,s)}});