function postform(form, url) {
	//collect all postable data
	var sPostData = "";
	
	if ((form.onsubmit) && (!form.onsubmit())) { 
		return false; 
	}
	
	for (var i = 0; i < form.elements.length; i++) {
		var elem = form.elements[i];
		
		if (elem.type.toLowerCase() == "checkbox") {
			if (elem.checked) {
				sPostData += "&" + escape(elem.name) + "=" + escape(elem.value);
			} else {
				sPostData += "&" + escape(elem.name) + "=0";
			}
		} else if (elem.type.toLowerCase() == "radio") {
			if (elem.checked) {
				sPostData += "&" + escape(elem.name) + "=" + escape(elem.value);
			}
		} else {
			sPostData += "&" + escape(elem.name) + "=" + escape(elem.value);
		}
	}
	
	new Ajax.Request(		
		url,
		{			
			method: 'post',
			postBody: sPostData.substr(1),
			asynchronous: false,			
			onSuccess: 
				function (request) {
					document.location = form.action;
				}		
		}	
	);
	return true;
}