Module:Talkpageheader
Apparence
[voir] [modifier] [historique] [purger]
Ce module est utilisé par plusieurs messages système.
Liste non exhaustive :
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
local p = {}
function p.main()
local page = mw.title.getCurrentTitle()
local base = page.text
base = mw.ustring.gsub(base, '/Suppression$', '')
base = mw.ustring.gsub(base, '/Neutralité$', '')
base = mw.ustring.gsub(base, '/Droit d\'auteur$', '')
base = mw.ustring.gsub(base, '/Article de qualité$', '')
base = mw.ustring.gsub(base, '/Bon article$', '')
base = mw.ustring.gsub(base, '/Portail de qualité$', '')
base = mw.ustring.gsub(base, '/Bon portail$', '')
base = mw.ustring.gsub(base, '/Lumière sur$', '')
base = mw.ustring.gsub(base, '/À faire$', '')
base = mw.ustring.gsub(base, '/[Aa]rchive.*$', '')
local subjectPage
if page.subjectNsText == '' then
subjectPage = base
else
subjectPage = page.subjectNsText .. ':' .. base
end
local talkPage
local namespace = mw.site.namespaces[page.namespace]
if namespace.talk then
talkPage = namespace.talk.name .. ':' .. base
else
talkPage = namespace.name .. ':' .. base
end
local pageAdQ
local pageBA
local texteAdQ
local texteBA
if page.subjectNsText == 'Portail' or page.subjectNsText == 'Projet' then
pageAdQ = 'Discussion Portail:' .. base .. '/Portail de qualité'
pageBA = 'Discussion Portail:' .. base .. '/Bon portail'
texteAdQ = 'Portail de qualité'
texteBA = 'Bon portail'
else
pageAdQ = talkPage .. '/Article de qualité'
pageBA = talkPage .. '/Bon article'
texteAdQ = 'Article de qualité'
texteBA = 'Bon article'
end
function lien(cible, texte)
local pageLiee = mw.title.new(cible)
if not pageLiee then
return '<span title="Une erreur empêche l\'existence de cette page">' .. texte .. '</span>'
end
if pageLiee.exists then
return '[[' .. cible .. '|' .. texte .. ']]'
else
return '<span title="Cette page n\'existe pas">' .. texte .. '</span>'
end
end
local lis = {
'<li>' .. lien( talkPage .. '/Suppression' , 'Suppression' ) .. '</li>',
'<li>' .. lien( talkPage .. '/Neutralité' , 'Neutralité' ) .. '</li>',
'<li>' .. lien( talkPage .. '/Droit d\'auteur' , 'Droit d\'auteur' ) .. '</li>',
'<li>' .. lien( pageAdQ , texteAdQ ) .. '</li>',
'<li>' .. lien( pageBA , texteBA ) .. '</li>',
'<li>' .. lien( 'Wikipédia:Lumière sur/' .. subjectPage , 'Lumière sur' ) .. '</li>',
'<li>' .. lien( talkPage .. '/À faire' , 'À faire' ) .. '</li>',
'<li>' .. lien( talkPage .. '/Archives' , 'Archives' ) .. '</li>',
}
return '<div id="talkpageheader" class="fieldsetlike">'
.. '<div class="legendlike">'
.. '<span class="legendtextlike">Autres discussions [[Spécial:Index/' .. talkPage .. '/|[liste]]]</span>'
.. '</div>'
.. '<ul>'
.. table.concat(lis, ' ')
.. '</ul>'
.. '</div>'
end
return p