// JavaScript Document


function requiredFields () 
{
	var form_ok = true;
	reqFields = document.forms[0].required_fields.value;
	if (reqFields != "none") 
	{ 
	  reqFields = reqFields.split(",");
	  for(i=0;i<reqFields.length;i++) 
	  {
	    fieldObj = eval("document.forms[0]." + reqFields[i]);
		if(fieldObj){
		 	fieldVal = fieldObj.value;
			fieldName = fieldObj.name;
		}
		if (fieldObj && (fieldVal == "" || (fieldName == "read_tcs" && fieldVal == "no"))) 
		{
	    	form_ok = false;
			if(fieldName == "read_tcs" && document.forms[0].action == "https://epage.payandshop.com/epage.cgi"){
				alert("Please confirm that you have read the Terms & Conditions");
				fieldObj.focus();
				break;
			} else if(fieldName == "agree_fee" && document.forms[0].action == "https://epage.payandshop.com/epage.cgi"){
				alert("Please confirm that you understand the Yearly Charge to be \u20AC" + (parseInt(document.forms[0].AMOUNT.value)/100));
				fieldObj.focus();
				break;
			} else if(fieldName == "contact_time"){
				alert("Please enter a suitable Contact Time");
				fieldObj.focus();
				break;
			} else if(fieldName == "confirm_email"){
				alert("Please confirm your email address");
				fieldObj.focus();
				break;				
			} else {
				alert("Please enter your " + fieldName);
				fieldObj.focus();
				break;
			}			
	 	}
		
		else form_ok = true;
      }
	  
	 
	  if(document.forms[0].email.value != ""){
		  if ( form_ok && !IsEmailValid() ) 
		  {
			form_ok = false;
		  }
	  }
	  
	  
	  if(document.forms[0].confirm_email.value != ""){
		  if ( form_ok && document.forms[0].email.value != document.forms[0].confirm_email.value) 
		  {
			alert("Your confirmation email address does not appear to be the same as your original email address");
			document.forms[0].confirm_email.focus();
			form_ok = false;
		  }
	  }
	  

	  if ( form_ok && !isphone() ) 
      {
	    form_ok = false;
	  }
	  
	  /*
	  if(document.forms[0].mobile.value != ""){
		  if ( form_ok && !ismobile() ) 
		  {
			form_ok = false;
		  }
	  }
	  */
	  
	  if (form_ok){
		  
		  //document.forms[0].submit();		  
	  }
	}
	
	//else document.forms[0].submit();
	
	return form_ok;
}

function isphone(){
	var phone_ok = true
	var Temp = document.forms[0].phone
	var str = Temp.value
	// \[\(\)\.\-\ ]
	var stripped = str.replace(/ \[\(\)\.\-\]/g, '')
//strip out acceptable non-numeric characters
//if not a number give error message
	if (isNaN(parseInt(stripped))) {
		phone_ok = false
		alert('Please enter a valid phone number')
		Temp.focus()   
	}
	return phone_ok
}
function ismobile(){
	var phone_ok = true
	var Temp = document.forms[0].mobile
	var str = Temp.value
	// \[\(\)\.\-\ ]
	var stripped = str.replace(/ \[\(\)\.\-\]/g, '')
//strip out acceptable non-numeric characters
//if not a number give error message
	if (isNaN(parseInt(stripped))) {
		phone_ok = false
		alert('Please enter a valid mobile number')
		Temp.focus()   
	}
	return phone_ok
}
 	  
function IsEmailValid()
{
	var EmailOk  = true
	var Temp     = document.forms[0].email
	var AtSym    = Temp.value.indexOf('@')
	var Period   = Temp.value.lastIndexOf('.')
	var Space    = Temp.value.indexOf(' ')
	var Length   = Temp.value.length - 1   // Array is from 0 to length-1
	
	if ((AtSym < 1) ||                     // '@' cannot be in first position
	    (Period <= AtSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
	    (Period == Length ) ||             // Must be atleast one valid char after '.'
	    (Space  != -1))                    // No empty spaces permitted
	   {  
	      EmailOk = false
	      alert('Please enter a valid e-mail address!')
	      Temp.focus()
	   }
	return EmailOk
}

function changePayMethod(num)
{
	/*
	if(num==1){
		document.forms[0].action = "https://epage.payandshop.com/epage.cgi";

	} else if(num==2){
		document.forms[0].action = "http://www.webfactory.ie/cgi-bin/FormMail.pl";
	}
	*/
}

function readTCs()
{
	if(document.forms[0].read_tcs){
		if(document.forms[0].read_tcs.checked){
			document.forms[0].read_tcs.value = "yes";
		} else {
			document.forms[0].read_tcs.value = "no";
		}
	}
}

function agreeFee()
{	
	if(document.forms[0].agree_fee){
		if(document.forms[0].agree_fee.checked){
			document.forms[0].agree_fee.value = "yes";
		} else {
			document.forms[0].agree_fee.value = "no";
		}
	}	
}

function showTCs()
{
	window.open('tcs.htm','mywindow','width=600,height=400,left=0,top=100,screenX=100,screenY=100,resizable=yes,scrollbars=yes,location=no');
}

function setCookie(name, value, expires, path, domain, secure) 
{
	var today = new Date();
	today.setTime( today.getTime() );
	
	if ( expires )
	{
		expires = expires * 1000 * 60 * 60 * 24;
	}
	
	var expires_date = new Date( today.getTime() + (expires) );
	
	document.cookie = name + "=" +escape( value );/* +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
	( ( path ) ? ";path=" + path : "" ) + 
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );*/
}

function rec_info_email()
{
	if(document.forms[0].receive_info_email){
		if(document.forms[0].receive_info_email.checked){
			document.forms[0].receive_info_email.value = "yes";
		} else {
			document.forms[0].receive_info_email.value = "no";
		}
	}
}

function rec_info_phone()
{
	if(document.forms[0].receive_info_phone){
		if(document.forms[0].receive_info_phone.checked){
			document.forms[0].receive_info_phone.value = "yes";
		} else {
			document.forms[0].receive_info_phone.value = "no";
		}
	}
}

function rec_info_post()
{
	if(document.forms[0].receive_info_post){
		if(document.forms[0].receive_info_post.checked){
			document.forms[0].receive_info_post.value = "yes";
		} else {
			document.forms[0].receive_info_post.value = "no";
		}
	}
}


function rec_info_text()
{
	if(document.forms[0].receive_info_text){
		if(document.forms[0].receive_info_text.checked){
			document.forms[0].receive_info_text.value = "yes";
		} else {
			document.forms[0].receive_info_text.value = "no";
		}
	}	
}
