﻿// JScript File



function clearError()
 {
	var defaultBgColor = "#FFFFFF";
	 
     
        var inputs=document.body.getElementsByTagName("input");
      var selects=document.body.getElementsByTagName("select");
      var textAreas=document.body.getElementsByTagName("textarea");
      var checkBoxs=document.body.getElementsByTagName("checkbox");              
      var radios=document.body.getElementsByTagName("radio");              

       for (i=0;i<selects.length;i++)   
       selects[i].style.backgroundColor = defaultBgColor;
       
       for (i=0;i<inputs.length;i++) 
          inputs[i].style.backgroundColor = defaultBgColor;	
      
      for (i=0;i<textAreas.length;i++)    
      textAreas[i].style.backgroundColor = defaultBgColor;	
        
   } 



function isValidatePageControls(requireFields,messagesFields)
/* {
    var errMsg = document.feedbackForm._required_.value.split(',');
		alert(errMsg);
      return false();
} */
 {

    var errMsg='';
    var arrErrMsg='';
    var requiredList='';
    var messagesList='';    
    var backgroundColor = "#FFDCDC";

   //alert(str)
   // if (document.feedbackForm._required_!=null)
   // requiredList=form.value.split(',');    ;   
               
    if (requireFields!=null) 
    requiredList=requireFields.value.split(',');  
    
    if (messagesFields!=null) 
    messagesList=messagesFields.value.split(',');  
              
                                        
    // Get the all controls objects
    var inputs=document.body.getElementsByTagName("input");
    var selects=document.body.getElementsByTagName("select");
    var textAreas=document.body.getElementsByTagName("textarea");
    var checkBoxs=document.body.getElementsByTagName("checkbox");          
    var radios=document.body.getElementsByTagName("radio");
    for (i=0;i<selects.length;i++)    
    for(r=0;r<requiredList.length;r++)         
           if(selects[i].name==requiredList[r].replace(' ',''))               
                if (selects[i].selectedIndex==0)
                {                    
                    for (m=0;m<messagesList.length;m++)                    
                    if (selects[i].name==messagesList[m].replace(" ",""))
                    {
                            if (m<messagesList.length)
                            {
                                if (messagesList[m - 1] != undefined) {
                                    if (selects[i].name != messagesList[m - 1].replace(" ", "")) {
                                        arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                        selects[i].style.backgroundColor = backgroundColor;
                                    }
                                }
                                 else {
                                    arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                    selects[i].style.backgroundColor = backgroundColor;
                                }
                            }
                    }                                        
                }   
                       
    for (i=0;i<inputs.length;i++)    
        for(r=0;r<requiredList.length;r++)         
               if(inputs[i].name==requiredList[r].replace(" ",""))
               if (inputs[i].type=='radio')
               {
                    if (inputs[i]!=null && inputs[i].type=='radio')
                        if (inputs[i+1]!=null)
                            if (inputs[i+1].type=='radio')
                                if(inputs[i].checked==false && inputs[i+1].checked==false)
                                {
                                    for (m=0;m<messagesList.length;m++)
                                      if (inputs[i].name==messagesList[m].replace(" ",""))                      
                                      {
                                           if (m<messagesList.length)
                                            {
                                                if (messagesList[m - 1] != undefined) {
                                                    if (inputs[i].name != messagesList[m - 1].replace(" ", "")) {
                                                        arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                                        inputs[i].style.backgroundColor = backgroundColor;
                                                        inputs[i+1].style.backgroundColor = backgroundColor;
                                                    }
                                                }
                                                else {
                                                    arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                                    inputs[i].style.backgroundColor = backgroundColor;
                                                    inputs[i+1].style.backgroundColor = backgroundColor;
                                                }                                
                                            }     
                                      }                    
                                } 
                 
               }
               else
               {
                 if (inputs[i].value== "")  
                {     
                      for (m=0;m<messagesList.length;m++)
                      if (inputs[i].name==messagesList[m].replace(" ",""))                      
                      {
                           if (m<messagesList.length)
                            {
                                if (messagesList[m - 1] != undefined) {
                                    if (inputs[i].name != messagesList[m - 1].replace(" ", "")) {
                                        arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                        inputs[i].style.backgroundColor = backgroundColor;
                                    }
                                }
                                else {
                                    arrErrMsg += "." + messagesList[m + 1] + " is required\n";
                                    inputs[i].style.backgroundColor = backgroundColor;
                                }
                                
                                
                            }     
                      }                                                  
                }
                else
                {
                if(inputs[i].name=='Email' || inputs[i].name=='email' || inputs[i].name=='friendemail')
                   {                        
                      if(!isValidEmail(inputs[i].value))
                      {
		                arrErrMsg += ". "+inputs[i].name+" address is not in a valid format\n";
		                inputs[i].style.backgroundColor = backgroundColor;	
		              }		           		                
		           }
		        }
              }
               
                            
                        
    for (i=0;i<textAreas.length;i++)    
        for(r=0;r<requiredList.length;r++)         
               if(textAreas[i].name==requiredList[r].replace(" ",""))
                    if (textAreas[i].value=="")   
                    {      
                         for (m=0;m<messagesList.length;m++)
                         if (textAreas[i].name==messagesList[m].replace(" ",""))  
                         {
                              if (m<messagesList.length)
                              {
                                arrErrMsg+="."+messagesList[m+1]+" is required\n";
                                textAreas[i].style.backgroundColor = backgroundColor;	
                              }
                         }
                                                            
                       }   
                   
    var splitArray=arrErrMsg.split('\n');                    
    for (i=0;i<messagesList.length;i++)
    {
        if (i<messagesList.length)
        {            
            for (j=0;j<splitArray.length;j++)
                if ('.' + messagesList[i] + ' is required' == splitArray[j] || '.' + messagesList[i] + ' address is not in a valid format' == splitArray[j])
                if (errMsg.indexOf (splitArray[j])==-1)
                {
                    splitArray[j]=splitArray[j].replace('email','Email');
                    splitArray[j]=splitArray[j].replace('friendemail','Friend\'s email');
                    splitArray[j]=splitArray[j].replace('friendEmail','Friend\'s email');
                    
                    errMsg += splitArray[j] + '\n';                                         
                }
        }
    }
    
    //for (j = 0; j < splitArray.length; j++)
    //if ('. Email is not in a valid format'== splitArray[j])
    // errMsg += splitArray[j] + '\n';     
                    
    
    if(errMsg != "")
	{
	    var errMsg = "Please fill in your information correctly\n" + errMsg;
		alert(errMsg);
		return false;		
	}	
	else
	{		
	return true;		
	}
}

function isValidEmail(value) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;      
    if(reg.test(value) == false) {          
          return false;
       } 
       else
       return true;
}




