///// onKeyUp="numTyped(this.value,dp3,'3')"
/// jump phone number fields
function numTyped(current, next,maxlen) {
  var len = current.length;
  if (len==maxlen) {
    next.focus();
  }
}

/////
///onKeyPress="return numbersonly(this, event)"
/////

function numbersonly(myfield, e, dec)
{
	var key;
	var keychar;
	if (window.event){
		key = window.event.keyCode;
	}else if (e){
		key = e.which;
	}else{
		return true;
	}
	keychar = String.fromCharCode(key);
	if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ){
		return true;
	}else if ((("+1234567890").indexOf(keychar) > -1)){
		return true;
	}else if (dec && (keychar == ".")){
		myfield.form.elements[dec].focus();
		return false;
	}else{
		return false;
	}
}

//// show hide function for auction ticket purchase
/// if mailing address is different than billing show mailing address fields

////the object you want to show and hide needs to be surrounded by this tag
///<div id="paymentoption" style="display:none;">---content---</div>
///
///this is using a drop down or radio button
///the actuator of can be
// onclick="show_hide('paymentoption','on');"
//
// when using check box, use:
// onclick="show_hide('paymentoption',this);"
// if statement change as so:
//
// if(state.checked)



function show_hide(obj,state)
{

	var elem = document.getElementById(obj);
	
	if(state.checked)
	{
		elem.style.display = "none";
		//// clear contents
		document.form.m_first_name.value = '';
		document.form.m_last_name.value = '';
		document.form.m_company_name.value = '';
		document.form.m_address1.value = '';
		document.form.m_address2.value = '';
		document.form.m_city.value = '';
		document.form.m_zip.value = '';
		document.getElementById('mp1').value = '';
		document.getElementById('mp2').value = '';
		document.getElementById('mp3').value = '';
	}
	else
	{
		elem.style.display = "block";
	}
	
}





/// popup window function
function popup(URL,w,h)
{

day = new Date();
id = day.getTime();

var width = w;
var height = h;

var left = ((screen.width-width)/2);
var top = ((screen.height-height)/2);

eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=0,width=' + width + ',height=' + height + ',left=' + left + ',top=' + top + '');");
}



function check_auction(form,x)
{

	var message = ""
	var more_message = new Array //(4)
	var showmsg = "no"
	var doItNow = "yes"

	var required = new Array (12)

	if (doItNow == "yes")
	{

		var i = 0;

		if ((form.ticket_adult.value == "" || form.ticket_adult.value == "0") && (form.ticket_child.value == "" || form.ticket_child.value == "0"))
		//&& (form.ticket_family.value == "" || form.ticket_family.value == "0")
			{more_message [i++] = "Please Enter The Number of Tickets You Would Like To Purchase"}
		
		if (form.ticket_retrieval.value == "")
			{more_message [i++] = "\nPlease Select A Ticket Retrieval Method"}
			
		
		/// end construct messgaes
		if (more_message != "")
		{
			if (message == "")
			{
				message = more_message
			}
			else
			{
				message = message + "\n" + more_message
			}
		}

		if (message > "")
		{
			showmsg = "yes"
		}																

		if (showmsg == "yes")
		{
			alert("The following form field(s) were incomplete or incorrect:\n\n" + message + "\n\n Please complete or correct the form and submit again.")
			return false;
		}
		else
		{ 
			document.getElementById('cont_trans').value = "Processing...";
			document.getElementById('cont_trans').disabled = true;
			form.submit()
			return true;
		}

	} // end if doitnot

} // end function


function check_order(form,x)

{

	var message = ""
	var more_message = new Array //(4)
	var showmsg = "no"
	var doItNow = "yes"

	var required = new Array (12)

	if (doItNow == "yes")
	{
		var i = 0;
	
		if (form.b_first_name.value == "")
		{
			more_message [i++] = "\nBilling First Name";
		}
		
		if (form.b_last_name.value == "")
		{
			more_message [i++] = "\nBilling Last Name";
		}
			
		if (form.b_address1.value == "")
		{
			more_message [i++] = "\nBilling Address";
		}
			
		if (form.b_city.value == "")
		{
			more_message [i++] = "\nBilling City";
		}
		
		if (form.b_zip.value == '')
		{
			more_message [i++] = "\nBilling Zip Code";
		}
		else if (form.b_zip.value.length < 5)
		{
			more_message [i++] = "\nInvalid Billing Zip Code";
		}
			
		// phone validation
		var elem1 = 'b_phone[]';
		var lastbox1 = 'bp3';
		if ( count_phoneboxes(elem1) >= 1 && count_phoneboxes(elem1) < 3)
		{
			more_message [i++] = "\nInvalid Billing Phone Number";
		}						
		else if ( count_num_boxes(elem1) <= 3 && count_phoneboxes(elem1) == 3)
		{
			if ((box_length(elem1) > 0 && box_length(elem1) <= 3) || document.getElementById(lastbox1).value.length < 4)
			{
				more_message [i++] = "\nInvalid Billing Phone Number";
			}
		}
		
		
		/// email validation
		
		if (form.email.value == "" )
		{
			more_message [i++] = "\nE-mail Address"
		}
		else if ( form.email.value != '' )
		{
			if ( checkEmail(form.email.value) == false )
			{
				more_message [i++] = "\nInvalid E-mail Address"
			}
			else if ( form.email.value != form.confirm_email.value )
			{
				more_message [i++] = "\nPlease Verify That Both E-mail Address Fields Are Identical"
			}
		}
		
		////////// mailing info validation
		if (form.ticket_retrieval.value == "Mail")
		{
			if (!form.billing_same.checked)
			{
				if (form.m_first_name.value == "")
				{
					more_message [i++] = "\nMailing First Name"
				}
			
				if (form.m_last_name.value == "")
				{
					more_message [i++] = "\nMailing Last Name"
				}
					
				if (form.m_address1.value == "")
				{
					more_message [i++] = "\nMailing Address"
				}
					
				if (form.m_city.value == "")
				{
					more_message [i++] = "\nMailing City"
				}
				
				if (form.m_zip.value == '')
				{
					more_message [i++] = "\nMailing Zip code"
				}
				else if (form.m_zip.value.length < 5)
				{
					more_message [i++] = "\nInvalid Mailing Zip Code"
				}
					
				// phone validation
				var elem1 = 'm_phone[]';
				var lastbox1 = 'mp3';
				if ( count_phoneboxes(elem1) >= 1 && count_phoneboxes(elem1) < 3)
				{
					more_message [i++] = "\nInvalid Mailing Phone Number"
				}						
				else if ( count_num_boxes(elem1) <= 3 && count_phoneboxes(elem1) == 3)
				{
					if ((box_length(elem1) > 0 && box_length(elem1) <= 3) || document.getElementById(lastbox1).value.length < 4)
					{
						more_message [i++] = "\nInvalid Mailing Phone Number"	
					}
				}
			} // end if check box for mailing not checked
		} // end ticket_retrieval == mail
		
		////////// credit card validation
		
		if (form.cc_name.value == "")
		{
			more_message [i++] = "\nName On Credit Card";
		}

		if (form.cc_number.value == "")
		{
			more_message [i++] = "\nCredit Card Number";
		}
		else
		{
			if (form.cc_type.value == "amex" && form.cc_number.value.length != 15 && form.cc_number.value.length != "")
			{
				more_message [i++] = "\nInvalid American Express Credit Card Number";
			}
			else
			{
				if (form.cc_type.value != "amex" && form.cc_number.value != "" && form.cc_number.value.length != 16)
				{
					more_message [i++] = "\nInvalid Credit Card Number";
				}
			}
		}

		if (form.cc_type.value == "")
		{
			more_message [i++] = "\nCredit Card Type";
		}

		if (form.xmm.value == "")
		{
			more_message [i++] = "\nExpiration Month";
		}

		if (form.xyyyy.value == "")
		{
			more_message [i++] = "\nExpiration Year";
		}
		
		
		///////////////////////////////
		
		
		/// selection
		
		
		/// end construct messgaes
		if (more_message != "")
		{
			if (message == "")
			{
				message = more_message
			}
			else
			{
				message = message + "\n" + more_message
			}
		}

		if (message > "")
		{
			showmsg = "yes"
		}
		
		if (showmsg == "yes")
		{
			alert("The following form field(s) were incomplete or incorrect:\n\n" + message + "\n\n Please complete or correct the form and submit again.")
			return false;
		}
		else
		{ 
			document.getElementById('cont_trans').value = "Processing...";
			document.getElementById('cont_trans').disabled = true;
			form.submit()
			return true;
		}

	} // end if doitnow
} // end check function


function check_out()
{
	document.getElementById('checkout').value = "Processing...";
	document.getElementById('checkout').disabled = true;
	form.submit()
	return true;
}
/// functions for form validation script





////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////




/// join interest list form validation
var new_fieldname = ""

function check(form,x)
{
	var message = ""
	var more_message = new Array //(4)
	var showmsg = "no"
	var doItNow = "yes"
	var required = new Array (12)

	if (doItNow == "yes") 	{

			var i = 0;

						if (form.first_name.value == "")
							{more_message [i++] = "Please Enter Your First Name"}
							
						if (form.last_name.value == "")
							{more_message [i++] = "\nPlease Enter Your Last Name"}
									

						if ((form.address_1.value == "" && form.city.value == "" && form.zipcode.value == "") && (form.email.value == "" && !form.receive_update.checked))
						{
							more_message [i++] = "\nPlease Enter Either Your Mailing or E-mail Address"
						}
												else if ( (form.address_1.value != "" && (form.city.value == "" || form.zipcode.value == "")) || ((form.address_1.value == "" || form.city.value == "") && form.zipcode.value != "") || ((form.address_1.value == "" || form.zipcode.value == "") && form.city.value != "") )
						{
							more_message [i++] = "\nPlease Enter a Complete Address"
						}

						
						////////
						
						/// on check for email if the check box is checked
						else if (form.email.value == "" && form.receive_update.checked)
						{
							more_message [i++] = "\nPlease Enter Your Email Address"
						}
						else if (form.email.value != "" && form.receive_update.checked)
						{
							if (form.email.value != form.confirm_email.value)
							{
								more_message [i++] = "\nPlease Verify That Both Your Email Addresses Match"
							}
							else if ((form.email.value.indexOf ('@', 0) < 3) || (form.email.value.indexOf ('.', 0) < 5))
							{
								more_message [i++] = "\nPlease Confirm Your Email Address is Correct"
							}
							else if ( (form.address_1.value != "" && (form.city.value == "" || form.zipcode.value == "")) || ((form.address_1.value == "" || form.city.value == "") && form.zipcode.value != "") || ((form.address_1.value == "" || form.zipcode.value == "") && form.city.value != "") )
							{
								more_message [i++] = "\nPlease Enter a Complete Address"
							}
						}
						else if (form.email.value != "" && !form.receive_update.checked)
						{
							more_message [i++] = "\nPlease Acknowledge That You Would Like to Receive Updates Via E-mail"
						}


						
						if (more_message != "") {

								if (message == "") {message = more_message}
									else
									{message = message + "\n" + more_message}
				        }
						if (message > "")
								{showmsg = "yes"}																
						if (showmsg == "yes")
			{
				alert("The following form field(s) were incomplete or incorrect:\n\n" + message + "\n\n Please complete or correct the form and submit again.")
				return false;
			}
			else
			{ 
				form.send.disabled=true;
				form.submit()
				return true;
			}

		}

	}

function check_request_info(form,x)
{
	var message = ""
	var more_message = new Array //(4)
	var showmsg = "no"
	var doItNow = "yes"
	var required = new Array (12)

	if (doItNow == "yes") 	{

			var i = 0;

						if ( count_moreinfo_boxes() == 0 )
						{
							more_message [i++] = "\nPlease Select One Area You Would Like to Receive Information on"
						}

						if (form.first_name.value == "")
							{more_message [i++] = "\nPlease Enter Your First Name"}
							
						if (form.last_name.value == "")
							{more_message [i++] = "\nPlease Enter Your Last Name"}
									

						if ((form.address_1.value == "" && form.city.value == "" && form.zipcode.value == "") && (form.email.value == "" && !form.receive_update.checked))
						{
							more_message [i++] = "\nPlease Enter Either Your Mailing or E-mail Address"
						}
												else if ( (form.address_1.value != "" && (form.city.value == "" || form.zipcode.value == "")) || ((form.address_1.value == "" || form.city.value == "") && form.zipcode.value != "") || ((form.address_1.value == "" || form.zipcode.value == "") && form.city.value != "") )
						{
							more_message [i++] = "\nPlease Enter a Complete Address"
						}

						
						////////
						
						/// on check for email if the check box is checked
						else if (form.email.value == "" && form.receive_update.checked)
						{
							more_message [i++] = "\nPlease Enter Your Email Address"
						}
						else if (form.email.value != "" && form.receive_update.checked)
						{
							if (form.email.value != form.confirm_email.value)
							{
								more_message [i++] = "\nPlease Verify That Both Your Email Addresses Match"
							}
							else if ((form.email.value.indexOf ('@', 0) < 3) || (form.email.value.indexOf ('.', 0) < 5))
							{
								more_message [i++] = "\nPlease Confirm Your Email Address is Correct"
							}
							else if ( (form.address_1.value != "" && (form.city.value == "" || form.zipcode.value == "")) || ((form.address_1.value == "" || form.city.value == "") && form.zipcode.value != "") || ((form.address_1.value == "" || form.zipcode.value == "") && form.city.value != "") )
							{
								more_message [i++] = "\nPlease Enter a Complete Address"
							}
						}
						else if (form.email.value != "" && !form.receive_update.checked)
						{
							more_message [i++] = "\nPlease Acknowledge That You Would Like to Receive Updates Via E-mail"
						}

						if (form.phone_contact.checked)
						{
							var elem = 'phone[]';
							if ( count_phoneboxes(elem) < 3 )
							{
								more_message [i++] = "\nPlease Enter the Phone Number Completely"
							}
							else if ( count_num_boxes(elem) < 3 )
							{
								more_message [i++] = "\nPlease Enter Only Numeric Digits For the Phone Number"
							}
							else if ( form.time_pref.value == "" )
							{
								more_message [i++] = "\nPlease Choose the Best Time to Call"
							}
						}
						else if ( count_phoneboxes() >= 1 && !form.phone_contact.checked)
						{
							more_message [i++] = "\nPlease Acknowledge That You Would Like to be Contacted by a Project Playhouse Team Member"
						}
						else if ( form.time_pref.value != "" && !form.phone_contact.checked)
						{
							more_message [i++] = "\nPlease Acknowledge That You Would Like to be Contacted by a Project Playhouse Team Member"
						}
						

						if (more_message != "") {

								if (message == "") {message = more_message}
									else
									{message = message + "\n" + more_message}
				        }
						if (message > "")
								{showmsg = "yes"}																
						if (showmsg == "yes")
			{
				alert("The following form field(s) were incomplete or incorrect:\n\n" + message + "\n\n Please complete or correct the form and submit again.")
				return false;
			}
			else
			{ 
				form.send.disabled=true;
				form.submit()
				return true;
			}

		}

}
	
//// phone funtions //////////////////////////////////////////

function count_moreinfo_boxes() { 
	box_checked = 0;
	with (document.form) { 
		for (var i=0; i < elements.length; i++) { 
			if (elements[i].type == 'checkbox' && elements[i].name == 'info_about[]')
				if (  elements[i].checked )
				{ 
					box_checked = box_checked + 1;
				}
		}
	}
	return box_checked;
}

function box_length(elem)
{
	len_short = 0;
	with(document.form)
	{
		for (var i=0; i <elements.length; i++)
		{
			if (elements[i].name == elem)
			{
				if (elements[i].value.length < 3)
				{
					len_short = len_short + 1;
				}
			}
		}
	}
	return len_short;
}

function count_phoneboxes(elem) { 
	box_checked = 0;
	with (document.form) { 
		for (var i=0; i < elements.length; i++) { 
			if (elements[i].name == elem)
				if (  elements[i].value != "" )
				{ 
						box_checked = box_checked + 1;
				}
		}
	}
	return box_checked;
}

function count_num_boxes(elem) {
	box_checked = 0;
	with (document.form) { 
		for (var i=0; i < elements.length; i++) { 
			if (elements[i].name == elem)
				//num = elements[i].value;
				if (elements[i].value.match(/^\d{3,4}$/))
				{ 
					box_checked = box_checked + 1;
				}
		}
	}
	return box_checked;
}

/////////////////

function count_comm_boxes() { 
	box_checked = 0;
	with (document.form) { 
		for (var i=0; i < elements.length; i++) { 
			if (elements[i].name == 'community[]')
				if (  elements[i].value != "" )
				{ 
						box_checked = box_checked + 1;
				}
		}
	}
	return box_checked;
}

function checkEmail(email) {
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email))
	{
		return (true)
	}
	else
	{
		return (false)
	}
}

//////////////////

/*******************************************
 * Photo Gallery functions                *
 *******************************************/
function changeImg(img, state, idx, tn)
{
	if (tn)
	{
		if (state == 'over' && curImg != idx)
		{
			img.src = tnOverImgs[idx].src;
		}
		else if (curImg != idx)
		{
			img.src = tnOutImgs[idx].src;
		}
	}
	else
	{
		if (state == 'over')
		{
			img.src = overImgs[idx].src;
		}
		else
		{
			img.src = outImgs[idx].src;
		}
	}
}

function tnClick(tn)
{
	if (tn != curImg)
	{
		eval('document.thumb' + (curImg + 1) + '.src = tnOutImgs[curImg].src');
		curImg = tn;
		eval('document.thumb' + (curImg + 1) + '.src = tnInImgs[curImg].src');
		document.large.src = lgImgs[curImg].src;
	}
}

///////////////////////
	 


