/*************************************************************
/                      Developed by Emadullah Gawai
		       copyright : Emadullah Gawai                   
                          EMADULLAH@HOTMAIL.COM
                            00971 50 2783641
		          All rights reserved.                            
**************************************************************/
// Global Diclaration

var strAlertMsg = ""
var focusField = ""


//Begin Page Validation
function validateForm(){
strAlertMsg = ""
focusField = ""

isOption= document.forms[0].PayMethod;

x = document.forms[0];
    
    if(isOption[0].checked){
    	isText('CCNa','Credit Card Name');
    	isNumber('CCNum','Valid Credit Card Number');
    	isEmpty('CCExpire','Crecit Card Expire Date');
    	isText('CCHolderName','Credit Card Holder Name');
    }
    else if(isOption[1].checked){
    	isEmpty('ChequeNo','Cheque Number');
    	isText('CBankName','Bank Name');
    	isEmpty('CAccountNo','Account Number');
    }
    //else if(isOption[2].checked){
    	//isEmpty('BTAccountNo','Account Number');
    	//isText('BTBankName','Bank Name');
    //}
    
    isText('BuyFirstName','First Name');
    isText('BuyLastName','Last Name');
    isEmpty('BuyAddress1','Address');
    isText('BuyCity','City');
    hasSelection('BuyCountry','Country')
    isNumber('BuyPhone','Valid Phone Number');
    isEmail2('BuyEmail','Valid Email Address');
    
   if(strAlertMsg !=""){
         alert("Please correct the following errors:\n____________________________\n\n" + strAlertMsg);
         //eval("x." + focusField + ".select()");
       return false;
   }
   return true;
}

function isDate(strFieldName,strMsg){
   var objFormField = document.forms[0].elements[strFieldName];
   strDate = objFormField.value;
   if(strDate.length>0){
          // var dateregex=/^[ ]*[0]?(\d{1,2})\/(\d{1,2})\/(\d{4,})[ ]*$/;
            var match=strDate.match(dateregex);
            if (match){
                      var tmpdate=new Date(match[3],parseInt(match[1],10)-1,match[2]);
                 if (tmpdate.getDate()==parseInt(match[2],10) && tmpdate.getFullYear()==parseInt(match[3],10) && (tmpdate.getMonth()+1)==parseInt(match[1],10)){ 
                    return true; 
                    }
            }
                   strAlertMsg += "- "+ strMsg +" is Required.\nExample: Date/Month/Year \n";
              if(!focusField) focusField =""+ strFieldName +"";
        return false;
   }
   else{
         return true;
   }
}

function isDate2(strFieldName,strMsg){
   var objFormField = document.forms[0].elements[strFieldName];
   strDate = objFormField.value;
   if(strDate.length>0){
          // var dateregex=/^[ ]*[0]?(\d{1,2})\/(\d{1,2})\/(\d{4,})[ ]*$/;
            var match=strDate.match(dateregex);
            if (match){
                      var tmpdate=new Date(match[3],parseInt(match[1],10)-1,match[2]);
                 if (tmpdate.getDate()==parseInt(match[2],10) && tmpdate.getFullYear()==parseInt(match[3],10) && (tmpdate.getMonth()+1)==parseInt(match[1],10)){ 
                    return true; 
                    }
            }
                   strAlertMsg += "- "+ strMsg +" is Required.\nExample: Date/Month/Year \n";
              if(!focusField) focusField =""+ strFieldName +"";
        return false;
   }
   else{
         return true;
   }
}
//========================================================================
//Validate Phone. Ex. (999) 999-9999 or (999)999-9999
function isPhone(strFieldName,strMsg)     {
    var objFormField = document.forms[0].elements[strFieldName];
    var strValue = objFormField.value;
    var objRegExp  = /^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/;
     if(!objRegExp.test(strValue)){
         strAlertMsg += "- "+ strMsg +" is Required.\n    Example:\n(999)999-9999 or (999) 999-9999\n";
    if(!focusField) focusField=""+ strFieldName +"";
         return false;
         }
    return true;
}
//========================================================================
//Validate US zip code in 5 digit format or zip+4 format. 99999 or 99999-9999
function isZipCode(strFieldName,strMsg)     {
    var objFormField = document.forms[0].elements[strFieldName];
    var strValue = objFormField.value;
    var objRegExp  = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
    if(!objRegExp.test(strValue)){
         strAlertMsg += "- "+ strMsg +" is Required.\n";
    if(!focusField) focusField =""+ strFieldName +"";
         return false;
         }
    return true;
}
//==========================================================================
//Validate the Select
function hasSelection(strFieldName,strMsg)     {
    var objFormField = document.forms[0].elements[strFieldName];
    if(objFormField.selectedIndex ==0)     {
         strAlertMsg += "- "+ strMsg +" is Required.\n";
          return false; 
           }
    return true; 
}
//========================================================================
//Validate Check Box
function isChecked(strFieldName,strMsg) {
    var objFormField= document.forms[0].elements[strFieldName];
    var strValue= objFormField.checked;
    if (!strValue) {
         //alert("The \""+ strMsg +"\" box is checked!")
         //} else {
         strAlertMsg += "- "+ strMsg +" is Required.\n";
    if(!focusField) focusField =""+ strFieldName +"";
         return false;
         }
    return true;
}
//========================================================================
//Validate Text Box
function isEmpty(strFieldName,strMsg){
    var objFormField = document.forms[0].elements[strFieldName];
    var strValue = objFormField.value;
    strValue = strValue.split(" ").join("")
    if(strValue.length<1){
         strAlertMsg += "- "+ strMsg +" is Required.\n";
    if(!focusField) focusField =""+ strFieldName +"";
         return false;
         }
    return true;
}

//Validate Email
function isEmail(strFieldName,strMsg){
    var objFormField = document.forms[0].elements[strFieldName]
    var strEmail = objFormField.value;
    var bolValid = true;
         if(strEmail.length < 7){
         bolValid = false;
         }
         if(strEmail.lastIndexOf(" ") >0){
         bolValid = false;
         }
         var intLastDot = strEmail.lastIndexOf(".")
         if(intLastDot == -1 ||  strEmail.length - intLastDot >4){
         bolValid = false;
         }
         var intAt = strEmail.lastIndexOf("@")
         if(intAt == -1 ||  strEmail.length - intAt < 5){
         bolValid = false;
         }
         if(!bolValid){
         strAlertMsg += "- "+ strMsg +" is Required.\n";
    if(!focusField) focusField =""+ strFieldName +"";
         }
    return bolValid;
}
//========================================================================
//Validate Radio Button
function checkRadioControl(strFieldName,strMsg){
         var objFormField = document.forms[0].elements[strFieldName]
         intControlLength = objFormField.length
         bolSelected = false;
         for (i=0;i<intControlLength;i++){
         if(objFormField[i].checked){
         bolSelected = true;
         break;
         }
    }     
     if(! bolSelected){
         strAlertMsg += "- "+ strMsg +" is Required.\n";
         return false;
         }
    return true;
}
//========================================================================
//Compare the Fields
function compareFields(strFieldName1,strFieldName2,strMsg){
         var objFormField1= document.forms[0].elements[strFieldName1];
         var objFormField2= document.forms[0].elements[strFieldName2];
         var strValue1= objFormField1.value;
         var strValue2= objFormField2.value;
    if(strValue1 != strValue2){
         strAlertMsg +="The "+ strMsg +" fields do not match, please try again.\n"; 
     if(!focusField) focusField =""+ strFieldName1 +"";
         return false; 
          }
    return true;
}
//========================================================================
//Format Phone Number 9999999999 = (999)999-9999
//Call the function like so onKeyPress="javascript:formatPhone(this);
function formatPhone(objFormField){
    intFieldLength = objFormField.value.length;
    if(intFieldLength == 3){
         objFormField.value = "(" + objFormField.value + ") ";
         return false;
         }
   if(intFieldLength >= 9 && intFieldLength <= 10){
       objFormField.value = objFormField.value + "-";
       return false;
       }
}
//========================================================================


//************  Text Validator  ******** 
////////////////////////////////////////////////////
function isText(strFieldName,strMsg) {    
    var objFormField = document.forms[0].elements[strFieldName]
	var strText = objFormField.value;
	var bolValid = true;
	
	if ((strText == "")||(strText==" ")){
		bolValid = false;
	}	
	
	if((strText.substring(0,1)<"a" || strText.substring(0,1)>"z") && (strText.substring(0,1)<"A" || strText.substring(0,1)>"Z"))
		{
			bolValid = false;
		}
		for (var i = 1; i < strText.length; i++)
		{
			var ch = strText.substring(i, i + 1);
			if ( ((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) && (ch != " "))
			{
				bolValid = false;
			}
		}
	if(!bolValid){
		strAlertMsg += "- "+ strMsg +" is Required.\n";
		if(!focusField) focusField =""+ strFieldName +"";
         }
	return bolValid;
}
//************  Email Validator  ******** 
////////////////////////////////////////////////////
function isEmail2(strFieldName,strMsg) {
	var objFormField = document.forms[0].elements[strFieldName]
	var strEmail = objFormField.value;
    	var bolValid = true;
	if (strEmail<1){		
		bolValid = false;		
	}
	if (strEmail.indexOf("@")<3){
		bolValid = false;
	}
	else if ((strEmail.indexOf(".com")<5)&&(strEmail.indexOf(".org")<5)
		&&(strEmail.indexOf(".gov")<5)&&(strEmail.indexOf(".net")<5)
		&&(strEmail.indexOf(".co")<5)&&(strEmail.indexOf(".tv")<5)
		&&(strEmail.indexOf(".ws")<5)&&(strEmail.indexOf(".am")<5)
		&&(strEmail.indexOf(".nl")<5)&&(strEmail.indexOf(".ru")<5)
		&&(strEmail.indexOf(".in")<5)&&(strEmail.indexOf(".id")<5)
		&&(strEmail.indexOf(".ae")<5)&&(strEmail.indexOf(".de")<5)
		&&(strEmail.indexOf(".kw")<5)&&(strEmail.indexOf(".us")<5)
		&&(strEmail.indexOf(".ns")<5)&&(strEmail.indexOf(".uk")<5)
		&&(strEmail.indexOf(".mil")<5)&&(strEmail.indexOf(".edu")<5)){
		bolValid = false;
	}
	if(!bolValid){
		strAlertMsg += "- "+ strMsg +" is Required.\n";
	    	if(!focusField) focusField =""+ strFieldName +"";
	}	
	return bolValid;
	}
	

//************    ******** 
////////////////////////////////////////////////////
//************  Number Validator  ******** 
////////////////////////////////////////////////////
function isNumber(strFieldName,strMsg) {    
    var objFormField = document.forms[0].elements[strFieldName]
	var intNumber = objFormField.value;
	//var intZero = intNumber.lastIndexOf("00")
	var bolValid = true;
	
	if ((intNumber.length<10)){
		bolValid = false;
	}	
	
	if((intNumber.substring(0,1)<"0" || intNumber.substring(0,1)>"9"))	 
		{
			bolValid = false;
		}
		for (var i = 1; i < intNumber.length; i++)
		{
			var ch = intNumber.substring(i, i + 1);
			if ( ((ch < "0" || "9" < ch)) && (ch != " "))
			{
				bolValid = false;
			}
		}
	if(!bolValid){
		strAlertMsg += "- "+ strMsg +" is Required.\n";
		if(!focusField) focusField =""+ strFieldName +"";
         }
	return bolValid;
}





//************ Query Validator ********
////////////////////////////////////////
function searchValidate(objFrm) {
      var sf=objFrm.q.value;    
      if(sf=="")
      {
        alert("Please enter Name to search.");
        objFrm.q.focus();
        return (false);
      }
    
      if((sf.substring(0,1)<"a" || sf.substring(0,1)>"z") && (sf.substring(0,1)<"A" || sf.substring(0,1)>"Z") && (sf.substring(0,1)<"0") || (sf.substring(0,1)=='_') || (sf.substring(0,1)=='['))
      {
      		alert("The Search should begin with an alphabetic character or with a number.");
      		objFrm.q.select();
      		return (false);
      }
    
    
    return (true);
}

////////////////////////////////////////////////////////////////////////////////////


//*************************************//
//********* Admin Validation **********//
//*************************************//


////////////////////////////////
// Validation While Inserting //
////////////////////////////////


function updatePassword(objFrm)
{
	var str = objFrm.newpass.value;
	var str2 = objFrm.oldpass.value;
	if ((str == "") ||(str2 == ""))
	{
		alert("\nThe PASSWORD field is blank.\nPlease enter.")		
		return false;
	}
	var str2 = objFrm.conpass.value;
	if (str != str2)
	{
		alert("\nPasswords typed do not match, please re-enter your passwords.\n\n");
		objFrm.conpass.select();
		return false;
	}
	return true;
}

/////////////////////////////////////////////////////////////////////	
/////// Login Validation

function loginValidate(objFrm)
 {
  var sf=objFrm.username.value;
  var sp=objFrm.userpassword.value;
   if(sf=="") {
     alert("Please enter Login Id");
     objFrm.username.focus();
     return false;
   }
   if(sp=="") {
       alert("Please enter Password");
       objFrm.userpassword.focus();
       return false;
   }
 return true;
 }
	
	
////************************************//

