// JavaScript Document
var  ns_r=document.referrer;
var  ns_pg="setCo.php?referer="+ns_r;
ns_track_img = new Image();  
ns_track_img.src=ns_pg;

function getkey(e){
	if (window.event)
		return window.event.keyCode;
	else if (e)
		return e.which;
	else
		return null;
}
function getActivatedObject(e){
  var obj;
  if (!e) {
    obj = window.event.srcElement;
  } else if (e.srcElement) {
    obj = e.srcElement;
  } else {
    obj = e.target;
  }
  return obj;
}
function onlyalpha(event){
	//var elem=getActivatedObject(event);
	return goodchars(event, "abcdefghijklmnopqurstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ");
}
function checkPostCode (toCheck) {
  // Permitted letters depend upon their position in the postcode.
  var alpha1 = "[abcdefghijklmnoprstuwyz]";                       // Character 1
  var alpha2 = "[abcdefghklmnopqrstuvwxy]";                       // Character 2
  var alpha3 = "[abcdefghjkstuw]";                                // Character 3
  var alpha4 = "[abehmnprvwxy]";                                  // Character 4
  var alpha5 = "[abdefghjlnpqrstuwxyz]";                          // Character 5
  // Array holds the regular expressions for the valid postcodes
  var pcexp = new Array ();
  // Expression for postcodes: AN NAA, ANN NAA, AAN NAA, and AANN NAA
  pcexp.push (new RegExp ("^(" + alpha1 + "{1}" + alpha2 + "?[0-9]{1,2})(\\s*)([0-9]{1}" + alpha5 + "{2})$","i"));
  // Expression for postcodes: ANA NAA
  pcexp.push (new RegExp ("^(" + alpha1 + "{1}[0-9]{1}" + alpha3 + "{1})(\\s*)([0-9]{1}" + alpha5 + "{2})$","i"));
  // Expression for postcodes: AANA  NAA
  pcexp.push (new RegExp ("^(" + alpha1 + "{1}" + alpha2 + "?[0-9]{1}" + alpha4 +"{1})(\\s*)([0-9]{1}" + alpha5 + "{2})$","i"));
  // Exception for the special postcode GIR 0AA
  pcexp.push (/^(GIR)(\s*)(0AA)$/i);
  // Standard BFPO numbers
  pcexp.push (/^(bfpo)(\s*)([0-9]{1,4})$/i);
  // c/o BFPO numbers
  pcexp.push (/^(bfpo)(\s*)(c\/o\s*[0-9]{1,3})$/i);
  // Overseas Territories
  pcexp.push (/^([A-Z]{4})(\s*)(1ZZ)$/i);
  // Load up the string to check
  var postCode = toCheck;
  // Assume we're not going to find a valid postcode
  var valid = false;
  // Check the string against the types of post codes
  for ( var i=0; i<pcexp.length; i++) {
    if (pcexp[i].test(postCode)) {
      // The post code is valid - split the post code into component parts
      pcexp[i].exec(postCode);
      // Copy it back into the original string, converting it to uppercase and
      // inserting a space between the inward and outward codes
      postCode = RegExp.$1.toUpperCase() + " " + RegExp.$3.toUpperCase();
      // If it is a BFPO c/o type postcode, tidy up the "c/o" part
      postCode = postCode.replace (/C\/O\s*/,"c/o ");
      // Load new postcode back into the form element
      valid = true;
      // Remember that we have found that the code is valid and break from loop
      break;
    }
  }
  // Return with either the reformatted valid postcode or the original invalid
  // postcode
  if (valid) {return postCode;} else return false;
}
function goodchars(e, goods){
	var key, keychar;
	key = getkey(e);
	if (key == null) return true;
		keychar = String.fromCharCode(key);
	if (goods.indexOf(keychar) != -1)
		return true;
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
		return true;
	return false;
}
function emailcheck(txtfld, mes){
	var str;
	var string1=txtfld.value;
	str = "";
	if (string1.indexOf("@")==-1){
		str = "NO";}
	else if (string1.indexOf("@")==0){
		str = "NO";}
	else if (string1.indexOf(".")==-1){
		str = "NO";}
	else if (string1.indexOf(".")==0){
		str = "NO";}
	else if (string1.indexOf("@") + 1 == string1.indexOf(".")){
		str = "NO";}
	else if (string1.indexOf("@") + 1== string1.length){
		str = "NO";}
	else if(string1.lastIndexOf(".") + 1== string1.length){
		str = "NO";}
	else if(string1.indexOf("@") != string1.lastIndexOf("@")){
		str = "NO";}
	else{
		str = "YES";}
	if (str=="NO"){
		alert(mes);
		txtfld.select();
		txtfld.focus();
		return true;
	}
	else{
		return false;
	}
}
function checkphone(fld,mes){
	var x = fld;
	var filter  = /^\d{10,11}$/;
	if (!filter.test(x.value)){
		alert(mes);
		x.select();
		x.focus();
		return true;
	}
	else{
		return false;
	}
}
function onlyNumbers(e){
	var key, keychar;
	var goods="0123456789";
	key = getkey(e);
	if (key == null) return true;
		keychar = String.fromCharCode(key);
	if (goods.indexOf(keychar) != -1)
		return true;
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
		return true;
	return false;
}
function addEventHandler(obj, eventName, handler) {
  if (document.attachEvent) {
	obj.attachEvent("on" + eventName, handler);
  } else if (document.addEventListener) {
    obj.addEventListener(eventName, handler, false);
  }
}
var contactForm=function(fName){
	var frm=document.getElementById(fName);
	var elements=frm.elements;
	frm.action="sendmail.php";
	this.validateForm=function(){
		var tot=elements.length;
		for(var i=0;i<tot;i++){
			if(elements[i].getAttribute("validate")=="true"){
				if(elements[i].value == ""){
					alert(elements[i].getAttribute("errMsg"));
					elements[i].focus();
					return false;
					break;
				}
				if(elements[i].name.toLowerCase().indexOf('phone') > -1){
					if(checkphone(elements[i],'Please Enter Valid Phone Number')){
						return false;
						break;
					}
				}
				if(elements[i].name.toLowerCase().indexOf('mail') > -1){
					if(emailcheck(elements[i],'Please Enter Valid Email')){
						return false;
						break;
					}
				}
			}
		}
		if(parseInt(document.eForm.cAge.value) < 22){
			alert('Minimum age has to be 22');
			return false;
		}
	};
};