
/***************************************************************************************
	JavaScript Calendar - Digital Christian Design
	//Script featured on and available at JavaScript Kit: http://www.javascriptkit.com
	// Functions
		changedate(): Moves to next or previous month or year, or current month depending on the button clicked.
		createCalendar(): Renders the calander into the page with links for each to fill the date form filds above.
			
***************************************************************************************/

var thisDate = 1;							// Tracks current date being written in calendar
var wordMonth = new Array("Jan","Feb","Mar","April","May","June","July","Aug","Sept","Oct","Nov","Dec");
var today = new Date();							// Date object to store the current date
var todaysDay = today.getDay() + 1;					// Stores the current day number 1-7
var todaysDate = today.getDate();					// Stores the current numeric date within the month
var todaysMonth = today.getUTCMonth() + 1;				// Stores the current month 1-12
var todaysYear = today.getFullYear();					// Stores the current year
var monthNum = todaysMonth;						// Tracks the current month being displayed
var yearNum = todaysYear;						// Tracks the current year being displayed
var firstDate = new Date(String(monthNum)+"/1/"+String(yearNum));	// Object Storing the first day of the current month
var firstDay = firstDate.getUTCDay();					// Tracks the day number 1-7 of the first day of the current month
var lastDate = new Date(String(monthNum+1)+"/0/"+String(yearNum));	// Tracks the last date of the current month
var numbDays = 0;
var calendarString = "";
var eastermonth = 0;
var easterday = 0;
var tempValue = 0;
function getSelectlistId(value){
	tempValue = value;
}

/******** added by suleman *********/
function getTotalDays(mNum, yNum )
{
	if( mNum==undefined && yNum==undefined )
	{
		now = new Date();
		mNum = now.getMonth()+1;
		yNum = now.getFullYear();
	}
	else if( mNum || yNum || mNum=="" || yNum == "" )
	{
		now = new Date();
		if( mNum==undefined || mNum=="" )
			mNum = now.getMonth()+1;
		if( yNum==undefined || yNum=="" )
			yNum = now.getFullYear();
	}
	// turn 01 into 1
	mNum = Number(mNum);
	yNum = Number(yNum);
	
	// check if mNum and yNum are numbers and whole numbers and mNum is between 1 and 12
	if( isNaN(mNum) || isNaN(yNum) || mNum%1!=0 || yNum%1!=0 || mNum<1 || mNum>12 ){
		return false;
	}
	// create date
	var d = new Date(yNum, mNum, 0);
	return d.getDate();
}
/*************************/

function changedate(buttonpressed) {
	
	if (buttonpressed == "prevyr") yearNum--;
	else if (buttonpressed == "nextyr") yearNum++;
	else if (buttonpressed == "prevmo") monthNum--;
	else if (buttonpressed == "nextmo") monthNum++;
	else  if (buttonpressed == "return") { 
		monthNum = todaysMonth;
		yearNum = todaysYear;
	}
	else  if (buttonpressed == "maintainDate") { 
		monthNum = parseInt(dateMonthVal,10);
		yearNum = dateYearVal;
	}
	

	if (monthNum == 0) {
		monthNum = 12;
		yearNum--;
	}
	else if (monthNum == 13) {
		monthNum = 1;
		yearNum++
	}
	//alert("monthNum "+monthNum + " yearNum "+yearNum);
	lastDate = new Date();
	lastDate.setDate(1);
	lastDate.setMonth(monthNum-1); //month starts from zero
	lastDate.setFullYear(yearNum);
	numbDays = getTotalDays(lastDate.getMonth()+1, lastDate.getFullYear()); 
	firstDate = new Date();
	firstDate.setDate(1);
	firstDate.setMonth(monthNum-1); //month starts from zero
	firstDate.setFullYear(yearNum);
	firstDay = firstDate.getDay();
	//create now
	createCalendar();
	
	if(tempValue!=0){
		document.getElementById("sectionCal").selectedIndex = tempValue;
	}
	return;
}


function easter(year) {
// feed in the year it returns the month and day of Easter using two GLOBAL variables: eastermonth and easterday
var a = year % 19;
var b = Math.floor(year/100);
var c = year % 100;
var d = Math.floor(b/4);
var e = b % 4;
var f = Math.floor((b+8) / 25);
var g = Math.floor((b-f+1) / 3);
var h = (19*a + b - d - g + 15) % 30;
var i = Math.floor(c/4);
var j = c % 4;
var k = (32 + 2*e + 2*i - h - j) % 7;
var m = Math.floor((a + 11*h + 22*k) / 451);
var month = Math.floor((h + k - 7*m + 114) / 31);
var day = ((h + k - 7*m +114) % 31) + 1;
eastermonth = month;
easterday = day;
}


function createCalendar() {
	calendarString = '';
	var daycounter = 0;
	

	
	

	// ADDITION 
	calendarString += '<div>';
	calendarString += '	<div class="FL b_30" style="width:160px;">ARCHIVE</div>';
	calendarString += '	<div class="FR MT5">';
	calendarString += '		<div class="FL cal_prev" onClick=\"changedate(\'prevmo\')\"></div>';
	calendarString += '		<div class="bl_20g FL PL10 PR10" onClick=\"showMonth(' + monthNum + ',' + yearNum + ')\" onmouseover="this.style.cursor=\'hand\'">' + wordMonth[monthNum-1] + '&nbsp;&nbsp;' + yearNum + '</div>';
	calendarString += '		<div class="FL cal_next" onClick=\"changedate(\'nextmo\')\"></div>';
	calendarString += '		<div class="CL"></div>';
	calendarString += '	</div>';
	calendarString += '	<div class="CL"></div>';
	calendarString += '	</div>';

	calendarString += '	 <div class="ML45">';
    calendarString += '		<p class="gL_16g mt5">';
    calendarString += '			IN';
    calendarString += '			<select class="PA5 b_14" id="sectionCal" onchange="getSelectlistId(this.selectedIndex)">';
    calendarString += '				<option value="1">STYLE & BEAUTY</option>';
	calendarString += '				<option value="2">ENTERTAINMENT</option>';
	calendarString += '				<option value="3">RELATIONSHIP</option>';
	calendarString += '				<option value="4">HEALTH</option>';
	calendarString += '				<option value="5">WORK & LIFE</option>';
    calendarString += '	        </select>';
    calendarString += '		</p>';
    calendarString += '	</div>';
	
	calendarString += '	<div>';
	calendarString += '		<table width="100%" border="0" class="caltbl">';
	calendarString += '			<tr>';
	calendarString += '				<th scope="col">S</th>';
	calendarString += '				<th scope="col">M</th>';
	calendarString += '				<th scope="col">T</th>';
	calendarString += '				<th scope="col">W</th>';
	calendarString += '				<th scope="col">T</th>';
	calendarString += '				<th scope="col">F</th>';
	calendarString += '				<th scope="col">S</th>';
	calendarString += '			</tr>';
	
	
	

	thisDate == 1;

	for (var i = 1; i <= 6; i++) {
		calendarString += '<tr>';
		for (var x = 1; x <= 7; x++) {
			daycounter = (thisDate - firstDay);
			thisDate++;
			if ((daycounter > numbDays) || (daycounter < 1)) {
				calendarString += '<td>&nbsp;</td>';
			} else {
				
				if (((todaysDay == x) && (todaysDate == daycounter) && (todaysMonth == monthNum))){
					if ((todaysDay == x) && (todaysDate == daycounter) && (todaysMonth == monthNum)) {
						calendarString += '<td class="act" style="color:#FFFFF"><a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\" style="color:#666">' + daycounter + '<\/a><\/td>';
					}
 					else	calendarString += '<td><a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\" style="color:#666">' + daycounter + '<\/a><\/td>';
				} else {
					if(datedayVal != "" && datedayVal == daycounter && dateMonthVal == monthNum){
						calendarString += '<td class="act" style="color:#FFFFF"><a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\" style="color:#666">' + daycounter + '<\/a><\/td>';
					}else{
						calendarString += '<td><a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\" style="color:#666">' + daycounter + '</a><\/td>';
					}
				}
			}
		}
		calendarString += '<\/tr>';
	}

	
	calendarString += '		</table>';
	calendarString += '	</div>';
	
	var object=document.getElementById('calendar');
	object.innerHTML= calendarString;
	thisDate = 1;
	
	document.getElementById("sectionCal").value = parseInt(sectionSelected);
	

}


function showevents(day,month,year,week,dayofweek) {
	var url = location.href;
	var urlArr = url.split("?");
	var chkdtArrVAl = "";
	var otherParam = "";
	if(urlArr.length > 1){
		var testParam = urlArr[1].split("&");
		if(testParam.length > 1){
			var chkdtArr = urlArr[1].split("&date");
		}else{
			var chkdtArr = urlArr[1].split("date");
		}
		
		otherParam = chkdtArr[0].split("&");
		chkdtArrVAl = chkdtArr[0];
	}
	if(otherParam == ""){
		append = "FO";
		$questTag = "";
	}else{
		$questTag = "?";
	}
	url = urlArr[0]+$questTag+chkdtArrVAl;
	
	
	if (day < 10)
		day = "0"+day;
		
	if (month < 10)
		month = "0"+month;
	
	var selObj = document.getElementById('sectionCal');
	var selIndex = selObj.selectedIndex;
	var secVal = selObj.options[selIndex].value;
	
	//location.href = pageUrl+"&date="+year+"-"+month+"-"+day+"&sid="+secVal;
	window.location.href = calendar_val_pageurl+"/archive/"+secVal+"/"+calendar_val_id+"/"+calendar_val_pg+"/"+calendar_val_type+"/"+year+"-"+month+"-"+day;

	return false;
}


function showMonth(month,year) {
	var url = location.href;
	var urlArr = url.split("?");
	var chkdtArrVAl = "";
	var otherParam = "";
	if(urlArr.length > 1){
		var testParam = urlArr[1].split("&");
		if(testParam.length > 1){
			var chkdtArr = urlArr[1].split("&date");
		}else{
			var chkdtArr = urlArr[1].split("date");
		}
		
		otherParam = chkdtArr[0].split("&");
		chkdtArrVAl = chkdtArr[0];
	}
	if(otherParam == ""){
		append = "FO";
		$questTag = "";
	}else{
		$questTag = "?";
	}
	url = urlArr[0]+$questTag+chkdtArrVAl;
	var theevent = "";

	if(month < 10)
	{
		month = "0"+month;
	}
	//location.href = url+"?date="+year+"-"+month;
	/*
	if(append == "append"){
		location.href = url+"&date="+year+"-"+month;
	}else{
		location.href = url+"?date="+year+"-"+month;
	}
	*/

	var selObj = document.getElementById('sectionCal');
	var selIndex = selObj.selectedIndex;
	var secVal = selObj.options[selIndex].value;
	
	

	//location.href = pageUrl+"&date="+year+"-"+month+"-"+day+"&sid="+secVal;
	window.location.href = calendar_val_pageurl+"/archive/"+secVal+"/"+calendar_val_id+"/"+calendar_val_pg+"/"+calendar_val_type+"/"+year+"-"+month+"-"+day;
}


//--------------------------------------------------


