// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}



function _vEmail(_c) {
  var _e = _c.value;
  _e = _e.toLowerCase().replace(/\s/g,"");
  _e = _e.replace(/(\.c0m|\.cm|\.cpm|\.cmo|\.ocm|\.co)$/, ".com");
  _c.value = _e;
  var _re = /^[-\.a-z0-9_]+@([-\w]+\.)?([-\w]+\.)?([-\w]+)\.(com|net|org|edu|in|uk|sg|au|ca|ae|jp|sa|ru|fm|bt|nu|ie)$/;
  var _match = _re.test(_e);

  if(_match) {
    // Match Successful
    _e = _e.replace(/(rediff\.|reddif\.|redif\.|reddifmail\.|redifmail\.|rediffamil\.|readiffmail\.|rdiffmail\.|redffmail\.)/, "rediffmail.");
    _e = _e.replace(/(yahoomail\.|yaho\.|yah00\.|yahho\.)/, "yahoo.");
    _c.value = _e;
    // alert("Email '" + _e + "' verified\n");
    return true;
  }
  else {
    // Match failed
    var _errStr = "Please Correct Your Email Address:\n" + _e + "\n\n";
    // var _errStr = _e + "\nPlease Correct Your Email Address:\n\n";

    // check for a single @
    var _arr = _e.split(/@/);
    if(_arr.length > 2) {
      _errStr += '- Enter a SINGLE Email Address.\n\tMore than 1 "@" in your Email.\n';
    }
    else {
      if(_arr.length == 1) {
        _errStr += '- "@" missing from your Email.\n';
      }

      // check for invalid characters
      var _bad = /[^-\.a-z0-9_@]/g;
      _arr = _e.match(_bad);
      var _s = "";
      if(_arr != null) {
        for(var i= 0; i < _arr.length; _s = _s + _arr[i] + " ", i++);
        //
        _errStr += "- Following characters are not allowed in Email:\n\t" + _s + "\n";
      }

      // check for valid Top Level Domain
      var _retld = /\.(com|net|org|edu|in|uk|sg|au|ca|ae|jp|sa|ru|fm|bt|nu|ie)$/;
      if(!_retld.test(_e)) {
        _errStr += '- Your Email must end with one of these:\n\t.com .net .org .edu\n\t.in .uk .sg .au .ca .ae .jp .sa .ru .fm .bt .nu .ie\n';
      }
    }

    alert(_errStr);
    _c.focus();
    return false;
  }
}

function showOnChange(formName,ele,hideEle) {
	var index = document.forms[formName].elements[ele].selectedIndex;
	var tdId = "poNo"+index;
	var lastIndex = document.getElementById(hideEle).value;
	var lastTdId = "poNo"+lastIndex;
		
	document.getElementById(lastTdId).getAttribute("style").setAttribute("display","none");
	document.getElementById(lastTdId).setAttribute("name","dummy");
	document.getElementById(tdId).getAttribute("style").setAttribute("display","block");
	document.getElementById(tdId).setAttribute("name","poNo");
	
	document.getElementById(hideEle).value = index;
}

function showOnLoad(formName,ele,hideEle) {
	var index = document.forms[formName].elements[ele].selectedIndex;
	var tdId = "poNo"+index;	
		
	document.getElementById(tdId).getAttribute("style").setAttribute("display","block");
	document.getElementById(tdId).setAttribute("name","poNo");	
	
	document.getElementById(hideEle).value = index;
}


function Validator_memberRegister(Form)
{   
		if (Form.reg_uname.value == "")
		{	
			alert("Please Enter Username");
			Form.reg_uname.focus();
			return false;
		}
	
		if (Form.reg_pwd.value == "")
		{	
			alert("Please Enter Password");
			Form.reg_pwd.focus();
			return false;
		}
		
		if (Form.reg_cpwd.value == "")
		{	
			alert("Please Enter Confirm Password");
			Form.reg_cpwd.focus();
			return false;
		}
		
		var pass = Form.reg_pwd.value;
		var cpass = Form.reg_cpwd.value;
		if(pass != cpass)
		{
			alert("Password and Confirm Password do not match");
			Form.reg_cpwd.focus();
			return false;
		}
		
		if (Form.reg_fname.value == "")
		{	
			alert("Please Enter your First Name");
			Form.reg_fname.focus();
			return false;
		}
		if (Form.reg_lname.value == "")
		{	
			alert("Please Enter your Last Name");
			Form.reg_lname.focus();
			return false;
		}
		
		//this is for validating radio button
			var len=Form.sex.length;
			var flag="false";
			for(var i=0;i<len;i++)
			{
			if(Form.sex[i].checked)
			{
				flag="true";
			}
			}
			if(flag=="false")
			{
			alert("Please Select Gender");
			return false;
			}
		
			
		if (Form.dates.value == "")
		{	
			alert("Please Select Date");
			Form.dates.focus();
			return false;
		}
		if (Form.months.value == "")
		{	
			alert("Please Select Month");
			Form.months.focus();
			return false;
		}
		if (Form.year.value == "")
		{	
			alert("Please Select Year");
			Form.months.focus();
			return false;
		}
		if (Form.reg_address1.value == "")
		{	
			alert("Please Enter your Current Residence Address");
			Form.reg_address1.focus();
			return false;
		}
		
		if (Form.reg_address2.value == "")
		{	
			alert("Please Enter your Permanent Residence Address");
			Form.reg_address2.focus();
			return false;
		}
		
		if (Form.reg_country.value == "" && Form.reg_country1.value == "")
		{	
			alert("Please Select Country");
			Form.reg_country.focus();
			return false;
		}
		
		if (Form.reg_state.value == "" && Form.reg_state1.value == "")
		{	
			alert("Please Select State");
			Form.reg_state.focus();
			return false;
		}
		
		if (Form.reg_city.value == "" && Form.reg_city1.value == "")
		{	
			alert("Please Select City");
			Form.reg_city.focus();
			return false;
		}
		
		if (Form.reg_pincode.value == 0)
		{	
			alert("Please Enter Pincode");
			Form.reg_pincode.focus();
			return false;
		}
		if(Form.reg_pincode.value != 0)
		{
			
			var flag20="false";
			var phno=Form.reg_pincode.value;
			if(	(isInteger(phno) == true))
				flag20="true";
		}
		if(flag20 == "false")
		{
			alert("PinCode Should be Numeric");
			Form.reg_pincode.focus();
			return false;
		}
		
		
		if (Form.reg_phno3.value == 0)
		{	
			alert("Please Enter Country code");
			Form.reg_phno3.focus();
			return false;
		}
		if(Form.reg_phno3.value != 0)
		{
			
			var flag21="false";
			var phno=Form.reg_phno3.value;
			if(	(isInteger(phno) == true))
				flag21="true";
		}
		if(flag21 == "false")
		{
			alert("Phno Number Should be Numeric");
			Form.reg_phno3.focus();
			return false;
		}
		
		if (Form.reg_code.value == 0)
		{	
			alert("Please Enter Area code of Phone Number");
			Form.reg_code.focus();
			return false;
		}
		if(Form.reg_code.value != 0)
		{
			
			var flag22="false";
			var phno=Form.reg_code.value;
			if(	(isInteger(phno) == true))
				flag22="true";
		}
		if(flag22 == "false")
		{
			alert("Phno Number Should be Numeric");
			Form.reg_code.focus();
			return false;
		}
		
		if (Form.reg_phno.value == 0)
		{	
			alert("Please Enter Phone Number");
			Form.reg_phno.focus();
			return false;
		}
		
		//this is ti validate phono number
		
		if(Form.reg_phno.value != 0)
		{
			
			var flag2="false";
			var phno=Form.reg_phno.value;
			if(	(isInteger(phno) == true))
				flag2="true";
		}
		if(flag2 == "false")
		{
			alert("Phone Number Should be Numeric");
			Form.reg_phno.focus();
			return false;
		}
		
		//this is to validate moble numbers
		if (Form.reg_mobile.value == 0)
		{	
			alert("Please Enter Mobile Number");
			Form.reg_mobile.focus();
			return false;
		}
		
		

		if (Form.reg_email1.value == "")
		{	
			alert("Please Enter Email Id ");
			Form.reg_email1.focus();
			return false;
		}
		if(_vEmail(Form.reg_email1) == false){
			return false;
		}
		
		if (Form.reg_email2.value != "")
		{	
			
			if(_vEmail(Form.reg_email2) == false)
			return false;
			else
			return true;
		}
		
		return true;
}


function Validator_EditMemberRegister(Form)
{  
		if (Form.reg_fname.value == "")
		{	
			alert("Please Enter your First Name");
			Form.reg_fname.focus();
			return false;
		}
		if (Form.reg_lname.value == "")
		{	
			alert("Please Enter your Last Name");
			Form.reg_lname.focus();
			return false;
		}
		
				
		if (Form.dates.value == "")
		{	
			alert("Please Select Date");
			Form.dates.focus();
			return false;
		}
		if (Form.months.value == "")
		{	
			alert("Please Select Month");
			Form.months.focus();
			return false;
		}
		if (Form.year.value == "")
		{	
			alert("Please Select Year");
			Form.months.focus();
			return false;
		}
		if (Form.reg_address1.value == "")
		{	
			alert("Please Enter your Current Residence Address");
			Form.reg_address1.focus();
			return false;
		}
		
		if (Form.reg_address2.value == "")
		{	
			alert("Please Enter your Permanent Residence Address");
			Form.reg_address2.focus();
			return false;
		}
		
		if (Form.reg_country.value == "")
		{	
			alert("Please Select Country");
			Form.reg_country.focus();
			return false;
		}
		
		if (Form.reg_state.value == "")
		{	
			alert("Please Select State");
			Form.reg_state.focus();
			return false;
		}
		
		if (Form.reg_city.value == "")
		{	
			alert("Please Select City");
			Form.reg_city.focus();
			return false;
		}
		
		if (Form.reg_pincode.value == 0)
		{	
			alert("Please Enter Pincode");
			Form.reg_pincode.focus();
			return false;
		}
		if(Form.reg_pincode.value != 0)
		{
			
			var flag20="false";
			var phno=Form.reg_pincode.value;
			if(	(isInteger(phno) == true))
				flag20="true";
		}
		if(flag20 == "false")
		{
			alert("PinCode Should be Numeric");
			Form.reg_pincode.focus();
			return false;
		}
		
		
		if (Form.reg_phno3.value == 0)
		{	
			alert("Please Enter Country code");
			Form.reg_phno3.focus();
			return false;
		}
		if(Form.reg_phno3.value != 0)
		{
			
			var flag21="false";
			var phno=Form.reg_phno3.value;
			if(	(isInteger(phno) == true))
				flag21="true";
		}
		if(flag21 == "false")
		{
			alert("Country Code Should be Numeric");
			Form.reg_phno3.focus();
			return false;
		}
		
		if (Form.reg_code.value == 0)
		{	
			alert("Please Enter Area code");
			Form.reg_code.focus();
			return false;
		}
		if(Form.reg_code.value != 0)
		{
			
			var flag22="false";
			var phno=Form.reg_code.value;
			if(	(isInteger(phno) == true))
				flag22="true";
		}
		if(flag22 == "false")
		{
			alert("Area Code Should be Numeric");
			Form.reg_code.focus();
			return false;
		}
		
		if (Form.reg_phno.value == 0)
		{	
			alert("Please Enter Phone Number");
			Form.reg_phno.focus();
			return false;
		}
		
		//this is ti validate phono number
		
		if(Form.reg_phno.value != 0)
		{
			
			var flag2="false";
			var phno=Form.reg_phno.value;
			if(	(isInteger(phno) == true))
				flag2="true";
		}
		if(flag2 == "false")
		{
			alert("PhoneNumber Should be Numeric");
			Form.reg_phno.focus();
			return false;
		}
		
		//this is to validate moble numbers
		if (Form.reg_mobile.value == 0)
		{	
			alert("Please Enter Mobile Number");
			Form.reg_mobile.focus();
			return false;
		}
		
		if (Form.reg_email1.value == "")
		{	
			alert("Please Enter Email Id ");
			Form.reg_email1.focus();
			return false;
		}
		if(_vEmail(Form.reg_email1) == false){
			return false;
		}
		
		if (Form.reg_email2.value != "")
		{	
			
			if(_vEmail(Form.reg_email2) == false)
			return false;
			else
			return true;
		}
		
		return true;
}



function Validator_Login(Form)
{
		if (Form.uname.value == "")
		{	
			alert("Please Enter Username");
			Form.uname.focus();
			return false;
		}
		
		if (Form.pwd.value == "")
		{	
			alert("Please Enter Password");
			Form.pwd.focus();
			return false;
		}
		return true;
}

function Validator_ChangePwd(Form)
{	
		if (Form.old_pwd.value == "")
		{	
			alert("Please Enter Old Password");
			Form.old_pwd.focus();
			return false;
		}
		if (Form.new_pwd.value == "")
		{	
			alert("Please Enter New Password");
			Form.new_pwd.focus();
			return false;
		}
		if(Form.old_pwd.value != "" && Form.new_pwd.value != "")
		{
			var old=Form.old_pwd.value;
			var new1=Form.new_pwd.value;
			if(old == new1)
			{
				alert("Your old password and new password cannot be same");
				Form.new_pwd.focus();
				return false;
			}
		}
		
		
		if (Form.confirm_pwd.value == "")
		{	
			alert("Please Enter Confirm Password");
			Form.confirm_pwd.focus();
			return false;
		}
		var pass = Form.new_pwd.value;
		var cpass = Form.confirm_pwd.value;
		if(pass != cpass)
		{
			alert(" New Password and Confirm Password do not match");
			Form.new_pwd.focus();
			return false;
		}

return true;
}

function Validator_ForgotPwd(Form)
{
	if (Form.member_uname.value == "")
		{	
			alert("Please Enter Username");
			Form.member_uname.focus();
			return false;
		}
	return true;
}

function Validator_SetGameAnalysis(Form)
{
	if (Form.game_count.value == "")
		{	
			alert("Please Enter Game Count Value");
			Form.game_count.focus();
			return false;
		}
	return true;
}

function Validator_MembershipOptions(Form)
{
	var len=Form.radioValue.length;
			var flag="false";
			var temp;
			for(var i=0;i<len;i++)
			{
			if(Form.radioValue[i].checked)
			{
				temp=Form.radioValue[i].value;
				flag="true";
			}
			}
		
		if(flag=="false")
		{
			alert("Please Select any Option");
			return false;
		}
			var str=temp.indexOf('@');
			var str1=temp.substring(0,str);
		if(str1 != "BASIC")
		{
			var len1=Form.coaching_radio.length;
			var flag1="false";
			for(var j=0;j<len1;j++)
			{
			if(Form.coaching_radio[j].checked)
			{
				flag1="true";
			}
			}
			if(flag1=="false")
			{
			alert("Please Select any Coaching Option");
			return false;
			}
		}
		return true;
}

function Validator_PaymentOptions(Form)
{
	var len=Form.payment_option.length;
			var flag="false";
			var temp;
			for(var i=0;i<len;i++)
			{
			if(Form.payment_option[i].checked)
			{
				temp=Form.payment_option[i].value;
				flag="true";
			}
			}
		
		if(flag=="false")
		{
			alert("Select any Option");
			return false;
		}
		
		return true;
}



function Validator_enquiry(Form)
{
	if (Form.user_name.value == "")
		{	
			alert("Please Enter your Name");
			Form.user_name.focus();
			return false;
		}
	if (Form.msg.value == "")
		{	
			alert("Please Enter Message");
			Form.msg.focus();
			return false;
		}	
	if (Form.user_mail_id.value == "")
		{	
			alert("Please Enter your Email Id");
			Form.user_mail_id.focus();
			return false;
		}		
		if(_vEmail(Form.user_mail_id) == false){
			return false;
		}
	return true;
}


