function preLoad()
{
	arrImages = new Array();
	for (i=0; i<preLoad.arguments.length; i++)
	{
		arrImages[i] 		= new Image();
		arrImages[i].src	= preLoad.arguments[i];
	}
}

function swapImg(imgName,status)
{	
	if (status == "on")
	{
		eval("document."+imgName+".src = '/images/nav_arrow_royal_12x24.gif'");
	
	} else {
		eval("document."+imgName+".src = '/images/royal_nav_arrow_12x24.gif'");
	
	}
}

function toggleLayer(layer,status,menu)
{
	var left_pos;
	var top_pos  = "114";
	
	if (menu == 1)
	{
		left_pos = "0";
	
	} else if (menu == 2) {
		left_pos = "120";
	
	} else if (menu == 3) {
		left_pos = "243";
	
	} else if (menu == 4) {
		left_pos = "425";
	
	} else if (menu == 5) {
		left_pos = "530";
	}

	if (navigator.appName == "Microsoft Internet Explorer")
	{
		// set position
		eval("document.all['"+layer+"'].style.top = '"+top_pos+"'");
		eval("document.all['"+layer+"'].style.left = '"+left_pos+"'");
		
		// turn off/on appropriate layer	
		eval("document.all['"+layer+"'].style.visibility = '"+status+"'");
	
	} else {
		eval("document."+layer+".visibility = '"+status+"'");
	
	}
}

function hideLayer(layer)
{
	eval("document.all['"+layer+"'].style.visibility = 'hidden'");
}

function menuItemOver(item)
{
	eval("document.all['"+item+"'].style.background = '#E6DCC2'");
	eval("document.all['"+item+"'].style.color = '#29489C'");
}

function menuItemOut(item)
{
	eval("document.all['"+item+"'].style.background = '#29489C'");
	eval("document.all['"+item+"'].style.color = '#FEF8E7'");
}

function help(topic)
{
	window.open("help.html"+topic,"newWindow","height=150,width=400,scrollbars=yes");
}

function chooser()
{
	window.open("template_samples.html","newWindow","height=600,width=300,scrollbars=yes");
}

function preSelect(form,type,field,dbVal)
{
	var count;
	
	if (type == "radio")
	{
		count = eval("form.elements['"+field+"'].length");
		
		for (i=0; i<count; i++)
		{
			if (eval("form.elements['"+field+"'][i].value == dbVal"))
			{
				eval("form.elements['"+field+"'][i].checked = true");
				break;
			}
		}
	
	} else if (type == "checkbox") {
		if (eval("form."+field+".value == dbVal"))
		{
			eval("form."+field+".checked = true");
		}
		
	} else if (type == "select") {

		if (!eval("form."+field))
		{
			count = eval("document.forms[1]."+field+".options.length");

			for (i=0; i<count; i++)
			{
				if (eval("document.forms[1]."+field+".options[i].value == dbVal"))
				{
					eval("document.forms[1]."+field+".options[i].selected = true");
					break;
				}
			}
		
		} else {
			count = eval("form."+field+".options.length");

			for (i=0; i<count; i++)
			{
				if (eval("form."+field+".options[i].value == dbVal"))
				{
					eval("form."+field+".options[i].selected = true");
					break;
				}
			}
		
		}
		
	}
}

function preSelectMultiple(form,type,field,arrVals)
{
	var count;
	
	if ((type == "radio") || (type == "checkbox"))
	{
		count = eval("form.elements['"+field+"'].length");
		
		for (x=0; x<arrVals.length; x++)
		{
			for (i=0; i<count; i++)
			{
				if (eval("form.elements['"+field+"'][i].value == arrVals[x]"))
				{
					eval("form.elements['"+field+"'][i].checked = true");
					break;
				}
			}
		}
	
	} else if (type == "select") {
		count = eval("form."+field+".options.length");
		
		for (i=0; i<count; i++)
		{
			if (eval("form."+field+".options[i].value == arrVals"))
			{
				eval("form."+field+".options[i].selected = true");
				break;
			}
		}
	}
}

function checkRequired(form,required)
{
	var errlist = "";
	var currfield;
	
	if (form.confirm_email)
	{
		if (!compareValues(form,'email','email_confirm'))
		{
			errlist = "Email addresses do not match\r\n";
		}
	}
	
	for (fieldname in required)
	{
		if (eval("form."+fieldname+".value") == "")
		{
			errlist += required[fieldname] + " is a required field\r\n";
		}
	}

	if (form.freeclass)
	{
		if (form.freeclass.checked != true)
		{
			cost = parseFloat(form.cost.value);
			disc = parseFloat(form.discount.value);
			base = cost - disc;

			if ((cost < 29) || (base < 29))
			{
				errlist += "Registration Fee cannot be less than $29.00 including discount";
			}
		}
	}
	
	if (errlist)
	{
		alert(errlist);
		return false;
		
	} else {
		disableSubmit(form);
		return true;
		
	}

}

function compareValues(form,field1,field2)
{
	var object1	= eval("form."+field1);
	var object2	= eval("form."+field2);
	
	if (object1.value == object2.value)
	{
		return true;
	
	} else {
		return false;
		
	}
}

function noPhoto()
{
	if (document.profile.image.value == "")
	{
		if (confirm("You haven't chosen an image to upload\r\nAre sure you want to continue?"))
		{
			return true;
			
		} else {
			return false;
			
		}
	}
}

function setMax(max)
{
	document.course.max_students.value = max;
}

function checkMax(max)
{
	if (max > 0)
	{
		if (parseInt(document.course.max_students.value) > max)
		{
			alert("Max students cannot exceed bridge capacity");
			document.course.max_students.value = max;
			return false;
		}
	}
}

function in_array(needle,haystack) 
{ 
	var bool = false; 

	for (var i=0; i<haystack.length; i++) 
	{ 
		if (array[i]==needle) 
		{ 
			bool=true; 
		} 
	} 
	
	return bool;
}

function disableOptions(type)
{
	ownbridge = document.bridgeoptions.elements["bridge_id"];
	tcibridge = document.bridgeoptions.elements["bridge_size"];
	
	if (type == "tci")
	{
		for (i=0; i<tcibridge.length; i++)
		{
			tcibridge[i].disabled = true;
			tcibridge[i].checked = false;
		}

		if (!ownbridge)
		{
			return false;
		}
		
		if (!ownbridge.length)
		{
			ownbridge.disabled = false;

		} else {
			for (i=0; i<ownbridge.length; i++)
			{
				ownbridge[i].disabled = false;
			}
		}
	
	} else if (type == "own") {

		if (ownbridge)
		{
			if (!ownbridge.length)
			{
				ownbridge.disabled = true;
				ownbridge.checked = false;
				
			} else {
				for (i=0; i<ownbridge.length; i++)
				{
					ownbridge[i].disabled = true;
					ownbridge[i].checked = false;
				}
			}
		}

		for (i=0; i<tcibridge.length; i++)
		{
			tcibridge[i].disabled = false;
		}
	}
}

function checkOption()
{
	if (document.bridgeoptions.bridge_option[0].checked == true)
	{
		size = document.bridgeoptions.elements["bridge_size"];

		for (i=0; i<size.length; i++)
		{
			if (size[i].checked == true) 
			{
				return true;
			
			} else {
				chosen = 0;

			}
		}

		if (!chosen)
		{
			alert("You must choose a rental option");
			return false;
		}

	} else {
		id = document.bridgeoptions.elements["bridge_id"];

		if (!id)
		{
			alert("You do not have any bridges to choose from.\r\nPlease add a bridge, or choose the \"I need to rent a bridge\" option\r\n");
			return false;
		}

		if (!id.length)
		{
			if (id.checked == true)
			{
				return true;
			
			} else {
				chosen = 0;

			}
		
		} else {
			for (i=0; i<id.length; i++)
			{
				if (id[i].checked == true)
				{
					return true;
			
				} else {
					chosen = 0;

				}
			}
		}

		if (!chosen)
		{
			alert("You must choose a bridge from your list");
			return false;
		
		}
	}
}

function cancelCourseCreation(cancel)
{
	if (cancel == "1")
	{
		document.location = "cancel_course_creation.html?action=cancel";
	
	} else {
		document.location = "cancel_course_creation.html";
	
	}
}

function toggleAll()
{
	var checks = document.students.elements["recipients[]"];
	
	if (checks[0].checked == true)
	{
		boxstatus = "on";
		
	} else {
		boxstatus = "off";
		
	}
	
	for (i=0; i<checks.length; i++)
	{
		if (boxstatus == "off")
		{
			checks[i].checked = true;
		
		} else {
			checks[i].checked = false;
			
		}
	}
}		

function disableSubmit(form)
{
	form.submit.disabled = true;
}

function checkStrLen(strLen,limit)
{
	if (strLen > limit)
	{
		alert("You product description is too long\r\nPlease limit it to no more than 550 characters (including spaces)");
		return false;
	}
}