//identify the user's browser
var browser_id = "";

var ie_regex = /^Microsoft.*$/;
if(ie_regex.test(navigator.appName))
	browser_id = 'ie'; //IE
else
	browser_id = 'ff'; //Firefox is default
	
//Ajax function
function ajax( url, callback, post_parameters ) {	
	var xhr = null;
	var xhr_response = null;
	
	// get the proper xmlhttprequest object - based on browser	
	if(browser_id == 'ie')
		xhr = new ActiveXObject("Microsoft.XMLHTTP");
	else
		xhr = new XMLHttpRequest();
	
	xhr.onreadystatechange = function() {
			if(xhr && xhr.readyState == 4 && xhr.status == "200") {
				xhr_response = (xhr.responseText)?xhr.responseText:xhr;
				
				callback(xhr_response);
					
			}	
				
	};	
	
	if(post_parameters) {
		xhr.open("POST", url, true);
		xhr.setRequestHeader("Content-type",  "application/x-www-form-urlencoded");
		xhr.setRequestHeader("Content-length", post_parameters.length);
		xhr.setRequestHeader("Connection", "close");
		xhr.send(post_parameters);	
		
	}
	else {
		xhr.open( "GET", url, true);
		xhr.send(null);
	
	}
	
}

	//submit general contact form
function submitContactForm(wrapperElement)
{
	
	//make sure certain fields are filled out
	var firstname_field = (document.getElementById('txtFirstName').value.length > 0)?true:false;
	var lastname_field = (document.getElementById('txtLastName').value.length > 0)?true:false;
	var email_field = (document.getElementById('txtEmailAddress').value.length > 0)?true:false;
	var bizphone_field = (document.getElementById('txtBusinessPhone').value.length > 0)?true:false;
	var bot_test = (document.getElementById('botTest').value.length > 0)?true:false;
	var areaofinterest_field = (document.getElementById('selAreaInterest').selectedIndex > 0)?true:false;
					
	if( !firstname_field || !lastname_field || !email_field || !areaofinterest_field || !bizphone_field || bot_test) {
		window.alert('Please supply a valid first name, last name, email, business phone, and area of interest');
		return;			
				
	}
				
	if(!document.getElementsByTagName)
		return;
		
	if(!wrapperElement)
		return;
		
		//need to use direct parent element
		//as we'll be looping via the input tag name
		//(don't want to grab other inputs on the page)
	element = document.getElementById(wrapperElement);
	if(!element)
		return;
			
		//grab input elements
	var inputElementArr = element.getElementsByTagName('input');
	
		//build params string
	var params = '';
	for(var i = 0, len = inputElementArr.length; i < len; i++)
		params += inputElementArr[i].name + '=' + inputElementArr[i].value + '&';
	
	var taElementArr = element.getElementsByTagName('textarea');
	for(var i = 0, len = taElementArr.length; i < len; i++)
	{
		params += taElementArr[i].name + '=' + taElementArr[i].value;
		if(i+1 < len)
			params += '&';
	}
	
	//get the area of interest
	var select_menus = element.getElementsByTagName('select');
	params += "&selAreaInterest=" + select_menus[0].options[select_menus[0].selectedIndex].value;
	
	//clear form contents
	document.getElementById('txtFirstName').value				= '';
	document.getElementById('txtLastName').value				= '';
	document.getElementById('txtEmailAddress').value			= '';
	document.getElementById('txtBusinessPhone').value			= '';
	document.getElementById('botTest').value					= '';
	document.getElementById('taComments').value					= '';
	document.getElementById('txtMobilePhone').value				= '';
	document.getElementById('txtCompanyName').value				= '';
	document.getElementById('selAreaInterest').selectedIndex	= 0;

	ajax('/ajax/submit_contact_form', submitContactForm_callback, params);
	
}

function submitContactForm_callback( response_code )
{
	response_code = eval( response_code );
	
	if( response_code[0] && response_code[0].status == 'success' )
		//window.open("/thankyou","","width=640,height=480");	
		window.location=response_code[0].redirect_url;
		
}

