// JavaScript Document
//var v = new Array (0,3,5,10);	//Array holding values for date offset.
var currentDate = new Date();	//Grab info for today's date.
var daysAry = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var months = new Array("Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec");
var days = new Array("Sun","Mon","Tues","Wed","Thur","Fri","Sat");

function Month2Str (month)	//Takes the month # and returns an abbreviation for the month
{
	return (months[month]);
}

function Day2Str (day)	//Takes the day # and returns an abbreviation for the day
{
	while (day > 6)
	{ day = day - 7; }
		
	if (day == 0)
	{  day = 1;  }
	else if (day == 6)
	{  day = 1;  }
		
	return (days[day]);
}

function chkDate(date)
{
	var rDate;
	var rMonth = currentDate.getMonth();
	
	if (date > daysAry[rMonth])
	{	rDate = date - daysAry[rMonth];	return (rDate);	}
	else
	{	return (date);	}
}

/*function chkMonth(date)
{
	var tMonth;
	var rMonth = currentDate.getMonth();
	
	if (date > daysAry[rMonth])
	{	tMonth = rMonth + 1;	return (months[tMonth]);	}
	else
	{	return (rMonth);	}
}*/

function chkMonth (type, rMonth)
{
	//var rMonth = currentDate.getMonth();
	var rDate = currentDate.getDate();
	var rDay = currentDate.getDay();
	var tDate = 0;
	var tMonth = 0;
	
	/* ** Begin STD ** */
	if (type == "std")
	{
		if (rDay == 0)
		{ tDate = rDate + 15;
		  if (tDate > daysAry[rMonth])
		  {  tMonth = rMonth+1; return (tMonth);  }
		  else
		  {  return (rMonth);  }
		}
		else if (rDay == 6)
		{  tDate = rDate + 16;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {return (rMonth);  }
		}
		else
		{  tDate = rDate + 14;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {  return (rMonth);  }
		}
	}
	/* **  End STD  ** */
	/* ** Begin FAST ** */
	else if (type == "fast")
	{
		if (rDay == 0)
		{ tDate = rDate + 8;
		  if (tDate > daysAry[rMonth])
		  {  tMonth = rMonth+1; return (tMonth);  }
		  else
		  {  return (rMonth);  }
		}
		else if (rDay == 6)
		{  tDate = rDate + 9;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {return (rMonth);  }
		}
		else
		{  tDate = rDate + 7;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {  return (rMonth);  }
		}
	}
	/* ** End FAST ** */
	/* ** Begin FASTER ** */
	else if (type == "faster")
	{
		if (rDay == 0)
		{ tDate = rDate + 4;
		  if (tDate > daysAry[rMonth])
		  {  tMonth = rMonth+1; return (tMonth);  }
		  else
		  {  return (rMonth);  }
		}
		else if (rDay == 3 || rDay == 4 || rDay == 5 || rDay == 6)
		{  tDate = rDate + 5;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {return (rMonth);  }
		}
		else
		{  tDate = rDate + 3;
		   if (tDate > daysAry[rMonth])
		   {  tMonth = rMonth+1; return (tMonth);  }
		   else
		   {  return (rMonth);  }
		}
	}
	/* ** End FASTER ** */
}

function gDate(type)
{
	var rDate = currentDate.getDate();
	var rDay = currentDate.getDay();
	var tDate = 0;
	
	if (type == "std")
	{
		if (rDay == 0)
		{	tDate = rDate + 15; tDate = chkDate(tDate); return (tDate);	}
		else if (rDay == 6)
		{	tDate = rDate + 16; tDate = chkDate(tDate); return (tDate);	}
		else
		{	tDate = rDate + 14; tDate = chkDate(tDate); return (tDate);	}
	}
	else if (type == "fast")
	{
		if (rDay == 0)
		{ tDate = rDate + 8; tDate = chkDate(tDate); return (tDate); }
		else if (rDay == 6)
		{ tDate = rDate + 9; tDate = chkDate(tDate); return (tDate); }
		else
		{ tDate = rDate + 7; tDate = chkDate(tDate); return (tDate); }
	}
	else if (type == "faster")
	{
		if (rDay == 0)
		{ tDate = rDate + 4; tDate = chkDate(tDate); return (tDate); }
		else if (rDay == 3 || rDay == 4 || rDay == 5 || rDay == 6)
		{ tDate = rDate + 5; tDate = chkDate(tDate); return (tDate); }
		else
		{ tDate = rDate + 3; tDate = chkDate(tDate); return (tDate); }
	}
	else
	{
		return ("Err.1")
	}
}

function gDay(type)
{
	var tday = 0;
	var rDay = currentDate.getDay();
	
	if (type == "std")
	{
		if (rDay == 0 || rDay == 1 || rDay == 6)
		{	tDay = Day2Str(1); return (tDay);	}
		else
		{	tDay = Day2Str(rDay); return (tDay);	}
	}
	else if(type == "fast")
	{
		if (rDay == 0 || rDay == 1 || rDay == 6)
		{	tDay = Day2Str(1); return (tDay);	}
		else
		{	tDay = Day2Str(rDay); return (tDay);	}
	}
	else if(type == "faster")
	{
		if (rDay == 0 || rDay == 1 || rDay == 6)
		{	tDay = Day2Str(4); return (tDay);	}
		else if (rDay == 2)
		{	tDay = Day2Str(5); return (tDay);	}
		else if (rDay == 3)
		{	tDay = Day2Str(1); return (tDay);	}
		else if (rDay == 4)
		{	tDay = Day2Str(2); return (tDay);	}
		else if (rDay == 5)
		{	tDay = Day2Str(3); return (tDay);	}
		else
		{	return ("Err.2.1");	}
	}
	else
	{
		return ("Err.2"); 
	}
}

function gMonth(type)
{
	var tdate = 0;
	var rDate = currentDate.getDate();
	var tMonth = 0;
	var rMonth = currentDate.getMonth();
	
	if (type == "std")
	{
		//tDate = gDate("std");
		tMonth = chkMonth("std", rMonth);
		return (months[tMonth]);
	}
	else if(type == "fast")
	{
		//tDate = gDate("fast");
		tMonth = chkMonth("fast", rMonth);
		return (months[tMonth]);
	}
	else if(type == "faster")
	{
		//tDate = gDate("faster");
		tMonth = chkMonth("faster", rMonth);
		return (months[tMonth]);
	}
	else
	{
		return ("Err.3"); 
	}
}
