function validate(f1,alertBox){
	//var alertBox=document.getElementById(alertBoxId);
	//if(window.iframe && alertBox==null)
	//	alertBox=window.parent.document.getElementById(alertBoxId);
	var alertBoxId=alertBox.id;
	if(trim(f1.senderName.value).length<1){
		alertBox.innerHTML="Please enter your name. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.senderName.focus();
		return false;
	}else if(f1.emailAddr.value.indexOf("@")==-1||f1.emailAddr.value.indexOf(".")==-1||f1.emailAddr.value.indexOf("@.")!=-1||f1.emailAddr.value.indexOf(".@")!=-1||f1.emailAddr.value.charAt(0)=="."||f1.emailAddr.value.charAt(0)=="@"||f1.emailAddr.value.charAt(f1.emailAddr.value.length-1)=="."||f1.emailAddr.value.charAt(f1.emailAddr.value.length-1)=="@"){
		alertBox.innerHTML="Please enter a valid email address. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.emailAddr.focus()
		return false;
	}else if(trim(f1.addr.value).length<1){
		alertBox.innerHTML="Please enter your address. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.addr.focus()
		return false;
	}else if(trim(f1.city.value).length<1){
		alertBox.innerHTML="Please enter your city. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.city.focus()
		return false;
	}else if(trim(f1.country.value).length<1){
		alertBox.innerHTML="Please enter your country. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.country.focus()
		return false;
	}else if(trim(f1.mess.value).length<1){
		alertBox.innerHTML="Please enter your message. <a onclick='document.getElementById(\""+alertBoxId+"\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
		alertBox.style.display='';
		f1.mess.focus()
		return false;
	}
	return true;
}
function ajaxFunction(request,url, data, params){
	var ajaxRequest;  // The variable that makes Ajax possible!
	try{
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert(ajaxRequest.readyState);
				return false;
			}
		}
	}
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
			//alert("status="+ajaxRequest.status+" response="+ajaxRequest.responseText);
			if(ajaxRequest.status>=200 && ajaxRequest.status < 300 && ajaxRequest.responseText.length > 0){
				postFeedbackSucess(ajaxRequest,ajaxRequest.responseText,params);
			}else postFeedbackFail(ajaxRequest,params);
		} 
	}	
	ajaxRequest.open(request, url, true);
	if(request=="POST")
		ajaxRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");	
	ajaxRequest.send(data); 
}
function postFeedback(form, target){
	//alert(form);
	data=new Object();
	params=new Object();
	params['form']=form;
	params['target']=target;
	data="senderName="+form.senderName.value+"&emailAddr="+form.emailAddr.value+
		 "&addr="+form.addr.value+"&city="+form.city.value+"&country="+form.country.value+
		 "&pname="+form.pname.value+"&mess="+form.mess.value+"&send=1&ajax=1"+"&phone="+form.phone.value;
	//alert("data="+data);
	ajaxFunction("POST",form.action,data,params);
	//hideDialog();
	hideDialog();
	return false;
}
function postFeedbackSucess(ajax, response, params){
	div=document.getElementById("errormsg");
	if(window.iframe && div==null)
		div=window.iframe.document.getElementById("errormsg");
	//response+="<BR><a onclick='document.getElementById(\"errormsg\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
	alertDialog("Thank you for sending feedback",response);
	clearFormFields(params['form']);
	return false;
}
function postFeedbackFail(ajax, params){
	div=document.getElementById("errormsg");
	if(window.iframe && div==null)
		div=window.iframe.document.getElementById("errormsg");
	response="Unable to post feedback. Please try again a little later.";
	response+="<BR><a onclick='document.getElementById(\"errormsg\").style.display=\"none\"; return false;' href=#>(Hide)</a>";
	div.innerHTML=response;
	div.style.display='';
	return false;
}

function clearFormFields(form){
	form.senderName.value="";
	form.emailAddr.value="";
	form.addr.value="";
	form.city.value="";
	form.country.value="";
	form.mess.value="";
	form.phone.value="";
}

function showFb(foo) {
	showDialog("Submit feedback/ask a question","../feedback/feedback_form.php?pname="+foo);
}
function trim(s) {
	return rtrim(ltrim(s));
}
function ltrim(s) {
	var l=0;
	while(l < s.length && s[l] == ' ') 	l++; 
	return s.substring(l, s.length);
}
function rtrim(s){
	var r=s.length -1;
	while(r > 0 && s[r] == ' ') r-=1;
	return s.substring(0, r+1);
}
