CMSFormField.min.js 3.8 KB

1
  1. MWF.xApplication.Organization.Selector=MWF.xApplication.Organization.Selector||{};MWF.xDesktop.requireApp("Organization","Actions.RestActions",null,false);MWF.xDesktop.requireApp("Organization","Selector.Department",null,false);MWF.xApplication.Organization.Selector.CMSFormField=new Class({Extends:MWF.xApplication.Organization.Selector.Department,options:{style:"default",count:0,title:"Select Field",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=[];debugger;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.action.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.action.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.Organization.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.Organization.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.Organization.Selector.CMSFormField.Item(e,t,i,n)}});MWF.xApplication.Organization.Selector.CMSFormField.Item=new Class({Extends:MWF.xApplication.Organization.Selector.Person.Item,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Organization/Selector/$Selector/default/icon/processicon.png)")},loadSubItem:function(){return false}});MWF.xApplication.Organization.Selector.CMSFormField.ItemSelected=new Class({Extends:MWF.xApplication.Organization.Selector.Person.ItemSelected,_getShowName:function(){return this.data.name},_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Organization/Selector/$Selector/default/icon/processicon.png)")}});MWF.xApplication.Organization.Selector.CMSFormField.ItemCategory=new Class({Extends:MWF.xApplication.Organization.Selector.Identity.ItemCompanyCategory,_setIcon:function(){this.iconNode.setStyle("background-image","url("+"/x_component_Organization/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}});