/*
 * Javascript functions for Tournament Registration
 *
 * ~ Written by Adrian for vsebasketball.com
 */

var rows = null;

function paddress_check(n) {
	if (!rows) rows = document.getElementsByTagName("tr");
	var form = document.getElementById("t_reg1");
	if (!form || !form.elements) return;
	var other = false;
	for (i=0; i<form.elements.length; i++) {
		if (form.elements[i].checked && form.elements[i].name == "_paddress"+n && form.elements[i].value == "other")
			other = true;
	}
	for (i=0; i<rows.length; i++) {
		if (rows[i].className && rows[i].className == "toggle_paddress"+n && rows[i].style) {
			if (other) {
				if (typeof rows[i].style.removeProperty == "function")
					rows[i].style.removeProperty("display");
				else
					rows[i].style['display'] = "block";
			} else {
				if (typeof rows[i].style.setProperty == "function")
					rows[i].style.setProperty("display", "none", "important");
				else
					rows[i].style['display'] = "none";
			}
		}
	}
}

function more_players(n) {
	var start_row = document.getElementById("playerRow"+n);
	if (!start_row) return;
	
	if (typeof start_row.style.setProperty == "function")
		start_row.style.setProperty("display", "none", "important");
	else
		start_row.style['display'] = "none";
	
	for (var row=start_row.nextSibling; row; row=row.nextSibling) {
		if (row.style) {
			if (typeof row.style.removeProperty == "function")
				row.style.removeProperty("display");
			else
				row.style['display'] = "block";
		}
		if (row.id == "playerRow"+(n+1))
			break;
	}
	paddress_check(n+1);
}

function fewer_players(n) {
	var start_row = document.getElementById("playerRow"+n);
	if (!start_row) return;
	
	for (var row=start_row; row; row=row.previousSibling) {
		if (row.style) {
			if (typeof row.style.setProperty == "function")
				row.style.setProperty("display", "none", "important");
			else
				row.style['display'] = "none";
		}
		if (row.id == "playerRow"+(n-1)) {
			if (row.style) {
				if (typeof row.style.removeProperty == "function")
					row.style.removeProperty("display");
				else
					row.style['display'] = "block";
			}
			break;
		}
	}
	clear_player(n);
}

function hide_excess_players(n) {
	if (!n) n = 4;
	var start_row = document.getElementById("playerRow"+n);
	if (!start_row) return;
	
	for (var row=start_row.nextSibling; row; row=row.nextSibling) {
		if (row.style) {
			if (typeof row.style.setProperty == "function")
				row.style.setProperty("display", "none", "important");
			else
				row.style['display'] = "none";
		}
		if (row.id == "playerRow14")
			break;
	}
	
	/* hide buttons prior to the start row */
	for (var row=start_row.previousSibling; row; row=row.previousSibling) {
			if (row.style && row.id && row.id.match(/^playerRow\d+/)) {
				if (typeof row.style.setProperty == "function")
					row.style.setProperty("display", "none", "important");
				else
					row.style['display'] = "none";
			}
	}
}

function clear_player(n) {
	var names = ['lastname', 'firstname', 'jersey', 'address', 'city', 'state', 'zip', 'phone', 'email', 'dob', 'school', 'grade', 'age', 'gpa', 'act', 'sat', 'gender', 'paddress', 'pcity', 'pstate', 'pzip', 'pphone', 'pemail'];
	
	var form = document.getElementById("t_reg1");
	if (!form || !form.elements) return;
	
	for (i = 0; i < form.elements.length; i++) {
		if (form.elements[i].name) {
			for (j = 0; j < names.length; j++) {
				if (form.elements[i].name == names[j] + n) {
					if (j < 3)
						form.elements[i].value = '';
					else
						resetFormField(form.elements[i]);
				}
			}
		}
	}
}

function resetFormField(elem) {
	if (elem.tagName == "textarea" || elem.type == "text" || elem.type == "password" || elem.type == "file")
		elem.value = elem.defaultValue;
	else if (elem.type == "radio" || elem.type == "checkbox")
		elem.checked = elem.defaultChecked;
	else if (elem.tagName == "option")
		elem.selected = elem.defaultSelected;
}

function disclaimerCheck(event) {
	var form = document.getElementById("t_reg1");
	if (!form || !form.elements) return;
	var other = false;
	for (i=0; i<form.elements.length; i++) {
		if (form.elements[i].checked && form.elements[i].name == "disclaimer" && form.elements[i].value == "NO") {
			alert('STOP! You must fully read and accept our terms before proceeding.');
			if (event && typeof event.preventDefault == "function") event.preventDefault();
			else if(event) event.returnValue = false;
			return false;
		}
	}
}

