lo2.ajaxForm=function(form){
	var data = [];
	for (var i = 0; i < form.elements.length; i++){
		var elem = form.elements[i];
		switch(elem.type){
			case 'hidden': 
			case 'text': 
			case 'textarea': 
				data.push(escape(elem.name)+'='+escape(elem.value));
				break;
			case 'select-one':
				data.push(escape(elem.name)+'='+escape(elem.options[elem.selectedIndex].value));
				break;
			case 'checkbox':
				data.push(escape(elem.name)+'='+((elem.checked)?'true':'false'));
				break;
		}
	}
	data = '&'+data.join('&');
	lo2.ajax(form.action,data);
	return false;
}

lo2.ajaxReturn =function(handle){
	eval('lo2.ajax.reqs["'+handle+'"].json = '+lo2.ajax.reqs[handle].responseText);
	var js='';
	for(var key in lo2.ajax.reqs[handle].json){
		if(key == 'js'){
			js = lo2.ajax.reqs[handle].json[key];
		}else{
			lo2(key).innerHTML = lo2.ajax.reqs[handle].json[key];
		}
	}
	eval(js);
}

lo2.ajax=function(url,data){
	var reqHandle = 'lo2ajax'+(new Date().valueOf());
	lo2.ajax.reqs[reqHandle] = lo2.x.getHttpRequestor();
	lo2.ajax.reqs[reqHandle].onreadystatechange=Function('','if(lo2.ajax.reqs["'+reqHandle+'"].readyState==4){lo2.ajaxReturn("'+reqHandle+'");}');
	lo2.ajax.reqs[reqHandle].open('POST',url,true);
	lo2.ajax.reqs[reqHandle].setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	lo2.ajax.reqs[reqHandle].send(data);
	return false;
}

lo2.ajax.getSelectorData=function(url,selector,data){
	selector.style.display = 'none';
	var reqHandle = 'lo2ajax'+(new Date().valueOf());
	lo2.ajax.reqs[reqHandle] = lo2.x.getHttpRequestor();
	lo2.ajax.reqs[reqHandle].onreadystatechange=Function('','if(lo2.ajax.reqs["'+reqHandle+'"].readyState==4){lo2.ajax.insertSelectorData("'+reqHandle+'",document.forms[\''+selector.form.name+'\'][\''+selector.name+'\']);}');
	lo2.ajax.reqs[reqHandle].open('POST',url,true);
	lo2.ajax.reqs[reqHandle].setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	lo2.ajax.reqs[reqHandle].send(data);
	return false;	
}

lo2.ajax.insertSelectorData=function(handle,selector){
	
	var data = new String(lo2.ajax.reqs[handle].responseText).split(/\n/);
	for (var i = 0; i < data.length; i++){
		data[i] = new String(data[i]).split('|');
	}
	
	for (var i = (selector.options.length - 1); i > 1; i--){
		selector.options[i] = null;
	}
	
	if(data.length > 1){
		selector.style.display = 'inherit';
		for (var i = 0; i < data.length; i++){
			if(data[i].length > 1)
				selector.options[selector.options.length] = new Option(data[i][1],data[i][0]);
		}
	}
}

lo2.ajax.reqs = {};
