///////////////////////////////////////////////////////////
// "Live Clock Advanced" script - Version 1.0
// By Mark Plachetta (astroboy@zip.com.au)
//
// Get the latest version at:
// http://www.zip.com.au/~astroboy/liveclock/
//
// Based on the original script: "Upper Corner Live Clock"
// available at:
// - Dynamic Drive (http://www.dynamicdrive.com)
// - Website Abstraction (http://www.wsabstract.com)
// ========================================================
// CHANGES TO ORIGINAL SCRIPT:
// - Gave more flexibility in positioning of clock
// - Added date construct (Advanced version only)
// - User configurable
// ========================================================
// Both "Advanced" and "Lite" versions are available free
// of charge, see the website for more information on the
// two scripts.
///////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////
/////////////// CONFIGURATION /////////////////////////////
// Set the clock's font face:
var myfont_face = "Geneva";
// Set the clock's font size (in point):
var myfont_size = "1";
// Set the clock's font color:
var myfont_color = "#000000";
// Set the clock's background color:
var myback_color = "#E0E0E0";
// Set the text to display before the clock:
var mypre_text = "";
// Set the width of the clock (in pixels):
var mywidth = 70;
// Display the time in 24 or 12 hour time?
// 0 = 24, 1 = 12
var my12_hour = 1;
// How often do you want the clock updated?
// 0 = Never, 1 = Every Second, 2 = Every Minute
// If you pick 0 or 2, the seconds will not be displayed
var myupdate = 1;
// Display the date?
// 0 = No, 1 = Yes
var DisplayDate = 0;
/////////////// END CONFIGURATION /////////////////////////
///////////////////////////////////////////////////////////
// Global varibale definitions:
var dn = "";
var mn = "th";
var old = "";
// The following arrays contain data which is used in the clock's
// date function. Feel free to change values for Days and Months
// if needed (if you wanted abbreviated names for example).
var DaysOfWeek = new Array(7);
DaysOfWeek[0] = "Domingo";
DaysOfWeek[1] = "Lunes";
DaysOfWeek[2] = "Martes";
DaysOfWeek[3] = "Miércoles";
DaysOfWeek[4] = "Jueves";
DaysOfWeek[5] = "Viernes";
DaysOfWeek[6] = "Sábado";
var MonthsOfYear = new Array(12);
MonthsOfYear[0] = "enero";
MonthsOfYear[1] = "febrero";
MonthsOfYear[2] = "marzo";
MonthsOfYear[3] = "abril";
MonthsOfYear[4] = "mayo";
MonthsOfYear[5] = "junio";
MonthsOfYear[6] = "julio";
MonthsOfYear[7] = "agosto";
MonthsOfYear[8] = "septiembre";
MonthsOfYear[9] = "octubre";
MonthsOfYear[10] = "noviembre";
MonthsOfYear[11] = "diciembre";
// This array controls how often the clock is updated,
// based on your selection in the configuration.
var ClockUpdate = new Array(3);
ClockUpdate[0] = 0;
ClockUpdate[1] = 1000;
ClockUpdate[2] = 60000;
// Se queda con la fecha_hora inicial del server
var fecha_desde = new Date(2010, 2, 10, 22, 8, 12);
// Se queda con la fecha_hora inicial del cliente
var init_date = new Date();
// Diferencia de hora Miami - Buenos Aires. Expresado en milisegundos.
var miami_dif_miliseg = 3600000;
// The main part of the script:
function RelojHoraArgentina() {
if (old == "die") { return; }
//show clock in NS 4
if (document.layers)
document.RelojArgentinaPosNS.visibility="show"
// fecha_hora actual
var ahora = new Date();
// Calcula date_now = fecha_desde + ( Date() - init_date )
var Digital = new Date( fecha_desde.valueOf() + (ahora.valueOf() - init_date.valueOf()) );
// Get all our date variables:
//var Digital = new Date();
var day = Digital.getDay();
var mday = Digital.getDate();
var month = Digital.getMonth();
var year = Digital.getYear();
var hours = Digital.getHours();
var minutes = Digital.getMinutes();
var seconds = Digital.getSeconds();
// Fix the "mn" variable if needed:
if (mday == 1) { mn = "st"; }
else if (mday == 2) { mn = "nd"; }
else if (mday == 3) { mn = "rd"; }
else if (mday == 21) { mn = "st"; }
else if (mday == 22) { mn = "nd"; }
else if (mday == 23) { mn = "rd"; }
else if (mday == 31) { mn = "st"; }
// Set up the hours for either 24 or 12 hour display:
if (my12_hour) {
dn = "AM";
if (hours > 12) { dn = "PM"; hours = hours - 12; }
if (hours == 0) { hours = 12; }
} else {
dn = "";
}
if (minutes <= 9) { minutes = "0"+minutes; }
if (seconds <= 9) { seconds = "0"+seconds; }
// This is the actual HTML of the clock. If you're going to play around
// with this, be careful to keep all your quotations in tact.
myclock = '';
myclock += '';
myclock += mypre_text;
if (DisplayDate) { myclock += DaysOfWeek[day]+' '+mday+' de ' + MonthsOfYear[month] + ' de ' + year + ', '; }
myclock += ''+hours+':'+minutes;
if ((myupdate < 2) || (myupdate == 0)) { myclock += ':'+seconds; }
myclock += ' '+dn+'';
myclock += '';
if (old == "true") {
document.write(myclock);
old = "die";
return;
}
// Write the clock to the layer:
if (document.layers) {
clockpos = document.RelojArgentinaPosNS;
liveclock = clockpos.document.RelojArgentinaNS;
liveclock.document.write(myclock);
liveclock.document.close();
} else if (document.all) {
RelojArgentinaVivoIE.innerHTML = myclock;
}
if (myupdate != 0) { setTimeout("RelojHoraArgentina()",ClockUpdate[myupdate]); }
}
// The main part of the script: RELOJ HORA MIAMI
function RelojHoraUSA() {
if (old == "die") { return; }
//show clock in NS 4
if (document.layers)
document.RelojUSAPosNS.visibility="show"
// fecha_hora actual
var ahora = new Date();
// Calcula date_now = fecha_desde + ( Date() - init_date ) - (segundos de diferencia con Miami)
var Digital = new Date( fecha_desde.valueOf() + (ahora.valueOf() - init_date.valueOf()) - miami_dif_miliseg );
// Get all our date variables:
//var Digital = new Date();
var day = Digital.getDay();
var mday = Digital.getDate();
var month = Digital.getMonth();
var year = Digital.getYear();
var hours = Digital.getHours();
var minutes = Digital.getMinutes();
var seconds = Digital.getSeconds();
// Fix the "mn" variable if needed:
if (mday == 1) { mn = "st"; }
else if (mday == 2) { mn = "nd"; }
else if (mday == 3) { mn = "rd"; }
else if (mday == 21) { mn = "st"; }
else if (mday == 22) { mn = "nd"; }
else if (mday == 23) { mn = "rd"; }
else if (mday == 31) { mn = "st"; }
// Set up the hours for either 24 or 12 hour display:
if (my12_hour) {
dn = "AM";
if (hours > 12) { dn = "PM"; hours = hours - 12; }
if (hours == 0) { hours = 12; }
} else {
dn = "";
}
if (minutes <= 9) { minutes = "0"+minutes; }
if (seconds <= 9) { seconds = "0"+seconds; }
// This is the actual HTML of the clock. If you're going to play around
// with this, be careful to keep all your quotations in tact.
myclock = '';
myclock += '';
myclock += mypre_text;
if (DisplayDate) { myclock += DaysOfWeek[day]+' '+mday+' de ' + MonthsOfYear[month] + ' de ' + year + ', '; }
myclock += ''+hours+':'+minutes;
if ((myupdate < 2) || (myupdate == 0)) { myclock += ':'+seconds; }
myclock += ' '+dn+'';
myclock += '';
if (old == "true") {
document.write(myclock);
old = "die";
return;
}
// Write the clock to the layer:
if (document.layers) {
clockpos = document.RelojUSAPosNS;
liveclock = clockpos.document.RelojUSANS;
liveclock.document.write(myclock);
liveclock.document.close();
} else if (document.all) {
RelojUSAVivoIE.innerHTML = myclock;
}
if (myupdate != 0) { setTimeout("RelojHoraUSA()",ClockUpdate[myupdate]); }
}
function dos_ceros(n) {
if(n < 10)
return '0' + n;
else
return n;
}