/*******************************************************************************
//# Author:        			
*******************************************************************************/

var nz = function( id ){
	if( typeof( id ) == 'object'){
		obj = id;
	}else{
		obj = document.getElementById( id );
		if( !obj ){
			return {};
		}
	}
	return obj;
}
nz.o = new Array();
nz.t = new Object();
nz.rm = function(o){
	if( !o ){
		return;
	}	
	 if( !o.parentNode ){
  		return;
       }	

	if( o.id ){
		id = o.id;
		nz.o[id] = null;
	}
	o.parentNode.removeChild(o);
}

nz.addEvent = function (id, evType, fn){
	if( typeof( id ) == 'object'){
		obj = id;
	}else{
		obj = document.getElementById( id );
		if( !obj ){
			return false;
		}
	}
		
 	if (obj.addEventListener){
    		obj.addEventListener(evType, fn, true);
    		return true;
 	} else if (obj.attachEvent){
    		var r = obj.attachEvent("on"+evType, fn);
    		return r;
 	} else {
    		return false;
 	}
}

nz.cr = function(tg){
	return document.createElement(tg);
}
nz.get = function(id){
	return document.getElementById(id);
}

nz.fixE = function( e ){
	if (typeof e == 'undefined') e = window.event;
	if (typeof e.layerX == 'undefined') e.layerX = e.offsetX;
	if (typeof e.layerY == 'undefined') e.layerY = e.offsetY;
	return e;
}

nz.toggleCheckBoxes = function( f ){
	if( !f.bxchecked ){
		f.bxchecked = true;
	}else{
		f.bxchecked = false;
	}

	els = f.elements;
	len = els.length;
	for( i=0;i<len;i++){
		el = els[i];
		if( el.type=='checkbox' ){
			el.checked = f.bxchecked;
		}
	}
}

nz.checkFormEl = function( el ){
	if( el.disabled == true ){
		return false;
	}

	if( el.type == 'checkbox' ){
		if( el.checked == false ){
			return false;
		}
	}

	if( el.type == 'radio' ){
		if( el.checked == false ){
			return false;
		}
	}

	return true;
}

nz.submitForm = function( f, callback, uri ){
	str = '';
	f_e = f.elements;
	tmpArr = new Array();
	for( i = 0; i< f_e.length; i++ ){
		//f_e[i].name+'='+f_e[i].value+'&';
		if( f_e[i].name ){
			//str += f_e[i].name+':"'+f_e[i].value+'",';
			if( nz.checkFormEl( f_e[i] ) ){
				tmpArr.push( '"'+f_e[i].name+'":"'+f_e[i].value+'"' );
			}
		}
	}
	
	

	jstr = '{'+ tmpArr.join(',') +'}';

	var str = eval('(' + jstr + ')');;

	
	if( !uri ){
		uri = f.action;
	}	
	if( uri.match(/\?/) ){	
		uri += '&ajax=1';
	}else{
		uri += '?ajax=1';
	}

	
	$.post( uri, str, callback );
}
nz.toJSON_RPC= function( m, ar ){
	aa = new Array();
	for( i = 0;i<ar.length;i++){
		e = ar[i];
		//alert(e);
		if( typeof(e) == 'string' ){
			aa.push( '"'+e+'"' );
		}else{
			aa.push(e);
		}
	}
	cont = '{"method":"'+m+'","params":['+aa.join(',')+']}';
	return cont;
}
