﻿jQuery.noConflict();

function processEnquiry(){
	var myajax=ajaxpack.ajaxobj
	var myfiletype=ajaxpack.filetype
	//openDiscount();
	if (myajax.readyState == 4){ //if request of file completed
		if (myajax.status==200 || window.location.href.indexOf("http")==-1){ //if request was successful or running script locally
			var xmldoc = myajax.responseXML;

            var root = xmldoc.getElementsByTagName('enquiry')[0];
            var name = root.getElementsByTagName('name')[0].firstChild.nodeValue;
            var input_form = root.getElementsByTagName('input_form')[0].firstChild.nodeValue;
            var response_type = root.getElementsByTagName('response_type')[0].firstChild.nodeValue;

			switch (response_type) {
				case "email_error":
					showError("Please enter a valid email address.",input_form);
					break;
				case "send_error":
					showError("There has been an error. Please try again.",input_form);
					break;
				case "success":
					setTimeout(function(){
						doSuccess(name,input_form);
					}, 1000);
					break;
			}
			
		}
	}
}

/*********************** CREATE POST STRING FOR ENQUIRY FORM *************************/
function getEnquiryData(inputForm){
	var enquiryForm = document.getElementById(inputForm);
	for (var i=0;i<enquiryForm.length;i++)
	{
		if(i == 0){
			var postString = enquiryForm.elements[i].name + "=" + encodeURI(enquiryForm.elements[i].value);
		}
		else{
			postString += "&" + enquiryForm.elements[i].name + "=" + encodeURI(enquiryForm.elements[i].value);
		}
	}
	postString += "&input_form=" + inputForm;

	return postString;
}


function hideForm(inputForm){
	document.getElementById(inputForm).style.display = "none";
	document.getElementById(inputForm+'-loading').style.display = "block";
	return true;
}

function showError(message,inputForm){
	document.getElementById(inputForm+'-loading').style.display = "none";
	document.getElementById(inputForm).style.display = "block";
	if(document.all){
		document.getElementById(inputForm+'-errors').innerText = message;
	}
	else{
		document.getElementById(inputForm+'-errors').textContent = message;
	}
	document.getElementById(inputForm+'-errors').style.display = "block";
	return false;
}

function doSuccess(name,inputForm){
	document.getElementById(inputForm+'-loading').style.display = "none";
	if(inputForm == "signupForm"){
		document.getElementById(inputForm+'-success').innerHTML = "Thank you for signing up to the PG Branding newsletter, " + name + ".";
	}
	else{
		document.getElementById(inputForm+'-success').innerHTML = "Thank you for placing an Enquiry at PG Branding, " + name + ". Your enquiry has been received and one of our Sales Representatives will contact you shortly.<script type=\"text/javascript\">/* <![CDATA[ */var google_conversion_id = 1042120628;var google_conversion_language = \"en\";var google_conversion_format = \"3\";var google_conversion_color = \"ffffff\";var google_conversion_label = \"Xr6YCKSViQEQtP_18AM\";var google_conversion_value = 0;/* ]]> */</script><script type=\"text/javascript\" src=\"http://www.googleadservices.com/pagead/conversion.js\"></script><noscript><div style=\"display:inline;\"><img height=\"1\" width=\"1\" style=\"border-style:none;\" alt=\"\" src=\"http://www.googleadservices.com/pagead/conversion/1042120628/?label=Xr6YCKSViQEQtP_18AM&amp;guid=ON&amp;script=0\"/></div></noscript>";
	}
	
	document.getElementById(inputForm+'-success').style.display = "block";
	return false;
}

function validateForm(inputForm, requestAction){
	hideForm(inputForm);
	
	var enquiryForm = document.getElementById(inputForm);
	var errors = new Array();
	var error_count = 0;
	
	for (var i=0;i<enquiryForm.length;i++)
	{
		var inputValue = enquiryForm.elements[i].value;

		if((inputValue == "" || inputValue.indexOf('...') != -1) && strpos(enquiryForm.elements[i].className, "required-entry") !== false ){
			if(enquiryForm.elements[i].name.indexOf("[") != -1){
				var iName = enquiryForm.elements[i].name
				iName = iName.substring(0,iName.indexOf("["));
				var found = false;
				for (var j in errors){
					if(errors[j] == ucwords(iName.replace("_"," "))){
						found = true;
					}
				}
				if(found == false){
					errors[error_count] = ucwords(iName.replace("_"," "));
					error_count = 1 + error_count;
				}
			}
			else{
				errors[error_count] = ucwords(enquiryForm.elements[i].name.replace("_"," "));
				error_count = 1 + error_count;
			}
		}
	}
	
	if(error_count > 0){
		error_string = "Please enter your ";
		if(error_count > 1){
			for(var i = 0; i < error_count; i++){
				if(i == (error_count - 1)){
					error_string += "and " + errors[i] + ".";
				}
				else if(i == (error_count - 2)){
					error_string += errors[i] + " ";
				}
				else{
					error_string += errors[i] + ", ";
				}
			}
		}
		else{
			error_string += errors[0] + ".";
		}
		setTimeout(function(){
			showError(error_string,inputForm);
		}, 500);
	}
	else{
		// send!
		ajaxpack.postAjaxRequest(ajaxpack.basedomain + requestAction,getEnquiryData(inputForm),processEnquiry,'xml');
	}
}

function strpos (haystack, needle, offset) {
    var i = (haystack+'').indexOf(needle, (offset || 0));
    return i === -1 ? false : i;
}

function ucwords (str) {
    return (str + '').replace(/^([a-z])|\s+([a-z])/g, function ($1) {
        return $1.toUpperCase();
    });
}

