function popup(page,width,height,scroll) {
	window.open(page, "popup", "width="+width+",height="+height+",toolbars=no,scrollbars="+scroll)
}

function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
    if (! allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    }
	
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}

function checkFields() {
	if (contactform.name.value == '' || contactform.email.value == '' || contactform.age.selectedIndex == 0) {
		alert("Please ensure the following are filled in:\n\n  - Name\n  - Email\n  - Age");
		return false;
	}else{
		if (! isValidEmail(contactform.email.value)) {
        	alert("Please enter a valid email address");
        	return false;
    	}else{
			return true;
		}
	}
}

function checkFields2() {
	if (contactform.name.value == '' || contactform.email.value == '') {
		alert("Please ensure the following are filled in:\n\n  - Name\n  - Email\n  - Age");
		return false;
	}else{
		if (! isValidEmail(contactform.email.value)) {
        	alert("Please enter a valid email address");
        	return false;
    	}else{
			return true;
		}
	}
}

function checkSignup() {
	if (signupform.username.value == '' || signupform.password.value == '' || signupform.firstname.value == '' || signupform.surname.value == '' || signupform.location.value == '' || signupform.dob_day.selectedIndex == 0 || signupform.dob_month.selectedIndex == 0 || signupform.dob_year.selectedIndex == 0) {
		alert("Please ensure all the fields are filled in.");
		return false;
	}else{
		if (! isValidEmail(signupform.email.value)) {
        	alert("Please enter a valid email address");
        	return false;
    	}else{
			return true;
		}
	}
}

function checkVote() {
	var found_it;
	
	for (var i=0; i<document.voteform.polloption.length; i++)  { 
		if (document.voteform.polloption[i].checked) {
			return true;
		}
	}
	alert("Please select an option")
	return false;
}

function valComp() {
	if (compform.name.value == '' || compform.address.value == '') {
		alert("Please ensure your name and address are filled in");
		return false;
	}else{
		return true;
	}
}