« Module:Joueur » : différence entre les versions
De Nefald
Autres actions
mAucun résumé des modifications |
Aucun résumé des modifications |
||
| (10 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 2 : | Ligne 2 : | ||
function p.main(frame) | 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 | end | ||
return p | return p | ||