| 1 |
- MWF.xApplication.Selector=MWF.xApplication.Selector||{};MWF.xDesktop.requireApp("Selector","Identity",null,false);MWF.xApplication.Selector.CMSFormField=new Class({Extends:MWF.xApplication.Selector.Identity,options:{style:"default",count:0,title:MWF.xApplication.Selector.LP.selectField,fieldType:"",values:[],names:[],application:"",form:"",expand:false},getFields:function(){var e={string:["htmledit","radio","select","textarea","textfield"],person:["personfield"],date:["calender"],number:["number"],array:["checkbox"]};fieldList=[];Object.each(this.relativeFormData.json.moduleList,function(t){var i="";for(k in e){if(e[k].indexOf((t.moduleName||t.type).toLowerCase())!==-1){i=k;break}}if(i){fieldList.push({name:t.id,dataType:i})}}.bind(this));return fieldList},loadSelectItems:function(e){if(this.options.form){this.cmsAction.getCMSForm(this.options.form,function(e){this.relativeFormData=e.data.data?JSON.decode(MWF.decodeJsonString(e.data.data)):null;this.getFields().each(function(e){if(!this.options.fieldType||this.options.fieldType===e.dataType){e.id=e.name;var t=this._newItem(e,this,this.itemAreaNode)}}.bind(this))}.bind(this))}else{if(this.options.application){this.cmsAction.listCMSFormField(this.options.application,function(e){this.fieldData=e.data;if(this.options.fieldType){e.data[this.options.fieldType].each(function(e){e.id=e.name;var t=this._newItem(e,this,this.itemAreaNode)}.bind(this))}else{Object.each(e.data,function(e,t){var i=this._newItemCategory({name:t,data:e},this,this.itemAreaNode)}.bind(this))}}.bind(this))}}},_scrollEvent:function(e){return true},_getChildrenItemIds:function(){return null},_newItemCategory:function(e,t,i,n){return new MWF.xApplication.Selector.CMSFormField.ItemCategory(e,t,i,n)},_listItemByKey:function(e,t,i){var n=[];if(this.options.fieldType){n=this.fieldData[this.options.fieldType]}else{Object.each(this.fieldData,function(e,t){n=n.length?n.concat(e):e}.bind(this))}var o=[];n.each(function(e){if(e.name.toLowerCase().indexOf(i.toLowerCase())!==-1)o.push(e)}.bind(this));if(e)e.apply(this,[{data:o}])},_getItem:function(e,t,i,n){if(e)e({data:{name:i,id:i}})},_newItemSelected:function(e,t,i){return new MWF.xApplication.Selector.CMSFormField.ItemSelected(e,t,i)},_listItemByPinyin:function(e,t,i){this._listItemByKey(e,t,i)},_newItem:function(e,t,i,n){return new MWF.xApplication.Selector.CMSFormField.Item(e,t,i,n)}});MWF.xApplication.Selector.CMSFormField.Item=new Class({Extends:MWF.xApplication.Selector.Identity.Item,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/processicon.png)")},loadSubItem:function(){return false},getData:function(e){if(e)e()},checkSelectedSingle:function(){var e=this.selector.options.values.filter(function(e,t){if(typeOf(e)==="object")return this.data.name===e.name;if(typeOf(e)==="string")return this.data.name===e;return false}.bind(this));if(e.length){this.selectedSingle()}},checkSelected:function(){var e=this.selector.selectedItems.filter(function(e,t){return e.data.name===this.data.name}.bind(this));if(e.length){e[0].addItem(this);this.selectedItem=e[0];this.setSelected()}}});MWF.xApplication.Selector.CMSFormField.ItemSelected=new Class({Extends:MWF.xApplication.Selector.Person.ItemSelected,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/processicon.png)")}});MWF.xApplication.Selector.CMSFormField.ItemCategory=new Class({Extends:MWF.xApplication.Selector.Identity.ItemCategory,_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Selector/$Selector/default/icon/applicationicon.png)")},loadSub:function(e){if(!this.loaded){var t=this.selector.fieldData[this.data.name];t.each(function(e){var t=this.selector._newItem(e,this.selector,this.children,this.level+1)}.bind(this));this.loaded=true;if(e)e()}else{if(e)e()}},_hasChild:function(){var e=this.selector.fieldData[this.data.name];return e&&e.length}});
|