<!-- Begin

/*

Basic Concept:

The SSI will put the date of the server to 4 hidden fields, and the javascript 
will retrieve these fields using document.formName.name.value, which in this 
case is document.date.(m/y/d/w).value. Because it returns a string, parseInt is
needed to turn it into an integer.  

form declaration:

<form name="date">
<!--#config timefmt="%m" --> 
<input type="hidden" name="m" value='<!--#echo var="DATE_LOCAL" -->'>
<!--#config timefmt="%Y" --> 
<input type="hidden" name="y" value='<!--#echo var="DATE_LOCAL" -->'>
<!--#config timefmt="%d" --> 
<input type="hidden" name="d" value='<!--#echo var="DATE_LOCAL" -->'>
<!--#config timefmt="%w" --> 
<input type="hidden" name="w" value='<!--#echo var="DATE_LOCAL" -->'>
</form>

*/

// generating this week's link

// retrieve the date from hidden fields
var day = parseInt(document.date.d.value,10);
var month = parseInt(document.date.m.value,10);
var year = parseInt(document.date.y.value,10);
var offset = parseInt(document.date.w.value,10);	// weekday

// update on monday
if (offset ==0 ){
offset=7;
}

// calculate the date of the last sunday
if(offset != 0) {
day = day - offset;
}

// update the date if day < 0
if ( day < 1) {
if ( month == 1) day = 31 + day;
if (month == 2) day = 31 + day;
if (month == 3) {
// feb, check for leap year
leap=0;	// 0 for not, 1 for yes
if (year%400==0){
} else if (year%100==0) {
} else if (year%4==0){
leap=1;
}
// if leap
if (leap==1) {				// 29 days
day = 29 + day;
} else { 	 		 				// 28 days
day = 28 + day;
}

}
if (month == 4) day = 31 + day;
if (month == 5) day = 30 + day;
if (month == 6) day = 31 + day;
if (month == 7) day = 30 + day;
if (month == 8) day = 31 + day;
if (month == 9) day = 31 + day;
if (month == 10) day = 30 + day;
if (month == 11) day = 31 + day;
if (month == 12) day = 30 + day;
if (month == 1) {		 // if month is jan, go back to dec last year
month = 12;
year = year - 1;
}
else {
month = month - 1;	 // if the month is not jan, go back one month
      }
   }

// extend month and day into two digits

if (month<10){
month="0"+month;
}
if (day<10){
day="0"+day;
}

// formate the date
thisweek = year + "-" + month + "-" + day; // ie 2009-03-01

// produce the link
thisweek= "<a href='http://events.berkeley.edu/index.php/calendar/sn/econ.html?view=summary&timeframe=week&date="+ thisweek + "&filter=Secondary%20Event%20Type&filtersel=' title='This Week's Seminars'>";


// generating next week's link

// retrieve the date from hidden fields
var day = parseInt(document.date.d.value,10);
var month = parseInt(document.date.m.value,10);
var year = parseInt(document.date.y.value,10);
var offset = parseInt(document.date.w.value,10);	// weekday

// update on monday
if(offset != 0) {
day = day - offset + 7;
}

// increment to the next month if needed
if ( month == 1 && day>31) {	 
	 day = day-31;
	 month++;
} else if (month == 2){
		// feb, check for leap year
	 leap=0;	// 0 for not, 1 for yes
	 if (year%400==0){
	 } else if (year%100==0) {
	 } else if (year%4==0){
	 leap=1;
	 }

	 // if leap
	 if (leap==1 && day>29) {
	 		day=day-29;
			month++;
   } else if (leap==0 && day>28){
	 	  day = day -28;
			month++;
	 }
} else if ( month == 3 && day>31) {	 
	 day = day-31;
	 month++;
} else if ( month == 4 && day>30) {	 
	 day = day-30;
	 month++;
} else if ( month == 5 && day>31) {	 
	 day = day-31;
	 month++;
} else if ( month == 6 && day>30) {	 
	 day = day-30;
	 month++;
} else if ( month == 7 && day>31) {	 
	 day = day-31;
	 month++;
} else if ( month == 8 && day>31) {	 
	 day = day-31;
	 month++;
} else if ( month == 9 && day>30) {	 
	 day = day-30;
	 month++;
} else if ( month == 10 && day>31) {	 
	 day = day-31;
	 month++;
}  else if ( month == 11 && day>30) {	 
	 day = day-30;
	 month++;
}  else if ( month == 12 && day>31) {	 // if month is dec, go to the next year
	 day = day-31;
	 month=1;
	 year++;
}


// extend month and day into two digits

if (month<10){
month="0"+month;
}
if (day<10){
day="0"+day;
}

// formate the date
nextweek = year + "-" + month + "-" + day; // ie 2009-03-01

// produce the link
nextweek= "<a href='http://events.berkeley.edu/index.php/calendar/sn/econ.html?view=summary&timeframe=week&date="+ nextweek + "&filter=Secondary%20Event%20Type&filtersel=' title='This Week's Seminars'>";
     
//  End -->