function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}

function validUsername(str) {
	var re_username = /^\w[\w\.\-_]*$/;
	return re_username.test(str);
}

function validHostname(str) {
	var re_hostname = /^(\w[\w\-]*\.)+[A-Za-z]{2,4}$/;
	return re_hostname.test(str);
}

function validEmail(str) {
	if (str == "") return false;
	var match = str.match(/^([^@]+)@([^@]+)$/);
	if (!match) return false;
	return validUsername(match[1]) && (validHostname(match[2]) || validIPAddress(match[2]));
}

function checkState(readRules) {
	if (readRules.checked) {
		$("#contbutton").attr("disabled", false);
	} else {
		$("#contbutton").attr("disabled", true);
	}
}

function checkForm(dform) {
	var canSubmit = true;
	var errors = "The following fields must be filled in:\n";

	var foundChecked = false;
	var regChecked = -1;

	for (var i = 0; i < dform.class.length; i++) {
		if (dform.class[i].checked) {
			regChecked = i;
			foundChecked = true;
		}
	}

	if (regChecked > 0) {
		if (foundChecked) {
			if (dform.class[regChecked].value == "culstudent" && dform.school.value == "") {
				errors += "The name of culinary school attending.\n";
				canSubmit = false;
			}
		}
	}

	if (regChecked < 0 && !dform.signupshowcase.checked && !dform.tastingcomp.checked) {
		errors += "You must select a competition to enter.\n";
		canSubmit = false;
	}
	
	if (dform.showcasecakes.value == '' && dform.signupshowcase.checked) {
		errors += "Number of Showcakes you are entering.\n";
		canSubmit = false;
	}

	if (canSubmit == false) {
		alert(errors);
		return false;
	} else {
		return true;
	}
}

function displayShowCakesField(ditem) {
	$("#showcakes").toggle();
}

function checkClassForm(dform) {
	if (dform.elements["class"] && (dform.elements["class"].value != "junior" && dform.elements["class"].value != "child")) {
		var foundStyle = 0;
		
		for (var i = 0; i < dform.elements.length; i++) {
			if (dform.elements[i].name.match(/style/g) && (dform.elements[i].value >= 0 && dform.elements[i].value != '')) {
				foundStyle = 1;
			}
		}
	} else {
		var foundStyle = 1;
	}
	
	if (dform.elements["tastingcomp"]) {
		var foundTasting = 0;
		
		for (var i = 0; i < dform.elements.length; i++) {
			if (dform.elements[i].name.match(/taste/g) && (dform.elements[i].value >= 0 && dform.elements[i].value != '')) {
				var t = dform.elements[i].name;
				foundTasting = 1;
			}
		}
	} else {
		var foundTasting = 1;
	}

	if ((dform.elements["class"] && foundStyle == 0) || (dform.elements["tastingcomp"] && foundTasting == 0)) {
		var errmsg = "";
		
		if (dform.elements["class"] && foundStyle == 0) {
			errmsg += "Style error message.\n";
		}
		
		if (dform.elements["tastingcomp"] && foundTasting == 0) {
			errmsg += "Tasting error message.\n";
		}
		
		alert(errmsg);
		return false;
	} else {
		return true;
	}
}

function setActionChecked(inputObj, action, nonaction) {
	if (inputObj.checked) {
		inputObj.form.action.value = action;
	} else {
		inputObj.form.action.value = nonaction;
	}
}

function setAction(inputObj, action) {
	inputObj.form.action.value = action;
}

function loadStyles() {
	var newWin = window.open('/instructor/includes/stylehelp.php','Styles','scrollbars=yes,status=no,resizable=yes,width=500,height=400,X=20,Y=20');
	newWin.focus();
}