1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| /******************************
* Date dans la langue du navigateur
* By SpaceFrog © Aout 2010.
* (Patche le bug de chrome)
******************************/
function DateLocale(d, lang){
// Le nom des jours en français et en anglais, mais on peut completer
var tabJours = {
'fr': ['Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Venderdi', 'Samedi', 'Dimanche'],
'en': ['Monday', 'Tuesday', 'Wednesday','Thurday','Friday', 'Saturday', 'Sunday']
};
// Le nom des mois en français et en anglais, mais on peut completer
var tabMois = {
'fr': ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
'en': ['January','February', 'March','April','May', 'June', 'July','Augut','September','October','November','December']
};
var sysLang;
// Recupération de la langue du navigateur
if ((lang == "fr") || (lang == "en")){
sysLang = lang;
} else {
sysLang = (navigator.userLanguage) ? navigator.userLanguage : navigator.language;
}
// Par défaut la langue sera l'anglais (mais on peut modifier)
// retourne la date au format sysLang, par défaut en anglais
switch (sysLang){
case ('fr'):
DateLang = 'fr';
return(tabJours[DateLang][d.getDay() - 1] + ", le " + d.getDate() + " " + tabMois[DateLang][d.getMonth()] + " " + d.getFullYear() + " à " + TD(d.getHours()) + " h " + TD(d.getMinutes()));
break;
case ('en'):
DateLang = 'en';
return(tabJours[DateLang][d.getDay() - 1] + ", " + tabMois[DateLang][d.getMonth()] + " " + d.getDate() + " " + d.getFullYear() + " " + TD(d.getHours()) + ":" + TD(d.getMinutes()));
break;
default:
DateLang = 'en';
return(tabJours[DateLang][d.getDay() - 1] + ", " + tabMois[DateLang][d.getMonth()] + " " + d.getDate() + " " + d.getFullYear() + " " + TD(d.getHours()) + ":" + TD(d.getMinutes()));
}
function TD(n){
// formatage du leading 0
return n.toString().replace(/^(\d)$/,'0$1')
}
}
alert(DateLocale(new Date()));
alert(DateLocale(new Date(), "en")); |