
JAUserSetting=new Class({initialize:function(defaults){this.options=Object.extend({ajxURL:'',quees:[],blocks:[],containerClass:'ja-usersetting-options'},defaults||{});this.idsReload=new Array();},showForm:function(a,parent,idReload){var action='loadform';parent.idReload=idReload;var container=parent.getElement('.'+this.options.containerClass);if(container==null){;new Ajax(a.href,{method:'get',postBody:"action="+action+"&tmpl=component&rand="+(Math.random()*Math.random()),onComplete:function(data){this._renderForm(data,parent,a);newobj=new Element('DIV');newobj.innerHTML=data;newobj.getElements('script').each(function(script){if(script.src){new Element('script',{'type':'text/javascript','src':script.src}).inject($E('head'));}else{eval(script.innerHTML);}});if(this.callBack){this.callBack();}}.bind(this),onFailure:function(){alert('fail request');}}).request();}else{if(container.getStyle('height').toInt()<=0){this.showElement(container,container.maxHeight);}else{this.hideElement(container);}}
return false;},_renderForm:function(text,obj,a){if(obj.getElement('.'+this.options.containerClass)!=null)return;var divcontainer=new Element('div');divcontainer.addClass(this.options.containerClass);divcontainer.setStyles({'overflow':'hidden'});divcontainer.innerHTML=text;obj.adopt(divcontainer);divcontainer.maxHeight=divcontainer.offsetHeight;divcontainer.storeURL=a.href;this._bindingAndprocessingEventForm(divcontainer,obj);},_bindingAndprocessingEventForm:function(containter,obj){var form=obj.getElement('form');if($defined(form)==false){alert("Could not found the form setting for this module, please try to check again");return;}
if(form.checkall!=null){$(form.checkall).addEvent('click',function(){var doCheck=this.checked;form.getElements('input.checkbox').each(function(elm){elm.checked=doCheck;}.bind(this));});}
form.getElement('input.ja-cancel').addEvent('click',function(){this.hideElement(containter);}.bind(this));form.getElement('input.ja-submit').addEvent('click',function(){var action=obj.idReload!=""&&(obj.idReload!=null)&&($(obj.idReload)!=null)?'save_reload_module':'save_setting';new Ajax(containter.storeURL+"&action="+action+"&tmpl=component&rand="+(Math.random()*Math.random()),{method:'post',postBody:form.toQueryString(),onComplete:function(data){this.hideElement(containter);if(action=='save_reload_module'){newobj=new Element('DIV');newobj.innerHTML=data;if(newobj.getElement('#'+obj.idReload))$(obj.idReload).innerHTML=newobj.getElement('#'+obj.idReload).innerHTML;else $(obj.idReload).innerHTML=data;newobj.getElements('script').each(function(script){if(script.src){new Element('script',{'type':'text/javascript','src':script.src}).inject($E('head'));}else{eval(script.innerHTML);}});}}.bind(this),onFailure:function(){alert('fail request');}}).request();}.bind(this));},showElement:function(obj,height){if(!obj.fx){obj.fx=new Fx.Style(obj,'height');}
obj.fx.start(height);},hideElement:function(obj){if(!obj.fx){obj.fx=new Fx.Style(obj,'height');}
obj.fx.start(0);}});
