
function checkForOtherHearAbout(){

 
  
  var validate = true;
  
  
  var selectControl = document.getElementById('r_fhearabout');
  
  if (selectControl){ 
    for (var i = 0; i < selectControl.options.length; i++){      
     if ( selectControl.options[i].selected == true &&  selectControl.options[i].value == "Other"  ){
      
        validate = false;         
        break;   
                 
     }      
       
    }
    
    if (validate){
      document.getElementById('row09').style.display="none";      
    }
    else {
      
      document.getElementById('row09').style.display="block";
    }
  
  }
}



function enquiry(){
  
  
  var validate = false;
  var errorLabel="errorDetailsArea";

  var fEmail = document.getElementById('r_femail');
  var lEmail = document.getElementById('r_lemail');
  var emailValidate    =   validateEmail( fEmail, lEmail) ;
  
  if (!emailValidate ){   
    errorStyleForm( lEmail, fEmail );
  }
  else{
     resetStyleForm( lEmail, fEmail );
  }
  

  var formFields = getEnquiryFields();
  
  var basicFormFields  =   validateFormFieldValues( formFields, 'r_f', 'r_l' ); 
  
  
  var howHeardAbout =   ValidateSelectOptions( 'r_fhearabout', 'r_lhearaboutus' );
  var enquiryType =   ValidateSelectOptions( 'r_fenquiryType', 'r_lenquiryType' );
  
    
  if ( enquiryType && howHeardAbout && basicFormFields && emailValidate ) {
        validate = true;
   }
   
   if(validate){  
    document.getElementById(errorLabel).innerHTML="";
   var form  = document.getElementById('enquire');
    
    form.action="http://www.tjrphotography.co.uk/makeEnquiry.php";

    form.submit();
    
    
    var placeholderDivStyle = document.getElementById('theDetailsArea').style.display;
    
    if ( placeholderDivStyle == "none"  ){    
       placeholderDivStyle ="block"; 
    }   
    
      
    
  
  }
  else{
  
    var placeholderDiv = document.getElementById('theDetailsArea');
    placeholderDiv.style.display="none"; 
    
    var errorDiv = document.getElementById(errorLabel);
    errorDiv.innerHTML="";
    errorDiv.innerHTML="<div class=\"errorlabelx\" id=\"r_errorTextLabel\"><b>Oops!</b> &nbsp; Your message has not been sent. The form has errors, please correct the mandatory fields (*) and we will contact you shortly </div></div>";
    
    errorDiv.style.display="block";
  
    
  }
  
}



function makeBackgroundActive( e )
{


    if (!e) {var e = window.event}

        if (e.target){
            targ = e.target
        }
        else if (e.srcElement){
          targ = e.srcElement
        }

        if (targ.nodeType == 3){ // defeat Safari bug
            targ = targ.parentNode;
        }

        var targ;
        var parentDivName;

        targ = targ.parentNode;
        parentDivName = targ.parentNode.id;  // traverse another parent node for input

        activateBackgroundColour( parentDivName, 40 );
}


function activateBackgroundColour( parentDivName, maxRows ){

	
	 
     var rowLabel =  parentDivName.substring( 0, parentDivName.length -2);
	 	 
	 

     for( var loop=1; loop < maxRows; loop++ ){
         
		  		  
		  var label = rowLabel; 

		  
		  if ( loop < 10){
			label += "0";		  
		  }
		  
		  label+=loop;
	  
          var ele = document.getElementById(label);

		  //alert( ele + ' element for ' +  label) ;
		  
          if (ele != null){
              if (( label == parentDivName) ){
                  ele.style.backgroundColor= "#efefef" ;
                 
              }
              else{
                  ele.style.backgroundColor= "#ffffff";

              }
          }
      }
}











function generalEnquiry(){
	
var validate = false;
  var errorLabel="g_errorTextLabel";

  var fEmail = document.getElementById('g_femail');
  var lEmail = document.getElementById('g_lemail');
  
  var emailValidate    =   validateEmail( fEmail, lEmail) ;
  
  if (!emailValidate ){   
    errorStyleForm( lEmail, fEmail );
  }
  else{
     resetStyleForm( lEmail, fEmail );
  }
  
  
  var formFields = getGeneralEnquiryValidatingFields();
  
  var basicFormFields  =   validateFormFieldValues( formFields, 'g_f', 'g_l' ); 
  
  
  var howHeardAbout =   ValidateSelectOptions( 'g_fhearabout', 'g_lhearaboutus' );
  
    
  if ( howHeardAbout && basicFormFields && emailValidate  ) {
        validate = true;
   }
   
   if(validate){  
    document.getElementById(errorLabel).innerHTML="";
    var form  = document.getElementById('enquire');
    
    form.action="http://www.eatdrinklocal.co.uk/generalEnquiry.php";

    form.submit();  
    
    /*alert( 'good form');  */
  
  }
  else{
    document.getElementById(errorLabel).innerHTML="Oops! &nbsp; Message has not been sent. &nbsp; The form has errors, please correct the mandatory fields (*) ";
  
  }
  
}




function validateTele( fTel, lTel  ){
  

    var validateTel = 0;

    

    if ( fTel.value.length > 6 ){
     validateTel = 1;
     
    }
  else if ( fTel.value.length == 0 ){
     validateTel = 2;
     
    } 
    
   return validateTel;


}

function validateCombinedEmailAndTelephone( telValidate,  emailValidate){
	
	var emailTelValidate = 0;
	
		
	if (( telValidate == '0' || telValidate == false ) &&  ( emailValidate == '1' || emailValidate == true )) {
    emailTelValidate = 1;
  } 
  
  if ( (emailValidate == '0' || emailValidate == false ) &&  ( telValidate == '1' || telValidate == true )  ){
    emailTelValidate = 1; 
  } 
  
  if ( (emailValidate == '1' || emailValidate == true ) &&  ( telValidate == '1' || telValidate == true )  ){
    emailTelValidate = 1; 
  } 
  
  
  return emailTelValidate;
  
  
   
  
	
}



function validateFormFieldValues( formFields, fieldPrefix, labelPrefix){

  var validateFields = false;

  
  for( loop=0; loop< formFields.length; loop++ ) {

      var formField = document.getElementById(fieldPrefix + formFields[loop] );
      var label = document.getElementById(labelPrefix + formFields[loop]);

      if (formField.value != ""){
          resetStyleForm( label, formField );
          validateFields = true;
        }
        else{
          errorStyleForm( label, formField );
      }
  }
  return validateFields;
}





function validateEmail(fEmail, lEmail ){

    var validateEmail = 0;

    
    var formEmail = fEmail.value;

    var atPos = formEmail.indexOf("@");

    if ( atPos != -1 ){

     var restOfString = formEmail.substring(atPos+1, formEmail.length);

     if ( restOfString.indexOf(".")!= -1){
        validateEmail = 1;
      }  
     }
	


 
	
	if ( fEmail.value.length == 0 ){
     validateEmail = 2;
     
    }

     

     return validateEmail;
}





function validateFormFieldValues( formFields, formprefix, labelprefix ){

  var validateFields = false;
  var error = true;

  
  for( loop=0; loop< formFields.length; loop++ ) {

      var formField = document.getElementById(formprefix + formFields[loop] );
      var label = document.getElementById(labelprefix + formFields[loop]);

      if (formField.value != ""){
	  
          resetStyleForm( label, formField );
          validateFields = true;
        }
        else{
          errorStyleForm( label, formField );
		  error = false;
      }
  }
  return error;
}







function getGeneralEnquiryValidatingFields(){
	var validatingFields = new Array();

  validatingFields.push("name");
  validatingFields.push("info");
  
  return validatingFields;
  
	
	
}


function getEnquiryFields(){

  var validatingFields = new Array();

  validatingFields.push("name");
  validatingFields.push("address");
  validatingFields.push("info"); 
  
  return validatingFields;
}


function overrideEmailState(  lEmail, fEmail,  emailValidate,  telValidate ){

	var newEmailValidateState = 1;

	if ( telValidate == 1 ){
		if ( emailValidate == 0){
			errorStyleForm( lEmail, fEmail );
			newEmailValidateState = 0;
		
		}
		else if ( emailValidate == 2 ){
			resetStyleForm( lEmail, fEmail );
			
			// implicit override -- It's ok cos telephone is valid
			// newEmailValidateState = 1; 
		}	
	}
	
	return newEmailValidateState;


}


function overrideTelState(  lTel, fTel,  emailValidate,  telValidate ){

var newTelValidateState = 1;

if ( emailValidate == 1 ){
		if ( telValidate == 0){
			errorStyleForm( lTel, fTel );
			newTelValidateState = 0;
		
		}
		else if ( telValidate == 2 ){
			resetStyleForm( lTel, fTel );
			
			// Implicit override -- It's ok cos email is valid
			//newTelValidateState = 1
		}	
	}
	return newTelValidateState;
}


function styleTelEmail( emailValidate,telValidate, lEmail, fEmail, lTel, fTel ){

  	
	if ( 	( emailValidate == 0 && telValidate == 2 ) ||
			( emailValidate == 2 && telValidate == 0 ) ||
			( emailValidate == 2 && telValidate == 2 ) ||
			( emailValidate == 0 && telValidate == 0 ) ){
	
	
		errorStyleForm( lEmail, fEmail );
		errorStyleForm( lTel, fTel );
		
	
	}
	else{
	
		resetStyleForm( lEmail, fEmail );
		resetStyleForm( lTel, fTel );
		
	}
	
}



function styleJustEmail( emailValidate, lEmail, fEmail ){	
	
	if ( emailValidate == 0 || emailValidate == 2 ) {	
	
		errorStyleForm( lEmail, fEmail );
		
	}
	else if (emailValidate == 1) {
	
		resetStyleForm( lEmail, fEmail );		
		
	}
	
}





function ValidateSelectOptions( selectControlName, label ){

	var validate = true;

	var selectControl = document.getElementById(selectControlName);
	
	if (selectControl){	
		for (var i = 0; i < selectControl.options.length; i++){
		
		
			
		 if ( selectControl.options[i].selected == true &&  (selectControl.options[i].value == "Please Select" || selectControl.options[i].value == "" ) ){
			
				validate = false;
				
				
				break;
				
				
				
			
		 }
		}
	}
	
	var elabel = document.getElementById(label);
	
	
	
	if (!validate ){		
		if (elabel){
			elabel.style.color = errorColor;
		}	
	}
	else{
		if (elabel){
			elabel.style.color = standardColor;
		}		
	}
	
	return validate;

}



function validateEmail( fEmail, lEmail ){

    var validateEmail = false;
    
    var formEmail = fEmail.value;

    var atPos = formEmail.indexOf("@");

    if ( atPos != -1 ){

     var restOfString = formEmail.substring(atPos+1, formEmail.length);

     if ( restOfString.indexOf(".")!= -1)
        validateEmail = true;
        resetStyleForm( lEmail, fEmail );
     }

     if(!validateEmail){
      errorStyleForm( lEmail, fEmail );
     }

     return validateEmail;
}


function errorStyleForm( label, input ){
       label.style.color = errorColor;
       input.style.color = errorColor;
}

function resetStyleForm( label, input ){
       label.style.color = standardColor;
       input.style.color = standardColor;
}


var errorColor = "#76120f";
var standardColor = "#555555";

