function widget_ajax(vars,values,request_url,target,append,callback){
	
	function updatecontent(data,tar){
		
		document.getElementById(tar).innerHTML = data;
		
	}
	
	var xmlhttp =  new XMLHttpRequest();
	
	vars_array = vars.split(":::::");
	values_array = values.split(":::::");
	
	query_string = '';
	
	for(i=0;i<vars_array.length;i++){
	
		//values_array[i] = values_array[i].replace(/"/g,'\\"');
		//values_array[i] = values_array[i].replace(/\n/g,'::::::');
		//values_array[i] = values_array[i].replace(/\r/g,'::::::');
		//values_array[i] = values_array[i].replace(/\t/g,'::::::');
	
		query_string = query_string + vars_array[i] + "=" + encodeURIComponent(values_array[i]) + "&";
	
	}
	
	xmlhttp.open('POST', request_url);
	
	xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded;'); 
	//xmlhttp.setRequestHeader('Content-length',query_string.length);
	//xmlhttp.setRequestHeader('Connection','close');
	
	xmlhttp.send(query_string);
	
	xmlhttp.onreadystatechange = function() {
	
		if (xmlhttp.readyState == 4){
			
			if(xmlhttp.status == 200){
			
				if(!append){
		
					response = xmlhttp.responseText;
					
				} else {
				
					response = xmlhttp.responseText + document.getElementById(target).innerHTML;
				
				}
				
				if(target){
		
					updatecontent(response, target);
					
				}
				
				if(callback){ eval(callback); }
				
				return false;
			
			} else {
				
				return true;
				
			}
	
			
		}
		
	}
	
}

function widget_ajax_form(vars,values,request_url,target,append,callback){
	
	function updatecontent(data,tar){
		
		document.getElementById(tar).innerHTML = data;
		
	}
	
	var xmlhttp =  new XMLHttpRequest();
	
	vars_array = vars.split("~~~~~");
	values_array = values.split("~~~~~");
	
	query_string = '';
	
	for(i=0;i<vars_array.length;i++){
	
		//values_array[i] = values_array[i].replace(/"/g,'\\"');
		//values_array[i] = values_array[i].replace(/\n/g,'~~~~~');
		//values_array[i] = values_array[i].replace(/\r/g,'~~~~~');
		//values_array[i] = values_array[i].replace(/\t/g,'~~~~~');
	
		query_string = query_string + vars_array[i] + "=" + encodeURIComponent(values_array[i]) + "&";
	
	}
	
	xmlhttp.open('POST', request_url);
	
	xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded;'); 
	//xmlhttp.setRequestHeader('Content-length',query_string.length);
	//xmlhttp.setRequestHeader('Connection','close');
	
	xmlhttp.send(query_string);
	
	xmlhttp.onreadystatechange = function() {
	
		if (xmlhttp.readyState == 4){
			
			if(xmlhttp.status == 200){
			
				if(!append){
		
					response = xmlhttp.responseText;
					
				} else {
				
					response = xmlhttp.responseText + document.getElementById(target).innerHTML;
				
				}
				
				if(target){
		
					updatecontent(response, target);
					
				}
				
				if(callback){ eval(callback); }
				
				return false;
			
			} else {
				
				return true;
				
			}
	
			
		}
		
	}
	
}

function widget_ajax_callback_reset_loader(id){
	
	$('#'+id).css('height','auto');
	$('#'+id).css('background-image','none');
	$('#'+id).children(":first-child").css('display','none');
	$('#'+id).children(":first-child").slideToggle(1000);
	
}
