//start

//######################################################################################
// NOTE: the month entered must be one less than current month. ie; 0=January, 11=December
// NOTE: the hour is in 24 hour format. 0=12am, 15=3pm etc
// format: dateFuture = new Date(year,month-1,day,hour,min,sec)
// example: dateFuture = new Date(2003,03,26,14,15,00) = April 26, 2003 - 2:15:00 pm

pennsicdate = new Date(2012,6,27,12,0,0);
preregdate = new Date(2012,0,1,0,0,0);
endpreregmailin = new Date(2012,4,15,23,0,0);
endpreregonline = new Date(2012,5,15,23,0,0);
endpreregonlineunpaid = new Date(2012,6,15,23,0,0);

function pennsiccountdown(){
	if(typeof(document.getElementById('pennsiccount')) != undefined && document.getElementById('pennsiccount') != null) {
	
		dateNow = new Date();									//grab current date
		amount = pennsicdate.getTime() - dateNow.getTime();		//calc milliseconds between dates
		delete dateNow;

		// time is already past
		if(amount < 0){
			document.getElementById('pennsiccount').innerHTML="Pennsic has begun";
		}
		// date is still good
		else{
			days=0;hours=0;mins=0;secs=0;out="";

			amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs

			days=Math.floor(amount/86400);//days
			amount=amount%86400;

			hours=Math.floor(amount/3600);//hours
			amount=amount%3600;

			mins=Math.floor(amount/60);//minutes
			amount=amount%60;

			secs=Math.floor(amount);//seconds

			out = "Countdown to Pennsic<br /><span>";
			if(days != 0){out += days +":";}
			if(days != 0 || hours != 0){out += hours +":";}
			if(days != 0 || hours != 0 || mins != 0){out += mins +":";}
			out += secs + "</span>";		
			document.getElementById('pennsiccount').innerHTML=out;

			setTimeout("pennsiccountdown()", 1000);
		}

		// BEGIN PREREG	
		dateNow = new Date();									//grab current date
		amount = preregdate.getTime() - dateNow.getTime();		//calc milliseconds between dates
		delete dateNow;

		if(document.getElementById('preregcount') != null) {
			// time is already past
			if(amount < 0){
				document.getElementById('preregcount').innerHTML="<span>Registration has begun</span>";
			}
			// date is still good
			else{
				days=0;hours=0;mins=0;secs=0;out="";
		
				amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
		
				days=Math.floor(amount/86400);//days
				amount=amount%86400;
		
				hours=Math.floor(amount/3600);//hours
				amount=amount%3600;
		
				mins=Math.floor(amount/60);//minutes
				amount=amount%60;
		
				secs=Math.floor(amount);//seconds
		
				pout = "Number of Days until Registration begins:<br /><span>";
				if(days != 0){pout += days +":";}
				if(days != 0 || hours != 0){pout += hours +":";}
				if(days != 0 || hours != 0 || mins != 0){pout += mins +":";}
				pout += secs + "</span>";	
				document.getElementById('preregcount').innerHTML=pout;
			}
		}

		// END PREREG MAILIN
		dateNow = new Date();									//grab current date
		amount = endpreregmailin.getTime() - dateNow.getTime();		//calc milliseconds between dates
		delete dateNow;

		if(document.getElementById('endpreregmailin') != null) {
			// time is already past
			if(amount < 0){
				document.getElementById('endpreregmailin').innerHTML="<span>Registration (Mail-in) has ended</span>";
			}
			// date is still good
			else{
				days=0;hours=0;mins=0;secs=0;out="";
		
				amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
		
				days=Math.floor(amount/86400);//days
				amount=amount%86400;
		
				hours=Math.floor(amount/3600);//hours
				amount=amount%3600;
		
				mins=Math.floor(amount/60);//minutes
				amount=amount%60;
		
				secs=Math.floor(amount);//seconds
		
				eout = "Number of Days until Registration ends (Mail-in):<br /><span>";
				if(days != 0){eout += days +":";}
				if(days != 0 || hours != 0){eout += hours +":";}
				if(days != 0 || hours != 0 || mins != 0){eout += mins +":";}
				eout += secs + "</span>";	
				document.getElementById('endpreregmailin').innerHTML=eout;
			}
		}

		// END PREREG ONLINE PAID
		dateNow = new Date();									//grab current date
		amount = endpreregonline.getTime() - dateNow.getTime();		//calc milliseconds between dates
		delete dateNow;
		
		if(document.getElementById('endpreregonline') != null) {
			// time is already past
			if(amount < 0){
				document.getElementById('endpreregonline').innerHTML="<span>Registration (Online - Paid) has ended</span>";
			}
			// date is still good
			else{
				days=0;hours=0;mins=0;secs=0;out="";
		
				amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
		
				days=Math.floor(amount/86400);//days
				amount=amount%86400;
		
				hours=Math.floor(amount/3600);//hours
				amount=amount%3600;
		
				mins=Math.floor(amount/60);//minutes
				amount=amount%60;
		
				secs=Math.floor(amount);//seconds
		
				eout = "Number of Days until Registration ends (Online - Paid):<br /><span>";
				if(days != 0){eout += days +":";}
				if(days != 0 || hours != 0){eout += hours +":";}
				if(days != 0 || hours != 0 || mins != 0){eout += mins +":";}
				eout += secs + "</span>";
				document.getElementById('endpreregonline').innerHTML=eout;
			}
		}
		
		// END PREREG ONLINE UNPAID
		dateNow = new Date();									//grab current date
		amount = endpreregonlineunpaid.getTime() - dateNow.getTime();		//calc milliseconds between dates
		delete dateNow;
		
		if(document.getElementById('endpreregonlineunpaid') != null) {
			// time is already past
			if(amount < 0){
				document.getElementById('endpreregonlineunpaid').innerHTML="<span>Registration (Online - Unpaid) has ended</span>";
			}
			// date is still good
			else{
				days=0;hours=0;mins=0;secs=0;out="";
		
				amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
		
				days=Math.floor(amount/86400);//days
				amount=amount%86400;
		
				hours=Math.floor(amount/3600);//hours
				amount=amount%3600;
		
				mins=Math.floor(amount/60);//minutes
				amount=amount%60;
		
				secs=Math.floor(amount);//seconds
		
				eout = "Number of Days until Registration ends (Online - Unpaid):<br /><span>";
				if(days != 0){eout += days +":";}
				if(days != 0 || hours != 0){eout += hours +":";}
				if(days != 0 || hours != 0 || mins != 0){eout += mins +":";}
				eout += secs + "</span>";
				document.getElementById('endpreregonlineunpaid').innerHTML=eout;
			}
		}
	}
}

window.onload=pennsiccountdown;//call when everything has loaded
