var http_request = false;
var max_value_alert = false;

function makePromotionalFormRequest(url) {

	XmlHttpRequest();
//	alert(url);

	http_request.onreadystatechange = function() {
//		alert(http_request.status);
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
//			    alert(http_request.responseText);
				document.getElementById('promotional_form_id').innerHTML = http_request.responseText;
			} else {
				alert('There was a problem with the request.');
			}
		}
	}

	http_request.open('GET', url, true);
    http_request.send(null);
}

function makeRequest(url) {

	XmlHttpRequest();
//	alert(url);

	http_request.onreadystatechange = function() {
//		alert(http_request.status);
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
//			    alert(http_request.responseText);
				document.getElementById('dim_id').innerHTML = http_request.responseText;
			} else {
				alert('There was a problem with the request.');
			}
		}
	}

	http_request.open('GET', url, true);
    http_request.send(null);
}

function XmlHttpRequest() {
	if (window.XMLHttpRequest) {
        http_request = new XMLHttpRequest();
    } else if (window.ActiveXObject) {// IE
        http_request = new ActiveXObject("Microsoft.XMLHTTP");
    }
}

function submit_promotional_label(obj)
{
	var reg_email = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    var reg_num = /^([1-9]){1}([0-9])*$/;
    var email_address = obj.email.value;
	
    if ((obj.product_shape.value == '6' || obj.product_dimension.value == '31' || obj.product_material.value == '17'|| obj.quantity1.value == '5000+' || obj.quantity2.value == '5000+' || obj.quantity3.value == '5000+')) {
        if (max_value_alert == false && obj.other_info.value != '') {
            alert('We can print just about any size/ shape/material/quantity. However as your requirement is not within our online price list please enter more details in \'Additional info\' section in the form explaining specific size/ shape/material/qty .');
            max_value_alert = true;
    		obj.add_info.focus();
            return false;
        } else if (obj.other_info.value == '') {
            alert('We can print just about any size/ shape/material/quantity. However as your requirement is not within our online price list please enter more details in \'Additional info\' section in the form explaining specific size/ shape/material/qty .');
    		obj.add_info.focus();
            return false;
        }
    }

    if (obj.product_shape.value == '-1') {
        alert("Please select label shape");
		obj.product_shape.focus();
        return false;
    } else if (obj.product_dimension.value == '-1') {
        alert("Plese select dimension");
		obj.product_dimension.focus();
        return false;
    } else if (obj.quantity1.value == '-1') {
        alert("Plese select quantity");
		obj.quantity1.focus();
        return false;
	} else if (obj.artwork.value == '-1') {
        alert("Plese select art work");
		obj.artwork.focus();
        return false;
    } else if (obj.name.value == '') {
        alert("Plese enter your name");
		obj.name.focus();
        return false;
    } else if (email_address == '') {
        alert("Plese enter your email address");
		obj.email.focus();
        return false;
    } else if (reg_email.test(email_address) == false) {
        alert('Invalid Email Address');
		obj.email.focus();
        return false;
    } else if (obj.company_name.value == '') {
        alert("Plese enter company name");
		obj.company_name.focus();
        return false;
    } else if (obj.phone.value == '') {
        alert("Plese enter phone number");
		obj.phone.focus();
        return false;
    }

}

function submit_calculation_label_form(obj)
{
	var reg_email = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    var reg_num = /^([1-9]){1}([0-9])*$/;
    var email_address = obj.email.value;
	var quantity_limit = parseInt(obj.quantity_limit.value);
	
    if (obj.product_shape.value == '-1') {
        alert("Please select label shape");
        return false;
    } else if (obj.label_width.value == '' && obj.product_shape.value != '2') {
        alert("Please enter label width");
        return false;
    } else if (reg_num.test(obj.label_width.value) == false && obj.product_shape.value != '2') {
        alert('Please enter numeric width');
        return false;
    } else if (obj.label_height.value == '' && obj.product_shape.value != '2') {
        alert("Plese enter label height");
        return false;
    } else if (reg_num.test(obj.label_height.value) == false && obj.product_shape.value != '2') {
        alert('Please enter numeric height');
        return false;
    } else if (obj.product_shape.value == '2') {
        if (obj.label_diameter.value == '') {
		   alert("Please enter diameter");
			return false;
	    } else if (reg_num.test(obj.label_diameter.value) == false) {
		    alert('Please enter numeric diameter');
			return false;
	    }
    } else if (obj.quantity1.value == '') {
        alert("Plese enter quantity");
        return false;
    } else if (reg_num.test(obj.quantity1.value) == false) {
        alert('Please enter numeric quantity');
        return false;
    } else if (obj.artwork.value == '-1') {
        alert("Plese select art work");
        return false;
    } else if (obj.product_material.value == '-1') {
        alert("Plese select material");
        return false;
    } else if (obj.product_presentation.value == '-1') {
        alert("Plese select presentation");
        return false;
    } else if (obj.name.value == '') {
        alert("Plese enter your name");
        return false;
    } else if (email_address == '') {
        alert("Plese enter your email address");
        return false;
    } else if (reg_email.test(email_address) == false) {
        alert('Invalid Email Address');
        return false;
    } else if (obj.company_name.value == '') {
        alert("Plese enter company name");
        return false;
    } else if (obj.phone.value == '') {
        alert("Plese enter phone number");
        return false;
    }

	if (parseInt(obj.quantity1.value) > quantity_limit || parseInt(obj.quantity2.value) > quantity_limit || parseInt(obj.quantity3.value) > quantity_limit || parseInt(obj.quantity4.value) > quantity_limit || parseInt(obj.quantity5.value) > quantity_limit || parseInt(obj.quantity6.value) > quantity_limit) {
		alert ("For order over " +quantity_limit+ " please contact us for a quote");
		return false
	}
	
	if (check_width(document.FrmPromotionalLabel.label_width.value)) {
		if (check_height(document.FrmPromotionalLabel.label_height.value)) {
			if (check_diameter(document.FrmPromotionalLabel.label_diameter.value))
				return true;
			else return false;
		} else return false;
	} else return false;

}

function clear_field() {
	if (document.FrmPromotionalLabel.other_info.value == '') {
		document.FrmPromotionalLabel.add_info.value = "";
	}
}

function set_data(val) {
	document.FrmPromotionalLabel.other_info.value = val;
}

function show_dimensions(val) {
	material_id = document.FrmPromotionalLabel.product_material.value;
	if (material_id == 4 || material_id == 5) {
		url = 'promotional_label.process.php'+'?dim_id='+val;
		makeRequest(url);
	} else {
		if (val == 2) {
			document.getElementById('lbl_diameter').style.display = "";
			document.getElementById('lbl_diameter').style.visiblity = "visible";
			document.getElementById('lbl_height').style.display = "none";
			document.getElementById('lbl_height').style.visiblity = "hidden";
			document.getElementById('lbl_width').style.display = "none";
			document.getElementById('lbl_width').style.visiblity = "hidden";
		} else {
			document.getElementById('lbl_height').style.display = "";
			document.getElementById('lbl_height').style.visiblity = "visible";
			document.getElementById('lbl_width').style.display = "";
			document.getElementById('lbl_width').style.visiblity = "visible";
			document.getElementById('lbl_diameter').style.display = "none";
			document.getElementById('lbl_diameter').style.visiblity = "hidden";
		}
	}
}

function check_width (val) {

    var reg_num = /^([1-9]){1}([0-9])*$/;
	var max_width = parseInt(document.FrmPromotionalLabel.max_width.value);
	var min_width = parseInt(document.FrmPromotionalLabel.min_width.value);

	if (val != "" && document.FrmPromotionalLabel.product_shape.value != '2')	{
		if (reg_num.test(val) == false) {
			alert('Please enter numeric width');
			document.FrmPromotionalLabel.label_width.focus();
			return false;
		} else if (val > max_width) {
			alert('Maximum width can be '+max_width);
			document.FrmPromotionalLabel.label_width.focus();
			return false;
		} else if (val < min_width) {
			alert('Minimum width can be '+min_width);
			document.FrmPromotionalLabel.label_width.focus();
			return false;
		}
	}
	return true;
}

function check_height (val) {
	var reg_num = /^([1-9]){1}([0-9])*$/;
	var max_height = parseInt(document.FrmPromotionalLabel.max_height.value);
	var min_height = parseInt(document.FrmPromotionalLabel.min_height.value);

	if (val != "" && document.FrmPromotionalLabel.product_shape.value != '2')	{
		if (reg_num.test(val) == false) {
			document.FrmPromotionalLabel.label_height.focus();
			alert('Please enter numeric height');
			return false;
		} else if (val > max_height) {
			alert('Maximum height can be '+max_height);
			document.FrmPromotionalLabel.label_height.focus();
			return false;
		} else if (val < min_height) {
			alert('Minimum height can be '+min_height);
			document.FrmPromotionalLabel.label_height.focus();
			return false;
		}
	}
	return true;
}

function check_diameter (val) {
	var reg_num = /^([1-9]){1}([0-9])*$/;
	var max_diameter = parseInt(document.FrmPromotionalLabel.max_diameter.value);
	var min_diameter = parseInt(document.FrmPromotionalLabel.min_diameter.value);

	if (val != "" && document.FrmPromotionalLabel.product_shape.value == '2')	{
		if (reg_num.test(val) == false) {
			document.FrmPromotionalLabel.label_diameter.value = '';
			document.FrmPromotionalLabel.label_diameter.focus();
			alert('Please enter numeric diameter');
			return false;
		} else if (val > max_diameter) {
			alert('Maximum diameter can be '+max_diameter);
			document.FrmPromotionalLabel.label_diameter.focus();
			return false;
		} else if (val < min_diameter) {
			alert('Minimum diameter can be '+min_diameter);
			document.FrmPromotionalLabel.label_diameter.focus();
			return false;
		}
	}
	return true;
}

function check_quantity (val) {
	var reg_num = /^([1-9]){1}([0-9])*$/;
	var quantity_limit = parseInt(document.FrmPromotionalLabel.quantity_limit.value);

	if (val != "")	{
		if (reg_num.test(val) == false) {
			alert('Please enter numeric quantity');
			return false;
		} else if (val > quantity_limit) {
			alert('For order over ' +quantity_limit+ ' please contact us for a quote');
			return false;
		}
	}
}

function show_promotional_form(val) {
	var html = "<img align='center' src='images/ajax-loader.gif'>";
	document.getElementById('promotional_form_id').innerHTML = html;
	url = 'promotional_label.process.php'+'?pro_id='+val;
	makePromotionalFormRequest(url);
}