var levels = new Array();
levels['1990'] = "juvenile";
levels['1991'] = "juvenile";
levels['1992'] = "juvenile";
levels['1993'] = "midget";
levels['1994'] = "midget";
levels['1995'] = "midget";
levels['1996'] = "bantam";
levels['1997'] = "bantam";
levels['1998'] = "peewee";
levels['1999'] = "peewee";
levels['2000'] = "atom";
levels['2001'] = "atom";
levels['2002'] = "novice";
levels['2003'] = "novice";
levels['2004'] = "initiation";
levels['2005'] = "initiation";
levels['2006'] = "initiation";


function check_player_field(num, field) {
	var okay = true;
	if ((document.forms["regform"].elements["p" + num + "_active"].value == "true") && (document.forms["regform"].elements[field].value == "")) okay = false;
	return okay;
}
function check_guardian_field(num, field) {
	var okay = true;
	if ((document.forms["regform"].elements["pg" + num + "_active"].value == "true") && (document.forms["regform"].elements[field].value == "")) okay = false;
	return okay;
}

function check_email_field(num, field) {
	var okay = true;
	if ((document.forms["regform"].elements["pg" + num + "_active"].value == "true") && ((document.forms["regform"].elements[field].value == "") || (document.forms["regform"].elements[field].value.match(/^.+@[^\.].*\.[a-z]{2,}$/) == null))) okay = false;
	return okay;
}

function radiocheck_field(num, field) {
	var okay = false;
	if (document.forms["regform"].elements["p" + num + "_active"].value == "false") return true;
	var fields = document.getElementsByName("p" + num + "_" + field);
	for (i=0; i<fields.length; i++) if (fields[i].checked == true) okay = true;
	return okay;
}
function check_player(item) {
	return check_player_field(item.name.substring(1,2), item.name);
}
function check_guardian(item) {
	return check_guardian_field(item.name.substring(2,3), item.name);
}
function check_email(item) {
	return check_email_field(item.name.substring(2,3), item.name);
}
function radiocheck(item) {
	return radiocheck_field(item.name.substring(1,2), item.name.substring(3, item.name.indexOf("-first")));
}

function check_postal_code1(item) {
	var obj_pcode = item.el;
	if( obj_pcode.value != "" && obj_pcode.value.length >= 3 ) {
		var str_pcode = obj_pcode.value.substr(0, 3).toLowerCase();
		if( str_pcode == "k1b" || str_pcode == "k1j" || str_pcode == "k1k" )
			return true;
	}
	return false;
}
function checkPostalCode2() {
	var obj_pcode = item.el;
	if( obj_pcode.value != "" && obj_pcode.value.length >= 3 ) {
		var str_pcode = obj_pcode.value.substr(0, 3).toLowerCase();
		if( str_pcode == "k1b" || str_pcode == "k1j" || str_pcode == "k1k" )
			return true;
	}
	return false;
}

function initval() {
	var val = new validator("regform");
	for (i=1; i<=4; i++) {
		val.add("p" + i + "_family_name", "custom=check_player", "Please enter the family name for Player " + i + ".");			
		val.add("p" + i + "_given_name", "custom=check_player", "Please enter the given name for Player " + i + ".");			
		val.add("p" + i + "_status-first", "custom=radiocheck", "Please select the status for Player " + i + ".");			
		val.add("p" + i + "_sex-first", "custom=radiocheck", "Please select the sex for Player " + i + ".");			
		val.add("p" + i + "_position-first", "custom=radiocheck", "Please select the position for Player " + i + ".");			
		val.add("p" + i + "_level-first", "custom=radiocheck", "Please select the level of play for Player " + i + ".");			
	}
	for (i=1; i<=2; i++) {
		val.add("pg" + i + "_guardian_name", "custom=check_guardian", "Please enter the name for Parent/Guardian " + i + ".");			
		val.add("pg" + i + "_relationship", "custom=check_guardian", "Please enter the relationship to player for Parent/Guardian " + i + ".");			
		val.add("pg" + i + "_home_phone", "custom=check_guardian", "Please enter the home phone number for Parent/Guardian " + i + ".");			
		//val.add("pg" + i + "_work_phone", "custom=check_guardian", "Please enter the work phone number for Parent/Guardian " + i + ".");
		//val.add("pg" + i + "_cell_phone", "custom=check_guardian", "Please enter the cell phone number for Parent/Guardian " + i + ".");		
		val.add("pg" + i + "_email", "custom=check_email", "Please enter a valid email address for Parent/Guardian " + i + ".");		
		val.add("pg" + i + "_address", "custom=check_guardian", "Please enter the address for the child of Parent/Guardian " + i + ".");			
		val.add("pg" + i + "_postal_code", "custom=check_guardian", "Please enter the postal code for Parent/Guardian " + i + ".");			
	}
    val.add("pg1_postal_code", "custom=check_postal_code1", "Please enter a postal code in K1B or K1J.");
    //val.add("pg1_postal_code", "custom=check_postal_code1", "Please enter a postal code in K1B, K1J or K1K.");
	if( document.forms["regform"].elements["pg2_active"].value == "true" )
		val.add( "pg2_postal_code", "custom=check_postal_code2", "Please enter a postal code in K1B or K1J.");
	val.add( "txt_username", "req", "Please enter a username." );
	val.add( "txt_password", "req", "Please enter a password." );
	val.add( "txt_password2", "req", "Please confirm your password." );
}

function playerbuttons() {
	var shown = false;
	for (i=3; i>0; i--) {
		element = document.getElementById("p" + i + "-buttons");
		if ((shown == false) && (document.forms["regform"].elements["p" + i + "_active"].value == "true")) {
			element.style.display = "";
			shown = true;
		} else {
			element.style.display = "none";
		}
	}
}
function addplayer(num) {
	element = document.getElementById("player" + num);
	element.style.display = "";
	document.forms["regform"].elements["p" + num + "_active"].value = "true";
	playerbuttons();
}
function removeplayer(num) {
	element = document.getElementById("player" + num);
	element.style.display = "none";
	document.forms["regform"].elements["p" + num + "_active"].value = "false";
	playerbuttons();
}	

function guardianbuttons() {
	if (document.forms["regform"].elements["pg2_active"].value == "true") shown = true;
	else shown = false;
	
	for (i=1; i>0; i--) {
		element = document.getElementById("pg" + i + "-buttons");
		if ((shown == false) && (document.forms["regform"].elements["pg" + i + "_active"].value == "true")) {
			element.style.display = "";
			shown = true;
		} else {
			element.style.display = "none";
		}
	}
}
function addguardian(num) {
	element = document.getElementById("guardian" + num);
	element.style.display = "";
	document.forms["regform"].elements["pg" + num + "_active"].value = "true";
	guardianbuttons();
}
function removeguardian(num) {
	element = document.getElementById("guardian" + num);
	element.style.display = "none";
	document.forms["regform"].elements["pg" + num + "_active"].value = "false";
	guardianbuttons();
}	

function calculate() {
	if( document.forms["regform"].elements["total"] && document.forms["regform"].elements["total"].value )
	{
		var total = 0;
		for (i=1; i<=4; i++) {
			if (document.forms["regform"].elements["p" + i + "_active"].value == "true") {
				radios = document.getElementsByName("p" + i + "_level");
				for (j=0; j<radios.length; j++) {
					if( date_cut > date_now )
					{   // Regular Fees
					    if ((radios[j].checked == true) && (radios[j].value == "initiation")) total += 265;
					    else if ((radios[j].checked == true) && (radios[j].value == "juvenile")) total += 400;
						else if (radios[j].checked == true) total += 475;
					}
					else
					{   // Late Fees
					    if ((radios[j].checked == true) && (radios[j].value == "initiation")) total += 285;
					    else if ((radios[j].checked == true) && (radios[j].value == "juvenile")) total += 400;
						else if (radios[j].checked == true) total += 515;
					}
				}
			}
		}
		document.forms["regform"].elements["total"].value = "$" + total + ".00";
	}
}

function UpdateHockeyLevels( str_name, obj_month ) {
	var int_id = 0;
	var str_shortname = (str_name.split("_"))[0];
	str_shortname = str_shortname.substr( 1, str_shortname.length );
	int_id = str_shortname;
	str_name = "p" + int_id  + "_level";

	var obj_radios = document.getElementsByName(str_name);
	if( obj_radios.length == 0 )
		obj_radios = document.getElementsByName("level");
	var str_selected = levels["" + obj_month.yearPad];
	for( var i = 0;  i < obj_radios.length; i++ ) {
		if( str_selected == obj_radios[i].value ) {
			obj_radios[i].checked = true;
			obj_radios[i].disabled = false;
		}	else {
			obj_radios[i].disabled = true;
			obj_radios[i].checked = false;
		}
	}
	calculate();
}

function AlertBirthVerification() {
	alert('Verification of birth date will be needed for new players at the first evaluation session.');
}

function HideReturningPlayer( player ) {
	if( player > 0 )
		document.getElementById( 'p' + player + '_returning' ).style.display = "none";
	else
		document.getElementById( 'returning' ).style.display = "none";
}
function ShowReturningPlayer( player ) {
	if( player > 0 ) {
		document.getElementById( 'p' + player + '_returning' ).style.display = "";
		fade('p' + player + '_returning');
	} else {
		document.getElementById( 'returning' ).style.display = "";
		fade('returning');
	}
}
function HideGoalie( player ) {
	if( player > 0 )
		document.getElementById( 'goalie_hidden_' + player  ).style.display = "";
	else
		document.getElementById( 'goalie_hidden'  ).style.display = "";
}
function ShowGoalie( player ) {
	if( player > 0 ) {
		document.getElementById( 'goalie_hidden' ).style.display = "none";
	}
}

var FADE_RED = 255;
var FADE_GREEN = 223;
var FADE_BLUE = 55;

var FADE_TO_RED = 225;
var FADE_TO_GREEN = 225;
var FADE_TO_BLUE = 225;

var FADE_HOLD = 500;
var FADE_SPEED = 25;
var FADE_STEP = 2;

var fade_r = FADE_RED
var fade_g = FADE_GREEN
var fade_b = FADE_BLUE

function fade(container)
{
	if (fade_r == 0) fade_r == FADE_RED;
	if (fade_g == 0) fade_g == FADE_GREEN;
	if (fade_b == 0) fade_b == FADE_BLUE;
	if (fade_r + fade_g + fade_b != (FADE_TO_RED + FADE_TO_GREEN + FADE_TO_BLUE))
	{	
		document.getElementById(container).style.background = "rgb(" + fade_r + "," + fade_g + "," + fade_b + ")";
		if ((fade_r == FADE_RED) && (fade_g == FADE_GREEN) && (fade_b == FADE_BLUE))
			setTimeout('fade("' + container + '")', FADE_HOLD)
		else
			setTimeout('fade("' + container + '")', FADE_SPEED)
		if ((fade_r >= FADE_TO_RED) || (fade_r + FADE_STEP > FADE_TO_RED)) fade_r = FADE_TO_RED; else fade_r = fade_r + FADE_STEP;
		if ((fade_g >= FADE_TO_GREEN) || (fade_g + FADE_STEP > FADE_TO_GREEN)) fade_g = FADE_TO_GREEN; else fade_g = fade_g + FADE_STEP;
		if ((fade_b >= FADE_TO_BLUE) || (fade_b + FADE_STEP > FADE_TO_BLUE)) fade_b  = FADE_TO_BLUE; else fade_b = fade_b + FADE_STEP;
	}
	else
	{	
		document.getElementById(container).style.background = "rgb(" + fade_r + "," + fade_g + "," + fade_b + ")";
		fade_r = FADE_RED;
		fade_g = FADE_GREEN;
		fade_b = FADE_BLUE;
	}
}