//Error handling Constants 

reg_error_first_name      		= "Please enter first name";

reg_error_first_name_error 		= "Please enter correct first name";


reg_error_last_name      		= "Please enter last name";

reg_error_last_name_error 		= "Please enter correct last name";


reg_error_email_empty    		= "Please enter your email address";

reg_error_email_not_valid 		= "Please enter a valid email address";


reg_error_company				= "Please enter company name";

reg_error_company_error			= "Please enter correct company name";


reg_error_phone					= "Please enter a telephone number";

reg_error_phone_error			= "Please enter a valid telephone number";


function getLabelForId(id) {

    var label, labels = document.getElementsByTagName('label');

    for (var i = 0; (label = labels[i]); i++) {

        if (label.htmlFor == id) {

            return label;

        }

    }

    return false;

}



function checkRequired(id) {

    var formfield = document.getElementById(id);

    var label = getLabelForId(id);

    if (formfield.value.length == 0) {

        label.className = 'problem';

    } else {

        label.className = 'completed';

    }

}



function checkRequired1(id,name) {

	//alert(id);

    var formfield = document.getElementById(id);

    var label = getLabelForId(id);

	//alert(formfield.value);

    if (formfield.value.length == 0) {

    	//alert(name);

        label.className = '';/*problem*/

        formfield.style.border='1px solid #7F9DB9';/*#c00*/

        

    } else {

        label.className = 'completed';

        formfield.style.border='1px solid #0c0';

    }

}





function addEventOnFocus(obj){

	if(obj!=null){

//alert("obj:" + obj);

		addEvent(obj, 'focus', oninputfocus);

	}

}





function addEvent(obj, evType, fn){

    if (obj.addEventListener){

        obj.addEventListener(evType, fn, true);

        return true;

    } else if (obj.attachEvent){

        var r = obj.attachEvent("on"+evType, fn);

        return r;

    } else {

        return false;

    }

}



function oninputfocus(e) {

    /* Cookie-cutter code to find the source of the event */

    if (typeof e == 'undefined') {

        var e = window.event;

    }

    var source;

    if (typeof e.target != 'undefined') {

        source = e.target;

    } else if (typeof e.srcElement != 'undefined') {

        source = e.srcElement;

    } else {

        return;

    }

    /* End cookie-cutter code */

    source.style.border='1px solid #c00';

}





window.onload=function(){

init_box_msg_fields();

//checkCountry('Country');

//var label = getLabelForId('general_info');

//label.className = 'problem';



}



function isNumberInput(event) 

{

  var key, keyChar;



  if (window.event)

    key = window.event.keyCode;

  else if (event)

    key = event.which;

  else

    return true;

  // Check for special characters like backspace

  if (key == null || key == 0 || key == 8 || key == 13 || key == 27)

    return true;

  // Check to see if it's a number

  keyChar =  String.fromCharCode(key);

  if (/\d/.test(keyChar)) 

    {

     window.status = "";

     return true;

    } 

  else 

   {

    window.status = "Field accepts numbers only.";

    return false;

   }

}



var specialChars 	  = /[\(\)\<\>\,\'\.\~\`\|\?\}\{\/\!\@\#\$\%\^\&\*\_\+\-\=\;\:\\\"\[\]]/ ; // Used to check special characters for all

var specialCharsAll = /[\<\>\,\'\`\}\{\|\~\?\!\@\#\$\%\^\*\_\=\;\:\\\"\[\]]/ ;

var specialCharsZip = /[\<\>\,\'\`\}\{\|\~\?\/\!\@\#\$\%\^\&\*\_\=\;\:\\\"\[\]]/ ;

var specialCharsCommon = /[\<\>\`\}\{\|\~\?\!\@\$\%\^\*\_\=\;\:\\\"\[\]]/ ;

var specialCharsAlpha = /[a-zA-Z]/ ;

var specialCharsAlphaNum = /[0-9a-zA-Z]/ ;

var specialCharsAllAnd = /[\<\>\,\'\`\}\{\|\~\?\/\!\@\#\$\%\^\*\_\=\;\:\\\"\[\]]/ ;

var specialCharsPhone = /[\<\>\'\`\}\{\|\~\?\/\!\@\#\$\%\^\&\*\_\=\;\:\\\"\[\]]/ ; // Used to check special characters for phone

var specialCharsPlus = /[+]{2,3}/;

var specialCharsBrack = /[(]{2,3}/;

var specialCharsBrackB = /[)]{2,3}/;

var specialCharsDash = /[-]{2,3}/;

var specialCharsDot = /[.]{2,3}/;

var specialCharsColon = /[:]{2,3}/;

var specialCharsAnd = /[&]{2,3}/;

var specialCharsCama = /[,]{2,3}/;

var specialCharsPostS = /[']{2,3}/;

var specialCharsHash = /[#]{2,3}/;

var specialCharsFslash = /[\/]{2,3}/;



//first_name

var first_name;

var first_name_label;

var box_first_name;

var msg_first_name;



//last_name

var last_name;

var last_name_label;

var box_last_name;

var msg_last_name;


//Email

var email;

var email_label;

var box_email;

var msg_email;


//Company

var company;

var company_label;

var box_company;

var msg_company;


//Telephone

var phone;

var phone_label;

var box_phone;

var msg_phone;


function init_box_msg_fields()

{

	//fist_name

	first_name = document.getElementById('first_name');

	first_name_label = getLabelForId('first_name');

	box_first_name = document.getElementById('box_first_name');

	msg_first_name = document.getElementById('msg_first_name');



	//last_name

	last_name = document.getElementById('last_name');

	last_name_label = getLabelForId('last_name');

	box_last_name= document.getElementById('box_last_name');

	msg_last_name = document.getElementById('msg_last_name');





	//email

	email = document.getElementById('email');

	email_label = getLabelForId('email');

	box_email= document.getElementById('box_email');

	msg_email = document.getElementById('msg_email');	





	//company

	company = document.getElementById('company');

	company_label = getLabelForId('company');

	box_company= document.getElementById('box_company');

	msg_company = document.getElementById('msg_company');




	//telephone

	phone = document.getElementById('phone');

	phone_label = getLabelForId('phone');

	box_phone= document.getElementById('box_phone');

	msg_phone = document.getElementById('msg_phone');


}



function trim(s)

{

  return s.replace(/^\s+|\s+$/, '');

} 



function checkFirstName() {



	if (!first_name.disabled) {

		var digits = first_name.value.replace(/[^0-9]/ig, '');

	    if (trim(first_name.value).length == 0 || trim(first_name.value).length <= 1)

	    {

		first_name.style.border='1px solid #c00';

		first_name_label.className = 'problem';

		box_first_name.style.display     = 'block';

		msg_first_name.innerHTML         = reg_error_first_name

		return false;

	    }

	    else if (digits || first_name.value.match(specialChars))

	    { 

		first_name.style.border='1px solid #c00';

		first_name_label.className = 'wrongFormat';

		box_first_name.style.display     = 'block';

		msg_first_name.innerHTML         = reg_error_first_name_error;

		return false;

	    }

	    else {

		first_name_label.className = 'completed';

		first_name.style.border='1px solid #0C0';

		box_first_name.style.display     = 'none';

		return true;

	    }

    	}

}



function checkLastName() {



	if (!last_name.disabled) {

		var digits = last_name.value.replace(/[^0-9]/ig, '');

	    if (trim(last_name.value).length == 0 || trim(last_name.value).length <= 1)

	    {

		last_name.style.border='1px solid #c00';

		last_name_label.className = 'problem';

		box_last_name.style.display     = 'block';

		msg_last_name.innerHTML         = reg_error_last_name

		return false;

	    }

	    else if (digits || last_name.value.match(specialChars))

	    { 

		last_name.style.border='1px solid #c00';

		last_name_label.className = 'wrongFormat';

		box_last_name.style.display     = 'block';

		msg_last_name.innerHTML         = reg_error_last_name_error;

		return false;

	    }

	    else {

		last_name_label.className = 'completed';

		last_name.style.border='1px solid #0C0';

		box_last_name.style.display     = 'none';

		return true;

	    }

    	}

}




function checkEmail() {

	if (!email.disabled) {

	    if (email.value == "")

	    {



		email.style.border='1px solid #c00';

		email_label.className = 'problem';

		box_email.style.display     = 'block';

		msg_email.innerHTML         = reg_error_email_empty;

		return false;

	    }

	    else if (email.value != "" && !email.value.match(/^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-.]?[0-9a-zA-Z])*[.][a-zA-Z]{2,3}$/))

	    { 

		email.style.border='1px solid #c00';

		email_label.className = 'wrongFormat';

		box_email.style.display     = 'block';

		msg_email.innerHTML         = reg_error_email_not_valid;

		return false;

	    }

	    else {

		email_label.className = 'completed';

		email.style.border='1px solid #0C0';

		box_email.style.display     = 'none';

		return true;

	    }

    	}

}



function checkCompany() {



	if (!company.disabled) {

	    if (trim(company.value).length == 0 || trim(company.value).length <= 1)

	    {

		company.style.border='1px solid #c00';

		company_label.className = 'problem';

		box_company.style.display     = 'block';

		msg_company.innerHTML         = reg_error_company

		return false;

	    }

	    else if (company.value.match(specialCharsCommon)  || company.value.match(specialCharsAnd) || company.value.match(specialCharsDot) || company.value.match(specialCharsPostS) || company.value.match(specialCharsHash) || company.value.match(specialCharsCama) || company.value.match(specialCharsFslash))

	    { 

		company.style.border='1px solid #c00';

		company_label.className = 'wrongFormat';

		box_company.style.display     = 'block';

		msg_company.innerHTML         = reg_error_company_error;

		return false;

	    }

		else

		{

		company_label.className = 'completed';

		company.style.border='1px solid #0C0';

		box_company.style.display     = 'none';

		return true;

	    }

   		}

}




function checkPhone() {



	if (!phone.disabled) {

		var digitsPhone = phone.value.replace(/[^a-zA-Z]/ig, '');

	    if (trim(phone.value).length == 0 || trim(phone.value).length <= 5)

	    {

		phone.style.border='1px solid #c00';

		phone_label.className = 'problem';

		box_phone.style.display     = 'block';

		msg_phone.innerHTML         = reg_error_phone

		return false;

	    }

	    else if (digitsPhone || phone.value.match(specialCharsPhone) || phone.value.match(specialCharsPlus) || phone.value.match(specialCharsBrack) || phone.value.match(specialCharsBrackB) || phone.value.match(specialCharsDash) || phone.value.match(specialCharsCama) || phone.value.match(specialCharsDot))

	    { 

		phone.style.border='1px solid #c00';

		phone_label.className = 'wrongFormat';

		box_phone.style.display     = 'block';

		msg_phone.innerHTML         = reg_error_phone_error;

		return false;

	    }

	    else {

		phone_label.className = 'completed';

		phone.style.border='1px solid #0C0';

		box_phone.style.display     = 'none';

		return true;

	    }

   		}

}



var check_form_error_obj = null;

function check_form (pdf) {

var obj, e;

try {

if (!checkFirstName()) {

	first_name.focus();

	return false;

}else if (!checkLastName()) {

	last_name.focus();

	return false;

}else if (!checkEmail()) {

	email.focus();

	return false;

}else if (!checkCompany()) {

	company.focus();

	return false;

}else if (!checkPhone()) {

	phone.focus();

	return false;
}

else{
	openPDF(pdf);//to open pdf on submit
	
return true;

}

			

} catch (e) { check_form_error_obj = obj; return false;}

return false;

}
function openPDF(pdf) {
	window.open(pdf);//to open pdf on submit
}
function initParametersAssign(){

	// Request URL 
	page_url=window.location.href;
	var result = document.getElementById('textfield10');
	if (page_url!=null && result!=null){
		result.value=page_url;
		return true;
	}
	else{
		return true;
	}
		
}

//* ======= Character counter for text area =======*/

function count(e, textarea, max, input) {

if (!e.which) keyCode = event.keyCode; // ie5+ op5+

else keyCode = e.which; // nn6+



if (textarea.value.length<max+1)

input.value =

max - textarea.value.length;



if (textarea.value.length>max-1)

{

document.getElementById("count").style.display = "none";

document.getElementById("countc").style.display = "none";

}



if (textarea.value.length<max+0)

{

document.getElementById("countc").style.display = "block";

document.getElementById("count").style.display = "none";

}



else {

textarea.value =

textarea.value.substring(0,max);

input.value = 0;

document.getElementById("count").style.display = "block";

return false;

}

}
