// Javascript Form Handling For Mail Form
// Author: Nirav Patel
// Company: EMI Music UK
// Date: 2008-06-17
// Version: 1.0
// Copyright:  2008 (c) EMI Music UK & Ireland        
//<!--
  // Browser Detection

        var wc = (document.getElementById);
        var ns = (document.layers);
        var ie = (document.all);
        
        var isMac = (navigator.appVersion.indexOf("Mac")!=-1) ? true : false;
        var NS4 = (document.layers) ? true : false;
        var IEmac = ((document.all)&&(isMac)) ? true : false; 
        var IE4plus = (document.all) ? true : false;
        var IE4 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 4.")!=-1)) ? true : false;
        var IE5 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 5.")!=-1)) ? true : false;
        var ver4 = (NS4 || IE4plus) ? true : false;
        var NS6 = (!document.layers) && (navigator.userAgent.indexOf('Netscape')!=-1)?true:false;                       
        
        // Handles multiple onload events
        var gSafeOnload = new Array(); 
        // Handles multiple onload events
        var gSafeOnSubmit = new Array();            
        
		
	  function checkEmail(emailAddr) 
	  {
			if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(emailAddr.value))
			{
				return (true)
			}			
			return (false)
	  }	
		
	  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 FetchElement(id) 
      {
          if (ie) 
          {
            return document.all[id];            
            
          } 
          else if (ns) 
          {
          
            return document.layers[id];
          } 
          else if (wc) 
          {
            return document.getElementById(id);           
          }
          return false;
      }
         

     function HideElement(id) 
     { 
        var Element = FetchElement(id);
      if (Element)
      {
          Element.style.display = "none";
       }
     }

     function ShowElement(id) 
     {
       var Element = FetchElement(id);
      if (Element)
      {
          Element.style.display = "block";
       }
     }

     function FlipFlopElement(id,id2) 
     {
       var Element = FetchElement(id);
      var Element2 = FetchElement(id2);
      if (Element.style.display == "")
      {
           Element.style.display = "none";
         Element2.value = "";
       }
      else
      {
          Element.style.display = "";
         Element2.value = "on";
       }  
     }     
		 

   function getCheckedValue(radioObj) 
   {
     if(!radioObj) return "";
     
     var radioLength = radioObj.length;
     if(radioLength == undefined)
       if(radioObj.checked) return radioObj.value;
     else
       return "";

     for(var i = 0; i < radioLength; i++) 
     {
       if(radioObj[i].checked) return radioObj[i].value;
     }
     return "";
   }		 
		 

	  
	  function ValidateForm (form)
	  {	 
 
      var errormessage = FetchElement("errormessage");
      errormessage.innerHTML = ""; // Clear old error messages
	  var errors = 0;
   
   
      var FNAME = FetchElement("FNAME");
      var LNAME = FetchElement("LNAME");

      if (!FNAME || FNAME=="" || FNAME.value.length == 0)
      {
        errormessage.innerHTML += "<br/>" + "Please enter a first name";
        errors++;
      }
   
      if (!LNAME || LNAME=="" || LNAME.value.length == 0)
      {
        errormessage.innerHTML += "<br/>" + "Please enter a last name";
        errors++;
      }

      var GENDER = "";
      GENDER = getCheckedValue(document.forms[0].elements['GENDER']);
   
      if(!GENDER || GENDER=="")
      {
        errormessage.innerHTML += "<br/>" + "Please select your gender";
        errors++;
      }

      var POSTCODE = FetchElement("POSTCODE");
   
      if (!POSTCODE || POSTCODE=="" || POSTCODE.value.length == 0)
      {
        errormessage.innerHTML += "<br/>" + "Please enter your postcode/zipcode";
        errors++;
      }

	  var country =FetchElement("COUNTRY");
   
   
      if (!country || country[country.selectedIndex].value=="" || country[country.selectedIndex].value.length == 0)
      {
        errormessage.innerHTML += "<br/>" + "Please enter your country";
        errors++;
      }
	  
      var BIRTH_DATE_0 = FetchElement("BIRTH_DATE.0");
   
      var BIRTH_DATE_1 = FetchElement("BIRTH_DATE.1");
   
      var BIRTH_DATE_2 = FetchElement("BIRTH_DATE.2");
   
      if (!BIRTH_DATE_1 || BIRTH_DATE_1=="" || BIRTH_DATE_1.value.length == 0 || 
         !BIRTH_DATE_2 || BIRTH_DATE_2=="" || BIRTH_DATE_2.value.length == 0 || 
         !BIRTH_DATE_0 || BIRTH_DATE_0=="" || BIRTH_DATE_0.value.length == 0 || 
         !isInteger(BIRTH_DATE_0.value) || !isInteger(BIRTH_DATE_1.value) || !isInteger(BIRTH_DATE_2.value)
         )
      {
        errormessage.innerHTML += "<br/>" + "Please enter your date of birth";
        errors++;
      }

    
   
   
     var email = FetchElement("EMAIL");
   
     if (!email || email=="" || email.value.length == 0 || !checkEmail(email))
     {
       errormessage.innerHTML += "<br/>" + "Please a valid email address";
       errors++;
     }
   
  
 // If errors stop and say so
   if (errors > 0)
   {
	  ShowElement("errormessage")
     return false;
   } 
   else
   {
	   HideElement("errormessage")
     return true
   }
   return false;	  
}