change month/date

T

Treetop

I have a script for my church that we use for the weekly events. I
currently have it as week of Feb 1, 2003 at the top, then list Sun -
Sat below the date. I have been asked to put the date next to each
day of the week.

I want to have the Month and Day after the day of the week. My
problem is during transition weeks, from one month to the next, that I
cannot figure out how to have it know to start over with day 1 on the
next month.


my files/scripts are -

caltext.html
---------------------------
<table bgcolor="eeeeff" width="200" border="0">
<tr><td colspan="2">
<script language="JavaScript" src="weekchoose.js">
</script></td></tr>
<script language="JavaScript" src="week.js"></script>
<tr><td colspan="2"><a href="cal.html">
Next week &gt;&gt;</a></td></tr>
</table>


weekchoose.js
---------------------------

var kw=new Array();
kw[2]=new Array("2004/2/1","2004/2/7","1");
kw[1]=new Array("2004/2/8","2004/2/14","2");
kw[0]=new Array("2004/2/15","2004/2/21","3");

var today = new Date();
var ct = 0;
var dayarray=new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat")
var montharray=new
Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov
","Dec")


for (var i=kw.length-1;i>=0;i--)
{
var date = new Date(kw[1])
var date2 = new Date(kw[0])

var year = 1900 + date.getYear()%1900 // < AD 3800
var year2 = 1900 + date2.getYear()%1900 // < AD 3800

if (ct < 1) {
if (today.getTime() <= date.getTime()) {
ct = ct + 1
document.write('<center>Church Events for the Week of<br>'+
'<b>' + dayarray[date2.getDay()]+', '+
montharray[date2.getMonth()]+' '+date2.getDate()+',
'+year+'</b></center>');

document.write('<script language=JavaScript src=week/'
+ kw[2] + '.js></script>');

}
var ds = date2
}
}




week.js
---------------------------

document.write('<tr><td colspan="2"><b>Sunday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+sun+'</td></tr>');

document.write('<tr><td colspan="2"><b>Monday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+mon+'</td></tr>');

document.write('<tr><td colspan="2"><b>Tuesday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+tue+'</td></tr>');

document.write('<tr><td colspan="2"><b>Wednesday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+wed+'</td></tr>');

document.write('<tr><td colspan="2"><b>Thursday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+thu+'</td></tr>');

document.write('<tr><td colspan="2"><b>Friday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+fri+'</td></tr>');

document.write('<tr><td colspan="2"><b>Saturday</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+sat+'</td></tr>');
 
T

Treetop

I forgot the number js files


1.js (or 2,3,4, or 5)
---------------------------

var sun = "8:30 am Worship Service<br>"+
"11:00 am Worship Service";

var mon = "";

var tue = "6:00 am Elder Meeting";

var wed = "6:55 pm AWANA";

var thu = "8:00 pm College Bible Study";

var fri = "9:00 pm College 939";

var sat = "";
 
D

Dr John Stockton

JRS: In article <[email protected]>, seen in
news:comp.lang.javascript said:
I want to have the Month and Day after the day of the week. My
problem is during transition weeks, from one month to the next, that I
cannot figure out how to have it know to start over with day 1 on the
next month.

ISTM that you did not read the FAQ carefully enough; see below.

See <URL:http://www.merlyn.demon.co.uk/js-date4.htm#MaYL> for
determining month length; then at the end of each day something like

if (++DayNo > MonLen) { DayNo = 1
if (++MonNo > 12) { MonNo = 1 ; ++YearNo }
MonLen = MonthLength(YearNo, MonNo) )

Alternatively, just increment a Date Object
<URL:http://www.merlyn.demon.co.uk/js-date2.htm#incr>
and output the desired fields
<URL:http://www.merlyn.demon.co.uk/js-date9.htm>.
 
T

Treetop

Dr John Stockton said:
JRS: In article <[email protected]>, seen in
Treetop <[email protected]> posted at Thu,
5 Feb 2004 16:20:24 :-

ISTM that you did not read the FAQ carefully enough; see below.

See <URL:http://www.merlyn.demon.co.uk/js-date4.htm#MaYL> for
determining month length; then at the end of each day something like

if (++DayNo > MonLen) { DayNo = 1
if (++MonNo > 12) { MonNo = 1 ; ++YearNo }
MonLen = MonthLength(YearNo, MonNo) )

Alternatively, just increment a Date Object
<URL:http://www.merlyn.demon.co.uk/js-date2.htm#incr>
and output the desired fields
<URL:http://www.merlyn.demon.co.uk/js-date9.htm>.

I did look at the FAQ, but I was not able to figure it out, I am
affraid. What I did, and it works, is the following:

// ds is the date for a Sunday, which I already had

var dm = new Date(ds.getTime() + (1 * 86400000));
var dt = new Date(ds.getTime() + (2 * 86400000));
var dw = new Date(ds.getTime() + (3 * 86400000));
var dh = new Date(ds.getTime() + (4 * 86400000));
var df = new Date(ds.getTime() + (5 * 86400000));
var da = new Date(ds.getTime() + (6 * 86400000));

document.write('<tr><td colspan="2"><b>Sunday, '+
montharray[ds.getMonth()]+' '+ds.getDate()+'</b></td></tr>'+
'<tr><td>&nbsp;</td><td>'+sun+'</td></tr>');

document.write('<tr><td colspan="2"><b>Monday, '+
montharray[dm.getMonth()]+' '+dm.getDate()+'</b></td></tr>'+
<tr><td>&nbsp;</td><td>'+mon+'</td></tr>');

and so on for the rest of the week
 
D

Dr John Stockton

JRS: In article <[email protected]>,
seen in news:comp.lang.javascript said:
I did look at the FAQ, but I was not able to figure it out, I am
affraid. What I did, and it works, is the following:

// ds is the date for a Sunday, which I already had

var dm = new Date(ds.getTime() + (1 * 86400000));

That means that you have not understood the advice given, and have not
tested for users in NA or EU for a week starting with the last Sunday in
October.

Actually, that could be another reason for preferring ISO-8601 week
numbering, with a week being Mon=1..Sun=7, in the same way that it would
be better to start year numbering in March (which also makes October the
8th month, as it should be etymologically).

AISB, <URL:http://www.merlyn.demon.co.uk/js-date2.htm#incr>;
and <URL:http://www.merlyn.demon.co.uk/uksumtim.htm>.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,736
Latest member
zacharyharris

Latest Threads

Top