mat41
03-07-2004, 06:32 PM
hello JS people
I would like to show date, time, on a page not relying on the users local settings. i have a script that rely on this however can not find one that gets the time from the server it's self. My objective::
Show four time zones Sydney, Atlanta, Singapore and London. Ideally in the following fashion EG::
Sydney 12:34pm Monday, 13 March, 2004
I have a very nice script that does this based as i said on the users local settings but cam not find any snazy serve time one.. I will attach the one I have based on local for any of you who are interested
Wind is your friend -- mat41 kiteguy
<html>
<HEAD>
<title>Multiple Time Zone Clock</title>
<SCRIPT LANGUAGE="JavaScript">
var timerID ;
function tzone(tz, os, ds, cl)
{
this.ct = new Date(0) ; // datetime
this.tz = tz ; // code
this.os = os ; // GMT offset
this.ds = ds ; // has daylight savings
this.cl = cl ; // font color
}
function UpdateClocks() // www.timeanddate.com/worldclock
{
var ct = new Array(
// new tzone('SFO: ', -8, 1, 'lime'),
// new tzone('TYO: ', +9, 0, 'violet'),
// new tzone('HKG: ', +8, 0, 'cyan'),
// new tzone('BKK: ', +7, 0, 'yellow'),
// new tzone('NYC: ', -5, 1, '#FFAA00'),
new tzone('LONDON: ', 0, 1, '#ffffff'),
new tzone('SYDNEY: ', +10, 1, '#ffffff'),
new tzone('ALTLANTA: ', -5, 0, '#ffffff'),
new tzone('Singapore: ', +7, 1, '#ffffff')
) ;
var dt = new Date() ; // [GMT] time according to machine clock
var startDST = new Date(dt.getFullYear(), 3, 1) ;
while (startDST.getDay() != 0)
startDST.setDate(startDST.getDate() + 1) ;
var endDST = new Date(dt.getFullYear(), 9, 31) ;
while (endDST.getDay() != 0)
endDST.setDate(endDST.getDate() - 1) ;
var ds_active ; // DS currently active
if (startDST < dt && dt < endDST)
ds_active = 0 ; //changed from 1
else
ds_active = 1 ; //changed from 0
// Adjust each clock offset if that clock has DS and in DS.
for(n=0 ; n<ct.length ; n++)
if (ct[n].ds == 1 && ds_active == 1) ct[n].os++ ;
// compensate time zones
gmdt = new Date() ;
for (n=0 ; n<ct.length ; n++)
ct[n].ct = new Date(gmdt.getTime() + ct[n].os * 3600 * 1000) ;
document.all.Clock0.innerHTML = '<font color="' + ct[0].cl + '">' + ClockString(ct[0].ct) + '</font>' ;
document.all.Clock1.innerHTML = '<font color="' + ct[1].cl + '">' + ClockString(ct[1].ct) + '</font>' ;
document.all.Clock2.innerHTML = '<font color="' + ct[2].cl + '">' + ClockString(ct[2].ct) + '</font>' ;
document.all.Clock3.innerHTML = '<font color="' + ct[3].cl + '">' + ClockString(ct[3].ct) + '</font>' ;
//document.all.Clock3.innerHTML = '<font color="' + ct[3].cl + '">' + ct[3].tz + ClockString(ct[3].ct) + '</font>' ;
// document.all.Clock4.innerHTML = '<font color="' + ct[4].cl + '">' + ct[4].tz + ClockString(ct[4].ct) + '</font>' ;
//document.all.Clock5.innerHTML = '<font color="' + ct[5].cl + '">' + ct[5].tz + ClockString(ct[5].ct) + '</font>' ;
//document.all.Clock6.innerHTML = '<font color="' + ct[6].cl + '">' + ct[6].tz + ClockString(ct[6].ct) + '</font>' ;
//document.all.Clock7.innerHTML = '<font color="' + ct[7].cl + '">' + ct[7].tz + ClockString(ct[7].ct) + '</font>' ;
timerID = window.setTimeout("UpdateClocks()", 1001) ;
}
function ClockString(dt)
{
var stemp, ampm ;
var dt_year = dt.getUTCFullYear() ;
var dt_month = dt.getUTCMonth() + 1 ;
var dt_day = dt.getUTCDate() ;
var dt_hour = dt.getUTCHours() ;
var dt_minute = dt.getUTCMinutes() ;
var dt_second = dt.getUTCSeconds() ;
dt_year = dt_year.toString() ;
if (0 <= dt_hour && dt_hour < 12)
{
ampm = 'AM' ;
if (dt_hour == 0) dt_hour = 12 ;
}
else
{
ampm = 'PM' ;
dt_hour = dt_hour - 12 ;
if (dt_hour == 0) dt_hour = 12 ;
}
if (dt_minute < 10)
dt_minute = '0' + dt_minute ;
if (dt_second < 10)
dt_second = '0' + dt_second ;
stemp = dt_day + '/' + dt_month + '/' + dt_year.substr(2,2) ;
stemp = stemp + ' ' + dt_hour + ":" + dt_minute + ":" + dt_second + ' ' + ampm ;
return stemp ;
}
</script>
</HEAD>
<BODY onLoad="UpdateClocks()">
<table border="0" cellppading="2" cellspacing="0">
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>London</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock0" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Sydney</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock1" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Atlanta</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock2" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Singapore</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock3" width="25%" > </td>
</tR>
</table>
</td>
</tr>
</table>
</body>
</html>
I would like to show date, time, on a page not relying on the users local settings. i have a script that rely on this however can not find one that gets the time from the server it's self. My objective::
Show four time zones Sydney, Atlanta, Singapore and London. Ideally in the following fashion EG::
Sydney 12:34pm Monday, 13 March, 2004
I have a very nice script that does this based as i said on the users local settings but cam not find any snazy serve time one.. I will attach the one I have based on local for any of you who are interested
Wind is your friend -- mat41 kiteguy
<html>
<HEAD>
<title>Multiple Time Zone Clock</title>
<SCRIPT LANGUAGE="JavaScript">
var timerID ;
function tzone(tz, os, ds, cl)
{
this.ct = new Date(0) ; // datetime
this.tz = tz ; // code
this.os = os ; // GMT offset
this.ds = ds ; // has daylight savings
this.cl = cl ; // font color
}
function UpdateClocks() // www.timeanddate.com/worldclock
{
var ct = new Array(
// new tzone('SFO: ', -8, 1, 'lime'),
// new tzone('TYO: ', +9, 0, 'violet'),
// new tzone('HKG: ', +8, 0, 'cyan'),
// new tzone('BKK: ', +7, 0, 'yellow'),
// new tzone('NYC: ', -5, 1, '#FFAA00'),
new tzone('LONDON: ', 0, 1, '#ffffff'),
new tzone('SYDNEY: ', +10, 1, '#ffffff'),
new tzone('ALTLANTA: ', -5, 0, '#ffffff'),
new tzone('Singapore: ', +7, 1, '#ffffff')
) ;
var dt = new Date() ; // [GMT] time according to machine clock
var startDST = new Date(dt.getFullYear(), 3, 1) ;
while (startDST.getDay() != 0)
startDST.setDate(startDST.getDate() + 1) ;
var endDST = new Date(dt.getFullYear(), 9, 31) ;
while (endDST.getDay() != 0)
endDST.setDate(endDST.getDate() - 1) ;
var ds_active ; // DS currently active
if (startDST < dt && dt < endDST)
ds_active = 0 ; //changed from 1
else
ds_active = 1 ; //changed from 0
// Adjust each clock offset if that clock has DS and in DS.
for(n=0 ; n<ct.length ; n++)
if (ct[n].ds == 1 && ds_active == 1) ct[n].os++ ;
// compensate time zones
gmdt = new Date() ;
for (n=0 ; n<ct.length ; n++)
ct[n].ct = new Date(gmdt.getTime() + ct[n].os * 3600 * 1000) ;
document.all.Clock0.innerHTML = '<font color="' + ct[0].cl + '">' + ClockString(ct[0].ct) + '</font>' ;
document.all.Clock1.innerHTML = '<font color="' + ct[1].cl + '">' + ClockString(ct[1].ct) + '</font>' ;
document.all.Clock2.innerHTML = '<font color="' + ct[2].cl + '">' + ClockString(ct[2].ct) + '</font>' ;
document.all.Clock3.innerHTML = '<font color="' + ct[3].cl + '">' + ClockString(ct[3].ct) + '</font>' ;
//document.all.Clock3.innerHTML = '<font color="' + ct[3].cl + '">' + ct[3].tz + ClockString(ct[3].ct) + '</font>' ;
// document.all.Clock4.innerHTML = '<font color="' + ct[4].cl + '">' + ct[4].tz + ClockString(ct[4].ct) + '</font>' ;
//document.all.Clock5.innerHTML = '<font color="' + ct[5].cl + '">' + ct[5].tz + ClockString(ct[5].ct) + '</font>' ;
//document.all.Clock6.innerHTML = '<font color="' + ct[6].cl + '">' + ct[6].tz + ClockString(ct[6].ct) + '</font>' ;
//document.all.Clock7.innerHTML = '<font color="' + ct[7].cl + '">' + ct[7].tz + ClockString(ct[7].ct) + '</font>' ;
timerID = window.setTimeout("UpdateClocks()", 1001) ;
}
function ClockString(dt)
{
var stemp, ampm ;
var dt_year = dt.getUTCFullYear() ;
var dt_month = dt.getUTCMonth() + 1 ;
var dt_day = dt.getUTCDate() ;
var dt_hour = dt.getUTCHours() ;
var dt_minute = dt.getUTCMinutes() ;
var dt_second = dt.getUTCSeconds() ;
dt_year = dt_year.toString() ;
if (0 <= dt_hour && dt_hour < 12)
{
ampm = 'AM' ;
if (dt_hour == 0) dt_hour = 12 ;
}
else
{
ampm = 'PM' ;
dt_hour = dt_hour - 12 ;
if (dt_hour == 0) dt_hour = 12 ;
}
if (dt_minute < 10)
dt_minute = '0' + dt_minute ;
if (dt_second < 10)
dt_second = '0' + dt_second ;
stemp = dt_day + '/' + dt_month + '/' + dt_year.substr(2,2) ;
stemp = stemp + ' ' + dt_hour + ":" + dt_minute + ":" + dt_second + ' ' + ampm ;
return stemp ;
}
</script>
</HEAD>
<BODY onLoad="UpdateClocks()">
<table border="0" cellppading="2" cellspacing="0">
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>London</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock0" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Sydney</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock1" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Atlanta</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock2" width="25%" > </td>
</tR>
</table>
</td>
<td> </td>
<tD>
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td bgcolor="#dbd8bd" align="center"><b>Singapore</b></td>
</tr>
<tr bgcolor="#636363" style="font-family: Arial; font-size: x-small">
<td ID="Clock3" width="25%" > </td>
</tR>
</table>
</td>
</tr>
</table>
</body>
</html>