Module:Date/Documentation : Différence entre versions

De Lagny-sur-Marne Wiki
Aller à : navigation, rechercher
(Fonction modeleDate comparée aux modèles existant)
(Fonction modeleDate : retrait des exemple avec décalage car cette fonctionnalité sera bientôt retirée.)
 
(13 révisions intermédiaires par 4 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
<includeonly>{{semi-protection longue}}</includeonly>
+
<includeonly>{{protection}}</includeonly>
 
 
 
Attention, certaines fonctions de ce module sont utilisées par les modèles {{m|ouvrage}} et {{m|article}} ({{unité|100000|pages}}).  
 
Attention, certaines fonctions de ce module sont utilisées par les modèles {{m|ouvrage}} et {{m|article}} ({{unité|100000|pages}}).  
  
Ligne 6 : Ligne 5 :
 
=== Fonctions utilisables depuis un modèle ===  
 
=== Fonctions utilisables depuis un modèle ===  
 
* <code>modeleDate(frame)</code> – affiche une date avec les liens les plus pertinents (précisions ci-dessous).
 
* <code>modeleDate(frame)</code> – affiche une date avec les liens les plus pertinents (précisions ci-dessous).
* <code>modeleInscriptionDate(frame)</code> – affiche une date correctement formatée, sans lien. l'année est obligatoire. Paramètres nommés année, mois, jour. (utilisé par module Biblio)
+
* <code>modeleInscriptionDate(frame)</code> – affiche une date correctement formatée, sans lien. L'année est obligatoire. Paramètres nommés année, mois, jour. (utilisé par [[module:Biblio|module Biblio]]). Étonnamment elle se trouve implémentée en réalité dans [[Module:Biblio/Commun]].
* <code>dateISO(frame)</code> – similaire à modeleInscriptionDate mais la date est au format aaaa-mm-jj. Paramètres nommés année, mois, jour. Pour respecter l'[[ISO 8601]] qui définie la date uniquement selon le [[calendrier grégorien]], cette fonction ne retourne rien pour les date avant 1583.
+
* <code>dateISO(frame)</code> – similaire à modeleInscriptionDate mais la date est au format aaaa-mm-jj. Paramètres nommés année, mois, jour. Pour respecter l'[[ISO 8601]] qui définit la date uniquement selon le [[calendrier grégorien]], cette fonction ne retourne rien pour les dates avant 1583.
 
* <code>dateRepublicain(frame)</code> – affiche une date grégorienne au format républicain (sans liens). Paramètres 1=année, 2=mois, 3=jour.
 
* <code>dateRepublicain(frame)</code> – affiche une date grégorienne au format républicain (sans liens). Paramètres 1=année, 2=mois, 3=jour.
* <code>modeleAge(frame)</code> - retourne l'age (nombre d'année) depuis une date ou entre deux dates. Paramètres 1=année, 2=mois, 3=jour, 4=année, 5=mois, 6=jour.
+
* <code>modeleAge(frame)</code> - retourne l'âge (nombre d'année) depuis une date ou entre deux dates. Paramètres 1=année, 2=mois, 3=jour, 4=année, 5=mois, 6=jour.
 
* <code>erreurModuleData()</code> - retourne un message d'erreur si Module:Date/Data ne se charge pas correctement.
 
* <code>erreurModuleData()</code> - retourne un message d'erreur si Module:Date/Data ne se charge pas correctement.
* <code>checkDataCat(frame)</code> - retourne une liste de page annuelle et mensuelle pour facilité les mises à jour de Date/Data. Paramètres 1=cat, mois=liste de mois si 'oui', alias = liste tous les alias si 'oui'
+
* <code>checkDataCat(frame)</code> - retourne une liste de pages annuelle et mensuelle pour faciliter les mises à jour de Date/Data. Paramètres 1=cat, mois=liste de mois si 'oui', alias = liste tous les alias si 'oui'
  
=== fonction utilisable depuis un autre module ===  
+
=== Fonctions utilisables depuis un autre module ===  
 
* <code>nomDuMois( num )</code> – retourne le nom français du mois n° <code>num</code>.
 
* <code>nomDuMois( num )</code> – retourne le nom français du mois n° <code>num</code>.
 
* <code>valideMois( mois )</code> – retourne le nom français et le n° de <code>mois</code> (nom français, abrégé, anglais, ou nombre entre 1 et 12).
 
* <code>valideMois( mois )</code> – retourne le nom français et le n° de <code>mois</code> (nom français, abrégé, anglais, ou nombre entre 1 et 12).
* <code>determinationMois( mois, frame )</code> - similaire à valideMois, mais le numéro du mois n'est pas limité (14 → février), et peut même être une expréssion si un objet frame est fourni ( 6 + 3 → septembre )
+
* <code>determinationMois( mois, frame )</code> - similaire à valideMois, mais le numéro du mois n'est pas limité (14 → février), et peut même être une expression si un objet frame est fourni ( 6 + 3 → septembre )
 
* <code>do_dayRank(arguments)</code> - Rang du jour dans l'année. Paramètre arguments = { année, mois, jour } ou { year = année, month = mois, day = jour }
 
* <code>do_dayRank(arguments)</code> - Rang du jour dans l'année. Paramètre arguments = { année, mois, jour } ou { year = année, month = mois, day = jour }
* <code>isLeapYear(year)</code> - retourne true si year est une année bisextile dans le calendrier grégorien.
+
* <code>isLeapYear(year)</code> - retourne true si year est une année bissextile dans le calendrier grégorien.
* <code>toRoman(number)</code> - transforme number en une chaine le représentant en « [[chiffres romains]] ».
+
* <code>toRoman(number)</code> - transforme number en une chaine le représentant en « [[Numération romaine|chiffres romains]] ».
 
* <code>age( an, mn, jn, ac, mc, jc )</code> - similaire à modeleAge, mais les paramètres ne sont pas dans une table
 
* <code>age( an, mn, jn, ac, mc, jc )</code> - similaire à modeleAge, mais les paramètres ne sont pas dans une table
 
* <code>julianDay( year, month, day, hour, minute, second )</code> - retourne le [[jour julien]] de la date transmise, suivant le [[Calendrier grégorien proleptique|calendrier grégorien astronomique]] (avec année 0)
 
* <code>julianDay( year, month, day, hour, minute, second )</code> - retourne le [[jour julien]] de la date transmise, suivant le [[Calendrier grégorien proleptique|calendrier grégorien astronomique]] (avec année 0)
 
* <code>julianDayJulian( year, month, day, hour, minute, second )</code> - retourne le [[jour julien]] d'une date du [[Calendrier julien proleptique|calendrier julien astronomique]] (avec année 0)
 
* <code>julianDayJulian( year, month, day, hour, minute, second )</code> - retourne le [[jour julien]] d'une date du [[Calendrier julien proleptique|calendrier julien astronomique]] (avec année 0)
* <code>jullianDayToGregorian( jd )</code> - retourne trois variable année, mois, jour représentant la date du  [[Calendrier grégorien proleptique|calendrier grégorien astronomique]]  correspondant à ce jour julien.
+
* <code>julianDayToGregorian( jd )</code> - retourne trois variables année, mois, jour représentant la date du  [[Calendrier grégorien proleptique|calendrier grégorien astronomique]]  correspondant à ce jour julien.
* <code>jullianDayToJulian( jd )</code> - retourne trois variable année, mois, jour représentant la date du  [[Calendrier julien proleptique|calendrier julien]]  correspondant à ce jour julien.
+
* <code>julianDayToJulian( jd )</code> - retourne trois variables année, mois, jour représentant la date du  [[Calendrier julien proleptique|calendrier julien]]  correspondant à ce jour julien.
* <code>jullianToGregorian( year, month, day )</code> - transforme une date du calendrier julien en date du calendrier grégorien.
+
* <code>julianToGregorian( year, month, day )</code> - transforme une date du calendrier julien en date du calendrier grégorien.
* <code>gregorianToJullian( year, month, day )</code> - transforme une date du calendrier grégorien en date du calendrier julien.
+
* <code>gregorianToJulian( year, month, day )</code> - transforme une date du calendrier grégorien en date du calendrier julien.
  
 
=== Modules externes dont ce module a besoin pour fonctionner ===
 
=== Modules externes dont ce module a besoin pour fonctionner ===
* <code>[[Module:Date/Data|Date/Data]]</code> - Base de donnée permettant de ne pas tester les pages que l'on sait existante, ou n'existant pas.
+
* <code>[[Module:Date/Data|Date/Data]]</code> - Base de donnée permettant de ne pas tester les pages que l'on sait existantes, ou n'existant pas.
 
* <code>[[Module:TableBuilder|TableBuilder]]</code> – Utilise <code>.insert</code> et <code>.concat</code> pour simplifier la syntaxe.
 
* <code>[[Module:TableBuilder|TableBuilder]]</code> – Utilise <code>.insert</code> et <code>.concat</code> pour simplifier la syntaxe.
  
 
== modeleDate( frame ) ==
 
== modeleDate( frame ) ==
 
=== Paramètres ===
 
=== Paramètres ===
* <code>1</code> - jour ou vide - numérique, exeption possible pour 1er ou {{1er}}.
+
* <code>1</code> - jour ou vide - numérique, exception possible pour 1er ou {{1er}}.
 
* <code>2</code> - mois ou jour - numérique ou nom français ou anglais, éventuellement une abréviation courante.
 
* <code>2</code> - mois ou jour - numérique ou nom français ou anglais, éventuellement une abréviation courante.
* <code>3</code> - année ou mois - Un nombre sera considéré comme année. Les années sont considérées comme suivant le calendrier grégorien depuis le 14 octobre 1582 (sauf si julien = 'oui') et le calendrier julien auparavant, sans année 0.
+
* <code>3</code> - année ou mois - Un nombre sera considéré comme année. Les années sont considérées comme suivant le calendrier grégorien après le 14 octobre 1582 (sauf si julien = 'oui') et le calendrier julien avant, sans année 0.
 
* <code>4</code> - qualificatif ou année - texte correspondant à une page type « en photographie » pour « [[2008 en photographie]] »
 
* <code>4</code> - qualificatif ou année - texte correspondant à une page type « en photographie » pour « [[2008 en photographie]] »
 
* <code>5</code> - qualificatif
 
* <code>5</code> - qualificatif
* <code>age</code> ou <code>âge</code> - non vide pour afficher l'age (aucun age n'est affiché pour les date dans le futur)
+
* <code>age</code> ou <code>âge</code> - non vide pour afficher l'âge (aucun âge n'est affiché pour les dates dans le futur)
* <code>julien</code> - 'oui' pour que la date soit considérée suivant le calendrier julien après le 14 otobre 1582. La date sera affiché suivant les deux calendrier.
+
* <code>julien</code> - 'oui' pour que la date soit considérée comme suivant le calendrier julien après le 14 octobre 1582. La date grégorienne avec liens est affichée suivie de la date julienne entre parenthèses.
* <code>avJC</code> - 'non' pour ne pas affiché 'av. J.-C.' après l'année si elle représente une année anvant Jésus Chirst. Utile pour éviter les répétitions.
+
* <code>avJC</code> - 'non' pour ne pas afficher 'av. J.-C.' après l'année si elle représente une année avant Jésus Christ. Utile pour éviter les répétitions.
 
+
* <code>paramètres page</code> - Si un modèle {{m|date}} contient ce paramètre, les paramètres <code>julien</code>, <code>avJC</code> et <code>qualificatif</code> seront appliqués à toutes les dates de la page, sauf si une autre valeur de ces paramètres est indiquée. Le modèle date qui contient ce paramètre n'a pas besoin d'être affiché par le module Date, et peut être en commentaire dans la page. La page doit être purgée pour que ce paramètre soit pris en compte.
* <code>paramètres page</code> - Si un modèle {{m|date}} contient ce paramètre, et les paramètre <code>julien</code>, <code>avJC</code> et <code>qualificatif</code> seront appliqué à toutes les dates de la page, sauf si une autre valeur de ces paramètres est indiquée. Le modèle date qui contient ce paramètre n'a pas besoin d'être affiché par le module Date, et peut être en commentaire dans la page. La page doit être purgée pour que ce paramètre soit pris en compte.
+
* <code>qualificatif</code> - qualificatif à appliquer sur toute la page. Ne fonctionne qu'en liaison avec le paramètre <code>paramètres page</code>
* <code>qualificatif</code> - qualificatif a appliquer sur toute la page. Ne fonctionne qu'en liaison avec le paramètre <code>paramétres page</code>
 
 
 
  
=== fonctionnement ===
+
=== Fonctionnement ===
* Le modèle cherche à afficher la date avec des liens vers les pages liè au qualificatif. s'il n'y a pas de page lié au qualificatif un lien sera fait vers la page générale.
+
* le modèle cherche à afficher la date avec des liens vers les pages liées au qualificatif. S'il n'y a pas de page liée au qualificatif un lien sera fait vers la page générale.
* le premier paramètre est vide et le troisième correspond à un mois (texte uniquement), tous les paramètres sont considérés comme décalé et l'année ne sera pas affichée.
+
* le premier paramètre est vide et le troisième correspond à un mois (texte uniquement), tous les paramètres sont considérés comme décalés et l'année ne sera pas affichée.
* S'il n'y a pas de page spécifique pour ce mois-année, le mois sera affiché liè avec le jour à l'éphéméride. Priorité est donné à l'éphéméride du qualificatif sur le lien mois-année sans qualificatif.
+
* s'il n'y a pas de page spécifique pour ce mois-année, le mois sera affiché lié avec le jour à l'éphéméride. Priorité est donnée à l'éphéméride du qualificatif sur le lien mois-année sans qualificatif.
* Le modèle s'aide de la base de donnée [[Module:Date/Data|Date/Data]] pour éviter d'utiliser la fonction mw.title (équivalent du parser #ifexist:).
+
* le modèle s'aide de la base de donnée [[Module:Date/Data|Date/Data]] pour éviter d'utiliser la fonction mw.title (équivalent du parser #ifexist:).
* Cette base permet de remplacer le qualificatif par une catégorie plus générique. Si le qualificatif est « en tennis », l'éphéméride et la page mensuelle sera liè au qualificatif « en sport ».
+
* cette base permet de remplacer le qualificatif par une catégorie plus générique. Si le qualificatif est « en tennis », l'éphéméride et la page mensuelle sera liée au qualificatif « en sport ».
 +
* pour éviter de répéter le même qualificatif sur toute les dates de la page, il suffit d'avoir quelque part dans le texte de la page, même en commentaire mais pas amené par un modèle, le texte <code><nowiki>{{Date|paramètres page= |qualificatif= mon qualificatif}}</nowiki></code>. Le modèle peut contenir d'autre paramètres. Seul le premier modèle date contenant ce paramètre sera pris en compte.
  
* pour éviter de répéter le même qualificatif sur toute les dates de la page, il suffit d'avoir quelque part dans le texte de la page, même en commentaire mais pas amené par un modèle, le texte <code>{{Date|paramètres page= |qualificatif= mon qualificatif}}</code>. le modèle peut contenir d'autre paramètres. Seul le premier modèle date contenant ce paramètre sera pris en compte.
 
 
=== Fonction modeleDate ===
 
=== Fonction modeleDate ===
 
{|class="wikitable alternance" style="text-align:center;"
 
{|class="wikitable alternance" style="text-align:center;"
 
|-
 
|-
! motif testé !! chaine testée !! Modèle Date !! Module !! fonctions couteuses<br />modèle d'avant / module
+
! Motif testé !! Chaîne testée !! Module !! Fonctions coûteuses<br />modèle d'avant / module
 
|-
 
|-
 
| date récente
 
| date récente
Ligne 71 : Ligne 68 :
 
|-
 
|-
 
| date très ancienne (<1700), jour = 1er
 
| date très ancienne (<1700), jour = 1er
| <nowiki>1er|janvier|537</nowiki>
+
| <nowiki>1|janvier|537</nowiki>
 
| {{#invoke:Date|modeleDate|1er|janvier|537}}  
 
| {{#invoke:Date|modeleDate|1er|janvier|537}}  
 
| 1 / 0
 
| 1 / 0
Ligne 87 : Ligne 84 :
 
| avec qualificatif  
 
| avec qualificatif  
 
| <nowiki>14|Octobre|2001|en astronautique</nowiki>  
 
| <nowiki>14|Octobre|2001|en astronautique</nowiki>  
| {{Date|14|Octobre|2001|en astronautique}}
 
 
| {{#invoke:Date|modeleDate|14|Octobre|2001|en astronautique}}  
 
| {{#invoke:Date|modeleDate|14|Octobre|2001|en astronautique}}  
 
| 3 / 0
 
| 3 / 0
Ligne 130 : Ligne 126 :
 
| {{#invoke:Date|modeleDate|14|octobre|1845|en aéronautique}}  
 
| {{#invoke:Date|modeleDate|14|octobre|1845|en aéronautique}}  
 
| 4 / 1
 
| 4 / 1
|-
 
| décalage
 
| <nowiki>|25|octobre|2006</nowiki>
 
| {{#invoke:Date|modeleDate||25|octobre|2006}}
 
| 3 / 0
 
|-
 
| décalage et qualificatif
 
| <nowiki>|25|octobre|2006|en sport</nowiki>
 
| {{#invoke:Date|modeleDate||25|octobre|2006|en sport}}
 
| 3 / 0
 
 
|-
 
|-
 
| date négative
 
| date négative
Ligne 146 : Ligne 132 :
 
| 1 / 0
 
| 1 / 0
 
|-
 
|-
| date av. J.-C; (orthographe de la page)
+
| date av. J.-C. (orthographe de la page)
| <nowiki>{{1er}}|octobre|63 av av. J.-C.</nowiki>
+
| <nowiki>1|octobre|63 av. J.-C.</nowiki>
 
| {{#invoke:Date|modeleDate|{{1er}}|octobre|63 av. J.-C.}}  
 
| {{#invoke:Date|modeleDate|{{1er}}|octobre|63 av. J.-C.}}  
 
| 1 / 0
 
| 1 / 0
Ligne 156 : Ligne 142 :
 
| 1 / 0
 
| 1 / 0
 
|-
 
|-
| date négative, paramètre pour cahée av. J.-C.
+
| date négative, paramètre pour cacher av. J.-C.
 
| <nowiki>13|octobre|-63|avJC=non</nowiki>
 
| <nowiki>13|octobre|-63|avJC=non</nowiki>
 
| {{#invoke:Date|modeleDate|13|octobre|-63|avJC=non}}  
 
| {{#invoke:Date|modeleDate|13|octobre|-63|avJC=non}}  
Ligne 219 : Ligne 205 :
 
| <nowiki>|Octobre</nowiki>
 
| <nowiki>|Octobre</nowiki>
 
| {{#invoke:Date|modeleDate||Octobre}}  
 
| {{#invoke:Date|modeleDate||Octobre}}  
| 0 / 0
 
|-
 
| décalage sans jour
 
| <nowiki>||Octobre|2001</nowiki>
 
| {{#invoke:Date|modeleDate|||Octobre|2001}}
 
 
| 0 / 0
 
| 0 / 0
 
|-
 
|-
Ligne 232 : Ligne 213 :
 
|-
 
|-
 
| date du calendrier julien
 
| date du calendrier julien
|<nowiki>14|octobre|2001|julien=oui</nowiki>  
+
|<nowiki>1|octobre|2001|julien=oui</nowiki>  
 +
| {{#invoke:Date|modeleDate|1|octobre|2001|julien=oui}}
 
|  
 
|  
| {{#invoke:Date|modeleDate|14|octobre|2001|julien=oui}}  
+
|-
 +
| date du calendrier julien (changement de mois)
 +
|<nowiki>25|octobre|2001|julien=oui</nowiki>
 +
| {{#invoke:Date|modeleDate|25|octobre|2001|julien=oui}}  
 
|  
 
|  
 
|-
 
|-
| date du calendrier julien fin déc.
+
| date du calendrier julien (changement d'année)
|<nowiki>25|dec|2001|julien=oui</nowiki>
+
|<nowiki>25|décembre|2001|julien=oui</nowiki>
| {{#invoke:Date|modeleDate|25|dec|2001|julien=oui}}  
+
| {{#invoke:Date|modeleDate|25|décembre|2001|julien=oui}}  
 
|  
 
|  
 
|-
 
|-
Ligne 249 : Ligne 234 :
  
 
==== Comparaison avec {{m|date de naissance}} ====
 
==== Comparaison avec {{m|date de naissance}} ====
* Les fonctions couteuses sont les même que celle du modèle Date
+
* les fonctions coûteuses sont les mêmes que celles du modèle Date
* sans l'age, voir comparaison avec {{m|Date}}
+
* sans l'âge, voir comparaison avec {{m|Date}}
 
{|class="wikitable alternance" style="text-align:center;"
 
{|class="wikitable alternance" style="text-align:center;"
 
|-
 
|-
! motif testé !! chaine testée !! Modèle Date de naissance!! Module
+
! Motif testé !! Chaîne testée !! Modèle Date de naissance!! Module
 
|-
 
|-
 
| simple
 
| simple
Ligne 297 : Ligne 282 :
  
 
==== Comparaison avec {{m|date sport}} ====
 
==== Comparaison avec {{m|date sport}} ====
* lorsqu'il n'y a pas de qualificatif, « en sport » et ajouté pour tester le module.
+
* lorsqu'il n'y a pas de qualificatif, « en sport » est ajouté pour tester le module.
 
{|class="wikitable alternance" style="text-align:center;"
 
{|class="wikitable alternance" style="text-align:center;"
 
|-
 
|-
! motif testé !! chaine testée !! Modèle Date sport !! Module !! fonctions couteuses<br />modèle / module
+
! Motif testé !! Chaîne testée !! Modèle Date sport !! Module !! Fonctions coûteuses<br />modèle / module
 
|-
 
|-
 
| simple
 
| simple
Ligne 320 : Ligne 305 :
 
| 3 / 1
 
| 3 / 1
 
|-
 
|-
| avec qualificatif et age
+
| avec qualificatif et âge
|<nowiki>12|2|1980|en gymnastique|âge=oui</nowiki>  
+
|<nowiki>12|2|1980|en gymnastique|age=oui</nowiki>  
| {{date sport|12|2|1980|en gymnastique|âge=oui}}  
+
| {{date sport|12|2|1980|en gymnastique|age=oui}}  
| {{#invoke:Date|modeleDate|12|2|1980|en gymnastique|âge=oui}}  
+
| {{#invoke:Date|modeleDate|12|2|1980|en gymnastique|age=oui}}  
 
| 2 / 0
 
| 2 / 0
 
|-
 
|-
Ligne 356 : Ligne 341 :
 
| 3 / 2
 
| 3 / 2
 
|}
 
|}
 
  
 
<includeonly>
 
<includeonly>

Version actuelle datée du 20 novembre 2015 à 07:37

Attention, certaines fonctions de ce module sont utilisées par les modèles {{ouvrage}} et {{article}} (100 000 pages).

Utilisation

Fonctions utilisables depuis un modèle

  • modeleDate(frame) – affiche une date avec les liens les plus pertinents (précisions ci-dessous).
  • modeleInscriptionDate(frame) – affiche une date correctement formatée, sans lien. L'année est obligatoire. Paramètres nommés année, mois, jour. (utilisé par module Biblio). Étonnamment elle se trouve implémentée en réalité dans Module:Biblio/Commun.
  • dateISO(frame) – similaire à modeleInscriptionDate mais la date est au format aaaa-mm-jj. Paramètres nommés année, mois, jour. Pour respecter l'ISO 8601 qui définit la date uniquement selon le calendrier grégorien, cette fonction ne retourne rien pour les dates avant 1583.
  • dateRepublicain(frame) – affiche une date grégorienne au format républicain (sans liens). Paramètres 1=année, 2=mois, 3=jour.
  • modeleAge(frame) - retourne l'âge (nombre d'année) depuis une date ou entre deux dates. Paramètres 1=année, 2=mois, 3=jour, 4=année, 5=mois, 6=jour.
  • erreurModuleData() - retourne un message d'erreur si Module:Date/Data ne se charge pas correctement.
  • checkDataCat(frame) - retourne une liste de pages annuelle et mensuelle pour faciliter les mises à jour de Date/Data. Paramètres 1=cat, mois=liste de mois si 'oui', alias = liste tous les alias si 'oui'

Fonctions utilisables depuis un autre module

  • nomDuMois( num ) – retourne le nom français du mois n° num.
  • valideMois( mois ) – retourne le nom français et le n° de mois (nom français, abrégé, anglais, ou nombre entre 1 et 12).
  • determinationMois( mois, frame ) - similaire à valideMois, mais le numéro du mois n'est pas limité (14 → février), et peut même être une expression si un objet frame est fourni ( 6 + 3 → septembre )
  • do_dayRank(arguments) - Rang du jour dans l'année. Paramètre arguments = { année, mois, jour } ou { year = année, month = mois, day = jour }
  • isLeapYear(year) - retourne true si year est une année bissextile dans le calendrier grégorien.
  • toRoman(number) - transforme number en une chaine le représentant en « chiffres romains ».
  • age( an, mn, jn, ac, mc, jc ) - similaire à modeleAge, mais les paramètres ne sont pas dans une table
  • julianDay( year, month, day, hour, minute, second ) - retourne le jour julien de la date transmise, suivant le calendrier grégorien astronomique (avec année 0)
  • julianDayJulian( year, month, day, hour, minute, second ) - retourne le jour julien d'une date du calendrier julien astronomique (avec année 0)
  • julianDayToGregorian( jd ) - retourne trois variables année, mois, jour représentant la date du calendrier grégorien astronomique correspondant à ce jour julien.
  • julianDayToJulian( jd ) - retourne trois variables année, mois, jour représentant la date du calendrier julien correspondant à ce jour julien.
  • julianToGregorian( year, month, day ) - transforme une date du calendrier julien en date du calendrier grégorien.
  • gregorianToJulian( year, month, day ) - transforme une date du calendrier grégorien en date du calendrier julien.

Modules externes dont ce module a besoin pour fonctionner

  • Date/Data - Base de donnée permettant de ne pas tester les pages que l'on sait existantes, ou n'existant pas.
  • TableBuilder – Utilise .insert et .concat pour simplifier la syntaxe.

modeleDate( frame )

Paramètres

  • 1 - jour ou vide - numérique, exception possible pour 1er ou 1er.
  • 2 - mois ou jour - numérique ou nom français ou anglais, éventuellement une abréviation courante.
  • 3 - année ou mois - Un nombre sera considéré comme année. Les années sont considérées comme suivant le calendrier grégorien après le 14 octobre 1582 (sauf si julien = 'oui') et le calendrier julien avant, sans année 0.
  • 4 - qualificatif ou année - texte correspondant à une page type « en photographie » pour « 2008 en photographie »
  • 5 - qualificatif
  • age ou âge - non vide pour afficher l'âge (aucun âge n'est affiché pour les dates dans le futur)
  • julien - 'oui' pour que la date soit considérée comme suivant le calendrier julien après le 14 octobre 1582. La date grégorienne avec liens est affichée suivie de la date julienne entre parenthèses.
  • avJC - 'non' pour ne pas afficher 'av. J.-C.' après l'année si elle représente une année avant Jésus Christ. Utile pour éviter les répétitions.
  • paramètres page - Si un modèle {{date}} contient ce paramètre, les paramètres julien, avJC et qualificatif seront appliqués à toutes les dates de la page, sauf si une autre valeur de ces paramètres est indiquée. Le modèle date qui contient ce paramètre n'a pas besoin d'être affiché par le module Date, et peut être en commentaire dans la page. La page doit être purgée pour que ce paramètre soit pris en compte.
  • qualificatif - qualificatif à appliquer sur toute la page. Ne fonctionne qu'en liaison avec le paramètre paramètres page

Fonctionnement

  • le modèle cherche à afficher la date avec des liens vers les pages liées au qualificatif. S'il n'y a pas de page liée au qualificatif un lien sera fait vers la page générale.
  • le premier paramètre est vide et le troisième correspond à un mois (texte uniquement), tous les paramètres sont considérés comme décalés et l'année ne sera pas affichée.
  • s'il n'y a pas de page spécifique pour ce mois-année, le mois sera affiché lié avec le jour à l'éphéméride. Priorité est donnée à l'éphéméride du qualificatif sur le lien mois-année sans qualificatif.
  • le modèle s'aide de la base de donnée Date/Data pour éviter d'utiliser la fonction mw.title (équivalent du parser #ifexist:).
  • cette base permet de remplacer le qualificatif par une catégorie plus générique. Si le qualificatif est « en tennis », l'éphéméride et la page mensuelle sera liée au qualificatif « en sport ».
  • pour éviter de répéter le même qualificatif sur toute les dates de la page, il suffit d'avoir quelque part dans le texte de la page, même en commentaire mais pas amené par un modèle, le texte {{Date|paramètres page= |qualificatif= mon qualificatif}}. Le modèle peut contenir d'autre paramètres. Seul le premier modèle date contenant ce paramètre sera pris en compte.

Fonction modeleDate

Motif testé Chaîne testée Module Fonctions coûteuses
modèle d'avant / module
date récente 14|octobre|2001 1 / 0
date ancienne (1700 - 1943), jour =1 1|octobre|1842 1 / 1
date très ancienne (<1700), jour = 1er 1|janvier|537 1 / 0
qualificatif qui n'est pas dans la base 14|octobre|2010|en animation asiatique 4 / 1
date ancienne, qualificatif qui n'est pas dans la base 14|octobre|1842|en animation asiatique 4 / 2
avec qualificatif 14|Octobre|2001|en astronautique 3 / 0
avec qualificatif avec éphémérides 14|octobre|2005|dans les chemins de fer 4 / 0
pas de jour |octobre|2001 1 / 0
pas de jour avec qualificatif |Octobre|2001|en astronautique 3 / 0
qualificatif avec page annuelle qui pourrait exister 14|octobre|2006|en Égypte 4 / 1
qualificatif avec page mensuelle existante 14|octobre|2008|en France 3 / 0
qualificatif avec page mensuelle qui pourrait exister 14|octobre|2012|en France 4 / 1
qualificatif avec page annuelle et mensuelle qui pourrait exister 14|octobre|2012|en économie 4 / 2
date ancienne avec qualificatif 14|octobre|1845|en aéronautique 4 / 1
date négative 13|octobre|-63 1 / 0
date av. J.-C. (orthographe de la page) 1|octobre|63 av. J.-C. 1 / 0
date avJC (orthographe abrégée) 13|octobre|63 avJC 1 / 0
date négative, paramètre pour cacher av. J.-C. 13|octobre|-63|avJC=non 1 / 0
année invalide 14|octobre|2001 en sport Année invalide (2001 en sport) 1 / 0
jour + mois avec majuscule 14|Octobre|2001 1 / 0
mois en abrégé 14|oct.|2001 1 / 0
mois en chiffre 14|10|2001 1 / 0
mois invalide 14|otcobre|2001 Mois invalide (otcobre) 1 / 0
jour invalide jeudi 14|octobre|2001 1 / 0
jour invalide (trop grand pour le mois) 31|septembre|2001 Jour invalide (31 septembre) 1 / 0
uniquement l’année ||2001 1 / 0
uniquement l’année avec qualificatif ||2001|en littérature 1 / 0
sans année 14|octobre 0 / 0
jour uniquement 14 0 / 0
mois uniquement |Octobre Octobre 0 / 0
sans argument 0 / 0
date du calendrier julien 1|octobre|2001|julien=oui
date du calendrier julien (changement de mois) 25|octobre|2001|julien=oui
date du calendrier julien (changement d'année) 25|décembre|2001|julien=oui
date de naissance 14|octobre|2001|age=oui (23 ans)

Comparaison avec {{date de naissance}}

  • les fonctions coûteuses sont les mêmes que celles du modèle Date
  • sans l'âge, voir comparaison avec {{Date}}
Motif testé Chaîne testée Modèle Date de naissance Module
simple 1|8|2006|âge=oui (18 ans) (18 ans)
avec qualificatif 1|août|2006|en Suisse|age=oui (18 ans) (18 ans)
date ancienne 2|1|598|age=oui (1426 ans)
l'an dernier 2|1|2012|age=oui (12 ans) (12 ans)
cette année 2|1|2013|age=oui (11 ans) (11 ans)
l'an prochain 2|1|2014|age=oui (10 ans) (10 ans)
sans jour |8|2006|âge=oui (18 ans) (18 ans)
annee seule ||2006|âge=oui

Comparaison avec {{date sport}}

  • lorsqu'il n'y a pas de qualificatif, « en sport » est ajouté pour tester le module.
Motif testé Chaîne testée Modèle Date sport Module Fonctions coûteuses
modèle / module
simple 1|2|1980 1 / 0
avec qualificatif 12|2|1980|en gymnastique 2 / 0
qualificatif avec page possible pour cette année 12|2|1977|en gymnastique 3 / 1
avec qualificatif et âge 12|2|1980|en gymnastique|age=oui (44 ans) (44 ans) 2 / 0
date ancienne 12|2|1843 1 / 0
date récente avec page mensuelle 12|2|2006 1 / 0
date récente avec page mensuelle et qualif 12|2|2006|en gymnastique 2 / 0
date trop récente sans page mensuelle 1|8|2013 1 / 1
date trop récente sans page mensuelle
et qualif avec page annuelle possible
1|8|2013|en gymnastique 3 / 2