function openClose(elem, height) {
	img = elem.getElementsByTagName('img')[0];
	elem = elem.parentNode;
	
	if(elem.style.height == height) {
		elem.style.height = "23px";
		img.src = "/images/testdrive/right_arrow.jpg";
		if (elem.id == "dealer_box") {
			document.getElementById('dealer_select').style.display = "none";
		}
	} else {
		elem.style.height = height;
		img.src = "/images/testdrive/down_arrow.jpg";
		if (elem.id == "dealer_box") {
			document.getElementById('dealer_select').style.display = "block";
		}		
	}
}

function getDealers() {
	if(document.getElementById('dealer_city').value != '' && document.getElementById('dealer_state').value != '') {
		queryString = "city=" + document.getElementById('dealer_city').value + "&state=" + document.getElementById('dealer_state').value;
	} else if(document.getElementById('dealer_zip').value != '') {
		queryString = "zip=" + document.getElementById('dealer_zip').value;
	} else {
		return false;
	}
	new Ajax.Updater('dealer_select', '/kiosk/dealers.asp?' + queryString, {onComplete:function() { setDealerRadio(); } });

	document.getElementById('dealer_city').style.backgroundColor = "#FFFFFF";
	document.getElementById('dealer_state').style.backgroundColor = "#FFFFFF";
	document.getElementById('dealer_zip').style.backgroundColor = "#FFFFFF";	
}

function setDealerRadio() {

	document.getElementById('dealer_box').style.height = "200px";
	document.getElementById('dealer_title').onclick = function() {
		openClose(this, '200px')
	}

	sdid = document.getElementById('store_dealer_id').value;
	if(sdid != "") {
		document.getElementById('dealer_' + sdid).checked = true;
	}
}

function showDealer(id) {
	if(document.getElementById('dealer_city').value != '' && document.getElementById('dealer_state').value != '') {
		queryString = "city=" + document.getElementById('dealer_city').value + "&state=" + document.getElementById('dealer_state').value;
	} else if(document.getElementById('dealer_zip').value != '') {
		queryString = "zip=" + document.getElementById('dealer_zip').value;
	} else {
		return false;
	}
	new Ajax.Updater('dealer_select_confirm', '/kiosk/dealers.asp?' + queryString, {onComplete:function() { document.getElementById('dealer_' + id).parentNode.style.display = "block"; setDealerName(id); } });
}

function setDealerName(id) {
	document.getElementById('dealername').value = document.getElementById('dealer_' + id).parentNode.getElementsByTagName('span')[0].getElementsByTagName('label')[0].getElementsByTagName('strong')[0].innerHTML;
}

function updatePicture() {
	var box = document.getElementById('model');
	if(box.selectedIndex > -1) {
		car = box.options[box.selectedIndex].value;
		document.getElementById('car_pic').style.display = 'block';
		document.getElementById('car_pic').src = "/images/testdrive/" + car + "_252x114.jpg";
	} else {
		document.getElementById('car_pic').style.display = 'none';
	}
}


function validateForm() {
	errors = false;
	fname = isblank('user_f_name');
	lname = isblank('user_l_name');
	email = isblank('email');
	address = isblank('address1');
	city = isblank('city');
	state = isblank('state');
	

	try {
		requesttestdrive = document.getElementById('requesttestdrive').checked;
	} catch(e) {
		requesttestdrive = false;
	}

	if(type != "request" && requesttestdrive == false) {
		drive_date_month = isblank('drive_date_month');
		drive_date_day = isblank('drive_date_day');
		drive_time = isblank('drive_time');
	} else {
		drive_date_month = false;
		drive_date_day = false;		
		drive_time = false;
	}

	if(fname || lname || email || city || state || drive_date_month || drive_date_day || drive_time) {
		errors = true;
	}
	
	if(!document.getElementById('zip').value.match(/^\d{5}([\-]\d{4})?$/) ) {
		document.getElementById('zip').style.backgroundColor = "#FFCCCC";
		errors = true;
	} else {
		document.getElementById('zip').style.backgroundColor = "#FFFFFF";
	}
	
	if(!document.getElementById('email').value.match(/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/) ) {
		document.getElementById('email').style.backgroundColor = "#FFCCCC";
		errors = true;
	} else {
		document.getElementById('email').style.backgroundColor = "#FFFFFF";
	}
	
	if(document.getElementById('phoneradio').checked == false && document.getElementById('emailradio').checked == false) {
		document.getElementById('pmoc').style.color = "#D10000";
		errors = true;
	} else {
		document.getElementById('pmoc').style.color = "#333333";
	}
	
	if(!document.getElementById('phone').value.match(/^([\(])?(\d){3}([\)])?([ .-])?(\d){3}([ .-])?(\d){4}$/) && !(!document.getElementById('phoneradio').checked && document.getElementById('phone').value == "") ) {
		document.getElementById('phone').style.backgroundColor = "#FFCCCC";
		errors = true;
	} else {
		document.getElementById('phone').style.backgroundColor = "#FFFFFF";
	}	
	
		try {
			dealergood = false;
			for (var i=0;i < document.mainform.dealer.length; i++)	{
				if(document.mainform.dealer[i].checked == true) {
					dealergood = true;
					break;
				}
			}	
			if(dealergood == false) {
				errors = true;
				throw("no dealer selected");
			}
			
			document.getElementById('dealer_city').style.backgroundColor = "#FFFFFF";
			document.getElementById('dealer_state').style.backgroundColor = "#FFFFFF";
			document.getElementById('dealer_zip').style.backgroundColor = "#FFFFFF";
		} catch(e) {
			document.getElementById('dealer_city').style.backgroundColor = "#FFCCCC";
			document.getElementById('dealer_state').style.backgroundColor = "#FFCCCC";
			document.getElementById('dealer_zip').style.backgroundColor = "#FFCCCC";
			errors = true;
		} 
	
	
	if(errors) {
		document.getElementById('error1').style.color = "#D10000"; 
		document.getElementById('error2').style.color = "#D10000"; 		
	} else {
		document.getElementById('error1').style.color = "#333333"; 
		document.getElementById('error2').style.color = "#333333"; 		
	}
	
	return !errors;

}

function isblank(id) {
	if(document.getElementById(id).value == "") {
		document.getElementById(id).style.backgroundColor = "#FFCCCC";
		return true;
	} else {
		document.getElementById(id).style.backgroundColor = "#FFFFFF";
		return false;
	}
}

function clickRequestQuote() {

	if(type == "request") {
		qt = document.getElementById('quote_text');
		document.getElementById('testdrive').style.display='none'; 
		document.getElementById('otheroption').style.top='0px';
		document.getElementById('testdrivecheckbox').checked = false;			
	} 
}

function clickTestDrive() {
	document.getElementById('testdrive').style.display='block'; 
	document.getElementById('otheroption').style.top='-200px';
	document.getElementById('quote_text').innerHTML = "request a Test Drive";
	document.getElementById('requestquotecheckbox').checked = true;	
}
