var Post = new Object();
Post.Send = function(form)
{
  document.getElementById(form.id+'_submit').disabled=true;
	
  var query = Post.buildQuery(form);
	Ajax.Request(form.method, form.action+'bridge.php', query, Post.OnResponse,form.id);
	/*
  document.getElementById(form.id+'_submit').disabled=false;
  */
  	
}
Post.Errorcheck = function(form)
{
  document.getElementById(form.id+'_submit').disabled=true;
	var query = Post.buildQuery(form);
	Ajax.RequestError(form.method, form.action+'errorcheck.php', query, Post.OnResponse,form.id);
}

Post.OnResponse = function(xml)
{
	var results = document.createElement('div');
	document.getElementsByTagName('body')[0].appendChild(results)
	results.innerHTML = xml.firstChild.nodeValue;
}

Post.buildQuery = function(form)
{
	var query = "";
	for(var i=0; i<form.elements.length; i++)
	{
		var key = form.elements[i].name;
		var value = Post.getElementValue(form.elements[i]);
		if(document.getElementById(key+'_error')){document.getElementById(key+'_error').innerHTML='';}
		if(key)
		{
			query += key +"="+ escape(encodeURI(value)) +"&";
		}
	}
	return query;

}

Post.getElementValue = function(formElement)
{

	if(formElement.length != null) var type = formElement[0].type;
	if((typeof(type) == 'undefined') || (type == 0)) var type = formElement.type;
	switch(type)
	{
		case 'undefined': return;
		
		case 'textarea':
    return formElement.value;
		
		case 'radio':
			for(var x=0; x < formElement.length; x++) 
				if(formElement[x].checked == true)
			return formElement[x].value;
  
		case 'select-multiple':
			var myArray = new Array();
			for(var x=0; x < formElement.length; x++) 
				if(formElement[x].selected == true)
					myArray[myArray.length] = formElement[x].value;
			return myArray;

		case 'checkbox': return formElement.checked;
	
		default: return formElement.value;
	}
}
