function changeImages() {

    if (document.images && (preloadFlag == true)) {
        for (var i=0; i<changeImages.arguments.length; i+=2) {
            document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
        }
    }
}

function newImage(arg) {
    if (document.images) {
        rslt = new Image();
        rslt.src = arg;
        return rslt;
    }
}

var preloadFlag = false;

function checkform(aform){

	if(aform.elements["login"] && (aform.login.value == "" || aform.login.value.length < 4)){
		aform.login.focus();
		alert("Please provide Login not less than 4 symbols");
	}else if(aform.elements["username"] && aform.username.value == ""){
		aform.username.focus();
		alert("Please provide Username");
	}else if(aform.elements["account"] && aform.account.value == ""){
		aform.account.focus();
		alert("Please provide Account");
	}else if(aform.elements["password"] && aform.password.value == ""){
		aform.password.focus();
		alert("Please provide password");
	}else if(aform.elements["password2"] && (aform.password2.value == "" || aform.password2.value != aform.password.value)){
		aform.password2.focus();
		alert("Please verify password");
	}else if(aform.elements["opassword"] && (aform.opassword.value != "") && (aform.opassword2.value == "" || aform.opassword2.value != aform.opassword.value)){
		aform.opassword.focus();
		alert("Please verify password");
	}else if(aform.elements["company_name"] && aform.company_name.value == ""){
		aform.company_name.focus();
		alert("Please provide company name");
	}else if(aform.elements["first_name"] && aform.first_name.value == ""){
		aform.first_name.focus();
		alert("Please provide first name");
	}else if(aform.elements["last_name"] && aform.last_name.value == ""){
		aform.last_name.focus();
		alert("Please provide last name");
	}else if(aform.elements["address"] && aform.address.value == ""){
		aform.address.focus();
		alert("Please provide address");
	}else if(aform.elements["city"] && aform.city.value == ""){
		aform.city.focus();
		alert("Please provide city");
	}else if(aform.elements["state"] && aform.state.value == ""){
		aform.state.focus();
		alert("Please provide state");
	}else if(aform.elements["zip"] && aform.zip.value == ""){
		aform.zip.focus();
		alert("Please provide zip");
	}else if(aform.elements["recipient_email"] && (aform.recipient_email.value == "" || !IsEmail(aform.recipient_email.value))){
		aform.recipient_email.focus();
		alert("Please provide recipient's correct email");
	}else if(aform.elements["email"] && !IsEmail(aform.email.value)){
		aform.email.focus();
		alert("Please provide your correct email");
	}else if(aform.elements["ccnum"] && !IsNumeric(aform.ccnum.value)){
		aform.ccnum.focus();
		alert("Please provide Credit Card number");
	}else if(aform.elements["cvv2"] && !IsNumeric(aform.cvv2.value)){
		aform.cvv2.focus();
		alert("Please provide Security Code");
	}else if(aform.elements["ccmo"] && !IsNumeric(aform.ccmo.value)){
		aform.ccmo.focus();
		alert("Please provide Credit Card expiration month");
	}else if(aform.elements["ccyr"] && !IsNumeric(aform.ccyr.value)){
		aform.ccyr.focus();
		alert("Please provide Credit Card expiration year");
	}else if(aform.elements["CompanyCode"] && aform.elements["HBCode"] && (aform.elements["CompanyCode"].value == "" && aform.elements["HBCode"].value == "")){
		aform.CompanyCode.focus();
		alert("Please provide either Company Code or HB Code");
	}else if(aform.elements["i_agree"] && aform.i_agree.checked == false){
		aform.i_agree.focus();
		alert("Please agree to our Terms & Conditions below");
	}
	else return true;
	
	return false;
}

function checkform2(){

        aform = checkform2.arguments[0];
	
	for (var i = 1; i < checkform2.arguments.length; i ++) {

		if(aform.elements[checkform2.arguments[i]].value == ""){

			alert(checkform2.arguments[i].replace("_"," ") + " is required field");
			aform.elements[checkform2.arguments[i]].focus();			
			return false;

		}

        }

	return true;

}

function check_keyword(aform){ 

	if(aform.keyword.value == "")alert("Please provide keyword");
	else if(aform.keyword.value == "Search Products")alert("Please provide keyword");
	else return true;

	return false;

}

function IsEmail(str) {

	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(str))return true;
	else return false;

}


function IsNumeric(str){

	if (/^([0-9\.])+$/.test(str))return true;
	else return false;
   
}

function IsDate(str){

	if (/^([0-9\.\/])+$/.test(str))return true;
	else return false;
   
}

function checkform_apply(aform){

	if(aform.elements["start_date"] && aform.start_date.value == ""){
		aform.start_date.focus();
		alert("Please provide date you can start");
	}else if(aform.elements["salary_desired"] && aform.salary_desired.value == ""){
		aform.salary_desired.focus();
		alert("Please provide salary desired");
	}else if(aform.elements["company_name1"] && aform.company_name1.value == ""){
		aform.company_name1.focus();
		alert("Please provide former company name");
	}else if(aform.elements["company_address1"] && aform.company_address1.value == ""){
		aform.company_address1.focus();
		alert("Please provide former company address");
	}else if(aform.elements["company_phone1"] && aform.company_phone1.value == ""){
		aform.company_phone1.focus();
		alert("Please provide former company phone");
	}else if(aform.elements["direct_supervisor_name1"] && aform.direct_supervisor_name1.value == ""){
		aform.direct_supervisor_name1.focus();
		alert("Please provide direct supervisor name");
	}else if(aform.elements["salary1"] && aform.salary1.value == ""){
		aform.salary1.focus();
		alert("Please provide correct salary");
	}else if(aform.elements["position1"] && aform.position1.value == ""){
		aform.position1.focus();
		alert("Please provide position");
	}else if(aform.elements["reason_for_leaving1"] && aform.reason_for_leaving1.value == ""){
		aform.reason_for_leaving1.focus();
		alert("Please provide reason for leaving");
	}else if(aform.elements["begin_date1"] && IsDate(aform.begin_date1.value) == false){
		aform.begin_date1.focus();
		alert("Please provide correct begin date: all numeric");
	}else if(aform.elements["end_date1"] && IsDate(aform.end_date1.value) == false){
		aform.end_date1.focus();
		alert("Please provide correct end date: all numeric");
	}else if(aform.elements["i_agree"] && aform.i_agree.checked == false){
		aform.i_agree.focus();
		alert("Please agree to our Terms & Conditions below");
	}
	else return true;
	
	return false;
}


function checkform_consortium(aform){

	if(aform.elements["login"] && (aform.login.value == "" || !IsEmail(aform.login.value))){
		aform.login.focus();
		alert("Please provide correct email address");
	}else if(aform.elements["password"] && aform.password.value == ""){
		aform.password.focus();
		alert("Please provide password");
	}else if(aform.elements["password2"] && (aform.password2.value == "" || aform.password2.value != aform.password.value)){
		aform.password2.focus();
		alert("Please verify password");
	}else if(aform.elements["opassword"] && (aform.opassword.value != "") && (aform.opassword2.value == "" || aform.opassword2.value != aform.opassword.value)){
		aform.opassword.focus();
		alert("Please verify password");
	}else if(aform.elements["company_name"] && aform.company_name.value == ""){
		aform.company_name.focus();
		alert("Please provide company name");
	}else if(aform.elements["address"] && aform.address.value == ""){
		aform.address.focus();
		alert("Please provide address");
	}else if(aform.elements["city"] && aform.city.value == ""){
		aform.city.focus();
		alert("Please provide city");
	}else if(aform.elements["state"] && aform.state.value == ""){
		aform.state.focus();
		alert("Please provide state");
	}else if(aform.elements["zip"] && aform.zip.value == ""){
		aform.zip.focus();
		alert("Please provide zip");
	}else if(aform.elements["der_first_name"] && aform.der_first_name.value == ""){
		aform.der_first_name.focus();
		alert("Please provide DER first name");
	}else if(aform.elements["der_last_name"] && aform.der_last_name.value == ""){
		aform.der_last_name.focus();
		alert("Please provide DER last name");
	}else if(aform.elements["email"] && (aform.email.value == "" || !IsEmail(aform.email.value))){
		aform.email.focus();
		alert("Please provide your correct email");
	}else if(aform.elements["email"] && aform.elements["email2"] && (aform.email.value != "") && !IsEmail(aform.email2.value)){
		aform.email2.focus();
		alert("Please verify email address");
	}else if(aform.elements["driver_name1"] && aform.driver_name1.value == ""){
		aform.driver_name1.focus();
		alert("Please provide Driver Name");
	}else if(aform.elements["driver_ssn1"] && aform.driver_ssn1.value == ""){
		aform.driver_ssn1.focus();
		alert("Please provide Driver SSN");
	}else if(aform.elements["driver_cdl1"] && aform.driver_cdl1.value == ""){
		aform.driver_cdl1.focus();
		alert("Please provide Driver CDL");
	}else if(aform.elements["ccnum"] && aform.ccnum.value == ""){
		aform.ccnum.focus();
		alert("Please provide Credit Card number");
	}else if(aform.elements["cvv2"] && !IsNumeric(aform.cvv2.value)){
		aform.cvv2.focus();
		alert("Please provide Security Code");
	}else if(aform.elements["ccmo"] && !IsNumeric(aform.ccmo.value)){
		aform.ccmo.focus();
		alert("Please provide Credit Card expiration month");
	}else if(aform.elements["ccyr"] && !IsNumeric(aform.ccyr.value)){
		aform.ccyr.focus();
		alert("Please provide Credit Card expiration year");
	}else if(aform.elements["i_agree"] && aform.i_agree.value != 1){
		aform.i_agree.focus();
		alert("Please review and agree to our Terms & Conditions");
	}
	else return true;
	
	return false;
}

function checkform_uconsortium(aform){

	if(aform.elements["password2"] && (aform.password2.value != aform.password.value)){
		aform.password2.focus();
		alert("Please verify password");
	}else if(aform.elements["company_name"] && aform.company_name.value == ""){
		aform.company_name.focus();
		alert("Please provide company name");
	}else if(aform.elements["address"] && aform.address.value == ""){
		aform.address.focus();
		alert("Please provide address");
	}else if(aform.elements["city"] && aform.city.value == ""){
		aform.city.focus();
		alert("Please provide city");
	}else if(aform.elements["state"] && aform.state.value == ""){
		aform.state.focus();
		alert("Please provide state");
	}else if(aform.elements["zip"] && aform.zip.value == ""){
		aform.zip.focus();
		alert("Please provide zip");
	}else if(aform.elements["der_first_name"] && aform.der_first_name.value == ""){
		aform.der_first_name.focus();
		alert("Please provide DER first name");
	}else if(aform.elements["der_last_name"] && aform.der_last_name.value == ""){
		aform.der_last_name.focus();
		alert("Please provide DER last name");
	}else if(aform.elements["email"] && !IsEmail(aform.email.value)){
		aform.email.focus();
		alert("Please provide your correct email");
	}else if(aform.elements["email"] && !IsEmail(aform.email.value)){
		aform.email2.focus();
		alert("Please verify email address");
	}else return true;
	
	return false;
}

function wopen(uri,width,height){
	
	win = window.open(uri,"","menubar=no,scrollbars=no,width="+width+",height="+height+",resizable=yes,scrollbars=yes");

}

var n = 1;

var addemployer = function(){

        n++;

	if(n<4){

	        for(i=0;i<11;i++){

			$('#employer'+n+'_'+i).show("slow");

		}
	}

	if(n==3){

		$('#addemployer').hide("slow");

	}

}

var addemployer_z = function(){

        n++;

	if(n<4){

		$('#employer'+n).slideDown("slow");

	}

	if(n==3){

		$('#addemployer').slideUp("slow");

	}

}

var adddrivers = function(drivers,updateprice){

	for(n=1;n<=5;n++){

		if(drivers >= n)$("#driver"+n).slideDown("slow");
		else $("#driver"+n).slideUp("fast");

	}

	if(drivers == 1)$("#owner_operator").fadeIn("slow");
	else $("#owner_operator").fadeOut("slow");

	if(updateprice > 0){

		$("#total_price").toggle();
		$("#total_price").html('$' + (updateprice * drivers).toFixed(2));
		$("#total_price").fadeIn("fast");

	}

}

var copycompanyinfo = function(what,element){

	if(element.checked){

		document.usracct.elements[what+"_name"].value = document.usracct.der_first_name.value + " " +document.usracct.der_last_name.value;
		document.usracct.elements[what+"_address"].value = document.usracct.address.value;
		document.usracct.elements[what+"_city"].value = document.usracct.city.value;
		document.usracct.elements[what+"_state"].value = document.usracct.state.value;
		document.usracct.elements[what+"_zip"].value = document.usracct.zip.value;
		document.usracct.elements[what+"_phone"].value = document.usracct.phone.value;

		$("#"+what+"_info").slideUp("slow");

	}else $("#"+what+"_info").slideDown("slow");

}

var removepackage = function(price){

	$('#cpackage').fadeOut('slow'); 

	document.usracct.tpackage.value=0;
	
	$('#total_price').html("$"+price.toFixed(2));
        $('#sales_tax').html("$0.00");
	$('#shipping_price').html("$0.00");

	$('#consortium_sdtpackage_add').fadeIn('slow');

}

var addpackage = function(price,shipping){

	$('#cpackage').fadeIn('slow'); 

	document.usracct.tpackage.value=1;
	
	if(document.usracct.state.value == "CA")
		$('#sales_tax').html("$"+(29.95*0.0875).toFixed(2));
	$('#shipping_price').html("$"+shipping.toFixed(2));

	$('#total_price').html("$"+price.toFixed(2));

	$('#consortium_sdtpackage_add').fadeOut('slow');

}

var check_login = function(login_field,table){

	$("#progress_img").fadeIn("fast");

	$.ajax({
		type: "POST",
		url: "check-login",
		data: "login="+login_field.value+"&table="+table,
		success: function(msg){

			if(msg != ""){

				$("#results").html("Your login is already taken by someone else. Please try another one.<br>If you have forgotten your password, please request password reset.");

				$("#results").fadeIn("slow");

				login_field.focus();

			}else $("#results").fadeOut("slow");
   		}
	 });

	$("#progress_img").fadeOut("fast");

}

var highlight_fields = function(){

        for (var i=0; i<highlight_fields.arguments.length; i++) {

            if(document.forms[1].elements[highlight_fields.arguments[i]]){
		nodes = document.getElementsByName(highlight_fields.arguments[i]);
		nodes[0].className = "input_fields_highlight";
	    }

        }

	document.forms[1].elements[highlight_fields.arguments[0]].focus();

}

var consortium_delete = function(file,layer){

	$.ajax({
		type: "GET",
		url: "consortium-profile",
		data: "delete="+file,
		success: function(msg){

			if(msg != ""){

				$("#"+layer).fadeOut("slow");

			}
   		}
	 });

}

var replaceText = function(container,field){

	var value = field.value;

	$('#'+container).html("<input type='password' class='"+field.className+"' name='"+field.name+"' value='"+value+"' onFocus='replaceBack(\""+container+"\",this)'>");

	field.focus();

}

var replaceBack = function (container,field){

	var value = field.value;

	$('#'+container).html("<input type='text' class='"+field.className+"' name='"+field.name+"' value='"+value+"' onBlur='replaceText(\""+container+"\",this)'>");

	field.focus();

}

var shipping = 0;
var tax = 0;
var shipping_carrier = "ups";
var shipping_prices;

var getShippingCosts = function (zip, weight){

	if(zip > 9999){

		$("#progress_img").fadeIn("fast");

		$.ajax({
			type: "GET",
			url: "get-ups-prices",
			data: "zip="+zip+"&weight="+weight,
			success: function(msg){
               
				if(msg != ""){

//					alert(msg)

					shipping_prices = eval('(' + msg + ')');

					jQuery.each(shipping_prices, function(key, value) {

						if(value > 0)
							$("#price_"+key).html("$"+value);
						else{ 

							$("#price_"+key).html(value);					

							$("#"+key).css("display","none");

						}

					});

					$("#shipping_methods").slideDown();			

					document.pform.handling_cart.value = shipping_prices["GND"];

				}

				$("#progress_img").fadeOut("fast");

   			}

	 	});

	}

}

var copytobilling = function(element,aform){

	if(element.checked){

		aform.elements["billing_company"].value = aform.recipient.value;
		aform.elements["billing_address"].value = aform.address.value;
		aform.elements["billing_city"].value = aform.city.value;
		aform.elements["billing_state"].value = aform.state.value;
		aform.elements["billing_zip"].value = aform.zip.value;

	}

}

var updatePPShipping = function(shipping_method){

//	alert(shipping_prices[shipping_method])

	document.pform.handling_cart.value = shipping_prices[shipping_method];

}


jQuery.preloadImages = function(){

	for(var i = 0; i<arguments.length; i++){

		jQuery("<img>").attr("src", arguments[i]);

	}

}

$(document).ready(function(){

	$.preloadImages("images/nscmnuo_02.jpg", 
		"images/nscmnuo_03.jpg", 
		"images/nscmnuo_04.jpg", 
		"images/nscmnuo_05.jpg",
		"images/nscmnuo_06.jpg",
		"images/nscmnuo_07.jpg",
		"images/nscmnuo_08.jpg",
		"images/mnuline.png");

	preloadFlag = true;	

	$('#error').fadeIn('slow'); 

	$('#msg').fadeIn('slow'); 

	$('#scart').fadeIn('slow');

        $("#shipping_method").change(function(){

		if(document.form1.zip.value > 9999){

               		$("#progress_img").fadeIn("fast");

                	var script;

                	if(shipping_carrier == "ups")
                		script = "get-ups-price";
                	else 
                		script = "get-usps-price";

                	$.ajax({
                		type: "GET",
                		url: script,
                		data: "zip="+document.form1.zip.value+"&weight="+document.form1.weight.value+"&shipping_method="+document.form1.shipping_method.value,
                		success: function(msg){

                			if(msg != ""){

                				if(msg*1 > 0){

                					$('#shipping').html("$"+msg);
                					shipping = msg*1;
                					$('#total_price').html("$"+(shipping*1+document.form1.subtotal_price.value*1+tax*1).toFixed(2));

                				}else{
                					$('#shipping').html("$0.00");
                					shipping = 0;
                					$('#total_price').html("$"+(shipping*1+document.form1.subtotal_price.value*1+tax*1).toFixed(2));
                					alert(msg)
                				}
                				
                			}

           			}
                 	});

			$("#progress_img").fadeOut("fast");

		}

        });

	$("#shipping_zip").blur(function (){

		$("#shipping_method").change();

	});

        $("#shipping_state").change(function(){

        	if(document.form1.state.value == "CA"){

        		tax = (document.form1.subtotal_price.value*0.0775).toFixed(2);
        		tp = (shipping*1+document.form1.subtotal_price.value*1+tax*1).toFixed(2)

        		$('#tax').html("$"+tax);
        		$('#total_price').html("$"+tp);
        		
        	}else{
        		tax = 0;
        		$('#tax').html("$0.00");
        		$('#total_price').html("$"+(shipping*1+document.form1.subtotal_price.value*1).toFixed(2));
        	
        	}
   	
	
	});


        $('#pobox').click(function(){

        	if(document.form1.pobox.checked && document.form1.zip.value > 9999 && shipping_carrier == "ups" && confirm("UPS shipping is not available for PO Boxes, use USPS shipping instead?")){

                	$("#progress_img").fadeIn("fast");

                	$.ajax({
                		type: "GET",
                		url: "get-usps-methods",
                		data: "zip="+document.form1.zip.value+"&weight="+document.form1.weight.value,
                		success: function(msg){

        				var shipping_prices = eval('(' + msg + ')');

        				var shipping_options = "";

        				if(shipping_prices["error"]){

        					alert("USPS:" + shipping_prices["error"]);

        					document.form1.pobox.checked = false;

        				}else{ 

						var element = document.getElementById("shipping_method");

	       					var optionsLength = element.options.length;

						for(var i=optionsLength-1; i>=0; i--){

							element.options[i] = null;

						}

               					jQuery.each(shipping_prices, function(key, value){

							option = document.createElement("option");
							option.value = key;
							option.text = value;
							element.options.add(option);
     	
               					});

        					shipping_carrier = "usps";

						$("#shipping_method").change();
                        
        				}

                   		}
                	 });

                	$("#progress_img").fadeOut("fast");

        	}else{
        		document.form1.pobox.checked = false;

        		if(document.form1.zip.value > 9999 && shipping_carrier == "usps" && confirm("Use UPS shipping?")){

                		$("#progress_img").fadeIn("fast");

                		$.ajax({
                			type: "GET",
                			url: "get-ups-methods",
                			data: "zip="+document.form1.zip.value+"&weight="+document.form1.weight.value,
                			success: function(msg){
                               
                				if(msg != ""){

                					var shipping_prices = eval('(' + msg + ')');

                        				var shipping_options = "";

                        				if(shipping_prices["error"]){

                        					alert(shipping_prices["error"]);

                        				}else{

                 						var element = document.getElementById("shipping_method");

                 	       					var optionsLength = element.options.length;

                 						for(var i=optionsLength-1; i>=0; i--){

                 							element.options[i] = null;

                 						}
 
                               					jQuery.each(shipping_prices, function(key, value){

                 							var option = document.createElement("option");
                 							option.value = key;
                 							option.text = value;
                 							element.options.add(option);
                        	
                               					});

                        					shipping_carrier = "ups";

								$("#shipping_method").change();
                                        
                        				}

                				}

                				$("#progress_img").fadeOut("fast");

                   			}

                	 	});


        		}

        	}

        });


});
