« Module:Date » : différence entre les versions
Contenu supprimé Contenu ajouté
_modeleDateParam : les paramètres peuvent être des 'number' (pour les appel depuis un autre module) ; validationJourMoisAnnee : suppresssion de tostring inutile, et correction double déclaration. |
modeleDate : suppression de la gestion des décalages (incohérent avec les TemplateData, risque de bugs ici ou dans d'autre modules). |
||
Ligne 394 :
end
-- vérification de l'absence d'un décalage
if annee and annee < 13 and not jour and ( tonumber( bmois ) or (not mois and tonumber( args[4] ) ) ) then
return false, Outils.erreur( 'année improbable (' .. annee .. ')' )
end▼
local resultat = {
jour = jour,
Ligne 405 ⟶ 410 :
end
function fun.determinationDecalage(
local decalage = 0▼
function fun._modeleDateParam( args )
local arg1, arg2, arg3 = trim( args[1] ), trim( args[2] ), trim( args[3] )▼
elseif arg1 and arg3 == nil and ( arg1:match( '[^ ./-][ ./-]+[^ ./-]' ) or arg2 == nil or arg2:match( '[^ ./-][ ./-]+[^ ./-]' ) ) then▼
-- l'année est dans le premier paramètre▼
end▼
▲ end
end
function fun.
local s
▲ -- sépare le signe moins final éventuel signifiant que le paramètre ne soit pas être affiché.
if p then▼
▲ local d, s = p:match( '^(.-)(%-?)$' )
▲ return d
end
return p, ( s == '-' or nil )
end
local
▲
▲ end
else▼
local param, masquerM, masquerA
param = { args[1] or args.jour }
param[2],
param[3],
param[4] = masquerParam( args[4] )
test, resultat = fun.validationJourMoisAnnee( param )
▲ test, resultat = fun.separationJourMoisAnnee( args[1] )
▲ else
end
end
▲ resultat.qualificatif = trim( args[ 4 + decalage ] )
▲ resultat.masquerAnnee = resultat.masquerAnnee or mA
▲ resultat.masquerMois = resultat.masquerMois or mM
▲ end
return test, resultat
end
Ligne 487 ⟶ 464 :
function fun.modeleDate( frame )
local args = Outils.extractArgs( frame )
local
local
if test then
for n, v in pairs( resultat ) do▼
qualificatif = 'qualificatif',
age = 'âge', ['âge'] = 'âge',
naissance = 'naissance', mort = 'mort', ['décès'] = 'mort',
julien = 'julien', avJC = 'avJc',
nolinks = 'nolinks',
}
params[v] = params[v] or args[n]
end
resultat = fun._modeleDate(
else
local namespaceCategorisation = { [0] = true, [4] = true, [10] = true, [14] = true, [100] = true }
Ligne 504 ⟶ 484 :
cat = '[[Catégorie:Page utilisant le modèle date avec une syntaxe erronée]]'
end
resultat = params .. cat
end
return
end
|