Date - Weekly

The following script allows you to use the week number as a reference.
The week number can be used in conjuction with an array to either run a function, display information, or redirect on a weekly basis.

An addtional option is the ability to show either the date of the sunday commencing or ending the current week

<HTML>
<HEAD> <TITLE>Document Title</TITLE>

<script type="text/javascript"> <!-- // Realised by ApacheJeff // www.huntingground.freeserve.co.uk data=new Array() data[0]="" // not used data[1]="Contents" data[2]="Contents" data[3]="Contents" data[4]="Contents" data[5]="Contents" data[6]="Contents" data[7]="Contents" data[8]="Contents" data[9]="Contents" data[10]="Contents" data[11]="Contents" data[12]="Contents" data[13]="Contents" data[14]="Contents" data[15]="Contents" data[16]="Contents" data[17]="Contents" data[18]="Contents" data[19]="Contents" data[20]="Contents" data[21]="Contents" data[22]="Contents" data[23]="Contents" data[24]="Contents" data[25]="Contents" data[26]="Contents" data[27]="Contents" data[28]="Contents" data[29]="Contents" data[30]="Contents" data[31]="Contents" data[32]="Contents" data[33]="Contents" data[34]="Contents" data[35]="Contents" data[36]="Contents" data[37]="Contents" data[38]="Contents" data[39]="Contents" data[40]="Contents" data[41]="Contents" data[42]="Contents" data[43]="Contents" data[44]="Contents" data[45]="Contents" data[46]="Contents" data[47]="Contents" data[48]="Contents" data[49]="Contents" data[50]="Contents" data[51]="Contents" data[52]="Contents" display_date=1 // 0 = no, 1 = yes prev=0 // 0 = show week ending; 1 = show week commencing moz=document.getElementById&&!document.all function showWeek() { today = new Date() // create new date object year = y2k(today.getYear()) // get current year month = today.getMonth() // get current month day = today.getDate() // get current date result=getWeek(year,month,day) document.getElementById("array_display").innerHTML=data[result] // comment out if not used } function getWeek(year,month,day) { newYear = new Date(year,0,1) // create date object for current year offset = 8 - newYear.getDay() // get number of days of part week for start of current year if (offset == 8){ offset = 1 } total_days=((Date.UTC(y2k(year),month,day,0,0,0)-Date.UTC(y2k(year),0,1,0,0,0)) /1000/60/60/24)+1 // get number of days weeknum = Math.floor((total_days-offset+7)/7) // get week number if (weeknum == 0) { // check if first week is part of last year year-- prevNewYear = new Date(year,0,1); prevOffset = 8 - prevNewYear.getDay(); if (prevOffset == 2 || prevOffset == 8){ weeknum = 53 } else{ weeknum = 52 } } display_string="" if(display_date==1){ // if displaying date current_day= today.getDay() // get current day number if(current_day>=0){ if(prev==1){ // calculate previous start of week date days_offset=current_day*(1000*60*60*24) start_week=new Date(today-days_offset).toString() display_string="Week Commencing " } else{ // calculate next start of week date today2=new Date().getTime() end_day=7 // 6 = saturday, 7 = sunday if(current_day>=0){ days_offset= (end_day-current_day)*(1000*60*60*24) start_week=new Date(today2+days_offset).toString() display_string="Ends " } } } if(!moz){ for(i=0;i<10;i++){display_string+=start_week.charAt(i)} for(i=start_week.length-5;i<start_week.length;i++){display_string+=start_week.charAt(i)} } else{ for(i=0;i<15;i++){display_string+=start_week.charAt(i)} } document.getElementById("date_display").innerHTML=display_string } return weeknum } function y2k(number){ return (number < 1000) ? number + 1900 : number } // --> </script> </HEAD> <BODY onload="showWeek()"> <span id="date_display"></span> <span id="array_display"></span> </BODY> </HTML>