//show hide div boxes for quotes
var nLast;
function fnShowHide(sItem)
{
	if(nLast)
	{
		nLast.style.display = "none"
	}
	if(document.getElementById(sItem).style.display == "none")
	{
		nLast = document.getElementById(sItem)
		document.getElementById(sItem).style.display = "block";
	}
	else
	{
		document.getElementById(sItem).style.display = "none";
	}
	return false;
}



// Brochure Request form validation

function validate(){
	
 if (document.requestBrochure.fullName.value == "" )
 {
	alert("please enter your name");
	document.requestBrochure.fullName.focus();
	return (false);
 }
 
 if (document.requestBrochure.organisation.value == "" )
 {
	alert("please enter your organisation");
	document.requestBrochure.organisation.focus();
	return (false);
 }
 
 if (document.requestBrochure.add1.value == "" )
 {
	alert("please enter your address");
	document.requestBrochure.add1.focus();
	return (false);
 }
 
  if (document.requestBrochure.town.value == "" )
 {
	alert("please enter your city/town");
	document.requestBrochure.town.focus();
	return (false);
 }
 
   if (document.requestBrochure.postcode.value == "" )
 {
	alert("please enter your postcode");
	document.requestBrochure.postcode.focus();
	return (false);
 }
 
  if (document.requestBrochure.country.value == "" )
 {
	alert("please enter your country");
	document.requestBrochure.country.focus();
	return (false);
 }

  if (document.requestBrochure.phone.value == "" )
 {
	alert("please enter your phone number");
	document.requestBrochure.phone.focus();
	return (false);
 }
  
 if (document.requestBrochure.email.value == "")
 {
	alert("please enter your e-mail address");
	document.requestBrochure.email.focus();
	return (false);
 }
 
var field = document.requestBrochure.email
var emailStr = (document.requestBrochure.email.value)
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray==null) { 
	alert("Email address seems incorrect (check @ and .'s)")
	field.focus();
	field.select();
	return (false);
}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    // user is not valid
    alert("username seems invalid.")
	field.focus();
	field.select();
    	return (false);
}

var domainArray=domain.match(domainPat)

if (domainArray==null) {
	alert("domain name seems to be invalid")
	field.focus();
	field.select();
    	return (false);
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length

if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
   	alert("address must end in a three or four letter domain, or two letter country")
	field.focus();
	field.select();
   	return (false);
}

if (len<2) {
   var errStr="This address is missing a hostname"
   	alert(errStr)
	field.focus();
	field.select();
   	return (false);
}

}


// Benchmarking Booking form validation

function validateBooking(){

//will remove this after testing 'firstname' and 'lastname' 21/0602007 CH
 /* if (document.benchmarkBooking.fullName.value == "" )
 {
	alert("please enter your name");
	document.benchmarkBooking.fullName.focus();
	return (false);
 }*/
//end

//newly added CH 21/06/2007
    if (document.benchmarkBooking.salutation.value == "" )
 {
	alert("please select your Salutation");
	document.benchmarkBooking.salutation.focus();
	return (false);
 }
 
   if (document.benchmarkBooking.firstName.value == "" )
 {
	alert("please enter your Forename");
	document.benchmarkBooking.firstName.focus();
	return (false);
 }
 
   if (document.benchmarkBooking.lastName.value == "" )
 {
	alert("please enter your Surname");
	document.benchmarkBooking.lastName.focus();
	return (false);
 }
 

//end
   if (document.benchmarkBooking.jobTitle.value == "" )
 {
	alert("please enter your title");
	document.benchmarkBooking.jobTitle.focus();
	return (false);
 }
 
 if (document.benchmarkBooking.organisation.value == "" )
 {
	alert("please enter your organisation");
	document.benchmarkBooking.organisation.focus();
	return (false);
 }
 
  if (document.benchmarkBooking.typeOrg.value == "" )
 {
	alert("please enter the Industry Sector");
	document.benchmarkBooking.typeOrg.focus();
	return (false);
 }
 
 if (document.benchmarkBooking.add1.value == "" )
 {
	alert("please enter your address");
	document.benchmarkBooking.add1.focus();
	return (false);
 }
 
  if (document.benchmarkBooking.town.value == "" )
 {
	alert("please enter your city/town");
	document.benchmarkBooking.town.focus();
	return (false);
 }
 
   if (document.benchmarkBooking.postcode.value == "" )
 {
	alert("please enter your postcode");
	document.benchmarkBooking.postcode.focus();
	return (false);
 }
 
  if (document.benchmarkBooking.country.value == "" )
 {
	alert("please enter your country");
	document.benchmarkBooking.country.focus();
	return (false);
 }

  if (document.benchmarkBooking.phone.value == "" )
 {
	alert("please enter your phone number");
	document.benchmarkBooking.phone.focus();
	return (false);
 }
  
 if (document.benchmarkBooking.email.value == "")
 {
	alert("please enter your email address");
	document.benchmarkBooking.email.focus();
	return (false);
 }
 
var field = document.benchmarkBooking.email
var emailStr = (document.benchmarkBooking.email.value)
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray==null) { 
	alert("Email address seems incorrect (check @ and .'s)")
	field.focus();
	field.select();
	return (false);
}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    // user is not valid
    alert("username seems invalid.")
	field.focus();
	field.select();
    	return (false);
}

var domainArray=domain.match(domainPat)

if (domainArray==null) {
	alert("domain name seems to be invalid")
	field.focus();
	field.select();
    	return (false);
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length

if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
   	alert("address must end in a three or four letter domain, or two letter country")
	field.focus();
	field.select();
   	return (false);
}

if (len<2) {
   var errStr="This address is missing a hostname"
   	alert(errStr)
	field.focus();
	field.select();
   	return (false);
}

if (document.benchmarkBooking.dataContribute) {
 	if (document.benchmarkBooking.dataContribute.value == "" ){
		alert("please select if you have data to conttribute");
		document.benchmarkBooking.dataContribute.focus();
		return (false);
 	}
}


}


// Event Booking form validation

function validateEvent(){
//to be removed 
/* if (document.eventBooking.fullName.value == "" )
 {
	alert("please enter your name");
	document.eventBooking.fullName.focus();
	return (false);
 }
 */
 
 //newly added CH 21/06/2007
  if (document.eventBooking.firstName.value == "" )
 {
	alert("please enter your Forename");
	document.eventBooking.firstName.focus();
	return (false);
 }
 
   if (document.eventBooking.lastName.value == "" )
 {
	alert("please enter your Surname");
	document.eventBooking.lastName.focus();
	return (false);
 }
//end
   if (document.eventBooking.jobTitle.value == "" )
 {
	alert("please enter your title");
	document.eventBooking.jobTitle.focus();
	return (false);
 }
 
 if (document.eventBooking.organisation.value == "" )
 {
	alert("please enter your organisation");
	document.eventBooking.organisation.focus();
	return (false);
 }
 
  if (document.eventBooking.typeOrg.value == "" )
 {
	alert("please enter your Industry Sector");
	document.eventBooking.typeOrg.focus();
	return (false);
 }
 
 if (document.eventBooking.add1.value == "" )
 {
	alert("please enter your address");
	document.eventBooking.add1.focus();
	return (false);
 }
 
  if (document.eventBooking.town.value == "" )
 {
	alert("please enter your city/town");
	document.eventBooking.town.focus();
	return (false);
 }
 
   if (document.eventBooking.postcode.value == "" )
 {
	alert("please enter your postcode");
	document.eventBooking.postcode.focus();
	return (false);
 }
 
  if (document.eventBooking.country.value == "" )
 {
	alert("please enter your country");
	document.eventBooking.country.focus();
	return (false);
 }

  if (document.eventBooking.phone.value == "" )
 {
	alert("please enter your phone number");
	document.eventBooking.phone.focus();
	return (false);
 }
  
 if (document.eventBooking.email.value == "")
 {
	alert("please enter your email address");
	document.eventBooking.email.focus();
	return (false);
 }
 
var field = document.eventBooking.email
var emailStr = (document.eventBooking.email.value)
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray==null) { 
	alert("Email address seems incorrect (check @ and .'s)")
	field.focus();
	field.select();
	return (false);
}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    // user is not valid
    alert("username seems invalid.")
	field.focus();
	field.select();
    	return (false);
}

var domainArray=domain.match(domainPat)

if (domainArray==null) {
	alert("domain name seems to be invalid")
	field.focus();
	field.select();
    	return (false);
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length

if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
   	alert("address must end in a three or four letter domain, or two letter country")
	field.focus();
	field.select();
   	return (false);
}

if (len<2) {
   var errStr="This address is missing a hostname"
   	alert(errStr)
	field.focus();
	field.select();
   	return (false);
}

}


// ORC Direct email form validation

function validate(){
	
  if (document.directEmail.fullName.value == "" )
 {
	alert("please enter your name");
	document.directEmail.fullName.focus();
	return (false);
 }
 
   if (document.directEmail.company.value == "" )
 {
	alert("please enter your company name");
	document.directEmail.company.focus();
	return (false);
 }
 
 if (document.directEmail.email.value == "")
 {
	alert("please enter your e-mail address");
	document.directEmail.email.focus();
	return (false);
 }
 
var field = document.directEmail.email
var emailStr = (document.directEmail.email.value)
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray==null) { 
	alert("Email address seems incorrect (check @ and .'s)")
	field.focus();
	field.select();
	return (false);
}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    // user is not valid
    alert("username seems invalid.")
	field.focus();
	field.select();
    	return (false);
}

var domainArray=domain.match(domainPat)

if (domainArray==null) {
	alert("domain name seems to be invalid")
	field.focus();
	field.select();
    	return (false);
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length

if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
   	alert("address must end in a three or four letter domain, or two letter country")
	field.focus();
	field.select();
   	return (false);
}

if (len<2) {
   var errStr="This address is missing a hostname"
   	alert(errStr)
	field.focus();
	field.select();
   	return (false);
}

}

// Enquiry form validation

function validateEnquiry(){
  if (document.enquiryform.Name.value == "" )
 {
	alert("Please enter your name");
	document.enquiryform.Name.focus();
	return (false);
 }
 
   if (document.enquiryform.jobTitle.value == "" )
 {
	alert("Please enter your job title");
	document.enquiryform.jobTitle.focus();
	return (false);
 }
 
 if (document.enquiryform.organisation.value == "" )
 {
	alert("Please enter your organisation");
	document.enquiryform.organisation.focus();
	return (false);
 }
 

  if (document.enquiryform.telephone.value == "" )
 {
	alert("Please enter your phone number");
	document.enquiryform.telephone.focus();
	return (false);
 }
  
 if (document.enquiryform.email.value == "")
 {
	alert("Please enter your email address");
	document.enquiryform.email.focus();
	return (false);
 }
 
var field = document.enquiryform.email
var emailStr = (document.enquiryform.email.value)
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray==null) { 
	alert("The email address you have entered appears to be invalid. Please check and try again. (check @ and .'s)")
	field.focus();
	field.select();
	return (false);
}

var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    // user is not valid
    alert("username seems invalid.")
	field.focus();
	field.select();
    	return (false);
}

var domainArray=domain.match(domainPat)

if (domainArray==null) {
	alert("domain name seems to be invalid")
	field.focus();
	field.select();
    	return (false);
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length

if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
   	alert("address must end in a three or four letter domain, or two letter country")
	field.focus();
	field.select();
   	return (false);
}

if (len<2) {
   var errStr="This address is missing a hostname"
   	alert(errStr)
	field.focus();
	field.select();
   	return (false);
}

}




