« Module:Joueur » : différence entre les versions
De Nefald
Autres actions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| (Une version intermédiaire par le même utilisateur non affichée) | |||
| Ligne 11 : | Ligne 11 : | ||
local position = mw.text.trim(args['position'] or '') | local position = mw.text.trim(args['position'] or '') | ||
local mode = mw.text.trim(args['mode'] or '') | local mode = mw.text.trim(args['mode'] or '') | ||
local lien = mw.text.trim(args['lien'] or '') | |||
if pseudo == '' then | if pseudo == '' then | ||
return '<span class="joueur-erreur">Pseudo requis</span>' | return '<span class="joueur-erreur">Pseudo requis</span>' | ||
| Ligne 19 : | Ligne 20 : | ||
elseif position == 'gauche' then | elseif position == 'gauche' then | ||
posClass = ' joueur-gauche' | posClass = ' joueur-gauche' | ||
end | |||
local lienClass = '' | |||
if lien ~= '' then | |||
lienClass = ' joueur-lien' | |||
end | end | ||
local url_avatar = 'https://minotar.net/avatar/' .. mw.uri.encode(pseudo, 'PATH') .. '/' .. taille .. '?.png' | local url_avatar = 'https://minotar.net/avatar/' .. mw.uri.encode(pseudo, 'PATH') .. '/' .. taille .. '?.png' | ||
| Ligne 34 : | Ligne 39 : | ||
end | end | ||
local result = {} | local result = {} | ||
table.insert(result, '<div class="joueur-banniere plainlinks' .. posClass .. '" style="--joueur-h:' .. taille .. 'px">') | table.insert(result, '<div class="joueur-banniere plainlinks' .. posClass .. lienClass .. '" style="--joueur-h:' .. taille .. 'px">') | ||
if lien ~= '' then | |||
table.insert(result, '[[' .. lien .. '|<span class="joueur-lien-overlay"></span>]]') | |||
end | |||
table.insert(result, '<div class="joueur-avatar">') | table.insert(result, '<div class="joueur-avatar">') | ||
table.insert(result, avatar) | table.insert(result, avatar) | ||
Dernière version du 20 février 2026 à 15:38
La documentation pour ce module peut être créée à Module:Joueur/doc
local p = {}
function p.main(frame)
local args = frame:getParent().args
local pseudo = mw.text.trim(args[1] or '')
local affichage = mw.text.trim(args['affichage'] or pseudo)
local alias = mw.text.trim(args['alias'] or '')
local grade = mw.text.trim(args['grade'] or '')
local texte = mw.text.trim(args['texte'] or '')
local taille = mw.text.trim(args['taille'] or '60')
local position = mw.text.trim(args['position'] or '')
local mode = mw.text.trim(args['mode'] or '')
local lien = mw.text.trim(args['lien'] or '')
if pseudo == '' then
return '<span class="joueur-erreur">Pseudo requis</span>'
end
local posClass = ''
if position == 'droite' then
posClass = ' joueur-droite'
elseif position == 'gauche' then
posClass = ' joueur-gauche'
end
local lienClass = ''
if lien ~= '' then
lienClass = ' joueur-lien'
end
local url_avatar = 'https://minotar.net/avatar/' .. mw.uri.encode(pseudo, 'PATH') .. '/' .. taille .. '?.png'
local avatar = '[' .. url_avatar .. ' ' .. url_avatar .. ']'
if mode == 'avatar' then
local result = {}
table.insert(result, '<div class="joueur-avatar-seul plainlinks' .. posClass .. '" style="--joueur-h:' .. taille .. 'px">')
table.insert(result, avatar)
table.insert(result, '</div>')
return frame:preprocess(table.concat(result))
end
local aliasHtml = ''
if alias ~= '' then
aliasHtml = ' <span class="joueur-alias">' .. alias .. '</span>'
end
local result = {}
table.insert(result, '<div class="joueur-banniere plainlinks' .. posClass .. lienClass .. '" style="--joueur-h:' .. taille .. 'px">')
if lien ~= '' then
table.insert(result, '[[' .. lien .. '|<span class="joueur-lien-overlay"></span>]]')
end
table.insert(result, '<div class="joueur-avatar">')
table.insert(result, avatar)
table.insert(result, '</div>')
table.insert(result, '<div class="joueur-contenu">')
table.insert(result, '<div class="joueur-nom">' .. affichage .. aliasHtml .. '</div>')
if grade ~= '' then
table.insert(result, '<div class="joueur-grade">[[' .. grade .. ']]</div>')
end
if texte ~= '' then
table.insert(result, '<div class="joueur-texte">' .. texte .. '</div>')
end
table.insert(result, '</div>')
table.insert(result, '</div>')
return frame:preprocess(table.concat(result))
end
return p