// Revised on 12/14/09 by Bob (www.site-webmaster.com) added VRM 
// 3/1/10 add a place for new parts in part_request.php
function addpartline() {

	var the_line = "<table width=\"100%\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\"><tr><th><label for=\"request_details_name\" class=\"index\">Part Name</label></th><td><input style=\"width:200px\" type=\"text\" name=\"request_details_name[]\" value=\"\" maxlength=\"30\" /></td></tr><tr><th valign=\"top\">Part Description</th><td><textarea style=\"width:200px\" rows=\"3\" name=\"request_details_desc[]\"></textarea></td></tr></table>";
			
	var current = add_para.innerHTML;
	
	add_para.innerHTML = current + the_line;
	
}	// end addpartline




function addaddressline() {
	var line = "<p><label for=\"breaker_address\">&nbsp;</label><input type=\"text\" name=\"breaker_address[]\" value=\"\" /></p>";
	var current = add_para.innerHTML;
	add_para.innerHTML = current + line;
}

// # 12/14/09 by Bob  new w/ form name:

function submitme_vehicle_details_manual_entry_form () {
	document.vehicle_details_manual_entry_form.submit();
}

// Revised on 1/15/10 by Bob (www.site-webmaster.com) fncs for changes in pulldowns: 

function submit_manufacturer_changed () {
	document.vehicle_details_manual_entry_form.submit();
}

// Revised on 1/15/10 by Bob (www.site-webmaster.com) fncs for changes in pulldowns: 

function submit_vehicle_type_changed () {
	document.vehicle_details_manual_entry_form.submit();
}




function submitme() {
	document.parts_request_form.submit();
}


function notgrey(element){
	element.style.backgroundColor = '#ffffff';
	element.style.color = '#000000';
}
function check_breaker_sign_up_form() {
	var error='';
	if(breaker_sign_up_form.breaker_first_name.value=='') { error='Field required: First Name'; }
	if(breaker_sign_up_form.breaker_last_name.value=='') { error='Field required: Last Name'; }
	if(breaker_sign_up_form.breaker_company_name.value=='') { error='Field required: Company Name'; }
	if(breaker_sign_up_form.breaker_day_tel.value=='') { error='Field required: Daytime Tel. No.'; }
	if(breaker_sign_up_form.breaker_email.value=='') { error='Field required: E-mail'; }
	if(breaker_sign_up_form.breaker_country.value=='dont_care') { error='Field required: Country'; }
	if(breaker_sign_up_form.breaker_postcode.value=='') { error='Field required: Postcode'; }
	if(breaker_sign_up_form.breaker_type.value=='') { error='Field required: Breaker Type'; }
	if(breaker_sign_up_form.breaker_user_name.value=='') { error='Field required: User Name'; }
	if(breaker_sign_up_form.breaker_user_name.value.length<4){ error='Your User Name must be 4 or more characters'; }
	if(breaker_sign_up_form.breaker_password.value=='') { error='Field required: Password'; }
	if(breaker_sign_up_form.breaker_password.value.length<4){ error='Your Password must be 4 or more characters'; }
	if(breaker_sign_up_form.breaker_password.value != breaker_sign_up_form.breaker_password2.value){ error='Your Password did not match the Password confirmation'; }
	if(breaker_sign_up_form.breaker_url.value != ''){
		var reg = /^www./
		if(!reg.test(breaker_sign_up_form.breaker_url.value)){error='Your website address should start "www."';}
	}
	
	// 	Revised on 1/5/10 by Bob (www.site-webmaster.com) be sure captcha is entered 
	if(breaker_sign_up_form.tf_user_entered_captcha_string.value=='') { error='Field required: Text from the red image box'; }
	
	if(error!='') {
		alert(error);
		return false;
	}else{
		return true;
	}
}
function check_password_form() {
	var error='';
	if(breaker_admin_form.breaker_password.value=='') { error='Field required: Password'; }
	if(breaker_admin_form.breaker_password.value.length<4){ error='Your Password must be 4 or more characters'; }
	if(breaker_admin_form.breaker_password.value != breaker_admin_form.breaker_password2.value){ error='Your Password did not match the Password confirmation'; }
	if(error!='') {
		alert(error);
		return false;
	}else{
		return true;
	}
}


// 12/9/09 validate the vrm_entry_form form values
function validate_vrm_entry_form() {
	var error='';

	if(document.vrm_entry_form.tf_vrm_to_get.value=='') { error='You must enter the VRM'; }
	
	if(document.vrm_entry_form.tf_vrm_to_get.value.length > 8) { error='The VRM is too long'; }

	if(error!='') {
		alert(error);
		return false;
	}else{
		return true;
	}
}		// end validate_vrm_entry_form


// 12/9/09 validate the vehicle_details_manual_entry_form form values
function validate_vehicle_details_manual_entry() {
	var error='';

	if(document.vehicle_details_manual_entry_form.request_body_style.value=='dont_care') { error='Field required: Body Style'; }
	if(document.vehicle_details_manual_entry_form.request_engine.value=='dont_care') { error='Field required: Engine Size'; }
	if(document.vehicle_details_manual_entry_form.request_fuel_type.value=='dont_care') { error='Field required: Fuel Type'; }
	if(document.vehicle_details_manual_entry_form.request_transmission.value=='dont_care') { error='Field required: Transmission'; }
	if(document.vehicle_details_manual_entry_form.request_year_reg.value=='dont_care') { error='Field required: Year'; }
	if(document.vehicle_details_manual_entry_form.request_manufacturer.value=='dont_care') { error='Field required: Manufacturer'; }
	if(document.vehicle_details_manual_entry_form.request_model.value=='dont_care') { error='Field required: Model'; }
	if(document.vehicle_details_manual_entry_form.request_vehicle_type.value=='dont_care') { error='Field required: Vehicle type'; }


	if(error!='') {
		alert(error);
		return false;
	}else{
		return true;
	}
}		// end validate_vehicle_details_manual_entry

//   Revised 12/9/09 by Bob (www.site-webmaster.com) new function for new form
// require all fields on the vrm confirmation form:

function validate_vrm_details_edit_form() {

	var error='';
	
	if(document.vrm_details_edit_form.tf_request_vehicle_type.value=='') {error='Field required: Vehicle Type'; }
	if(document.vrm_details_edit_form.tf_request_body_style.value=='') { error='Field required: Body Style'; }
	if(document.vrm_details_edit_form.tf_request_engine.value=='') { error='Field required: Engine Size'; }
	if(document.vrm_details_edit_form.tf_request_fuel_type.value=='') { error='Field required: Fuel Type'; }
	if(document.vrm_details_edit_form.tf_request_transmission.value=='') { error='Field required: Transmission'; }
	if(document.vrm_details_edit_form.tf_request_year_reg.value=='') { error='Field required: Year'; }
	if(document.vrm_details_edit_form.tf_request_manufacturer.value=='') { error='Field required: Manufacturer'; }
	if(document.vrm_details_edit_form.tf_request_model.value=='') { error='Field required: Model'; }

	if(error!='') {

		alert(error);
		return false;
	}else{
		return true;
	}

}	// end validate_vrm_details_edit_form


// 12/10/09 new fnc to check step 3 (car style) & #4 contact sections:
function validate_part_info_contact_info_form() {
	
	// part input is arrray, tricky:
	var arr_part_names = document.getElementsByName('request_details_name[]');

	var error='';
		
	
		//////////////////////////////////////////////////////////////////
	// Revised on 12/21/09 by Bob (www.site-webmaster.com) added code to test sms values  

	switch ( true ){
	
		case document.part_info_contact_info_form.contact_way.value == 'emailonly':
		// empty for now		
		
		break;
		
		case document.part_info_contact_info_form.contact_way.value == 'emailsmsphone':


			if (document.part_info_contact_info_form.request_country.value == 'gb' ) {
	
				var mobile_error_mssg ='';
				// test uk mobiles here	
				switch ( true ){
						
					// 2/26/10 changed message for bad mobile numbers:
					case ( document.part_info_contact_info_form.request_cmr_mob_tel.value.length !='11'):
					
						var mobile_error_mssg ='if you wish to receive replies via SMS text your mobile telephone number must begin with 07 and contain no spaces e.g 07860123456';
						break;
	
					case ( document.part_info_contact_info_form.request_cmr_mob_tel.value.substr(0,2) !='07'):

						var mobile_error_mssg ='if you wish to receive replies via SMS text your mobile telephone number must begin with 07 and contain no spaces e.g 07860123456';
						break;

					case ( document.part_info_contact_info_form.request_cmr_mob_tel.value.search( /[^0-9]/ ) != '-1'):
			
						var mobile_error_mssg ='Your Mobile Number Can Only Contain Digits 0 Through 9 With No Spaces';
						break;

				}	// end switch number problems
		
				if ( mobile_error_mssg != '') {
					alert ( mobile_error_mssg );
					return false;	//  bail
				}	// end if mobile_error_mssg empty
			
			}else{	// not uk so bail
			
				alert ('SMS Is Only Available In The UK' );
				return false;	//  bail
			
			}	// end if uk 
			
		break;
		
		default:
			alert ('Please choose your preferable contact way');
			return false;	// no method, bail
			
	}	// end switch contact type


	// end sms tests
	//////////////////////////////////////////////////////////////////

		
	if(document.part_info_contact_info_form.request_cmr_first_name.value=='') { error='Field required: First name'; }
	if(document.part_info_contact_info_form.request_cmr_last_name.value=='') { error='Field required: Last name'; }
	if(document.part_info_contact_info_form.request_cmr_day_tel.value=='' && document.part_info_contact_info_form.request_cmr_mob_tel.value=='') { error='Field required: Contact number'; }
	if(document.part_info_contact_info_form.request_cmr_postcode.value=='') { error='Field required: Postcode'; }
	
	if(document.part_info_contact_info_form.request_cmr_email.value=='') { error='Field required: E-mail'; }
	
	// 3/3/10 by Bob changed pattern to allow leading numbers:
	if(document.part_info_contact_info_form.request_cmr_email.value != ''){
		var reg = /^[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/
		
		
		if(!reg.test(document.part_info_contact_info_form.request_cmr_email.value)){error='Your e-mail address may not be valid.';}
	}	// end if email valid error
	
	// part name here so it shows 1st error:
	
	if(arr_part_names[0].value=='') { error='Field required: Part name'; }
	
	if(error!='') {
		alert(error);
		return false;
	}else{
		return true;
	}
	
}	// end validate_part_info_contact_info_form



function confirmLink() {
    if (typeof(window.opera) != 'undefined') {
        return true;
    }
    var is_confirmed = confirm('Do you really want to remove this record?');
    return is_confirmed;
}
function calculatequote() {
	form = document.part_reply_email;
	var quote = eval(form.reply_price.value);
	var del_charge = eval(form.reply_delivery_charge.value);
	var tax_rate = eval(form.tax_rate.value);
	if (form.reply_price_tax[0].checked) {
		var tax_amount = ((quote*tax_rate)/100);
	} else if (form.reply_price_tax[1].checked) {
		var tax_amount = 0;
	}
	if (form.reply_delivery_tax[0].checked) {
		tax_amount = ((del_charge*tax_rate)/100) + tax_amount;
	} else if (form.reply_delivery_tax[1].checked) {
		tax_amount = 0 + tax_amount;
	}
	form.tax_amount.value = decimal_round(tax_amount, '2');
	var final_price = eval(form.tax_amount.value) + (quote + del_charge);
	form.final_price.value = decimal_round(final_price, '2');
}
function decimal_round(value, places) {
	var rounded = Math.round(value*Math.pow(10,places))/Math.pow(10,places);
	return rounded;
}
/// functions for changing oerder tables ///
var prevvalue = 'cheese';

function getold(inputbox) {
	prevvalue = inputbox.value;
}

function changeitem(num) {
	var x=document.forms[0].getElementsByTagName("li");
	for (i = 0; i < x.length; i++) {
		var y = x[i].getElementsByTagName("p");
		var text = y[0].innerText;
		if (text == prevvalue) {
			newvalue = eval("document.forms[0].menu_item"+num+".value");
			y[0].innerText = newvalue;
		}
	}
}

function dochange(my_pos) {
	my_select = "item" + my_pos;
	index     = "document.forms[0]."+my_select+".selectedIndex";
	index     = eval(index);
	value     = "document.forms[0]."+my_select+".options[index].value";
	my_value  = eval(value) - 1;
	var positions = new Array();
	var position  = 0;
	// Find the select that has my_value
	num_selects = 0;
	for (i = 0; i < document.forms[0].elements.length; i++) {
		select = document.forms[0].elements[i].name;
		if (select.substring(0,4) == "item") {
			num_selects++;
			pos      = select.substring(4,select.length);
			index    = "document.forms[0]."+select+".selectedIndex";
			index    = eval(index);
			value    = "document.forms[0]."+select+".options[index].value";
			value    = eval(value) - 1;
			// Now store the values in an array
			positions[position] = value;
			position++;
			// The select that we want to set
			if (value == my_value && select != my_select) { 
				target_select = select;
			}
		}
	}
	// Find the missing value since two will be duplicated
	missing = 0;
	for (i=0; i<num_selects; i++) {
		used = 0;
		for (j=0; j<num_selects; j++) {
			if (positions[j] == i) {
				used = 1;
			}
		}
		if (used == 0) {
			missing = i;
		}
	}
	eval("document.forms[0]."+target_select+".selectedIndex="+missing);

// this bit changes the 'preview' menu
	var x=document.forms[0].getElementsByTagName("li");
	for (k=0; k<x.length; k++) {
		index     = "document.forms[0].item"+k+".selectedIndex";
		index     = eval(index);
		text = eval("document.forms[0].level"+k+".value");
		x.item(index).innerHTML = "<p>"+text+"</p>";
	}
	return true;
} 
/// end of changing tables ///


// 2/24/10 dedicated fnc for checking all requests in breaker's area:
function CheckedAllRequests () {

	var arr_requests_chkboxes = document.getElementsByName('not_got[]');
	
	for (var i = 0; i < arr_requests_chkboxes.length; i++){		
		arr_requests_chkboxes[i].checked = true;
	
	}
	
}	// end CheckedAllRequests





// Revised on 1/29/10 by Bob (www.site-webmaster.com) added 

function submit_request_move_form_changed() {

	document.request_move_form.submit();
		
}

