« Module:MinecraftConnect » : différence entre les versions
De Nefald
Autres actions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 1 : | Ligne 1 : | ||
local p = {} | local p = {} | ||
local buttonCount = 0 | |||
function p.button(frame) | function p.button(frame) | ||
| Ligne 15 : | Ligne 16 : | ||
local adresseComplete = (port == '25565') and server or (server .. ':' .. port) | local adresseComplete = (port == '25565') and server or (server .. ':' .. port) | ||
-- Génération d'un ID unique | -- Génération d'un ID unique | ||
local uniqueId = 'mc-btn-' .. | buttonCount = buttonCount + 1 | ||
local uniqueId = 'mc-btn-' .. buttonCount | |||
-- HTML du bouton | -- HTML du bouton avec mw.html | ||
local | local button = mw.html.create('button') | ||
:addClass('mw-ui-button mw-ui-progressive minecraft-connect-btn') | :addClass('mw-ui-button mw-ui-progressive minecraft-connect-btn') | ||
:attr('type', 'button') | :attr('type', 'button') | ||
:attr('id', uniqueId) | :attr('id', uniqueId) | ||
:attr('data-copy-text', adresseComplete) | :attr('data-copy-text', adresseComplete) | ||
:attr('title', 'Cliquer pour copier : ' .. | :attr('title', 'Cliquer pour copier : ' .. adresseComplete) | ||
:wikitext | :wikitext(texte .. ' 📋') | ||
return tostring( | -- IMPORTANT : Retourner avec frame:preprocess pour que le HTML soit interprété | ||
return frame:preprocess(tostring(button)) | |||
end | end | ||
return p | return p | ||
Version du 10 novembre 2025 à 13:50
La documentation pour ce module peut être créée à Module:MinecraftConnect/doc
local p = {}
local buttonCount = 0
function p.button(frame)
-- Récupération des arguments
local args = frame.args
if not args[1] and frame:getParent() then
args = frame:getParent().args
end
local server = mw.text.trim(args[1] or args.serveur or 'play.exemple.fr')
local port = mw.text.trim(args[2] or args.port or '25565')
local texte = mw.text.trim(args[3] or args.texte or "Copier l'adresse")
-- Construction de l'adresse complète
local adresseComplete = (port == '25565') and server or (server .. ':' .. port)
-- Génération d'un ID unique
buttonCount = buttonCount + 1
local uniqueId = 'mc-btn-' .. buttonCount
-- HTML du bouton avec mw.html
local button = mw.html.create('button')
:addClass('mw-ui-button mw-ui-progressive minecraft-connect-btn')
:attr('type', 'button')
:attr('id', uniqueId)
:attr('data-copy-text', adresseComplete)
:attr('title', 'Cliquer pour copier : ' .. adresseComplete)
:wikitext(texte .. ' 📋')
-- IMPORTANT : Retourner avec frame:preprocess pour que le HTML soit interprété
return frame:preprocess(tostring(button))
end
return p