function showRequiredFields() {
	$$('.required').each(function(e) {
		span = new Element("span");
		span.insert("*");
		span.setStyle('color:#FF0000;');
		e.insert({top: span});
	})
}
Event.observe(document, "dom:loaded", showRequiredFields);

function toggleState() {
	if ($('country').value != 'US') {
		$('state').hide();
		$('stateOther').show();
	} else {
		$('stateOther').hide();
		$('state').show();
	}
}

function doTerms() {
	if ($('termsConfirm').checked) {
		return true;
	} else {
		alert("Please indicate that you have read and agreed to our terms and conditions.");
		return false;
	}
}

function getMakes(def) {
	new Ajax.Request('ajax/searchJSON.cfm',
	{
		method:'get',
		parameters: {jar: new Date().getTime()},
		onSuccess: function(transport){
			var response = transport.responseJSON;
			var sel = $('sel_make');
			if(response.length) {
				response.each(function(e){
					sel.insert(new Element('option', {value: e.ID}).update(e.MAKE));
				})
			}
		},
		onCreate: function(){
			$('sel_model').disable().length = 1;
			$('sel_category').disable().length = 1;
		}
	});
}

function getModels(def) {
	new Ajax.Request('ajax/searchJSON.cfm',
	{
		method:'get',
		parameters: {make: $('sel_make').value, jar: new Date().getTime()},
		onSuccess: function(transport){
			var response = transport.responseJSON;
			var sel = $('sel_model');
			if(response.length) {
				response.each(function(e){
					sel.insert(new Element('option', {value: e.ID}).update(e.MODEL));
				});
				sel.enable().focus();
			}
		},
		onCreate: function(){
			$('sel_model').length = 1;
			$('sel_category').disable().length = 1;
		}
	});
}

function getCategories(def) {
	new Ajax.Request('ajax/searchJSON.cfm',
	{
		method: 'get',
		parameters: {make: $('sel_make').value, model: $('sel_model').value, jar: new Date().getTime()},
		onSuccess: function(transport){
			var response = transport.responseJSON;
			var sel = $('sel_category');
			if(response.length) {
				response.each(function(e){
					sel.insert(new Element('option', {value: e.ID}).update(e.NAME));
				});
				sel.enable().focus();
			}
		},
		onCreate: function(){
			$('sel_category').length = 1;
		}
	});
}

Event.observe(window, 'load', function()
{
	$('sel_make').observe('change', getModels);
	$('sel_model').observe('change', getCategories);
	$('sel_category').observe('change', function(e){this.form.submit()});

	var sb = $('kys');
	var def = 'Search keyword or part #';
	if(!sb.value) sb.value=def;
	sb.observe('focus', function(e){
		if(this.value==def)this.value='';
	});
	sb.observe('blur', function(e){
		if(this.value=='')this.value=def;
	});
	Event.observe(sb.up(), 'submit', function(e) {
		if(sb.value=='' || sb.value==def) {
			e.stop();
			alert('Please enter a search keyword.');
			sb.focus();
		}
	});
});

