// JavaScript Document

$(function() {
	
	//initialize email address validator
	$('#emailAddress').validator({
		format: 'email',
		minLength: 7,
		//invalidEmpty: true,
		correct: function() {
			$('#invalidEmail').text('');
		},
		error: function() {
			$('#invalidEmail').text('Invalid email address.');
			$('#emailAddress').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call email address validator on blur event
	$('#emailAddress').blur(function(e) {
		$('#emailAddress').validator('validate');
	});
	
	//initialize zip code validator
	$('#zipCode').validator({
		format: 'zipUS',
		
		//invalidEmpty: true,
		correct: function() {
			$('#invalidZip').text('');
		},
		error: function() {
			$('#invalidZip').text('Invalid zip code.');
			$('#zipCode').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call zip code validator on blur event
	$('#zipCode').blur(function(e) {
		$('#zipCode').validator('validate');
	});
	
	//initialize zip code validator
	$('#Card_Number').validator({
		format: 'creditCard',
		
		//invalidEmpty: true,
		correct: function() {
			$('#invalidCard').text('');
		},
		error: function() {
			$('#invalidCard').text('Invalid card number.');
			$('#Card_Number').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call zip code validator on blur event
	$('#Card_Number').blur(function(e) {
		$('#Card_Number').validator('validate');
	});
	
	
	
	$('#MainPhoneAC').validator({
		format: 'numeric',
		minLength: 3,
		//invalidEmpty: true,
		correct: function() {
			//$('#invalidCard').text('');
		},
		error: function() {
			//$('#invalidCard').text('Invalid card number.');
			$('#MainPhoneAC').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	
	$('#MainPhoneAC').blur(function(e) {
		$('#MainPhoneAC').validator('validate');
	});
	
	
	$('#MainPhoneEX').validator({
		format: 'numeric',
		minLength: 3,
		//invalidEmpty: true,
		correct: function() {
			//$('#invalidCard').text('');
		},
		error: function() {
			//$('#invalidCard').text('Invalid card number.');
			$('#MainPhoneEX').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call zip code validator on blur event
	$('#MainPhoneEX').blur(function(e) {
		$('#MainPhoneEX').validator('validate');
	});
	
	
	$('#MainPhoneNUM').validator({
		format: 'numeric',
		minLength: 4,
		//invalidEmpty: true,
		correct: function() {
			//$('#invalidCard').text('');
		},
		error: function() {
			//$('#invalidCard').text('Invalid card number.');
			$('#MainPhoneNUM').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call zip code validator on blur event
	$('#MainPhoneNUM').blur(function(e) {
		$('#MainPhoneNUM').validator('validate');
	});



	
	//initialize email address validator
	$('#emailAddress1').validator({
		format: 'email',
		minLength: 7,
		//invalidEmpty: true,
		correct: function() {
			$('#invalidEmail1').text('');
		},
		error: function() {
			$('#invalidEmail1').text('Invalid email address.');
			$('#emailAddress1').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call email address validator on blur event
	$('#emailAddress1').blur(function(e) {
		$('#emailAddress1').validator('validate');
	});

	//initialize email address validator
	$('#emailAddress2').validator({
		format: 'email',
		minLength: 7,
		//invalidEmpty: true,
		correct: function() {
			$('#invalidEmail2').text('');
		},
		error: function() {
			$('#invalidEmail2').text('Invalid email address.');
			$('#emailAddress2').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call email address validator on blur event
	$('#emailAddress2').blur(function(e) {
		$('#emailAddress2').validator('validate');
	});

	//initialize email address validator
	$('#emailAddress3').validator({
		format: 'email',
		minLength: 7,
		//invalidEmpty: true,
		correct: function() {
			$('#invalidEmail3').text('');
		},
		error: function() {
			$('#invalidEmail3').text('Invalid email address.');
			$('#emailAddress3').css({'border-color':'#C33','background-color':'#FCC'});
		}
	});
	
	//call email address validator on blur event
	$('#emailAddress3').blur(function(e) {
		$('#emailAddress3').validator('validate');
	});
	
	
});


function validateForm(getForm)
{
	var passed = true;
	var form = document.getElementById(getForm);
	
	for (var i=0; i<form.length; i++)
	{
		//passed = false;
		
		var elementClass = form.elements[i].className;
		//alert(form.elements.item(5).selectedIndex);
		if (form.elements.item(i).selectedIndex == 0 || form.elements.item(i).value == "" || form.elements.item(i).value == null)
		{	
			if (elementClass.match("required"))	
			{
				passed = false;
				form.elements.item(i).style.border = "solid 1px #C33";
				form.elements.item(i).style.backgroundColor = "#FCC";
				//alert(passed+" "+form.elements[i].id+" value is: "+form.elements[i].value);
						
			}
		}
		
	}//end loop
	
	if (passed == true)
	{
		if (form.id == "send_to_sponsors")
		{
			var str = "";

			for (var i=0; i<form.length; i++)
			{
				str = str + form.elements.item(i).name + "=" + form.elements.item(i).value + "&";
			}
			
			$.ajax({
   				type: "GET",
   				url: "sendtosponsors.asp",
   				data: str,
				
   				success: function(msg){
					$("#mybox").html('<div style="font-size:16px;"><p>Thank you!</p><p>Your request was sent to the sponsors.</div></p><br /><br />');
   				},
				error: function(msg){
					var prevURL = "'"+window.location.search+"'";
					$("#mybox").html('<p style="font-family:Arial, Helvetica, sans-serif; font-size:16px;">We\'re sorry... Your request could not be sent.</p><br /><a href="javascript:backToForm('+prevURL+');" id="openbox" style="width:120px; font-size:12px;">Back to Form</a><br /><br />');
				}
 			});
			
			$(".preloader").css("visibility","visible");
		}
		else
		{
			form.submit();
		}
	}
	else
	{
		$('#msg').css("display","block");
		$('#msg').html("The items in <strong>RED</strong> are required");
		
	}
	
}

function backToForm(url)
{
	$("#mybox").load("sponsors_form.asp?" + url);
}

function onBlur(field)
{
	if (field.value != "" && field.value != null)
	{
		field.style.borderColor = "#7F9DB9";
		field.style.backgroundColor = "#FFF";
	}
}

function enterKey(getForm,event)
{
	if (event.keyCode == 13)
	{
		validateForm(getForm);
	}
}

function resetForm(getForm)
{
	$('#msg').css("display","none");
	$('#'+getForm+' input.required').css({"border-color":"#7F9DB9","background-color":"#FFF"});
	$('#'+getForm+' select.required').css({"border-color":"#7F9DB9","background-color":"#FFF"});
	$('#'+getForm+' textarea.required').css({"border-color":"#7F9DB9","background-color":"#FFF"});
}

function ccLimit(cc,number) //cc = dropdown menu, number = credit card number field id
{
	var ccType = cc.value;
		
	document.getElementById(number).value = "";
	
	if (ccType == "AMEX")
	{
		document.getElementById(number).maxLength = 15;
	}
	else
	{
		document.getElementById(number).maxLength = 16;
	}
	//alert(document.getElementById(number).maxLength);
}

function calculateAmount(field,writeTo,hiddenField,times)
{
	//var fieldValue = Number(field.value);
	var total = Number(field.value*times);
	
	$(writeTo).text(total.toFixed(2));
	$('input'+hiddenField).val(String(total.toFixed(2)));
	
}

$(function() {
	$("#resetButton").click(function() {
		$("#amount").val('0');
		$(".total").val('0');
		$(".invalid").text("");
	});
});

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}


//dialog box functions
function initDialog(targetID,modalW,modalH,headerTitle,isForm)
{
	if (isForm == true)
	{		
		$(targetID).dialog({
			autoOpen: false,
			title: headerTitle,
			modal: true,
			draggable: false,
			resizable: false,
			width: modalW,
			height: 'auto',
			show: 'fade',
			hide: 'fade'
			
		});
	}
	else
	{
		$(targetID).dialog({
			autoOpen: false,
			modal: true,
			draggable: false,
			resizable: false,
			width: modalW,
			height: modalH,
			show: 'fade',
			hide: 'fade',
			buttons: {
				"Close": function() { 
					$(this).dialog("close"); 
				} 
			}
		});
	}
}

function OpenModal(triggerID,targetID,url)
{
	//initialize dialog box
	$(triggerID).click(function() {
		$(targetID).dialog('open');
		$(targetID).load(url);
		return false;
	});	
}

/* CUSTOM FADE EFFECT FOR DIALOG PLUG-IN by dohsun */

(function($) {

	$.effects.fade = function(o) {

        return this.queue(function() {

                // Create element
                var el = $(this);

                // Set options
                var speed = o.options.speed || 250; // set effect duration
                var mode = o.options.mode || 'show'; // Set Mode

                // Animate
                if (mode == 'show') {
                        el.fadeIn(speed);
                } else {
                        el.fadeOut(speed);
                };
                el.queue('fx', function() { el.dequeue(); });
                el.dequeue();
        }); 
	}
})(jQuery); 
