function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		prev_01_over = newImage("/images/prev_01-over.gif");
		next_01_over = newImage("/images/next_01-over.gif");
		prev_02_over = newImage("/images/prev_01-over.gif");
		next_02_over = newImage("/images/next_01-over.gif");
		preloadFlag = true;
	}
}






function getMoonAge(year, month, day)
{	
	d = Math.floor(year/20)
	r = year-(d*20) //r is the remainder of (year/20)

	while (r>9)
	{	
		r = r-19
	}

	r = r*11

	while (r>29)
	{	
		r = r-30
	}

	if (month<3)
	{	
		month = month+2
	}

	r = r+month+day

	if (year<100)
	{	
		r = r-4
	}
	else
	{
		r = r-8.3
	}

	while(r>29)
	{	
		r = r-30
	}

	while(r<0)
	{	
		r = r+30
	}

	return r
}
		
function getMoonPhase(moonAge)
{	
	if (moonAge<1) return "New"
	if (moonAge<6) return "Waxing Cresent"
	if (moonAge<9) return "First Quarter"
	if (moonAge<13) return "Waxing Gibbous"
	if (moonAge<16) return "Full"
	if (moonAge<20) return "Waning Gibbous"
	if (moonAge<23) return "Last Quarter"
	if (moonAge<25) return "Waning Cresent"
	if (moonAge<29) return "Waning Cresent"
	if (moonAge<1) return "New"
}

function getMoonPhaseImg(moonAge)
{	
	if (moonAge<1) return "New"
	if (moonAge<5) return "Waxing_Cresent"
	if (moonAge<9) return "First_Quarter"
	if (moonAge<13) return "Waxing_Gibbous"
	if (moonAge<16) return "Full"
	if (moonAge<20) return "Waning_Gibbous"
	if (moonAge<22) return "Last_Quarter"
	if (moonAge<25) return "Waning_Cresent"
	if (moonAge<29) return "Waning_Cresent"
	if (moonAge<30) return "New"
}


monthNames = new Array(13)
monthNames[1]  = "Jan."
monthNames[2]  = "Feb."
monthNames[3]  = "Mar."
monthNames[4]  = "Apr."
monthNames[5]  = "May"
monthNames[6]  = "June"
monthNames[7]  = "July"
monthNames[8]  = "Aug."
monthNames[9]  = "Sept."
monthNames[10] = "Oct."
monthNames[11] = "Nov."
monthNames[12] = "Dec."
		 
dayNames = new Array(8)
dayNames[1]  = "Sun."
dayNames[2]  = "Mon."
dayNames[3]  = "Tue."
dayNames[4]  = "Wed."
dayNames[5]  = "Thu."
dayNames[6]  = "Fri."
dayNames[7]  = "Sat."
		 
function getLongDate(dateObj)
{	
	theDay = dayNames[dateObj.getDay()+1]
	theMonth = monthNames[dateObj.getMonth()+1]
	theDate = dateObj.getDate()
	
	return ""+theDay+", "+theMonth+"  "+theDate
}
		
function getNextFull(moonAge)
{	
	currMilSecs = (new Date()).getTime()
	daysToGo = 15 - moonAge
	while(daysToGo<2)
	{	
		daysToGo = daysToGo+29
	}
	milSecsToGo = daysToGo*24*60*60*1000
	nextMoonTime = currMilSecs+milSecsToGo
	nextMoonDate = new Date(nextMoonTime)
	return nextMoonDate
}
		
function getNextNew(moonAge)
{	
	currMilSecs = (new Date()).getTime()
	daysToGo = 29 - moonAge
	while(daysToGo<2)
	{	
		daysToGo = daysToGo+29
	}
	milSecsToGo = daysToGo*24*60*60*1000
	nextMoonTime = currMilSecs+milSecsToGo
	nextMoonDate = new Date(nextMoonTime)
	return nextMoonDate
}
