function stringURL(s){
	var temp=""
	for (var i=0;i<s.length;++i){
		var c=s.charAt(i)
		if (c==" "){
			temp+="+"
		}
		else{
			temp+=c
		}
	}
	return temp
}

function mustBeNumber(n,msg){
	for (var i=0;i<n.length;i++){
		if ((n.charAt(i)<"0")|| (n.charAt(i)>"9")){
			alert("The value for "+msg+" must be a number")
			return false
		}
	}
return true
}


function mustBeFloatNumber(n,msg){
	for (var i=0;i<n.length;i++){
		if ((n.charAt(i)<"0")||(n.charAt(i)>"9")){
			if (n.charAt(i)!="."){
			alert("The value for "+msg+" must be a number")
			return false
			}
		}
	}
return true
}

function passwordcheck(pass1,pass2){
	if (pass1 != pass2){
	    alert("The passswords do not match")
	    return false
	}
return true
}

function mustBePhoneNumber(n){
	for (var i=0;i<n.length;i++){
		if ((n.charAt(i)<"0")||(n.charAt(i)>"9")){
			if (n.charAt(i)!=" "){
				alert("The phone number given does not appear to be correct. Only numbers and spaces are allowed")
				return false
			}
		}
	}
return true
}

function mustBeEMail(s,msg){
var emailat=false
var emaildot=false
var emailatno=999
	for (var i=0;i<s.length;i++){
		if (s.charAt(i)=="@"){
			emailat=true
			emailatno=i
		}
		if (s.charAt(i)=="."&&emailatno<i){
			emaildot=true
		}
	}
	if ( ( emailat==true ) && ( emaildot==true ) ) {
		return true
	}
	alert("I'm sorry, your e-mail address does not appear to be correct")	
return false
}

function valueBetween(n,msg,min,max){
	//valueBetweeen assumes that n must be a number so does the mustBeNumber check first
	if(mustBeNumber(n,msg)) {
		if((n<min)||(n>max)){
			alert(msg+" must be between "+min+" and "+max)
			return false
		}
	} else {
		return false
	}
return true
}

function yearValueBetween(n,msg){
	//valueBetweeen assumes that n must be a number so does the mustBeNumber check first
	if(mustBeNumber(n,msg)) {
		if((n<'1880')||(n>'2050')){
			alert(msg)
			return false
		}
	} else {
		return false
	}
return true
}

function mustHaveValue(n,msg){
	if (n.length>0){
		for (var i=0;i<n.length;i++){
			if (n.charAt(i)!=" ")
				return true
		}
	}
	alert("Please enter "+msg)
return false
}

function under15Years(childDate,d,m,y,msg){
dt = d+'/'+m+'/'+y
var doB = new Date(y,m-1,d)
var child = new Date(childDate)
if (doB < child) {
	alert(msg)
	return false
}
return true
}

function over18Years(adultDate,d,m,y){
dt = d+'/'+m+'/'+y
var doB = new Date(y,m-1,d)
var adult = new Date(adultDate)
if (doB > adult) {
	alert("You must be aged 18 or over to join Historic Scotland as an adult member")
	return false
}
return true
}

function checkDate(dt,msg){
if (dt.length==0)
	return true
var i=0
var c
var part= new Array("","","")
for (var p=0;p<3;p++){
	c=""
	while ((i<dt.length)&&(c!="/")){
		c=dt.charAt(i)
		if (c!="/")
			part[p]=part[p]+c
		i++
		}
	}
if (c=="/"){
	alert("Please enter a valid date for "+msg+" or leave blank")
	return false
	}
if ((part[1]<1)||(part[1]>12)){
	alert("Please enter a valid month for "+msg+" or leave blank")
	return false
	}
if ((part[0]<1)||(part[0]>31)){
	alert("Please enter a valid day for "+msg+" or leave blank")
	return false
	}
if ((part[2]<1000)||(part[2]>2010)){
	alert("Please enter a valid year for "+msg+" or leave blank")
	return false
	}			
return true
}

function checkEnter(e,form){
	var characterCode
	if(e && e.which){
		e = e
		characterCode = e.which
	}
	else{
		e = event
		characterCode = e.keyCode
	}

	if(characterCode == 13){
		form.submit()
		return false 
	}
	else{
		return true 
	}
}
