Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Module:MinecraftConnect » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
Aucun résumé des modifications
Hiob (discussion | contributions)
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 16 : Ligne 15 :
     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
     -- Création d'un simple span avec data attributes (comme PreToClip)
    buttonCount = buttonCount + 1
     local container = mw.html.create('span')
    local uniqueId = 'mc-btn-' .. buttonCount
         :addClass('minecraft-connect-wrapper')
   
         :attr('data-mc-server', adresseComplete)
    -- HTML du bouton avec mw.html
         :attr('data-mc-text', texte)
     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 .. ' 📋')
         :wikitext(texte .. ' 📋')
      
      
    -- IMPORTANT : Retourner avec frame:preprocess pour que le HTML soit interprété
     return tostring(container)
     return frame:preprocess(tostring(button))
end
end


return p
return p

Dernière version du 10 novembre 2025 à 13:51

La documentation pour ce module peut être créée à Module:MinecraftConnect/doc

local p = {}

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)
    
    -- Création d'un simple span avec data attributes (comme PreToClip)
    local container = mw.html.create('span')
        :addClass('minecraft-connect-wrapper')
        :attr('data-mc-server', adresseComplete)
        :attr('data-mc-text', texte)
        :wikitext(texte .. ' 📋')
    
    return tostring(container)
end

return p
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.