document.dateTimeCursor = true; document.timeCursor = true; document.oldDateTime = ''; document.oldTime = ''; document.tabMonth = new Array(); document.tabDays = new Array(); document.tabDays[document.tabDays.length] = "Dimanche" document.tabDays[document.tabDays.length] = "Lundi" document.tabDays[document.tabDays.length] = "Mardi" document.tabDays[document.tabDays.length] = "Mercredi" document.tabDays[document.tabDays.length] = "Jeudi" document.tabDays[document.tabDays.length] = "Vendredi" document.tabDays[document.tabDays.length] = "Samedi" document.tabMonth[document.tabMonth.length] = "Janvier" document.tabMonth[document.tabMonth.length] = "Février" document.tabMonth[document.tabMonth.length] = "Mars" document.tabMonth[document.tabMonth.length] = "Avril" document.tabMonth[document.tabMonth.length] = "Mai" document.tabMonth[document.tabMonth.length] = "Juin" document.tabMonth[document.tabMonth.length] = "Juillet" document.tabMonth[document.tabMonth.length] = "Août" document.tabMonth[document.tabMonth.length] = "Septembre" document.tabMonth[document.tabMonth.length] = "Octobre" document.tabMonth[document.tabMonth.length] = "Novembre" document.tabMonth[document.tabMonth.length] = "Décembre" /** * Retourne la date du jour dans le format demandé (défini par des champs de fusion). * Champs de fusion disponibles pour la chaîne format : * - %nomJour : nom du jour de la semaine (Lundi, Mardi, etc.) * - %nomMois : nom du mois (Janvier, Février, etc.) * - %jour : numéro du jour de la semaine sur 2 chiffres (01, 02, 15, etc.) * - %mois : numéro du mois sur 2 chiffres (01, 02, 12, etc.) * - %annee : année sur 4 chiffres * - %j : numéro du jour de la semaine (1, 2, 3, etc.) * - %m : numéro du mois (1, 2, 3, etc.) * - %a : année sur 2 chiffres * - %h : heure * - %i : minutes * - %s : secondes * - %H : heure sur 2 chiffres * - %I : minutes sur 2 chiffres * - %S : secondes sur 2 chiffres * * @param string format Format de la chaîne à afficher * @param bool clignotement Active ou non le clignotement du symbole ':' */ function getDateTime(format, clignotement) { if( !format ) format = "%nomJour %jour %nomMois %annee"; var d = new Date(); var js = d.getDay(); var j = d.getDate(); var m = d.getMonth() + 1; var a = d.getFullYear() % 100; var jj = (j < 10) ? "0" + j : j; var mm = (m < 10) ? "0" + m : m; var aa = d.getFullYear(); var h = d.getHours(); var i = d.getMinutes(); var s = d.getSeconds(); var hh = (h < 10) ? "0" + h : h; var ii = (i < 10) ? "0" + i : i; var ss = (s < 10) ? "0" + s : s; format = format.replace(/%nomJour/, document.tabDays[js]); format = format.replace(/%nomMois/, document.tabMonth[m - 1]); format = format.replace(/%jour/, jj); format = format.replace(/%mois/, mm); format = format.replace(/%annee/, aa); format = format.replace(/%j/, j); format = format.replace(/%m/, m); format = format.replace(/%a/, a); format = format.replace(/%H/, hh); format = format.replace(/%I/, ii); format = format.replace(/%S/, ss); format = format.replace(/%h/, h); format = format.replace(/%i/, i); format = format.replace(/%s/, s); if( clignotement ) if( !document.dateTimeCursor ) format = format.replace(/:/, ':'); document.dateTimeCursor = !document.dateTimeCursor; return format; } /** * Affiche l'heure au format demandé * Champs de fusion disponibles : * - %h : heure * - %m : minutes * - %s : secondes * - %H : heure sur 2 chiffres * - %M : minutes sur 2 chiffres * - %S : secondes sur 2 chiffres * * @param string format Format de la chaîne à afficher * @param bool clignotement Active ou non le clignotement du symbole ':' */ function getTime(format, clignotement) { if( !format ) format = "%H:%M:%S"; var d = new Date(); var h = d.getHours(); var i = d.getMinutes(); var s = d.getSeconds(); var hh = (h < 10) ? "0" + h : h; var ii = (i < 10) ? "0" + i : i; var ss = (s < 10) ? "0" + s : s; format = format.replace(/%H/, hh); format = format.replace(/%M/, ii); format = format.replace(/%S/, ss); format = format.replace(/%h/, h); format = format.replace(/%m/, i); format = format.replace(/%s/, s); if( clignotement ) if( !document.timeCursor ) format = format.replace(/:/, ':'); document.timeCursor = !document.timeCursor; return format; } /** * Affiche un bloc DateTime * * @param string id ID à donner à l'élément * @param string format Format de la chaîne à afficher * @param bool clignotement Active ou non le clignotement du symbole ':' */ function writeDateTimeItem(id, format, clignotement) { if( !format ) format = ''; if( !clignotement ) clignotement = false; var d = new Date(); var cmd = "var d=getDateTime('" + format + "', " + clignotement + ");if(document.oldDateTime!=d)document.getElementById('" + id + "').innerHTML=d;document.oldDateTime=d;"; window.setTimeout(cmd + 'window.setInterval("' + cmd + '", 59500);', 1000-d.getMilliseconds()); document.write('
' + getDateTime(format, clignotement) + '
'); } /** * Affiche un bloc Time * * @param string id ID à donner à l'élément * @param string format Format de la chaîne à afficher * @param bool clignotement Active ou non le clignotement du symbole ':' */ function writeTimeItem(id, format, clignotement) { if( !format ) format = ''; if( !clignotement ) clignotement = false; var cmd = "var d=getTime('" + format + "', " + clignotement + ");if(document.oldTime!=d)document.getElementById('" + id + "').innerHTML=d;document.oldTime=d;"; window.setInterval(cmd, 1000); document.write('
' + getTime(format, clignotement) + '
'); } /** * Ouvre une page en popup * * @param string url URL de la page à charger * @param integer w Largeur de la page (par défaut largeur écran - 100) * @param integer h Hauteur de la page (par défaut hauteur écran - 100) * @param integer x Positionnement horizontal de la fenêtre sur l'écran, par défaut centré * @param integer y Positionnement vertical de la fenêtre sur l'écran, par défaut centré * @param string wname Nom interne de la fenêtre * @param bool scroll autorise ou non les barres de défilement (par défaut true) * @param bool resize autorise ou non le redimensionnement de la fenêtre (par défaut true) * @return integer Handle sur la fenêtre */ function popup(url, w, h, x, y, wname, scroll, resize) { if( typeof(w) == 'undefined' ) w = screen.availWidth - 100; if( typeof(h) == 'undefined' ) h = screen.availHeight - 100; if( typeof(x) == 'undefined' ) x = Math.floor((screen.availWidth - w) / 2); if( typeof(y) == 'undefined' ) y = Math.floor((screen.availHeight - h) / 2); if( typeof(wname) == 'undefined' ) wname = ''; if( typeof(scroll) == 'undefined' ) scroll = true; if( typeof(resize) == 'undefined' ) resize = true; var options = "width=" + w + ",height=" + h + ",left=" + x + ",top=" + y + ",scrollbars=" + (scroll?"yes":"no") + ",resizable=" + (resize?"yes":"no"); return window.open(url, wname, options); } /** * Ouvre une page dans une nouvelle fenêtre * * @param string url URL de la page à charger * @param integer w Largeur de la page (par défaut largeur écran - 100) * @param integer h Hauteur de la page (par défaut hauteur écran - 100) * @param integer x Positionnement horizontal de la fenêtre sur l'écran, par défaut centré * @param integer y Positionnement vertical de la fenêtre sur l'écran, par défaut centré * @param string wname Nom interne de la fenêtre * @param bool menubar autorise ou non la barre de menu (par défaut true) * @param bool toolbar autorise ou non la barre d'outils (par défaut true) * @param bool address autorise ou non la barre d'adresse (par défaut true) * @param bool statusbar autorise ou non la barre de statut (par défaut true) * @param bool scroll autorise ou non les barres de défilement (par défaut true) * @param bool resize autorise ou non le redimensionnement de la fenêtre (par défaut true) * @return integer Handle sur la fenêtre */ function newWindow(url, w, h, x, y, wname, menubar, toolbar, address, statusbar, scroll, resize) { if( typeof(w) == 'undefined' ) w = screen.availWidth - 100; if( typeof(h) == 'undefined' ) h = screen.availHeight - 100; if( typeof(x) == 'undefined' ) x = Math.floor((screen.availWidth - w) / 2); if( typeof(y) == 'undefined' ) y = Math.floor((screen.availHeight - h) / 2); if( typeof(wname) == 'undefined' ) wname = ''; if( typeof(menubar) == 'undefined' ) menubar = true; if( typeof(toolbar) == 'undefined' ) toolbar = true; if( typeof(address) == 'undefined' ) address = true; if( typeof(statusbar) == 'undefined' ) statusbar = true; if( typeof(scroll) == 'undefined' ) scroll = true; if( typeof(resize) == 'undefined' ) resize = true; var options = "width=" + w + ",height=" + h + ",left=" + x + ",top=" + y + ",location=" + (address?"yes":"no") + ",menubar=" + (menubar?"yes":"no") + ",toolbar=" + (toolbar?"yes":"no") + ",scrollbars=" + (scroll?"yes":"no") + ",resizable=" + (resize?"yes":"no") + ",status=" + (status?"yes":"no"); return window.open(url, wname, options); }