
var models_load_timeout;
var models_ajax_running = false;
var models_timer_active = false;
var prev_manufacturer = 0;

var features_load_timeout;
var features_ajax_running = false;
var features_timer_active = false;
var prev_model = 0;

function button_disable() {
	$(this).click();
	$(this).attr('disabled', 'disabled');
}

function double_click_prevent(){   
	$("#user-pass #edit-submit").mouseup(button_disable);
	$("#summary-verify #edit-submit").mouseup(button_disable);
        if(jQuery.browser.safari == true)  {
            $("#edit-device-manufacturer").click(function () {;});
            $("#edit-device-model").keyup(function () {;});
            $("#edit-device-manufacturer").change(function () {
                    var dev_type = $("#edit-device-type-id").val();
                    var dev_manufacturer = $("#edit-device-manufacturer > option:selected").val();
                    document.getElementById('model_ajax_loader').className = 'ajax_loader_visible';
                    var model=document.getElementById('edit-device-model');
                    model.disabled=true;
                    clear_select(model);
                    var models = $.get('?q=offer/get_models_js&dev_type='+dev_type+'&dev_manufacturer='+dev_manufacturer,
                        setModels);
            });
            $("#edit-device-model").change(function () {
                var dev_type = $("#edit-device-type-id").val();
                var dev_manufacturer = $("#edit-device-manufacturer > option:selected").val();
                var dev_model = $("#edit-device-model > option:selected").val();

                $("#edit-submit").attr("disabled", "disabled");
                var questions_div = document.getElementById('feature_question');
                var model=document.getElementById('edit-device-model');
                var manufacturer=document.getElementById('edit-device-manufacturer');
                var feature_questions = $.get('?q=offer/get_feature_questions_js&dev_type='+dev_type+'&dev_manufacturer='+dev_manufacturer+'&dev_model='+dev_model, setFeatureQuestions);
            });
        }
}

function show_free_form_code(){
	if($("#edit-device-questions-54").val() == 284) {
		$("#free_form_code").slideDown();
	} else {
		$("#free_form_code").slideUp();
	}
}

$(document).ready(double_click_prevent);



function doNext(el) {
	if (el.value.length < el.getAttribute('maxlength')) return;

	var f = el.form;
	var els = f.elements;
	var x, nextEl;
	for (var i=0, len=els.length; i<len; i++){
	x = els[i];
	if (el == x && (nextEl = els[i+1])){
		if (nextEl.focus) nextEl.focus();
		}
	}
}


//AJAX callbacks
var dev_type_id;
function LoadPropertiesForm(properties_form) {
	document.getElementById('properties_form'+dev_type_id).innerHTML = properties_form;
	document.getElementById('ajax_loader'+dev_type_id).className = 'markup_ajax_img_invisible';
	$("div.properties"+dev_type_id).slideDown("slow");
}

function setModels(models) {
        if(!models_timer_active) {
            var model=document.getElementById('edit-device-model');
            var options = eval('('+models +')');
            model.options[0] = new Option('--Select--', 0);
            var j = 1;
            for(i in options) {
                    model.options[j] = new Option(options[i], i);
                    j++;
            }
            model.disabled=false;
            document.getElementById('model_ajax_loader').className = 'ajax_loader_invisible';
            models_timer_active = false;
        }
	models_ajax_running = false;
}

function setFeatureQuestions(feature_questions) {
	var questions_div = document.getElementById('feature_question');
	$("#edit-submit").attr("disabled", "");
	if(feature_questions == '0') {
		questions_div.innerHTML = '';
		return;
	} else {
		questions_div.innerHTML = feature_questions;
		return;
	}
}

function PrintRecyclingsTable(status_table) {
if(status_table == '0') {
				document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>The email entered is not found in our database.</li></ul></div>';
				document.getElementById('status_ajax_loader1').className = 'ajax_loader_invisible';
				document.getElementById('edit-password').disabled = false;
				document.getElementById('edit-email').disabled = false;
			}else if(status_table == '1'){
				document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>Invalid password.</li></ul></div>';
				document.getElementById('status_ajax_loader1').className = 'ajax_loader_invisible';
				document.getElementById('edit-password').disabled = false;
				document.getElementById('edit-email').disabled = false;
			} else {
				document.getElementById('status_ajax_loader1').className = 'ajax_loader_invisible';
				document.getElementById('edit-password').disabled = false;
				document.getElementById('edit-email').disabled = false;
				document.getElementById('status').innerHTML = status_table;
				document.getElementById('message-error').innerHTML = '';
				$("div.form-submit").hide();
				$("div.form-item").hide();
				$("div.or").hide();
				$("div.text_to_hide").hide();
				$("span.forgot_password").hide();
				$("div.status_table").slideDown("slow");
			}
}

function PrintStatusTable(status_table) {
	if(status_table == '0') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>The Tracking # entered is invalid.</li></ul></div>';
		document.getElementById('status_ajax_loader').className = 'ajax_loader_invisible';
		document.getElementById('edit-dog-tag').disabled = false;
	} else {
		document.getElementById('status_ajax_loader').className = 'ajax_loader_invisible';
		document.getElementById('edit-dog-tag').disabled = false;
		document.getElementById('status').innerHTML = status_table;
		document.getElementById('message-error').innerHTML = '';
		$("div.form-submit").hide();
		$("div.form-item").hide();
		$("div.text_to_hide").hide();
		$("div.or").hide();
		$("span.forgot_password").hide();
		$("div.status_table").slideDown("slow");
	}
}

function EmailCheck(email_check) {
	if(email_check == '0') {
		advanced_show_hide('e-mail', 'customer_info');						
	}else if(email_check == 'session_clear') {
		window.location.href = 'start';
		return false;
	} else {
		document.getElementById('zip_loader').innerHTML = '';
		document.getElementById('customer-information').submit();
	}
}

var global_errors;

 function ZipCheck(zip_check) {
		if(zip_check == '0') 
		{
			global_errors +="<li>Please enter valid Zip Code.</li>";
		}

		if(zip_check == 'session_clear') 
		{
			window.location.href = 'start';
			return false;
		}
		
		if ( document.getElementById("edit-first-name").value.replace(/[ \t\r\n]*/g, "" ) == "" )
		{
			global_errors +="<li>Please enter your First Name.</li>";
		}
		if (document.getElementById("edit-last-name").value.replace(/[ \t\r\n]*/g, "") == "" )
		{
			global_errors +="<li>Please enter your Last Name.</li>";
		}
		if (document.getElementById("edit-address-1").value.replace(/[ \t\r\n]*/g, "") == "" )
		{
			global_errors +="<li>Please enter your Address.</li>";
		}
		if (document.getElementById("edit-city").value.replace(/[ \t\r\n]*/g, "") == "" )
		{
			global_errors +="<li>Please enter your City.</li>";
		}
		
		
		if (document.getElementById("edit-email").value.replace(/[ \t\r\n]*/g, "" ) == "" )
		{
			global_errors +="<li>Please enter your e-mail address.</li>";
		}
		
		var email_re = /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$/;
		if (!email_re.test(document.getElementById("edit-email").value))
		{
			global_errors +="<li>Invalid e-mail address.</li>";
		}
		
		if(document.getElementById("edit-email").value != document.getElementById("edit-confirm-email").value) {
			global_errors +="<li>Email addresses entered do not match.</li>";
		}
		
		global_errors += "</ul></div>";
		if(global_errors != '<div class="messages error"><a href="#" id="errors_anchor"></a><ul></ul></div>') {
			document.getElementById('message-error').innerHTML = global_errors;
			document.getElementById('errors_anchor').focus();
			$('#zip_loader').removeClass('zip-loader');
			return false;	
		} else {
			document.getElementById('message-error').innerHTML = '';
			var email_check = $.post('offer/email_security_check_js', {email:document.getElementById("edit-email").value}, EmailCheck);
				return true;
		}
}

function EmailLoginCheck(email_check) {
	var email = document.getElementById('edit-e-mail').value;
	if(email_check == '1') {
		document.getElementById("edit-email").value=email;
		document.getElementById('edit-e-mail').disabled=false;
		document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_invisible';
		advanced_show_hide('password','e-mail');	
		return;
	} else if(email_check == '0') {
		set_tabindex();
		if(!customer_hack) {
			clear_customer();
		}
		if(document.getElementById("edit-email")) {
			document.getElementById("edit-email").value=email;
		}
		document.getElementById('edit-e-mail').disabled=false;
		document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_invisible';
		advanced_show_hide('customer_info','e-mail');	
		return;
	} else if(email_check == '3') {
        document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Please, login <a href="?q=in-store">here</a></li></ul></div>';
		document.getElementById('errors_anchor').focus();
        document.getElementById('edit-e-mail').disabled=false;
		document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_invisible';
        return;
    } else if(email_check == '4') {
        document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Please, login <a href="?q=user/ccr">here</a></li></ul></div>';
		document.getElementById('errors_anchor').focus();
        document.getElementById('edit-e-mail').disabled=false;
		document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_invisible';
        return;
    } else {
		populate_customer(email_check);
		set_tabindex();
		document.getElementById('edit-e-mail').disabled=false;
		document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_invisible';
		advanced_show_hide('customer_info','e-mail');
		return;
	}
}

function ChangeRewardsToken(rewards_token){
	var form = document.getElementById('rewards-form');
	var token = document.createElement("INPUT");
	token.setAttribute("id","edit-rewards-form-form-token");
	token.setAttribute("type","hidden");
	token.setAttribute("name","form_token");
	token.setAttribute("value",rewards_token);
	//form.appendChild(token);
}

function ChangeCustomerToken(customer_token){
	var form = document.getElementById('customer-information');
	var token = document.createElement("INPUT");
	token.setAttribute("id","edit-customer-information-form-token");
	token.setAttribute("type","hidden");
	token.setAttribute("name","form_token");
	token.setAttribute("value",customer_token);
	form.appendChild(token);
}

function DrupalLogin(success) {
	if(success == 'false') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Please, enter password that accompanies your E-mail</li></ul></div>';
		document.getElementById('edit-member-password').disabled=false;
		document.getElementById('password_ajax_loader').className = 'ajax_loader_invisible';
		document.getElementById('errors_anchor').focus();
		return;
	} else {
		document.getElementById('message-error').innerHTML = '';
		try {eval("var output = " + success);} catch (e) {return false;}
		if(output['sony_soap_error']) {
			document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>'+output['sony_soap_error']+'</li></ul></div>';
			document.getElementById('edit-member-password').disabled=false;
			document.getElementById('password_ajax_loader').className = 'ajax_loader_invisible';
			document.getElementById('errors_anchor').focus();
			return;
		}
		var rewards_token = $.post('offer/form_token', {id:'rewards_form'},ChangeRewardsToken);
		var customer_token = $.post('offer/form_token', {id:'customer_information'},ChangeCustomerToken);
		populate_customer(success);
		set_tabindex();
		document.getElementById('edit-member-password').disabled=false;
		document.getElementById('password_ajax_loader').className = 'ajax_loader_invisible';
		advanced_show_hide('customer_info','password');
		// Hide checkbox if user registered before
		if (document.getElementById('NEWSLETTER_AT_REGISTER'))
			document.getElementById('NEWSLETTER_AT_REGISTER').style.display = 'none';
        $("div.learned_form").html('');
		return;
	}
	
}

function ups_link_result(link_ajax){
	if(link_ajax == 2 || link_ajax == 0 || link_ajax == 1) {
		$("#ups_link").removeClass('small-loader');
		document.getElementById('ups_link').innerHTML = 'Sorry, but the address you entered is not found in the UPS database.';
	} else {
		link=link_ajax;
		$("#ups_link").removeClass('small-loader');
		document.getElementById('ups_link').innerHTML = '<a href="javascript:ups_page()" class="red-link">Click here for the list of nearest drop-off locations.</a>';
	}
}

function show_hide(id, img, url) {
	document.getElementById('message-error').innerHTML = '';
	if(i!=0) {
		document.getElementById('dev_type_img'+i).src = img+i+'.jpg';
	}
	document.getElementById('dev_type_img'+id).src = img+id+'_checked.jpg';

	if(!show && i==id) {	
		$("div.properties"+id).slideUp("slow");
		document.getElementById('dev_type_img'+id).src = img+id+'.jpg';
		show=true;
		return;
	} else if(show && i==id) {
		$("div.properties"+id).slideDown("slow");
		show = false;
		return;
	} else if(i==0 && show) {
		ajaxLoad(id, url);
		show = false;
		i=id;
		return;
	} else if(i!=id && show) {
		ajaxLoad(id, url);
		show = false;
		if(document.getElementById('properties_form'+i)) {
			document.getElementById('properties_form'+i).innerHTML = '';
		}
		i=id;
	} else if(i!=id && !show) {
		$("div.properties"+i).slideUp("slow");
		ajaxLoad(id, url);
		show = false;
		if(document.getElementById('properties_form'+i)) {
			document.getElementById('properties_form'+i).innerHTML = '';
		}
		i=id;
		return;
	}
	
	
}

function advanced_show_hide(show, hide) {
	if(rewards_hardcode) {
		document.getElementById('message-error').innerHTML = '';
		if(show == 'e-mail' || show == 'customer_info') {
			$("#item_3").attr('id', 'active_3');
			$("#active_2").attr('id', 'item_2');
			$("#item_1").attr('id', 'empty_i');
			$("#m_3_item").attr('id', 'active_3');
		}
		if(show == 'choose_rewards') {
			$("#item_2").attr('id', 'active_2');
			$("#active_3").attr('id', 'item_3');
    		$("#empty_i").attr('id', 'item_1');
			$("#active_3").attr('id', 'm_3_item');

		}
		$("div."+hide).slideUp("slow");
		$("div."+show).slideDown("slow");
	}
}

function ajaxLoad(id, url) {
	dev_type_id = id;
	document.getElementById('ajax_loader'+id).className = 'markup_ajax_img_visible';
	var properties_form = $.get(url, LoadPropertiesForm);
	return;
}

function clear_select(clear_obj) {
	var j=0;
	var length=0;
	length = clear_obj.length;
	for(j=length; j!=0; j--){
		clear_obj.remove(j);
	}
}




function ajaxChangeManufacturer(event, dev_type,dev_manufacturer) {
    if(prev_manufacturer != dev_manufacturer) {
		$('#model_ajax_loader').addClass('ajax_loader_visible');
		var model=document.getElementById('edit-device-model');
		model.disabled=true;
		clear_select(model);
		if(event == null) {
                    models_ajax_running = true;
                    var models = $.get('?q=offer/get_models_js&dev_type='+dev_type+'&dev_manufacturer='+dev_manufacturer,
                    setModels);
                } else {
                    if(event.keyCode == 38 || event.keyCode == 40) {
                        models_timer_active = true;
                        models_load_timeout = setTimeout("modelsLoad("+dev_type+", "+dev_manufacturer+")", 3000);
                    }
                }
    }
    prev_manufacturer = dev_manufacturer;
}

function modelsLoad(dev_type, dev_manufacturer) {
    models_timer_active = false;
    if(dev_manufacturer == $('#edit-device-manufacturer > option:selected').val()) {
        models_ajax_running = true;
        var models = $.get('?q=offer/get_models_js&dev_type='+dev_type+'&dev_manufacturer='+dev_manufacturer,
                            setModels);
    }
}

function ajaxGetFeatureQuestions(event, id,dev_manufacturer,dev_model) {
    if(dev_model != prev_model) {
	$("#edit-submit").attr("disabled", "disabled");
	var questions_div = document.getElementById('feature_question');
	var model=document.getElementById('edit-device-model');
	var manufacturer=document.getElementById('edit-device-manufacturer');
	if(event == null) {
            features_ajax_running = true;
            var feature_questions = $.get('?q=offer/get_feature_questions_js&dev_type='+id+'&dev_manufacturer='+dev_manufacturer+'&dev_model='+dev_model, setFeatureQuestions);
        } else {
             if(event.keyCode == 38 || event.keyCode == 40) {
                 features_timer_active = true;
                 features_load_timeout = setTimeout("featureQuestionsLoad("+id+","+dev_manufacturer+","+dev_model+")", 3000);
             }
        }
    }
    prev_model = dev_model;
    return;
}

function featureQuestionsLoad(id,dev_manufacturer,dev_model) {
    features_timer_active = false;
    if(dev_model == $('#edit-device-model > option:selected').val()) {
        features_ajax_running = true;
        var feature_questions = $.get('?q=offer/get_feature_questions_js&dev_type='+id+'&dev_manufacturer='+dev_manufacturer+'&dev_model='+dev_model, setFeatureQuestions);
    }
}

function ajaxRewardSubmit() {
	document.getElementById('message-error').innerHTML = '';
	var errors = '';
	errors = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul>';
	var reward_id = $(":radio:checked").val();
    try {
        if (document.getElementById("edit-agree-"+reward_id).checked == false)
        {
            var checkbox_html = $("table.rewards_table > tbody > tr > td:has(input#edit-agree-"+reward_id+")").html();
            var checkbox_text = checkbox_html.replace(/<(input|INPUT) [a-z="\-0-9 \/]{1,}>/g, "");
            checkbox_text = checkbox_text.replace(/<(br|BR) ?\/?>/g," ");
            errors += "<li>"+checkbox_text.replace(/[Ii]{1} agree/g, "You must agree")+"</li>";
            $("#edit-agree").addClass('error');
        }
    } catch(e) {
        ;
    }
	
	errors += "</ul></div>";
	if(errors != '<div class="messages error"><a href="#" id="errors_anchor"></a><ul></ul></div>') {
		document.getElementById('message-error').innerHTML = errors;
		document.getElementById('errors_anchor').focus();
		rewards_hardcode = false;
		return false;	
	} else {
		rewards_hardcode = true;
		document.getElementById('message-error').innerHTML = '';
		$("#edit-agree").removeClass('error');
		var reward_form = document.getElementsByName('reward');
		var length = reward_form.length;
		if(length != 0) {
			for(var i=0;i<length; i++) {
				if(reward_form[i].checked) {
					id = reward_form[i].value;
				}
			}
			document.getElementById('edit-reward-id').value = id;
		} else {
			return;
		}
	}
	
}

function validateForm(form_name) {

	document.getElementById('message-error').innerHTML = '';
	var errors = '';
	errors = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul>';

	if(form_name == 'properties') {
        if($("#edit-release-form").attr('name') == 'release_form') {
            if($("#edit-release-form").attr('checked') == false) {
                errors +="<li>Please confirm that you have printed the diagnostic release form and the customer has signed</li>";
            }
        }
		if (document.getElementById("edit-device-manufacturer").value == '0')
		{	
				errors +="<li>Please provide an answer to the question: "+document.getElementById("manufacturer_text").innerHTML+"</li>";
	
		}
		if (document.getElementById("edit-device-model").value == '0')
		{
			errors +="<li>Please provide an answer to the question: "+document.getElementById("model_text").innerHTML+"</li>";

		}
		if(document.getElementById("edit-device-feature")) {	
			if (document.getElementById("edit-device-feature").value == '0' && document.getElementById("edit-device-feature").type != 'hidden')
			{
				
					errors +="<li>Please provide an answer to the question: "+document.getElementById("feature_text").innerHTML+"</li>";
	
			}
		}
		
		var question_names = new Array();
		var prev_name = "";
		var j = 0;
		var question_id;
		for(var i = 0; i < $("*[name*=device_questions]").length; i++) {
			if($("*[name*=device_questions]:eq("+i+")").attr('name') != prev_name && !$("*[name*=device_questions]:eq("+i+")").attr('disabled')) {
				question_id = $("*[name*=device_questions]:eq("+i+")").attr('name').replace('device_questions[', "");
				question_id = question_id.replace(']', "");
				question_names[question_id] = $("*[name*=device_questions]:eq("+i+")").attr('name');
			}
			prev_name = $("*[name*=device_questions]:eq("+i+")").attr('name');
		}
		var question;
		for (var i = 0; i < question_names.length; i++) {
			if(question_names[i] == null) {
				continue;
			}
			question = question_names[i];
			question_id = question.replace('device_questions[', "");
			question_id = question_id.replace(']', "");
			if($("*[name*='"+question+"']").length == 2) {
				if($("*[name*='"+question+"']:checked").length == 0) {
					errors +="<li>Please provide an answer to the question: "+$("span[id=question_"+question_id+"]").text()+"</li>";
				}
			} else {
				if($("*[name*='"+question+"']").attr('type') == 'text') {
					if($("*[name*='"+question+"']").val() == "") {
						errors +="<li>Please provide an answer to the question: "+$("span[id=question_"+question_id+"]").text()+"</li>";
					}
				} else {
					if($("*[name*='"+question+"'] > option:selected").val() == '0') {
						errors +="<li>Please provide an answer to the question: "+$("span[id=question_"+question_id+"]").text()+"</li>";
					}
				}
			}
			if($("#free_form_code").css('display') == 'block' && question == "device_questions[54]") {
				var unlock_code = $("#edit-device-questions-free-form-54").val();
				if(unlock_code == '') {
					errors +="<li>Please provide Unlock Code or Password</li>";
				} else if(!unlock_code.match(/^[0-9A-Za-z]{1,}$/)) {
					errors +="<li>Entered unlock code is not valid. Only alphanumeric characters are allowed</li>";
				} 
			}
		}

		
		if(document.getElementById("edit-source-tracking")) {
			if(document.getElementById("edit-source-tracking").value == '') {
				errors +="<li>Please enter source Tracking #</li>";
				errors += "</ul></div>";
				if(errors != '<div class="messages error"><a href="#" id="errors_anchor"></a><ul></ul></div>') {
					document.getElementById('message-error').innerHTML = errors;
					document.getElementById('errors_anchor').focus();
					return false;
				} else {
					document.getElementById('message-error').innerHTML = '';
					return "dfsdfsd";
				}
			} else {
				global_errors = errors;
				var status_table = $.get('?q=get_status_table&dog_tag='+document.getElementById('edit-source-tracking').value, PrintStatus);
			}
		} else {
			errors += "</ul></div>";
			if(errors != '<div class="messages error"><a href="#" id="errors_anchor"></a><ul></ul></div>') {
				document.getElementById('message-error').innerHTML = errors;
				document.getElementById('errors_anchor').focus();
				return false;
			} else {
				document.getElementById('message-error').innerHTML = '';
				return "dfsdfsd";
			}
		}
		
		return false;
		
	} else if(form_name == 'customer') {
		
		function getElValue(el) {
			switch(el.tagName) {
				case 'TEXTAREA':
				case 'SELECT':
				case 'INPUT':
					if (el.type=='checkbox')
						return el.checked ? 1 : 0;
					return el.value;
			}
			return null;
		}
		document.getElementById('message-error').innerHTML = '';

		// validate form data
		form = document.getElementById('customer-information');
		post = {};
		var e, el;
		for (e in form.elements) {
			el = form.elements[e];
			if (el) {
				$('#' + el.id).removeClass('error');
				post[el.name] = getElValue(el);
			}
		}
		$.post('offer/form_validate_js', post, function(errors){
			try {eval("json = " + errors);} catch (e) {return false;}
			errors = '';
			if (json.total>0){
				var er = json.customer_errors;
				for (e in er) {
					$('#' + form[e].id).addClass('error');
					errors += "<li>" + er[e] + "</li>";
				}
				var er = json.shipper_errors;
				for (e in er) {
					$('#' + form['shipper[' + e + ']'].id).addClass('error');
					errors += "<li>" + er[e] + "</li>";
				}
				document.getElementById('message-error').innerHTML =
					'<div class="messages error"><a href="#" id="errors_anchor"></a><ul>' + errors + '</ul></div>';
				// document.getElementById('errors_anchor').focus();
				return false;
			} else {
				shipper_form_enable(true);
				if (form.submit)
				form.submit();
			}
		});
		return false;
	}
	global_errors = errors;
}

function shipper_form_enable(pre_submit) {
	if($("#edit-not-shipper").attr('checked')) {
		if (pre_submit) {
			$("input[name*='shipper']").removeAttr('disabled');
			$("select[name*='shipper']").removeAttr('disabled');
			$("#edit-shipper-check").removeAttr('disabled');
		} else {
			$("input[name*='shipper']").attr('disabled', 'disabled');
			$("select[name*='shipper']").attr('disabled', 'disabled');
			$("#edit-shipper-check").removeAttr('disabled');
		}

		$("#edit-shipper-first-name").val($("#edit-first-name").val());
		$("#edit-shipper-last-name").val($("#edit-last-name").val());
		$("#edit-shipper-city").val($("#edit-city").val());
		$("#edit-shipper-phone-number-1").val($("#edit-phone-number-1").val());
		$("#edit-shipper-phone-number-2").val($("#edit-phone-number-2").val());
		$("#edit-shipper-phone-number-3").val($("#edit-phone-number-3").val());
		$("#edit-shipper-address-1").val($("#edit-address-1").val());
		$("#edit-shipper-address-2").val($("#edit-address-2").val());
		$("#edit-shipper-zip-code").val($("#edit-zip-code").val());
		$("#edit-shipper-state").val($("#edit-state").val());
        $("#edit-not-shipper").removeAttr('disabled');
	} else {
		if (!pre_submit) {
			$("input[name*='shipper']").removeAttr('disabled');
			$("select[name*='shipper']").removeAttr('disabled');
			$("#edit-shipper-check").removeAttr('disabled');

			$("#edit-shipper-first-name").val('');
			$("#edit-shipper-last-name").val('');
			$("#edit-shipper-city").val('');
			$("#edit-shipper-phone-number-1").val('');
			$("#edit-shipper-phone-number-2").val('');
			$("#edit-shipper-phone-number-3").val('');
			$("#edit-shipper-address-1").val('');
			$("#edit-shipper-address-2").val('');
			$("#edit-shipper-zip-code").val('');
			$("#edit-shipper-state").val('AE');
		}
	}
}

function email_validate(email) {
	if(email=='') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Please, enter your E-mail</li></ul></div>';
		document.getElementById('errors_anchor').focus();
		return;
	}
	
	var email_re = /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$/;
	if (!email_re.test(email))
	{	
		document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Invalid e-mail address.</li></ul></div>';
		document.getElementById('errors_anchor').focus();
		return;
	}

	email_g = email;
	document.getElementById('edit-e-mail').disabled=true;
	document.getElementById('e-mail_ajax_loader').className = 'ajax_loader_visible';
	var email_check = $.post('offer/email_check_js', {email:email}, EmailLoginCheck);
}

function populate_customer(customer_info) {
	// customer_info = customer_info.split(',');
	try {eval(" customer_info = " + customer_info);} catch (e) {return false;}
	if(customer_info[0] != ' ') {
        for(var i in customer_info) {
            if(customer_info[i] == 'null') {
                customer_info[i] = '';
            }
        }
		document.getElementById("edit-first-name").value=customer_info['first_name'];
		document.getElementById("edit-last-name").value=customer_info['last_name'];
		document.getElementById("edit-address-1").value=customer_info['address_1'];
		document.getElementById("edit-address-2").value=customer_info['address_2'];
		document.getElementById("edit-phone-number-1").value=customer_info['phone_number_1'];
		document.getElementById("edit-phone-number-2").value=customer_info['phone_number_2'];
		document.getElementById("edit-phone-number-3").value=customer_info['phone_number_3'];
		document.getElementById("edit-city").value=customer_info['city'];
		document.getElementById("edit-zip-code").value=customer_info['zip_code'];
		document.getElementById("edit-email").value=customer_info['email'];
		document.getElementById("edit-confirm-email").value=customer_info['email'];
	}
	
}
function clear_customer() {
	if(document.getElementById("edit-first-name")) {
		document.getElementById("edit-first-name").value='';
		document.getElementById("edit-last-name").value='';
		document.getElementById("edit-address-1").value='';
		document.getElementById("edit-address-2").value='';
		document.getElementById("edit-phone-number-1").value='';
		document.getElementById("edit-phone-number-2").value='';
		document.getElementById("edit-phone-number-3").value='';
		document.getElementById("edit-city").value='';
		document.getElementById("edit-zip-code").value='';
		document.getElementById("edit-email").value='';
		document.getElementById("edit-confirm-email").value='';
	}
	
}

function set_tabindex() {
//	if(document.getElementById("edit-first-name")) {
//		document.getElementById("edit-first-name").tabIndex = 1;
//		document.getElementById("edit-last-name").tabIndex = 2;
//		document.getElementById("edit-address-1").tabIndex = 8;
//		document.getElementById("edit-address-2").tabIndex = 9;
//		document.getElementById("edit-city").tabIndex = 10;
//		document.getElementById("edit-email").tabIndex = 3;
//		document.getElementById("edit-confirm-email").tabIndex = 4;
//		document.getElementById("edit-phone-number-1").tabIndex = 5;
//		document.getElementById("edit-phone-number-2").tabIndex = 6;
//		document.getElementById("edit-phone-number-3").tabIndex = 7;
//		document.getElementById("edit-zip-code").tabIndex = 11;
//	}
}

function login(password) {
	if(password=='') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><a href="#" id="errors_anchor"></a><ul><li>Please, enter your Password</li></ul></div>';
		document.getElementById('errors_anchor').focus();
		return;
	}
	document.getElementById('edit-member-password').disabled=true;
	document.getElementById('password_ajax_loader').className = 'ajax_loader_visible';
	var drupal_login = $.post('offer/member_login_js',{email:email_g,pass:password}, DrupalLogin);
}

function check_my_status() {
	if(document.getElementById('edit-dog-tag').value == '' && document.getElementById('edit-email').value == '' && document.getElementById('edit-password').value == '') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>Please enter Tracking# or e-mail and password.</li></ul></div>';
		return;
	}else if(document.getElementById('edit-dog-tag').value != '' && document.getElementById('edit-email').value != '') {
		document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>Please enter Tracking# <b>OR</b> e-mail and password.</li></ul></div>';
		return;
	}
	if(document.getElementById('edit-email').value != '') {
		var email_re = /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$/;
		if(email_re.test(document.getElementById('edit-email').value)) {
			if(document.getElementById('edit-password').value == '') {
				document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>Please enter password for this email.</li></ul></div>';
				return;
			}
			document.getElementById('status_ajax_loader1').className = 'ajax_loader_visible';
			document.getElementById('edit-password').disabled = true;
			document.getElementById('edit-email').disabled = true;
			var status_table = $.post('?q=get_status_table',{email:document.getElementById('edit-email').value,pass:document.getElementById('edit-password').value}, PrintRecyclingsTable);
		} else {
			document.getElementById('message-error').innerHTML = '<div class="messages error"><ul><li>Please enter valid email.</li></ul></div>';
			return;
		}
	} else if(document.getElementById('edit-dog-tag').value != '') {
			document.getElementById('status_ajax_loader').className = 'ajax_loader_visible';
			document.getElementById('edit-dog-tag').disabled = true;
			var status_table = $.get('?q=get_status_table&dog_tag='+document.getElementById('edit-dog-tag').value, PrintStatusTable);
	}
	
}
function EnterSubmit(e, callback, callback_arguments){
	var keynum;
	if(window.event) 
	{
		keynum = e.keyCode;
	}
	else if(e.which)
	{
		keynum = e.which;
	}
	if(keynum==13) {
//XXX in-store
//		switch(callback) {
//			case 'check_my_status':
//				check_my_status();
//				break;
//			case 'login':
//				login(callback_arguments[0]);
//				break;
//			case 'email_validate':
//				email_validate(callback_arguments[0]);
//				break;
//			case 'ajaxRewardSubmit':
//				ajaxRewardSubmit();
//				break;
//			case 'advanced_show_hide':
//				advanced_show_hide(callback_arguments[0], callback_arguments[1]);
//				break;
//			case 'click':
//				document.getElementById(callback_arguments[0]).click();
//				break;
//		}
        var args_array = new Array();
        if(callback_arguments.length > 0) {
            for(var i = 0; i < callback_arguments.length; i++) {
                args_array[i] = 'callback_arguments['+i+']';
            }
            eval(callback+'('+args_array.join(', ')+');');
        } else {
            eval(callback+'();');
        }
	}
}



var link = 666;

function ups_page() {
	window.open(link, "UPS_Locator", "status=no,toolbar=no, menubar=yes, height=800, width=610, scrollbars=1");
}

function ajax_ups_link_get(address, city, state, zip, key) {
	document.getElementById('ups_link').innerHTML = 'Loading the list of nearest drop-off locations';
	$("#ups_link").addClass('small-loader');
	setTimeout("ajax_timeout()",25000);
	var link_ajax = $.post('ups_page.php', {address: address, city: city, state: state, zip: zip, key: key},ups_link_result);
}

function ajax_timeout() {
	if(document.getElementById('ups_link').innerHTML == 'Loading the list of nearest drop-off locations') {
		document.getElementById('js_exception').innerHTML = 'timeout';
		$("#ups_link").removeClass('small-loader');
		document.getElementById('ups_link').innerHTML = 'Sorry, but the address you entered is not found in the UPS database.'
	}
}
