Contrôler le Format des Dates et des Heures



Les dates et heures sont affichées différemment en différentes langues et régions du monde. Par exemple, aux Etats-Unis, il est courant de placer le mois avant la date ; dans le reste du monde la date s'affiche avant le mois. Ainsi 1/3/03 signifie 3 janvier aux Etats-Unis mais au Royaume-Uni cela voudrait dire 1° mars.

Quand CityDesk affiche une date ou une heure, il essaye de s'imaginer quelle langue utiliser en regardant la langue du site ; elle est spécifiée dans le Dialogue Langues. Si vous avez un site multilingue, par exemple, anglais et français, chaque version du site aura des dates et des heures formatées dans la langue appropriée.

Si CityDesk ne reconnaît pas la langue du site, il formatera les dates et heures en anglais. Une liste complète des langues que CityDesk reconnaît est ici.

Si vous aimez utiliser un format différent, insérez le CityScript suivant dans un gabarit ou fichier avant d'afficher les dates ou les heures :

{$ setDateTimeFormat "langue" "formatDate" "tempsFormat" $}

Vous pouvez changer le format aussi souvent que vous en avez besoin. Par exemple, pour afficher la date à la fois en anglais, en espagnol et en français :

{$setDateTimeFormat "English" "dddd, MMMM dd, yyyy" "hh:mm"$}
{$.filedDate$}

({$setDateTimeFormat "Spanish" "^dddd, MMMM dd, yyyy" "hh:mm"$}
{$.filedDate$})

({$setDateTimeFormat "French" "dddd d MMMM yyyy" "hh:mm"$}
{$.filedDate$})

La langue peut être n'importe laquelle des langues listées ici. Si la langue est CityDesk utilisera la langue du site. Par exemple, pour forcer CityDesk à utiliser le format de date court approprié pour chaque langue dans un site multilingue, entrez :

{$setDateTimeFormat "*" "short" "hh:mm"$}

Comme autre exemple, pour forcer CityDesk à utiliser le format long de date en Norvégien Nynorsk :

{$setDateTimeFormat "Norwegian (Nynorsk)" "long" "hh:mm"$}

Le Format de date (formatDate) peut être long ou short ou une chaîne décrivant un format personnalisé. long utilisera la date en entier préférée pour la langue donnée ;  short utilisera un format abrégé comme 01/01/03. Pour contrôler le format de date plus précisément, vous pouvez fournir une chaîne constituée d'une combinaison des codes suivants :

Code: est remplacé par :
d Jour du mois, sans zéro en tête pour des jours à chiffre unique
dd Jour du mois, avec un zéro en tête pour des jours à chiffre unique
ddd Jour de la semaine, abréviation à trois lettres
dddd Jour de la semaine, utilisant le nom du jour complet
M Mois, exprimé en chiffres, sans zéro pour les mois à un chiffre
MM Mois, exprimé en chiffres avec un zéro pour les mois à un chiffre
MMM Mois, abrégé en trois lettres
MMMM Mois, en utilisant le nom complet
y Année, à deux chiffres, mais sans zéro pour les années inférieures à 10
yy Année, à deux chiffres, avec un zéro en tête pour les années inférieures à 10
yyyy Année représentée par 4 chiffres
gg Période ou chaîne d'ère (pour certaines langues)


timeFormat est une chaîne constituée d'une combinaison des codes suivants :

Code: est remplacé par :
h Heures sans zéro pour les heures à un chiffre, en utilisant l'horloge à 12 heures
hh Heures avec un zéro en tête pour les heures à un chiffre, en utilisant l'horloge à 12 heures
H Heures sans zéro en tête pour les heures à un chiffre, en utilisant l'horloge à 24 heures
HH Heures avec un zéro en tête pour les heures à un chiffre en utilisant une horloge à 24 heures
m Minutes sans zéro en tête pour les minutes à un seul chiffre
mm Minutes avec un zéro en tête pour les minutes à un seul chiffre
s Secondes sans zéro en tête pour les secondes à un chiffre
ss Secondes avec zéro en tête pour les secondes à un chiffre
t Un caractère pour l'indicateur am/pm  ("a" or "p")
tt Indicateur à deux caractères am/pm


Pour inclure des lettres dans la date ou le format de l'heure sans les remplacer par des valeurs, entourez-les de simple apostrophes.

Par exemple :

{$ setDateTimeFormat "Spanish" "d 'de' MMMM, yyyy" "HH':'MM" $}

Parce que le de est en guillemets simples le d ne sera pas remplacé par le jour du mois.

Pour produire une simple chaîne de caractères, utilisez quatre guillemets simples dans une ligne.

Pour forcer la toute première lettre à une mise en capitale de la date, commencez la chaîne de format par un  ^ (caret) . Par exemple :

{$ setDateTimeFormat "Spanish" "DDDD" "HH':'MM" $}

produirait le tout en bas-de-casse pour le jour de la semaine (e.g. lunes) alors que

{$ setDateTimeFormat "Spanish" "^DDDD" "HH':'MM" $}

donnerait Lunes, ce qui serait plus correct en début de phrase. (En anglais les jours de la semaine et les mois sont toujours en lettres capitales ainsi ça nous est égal).