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:Règle » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
Aucun résumé des modifications
Hiob (discussion | contributions)
Aucun résumé des modifications
Ligne 8 : Ligne 8 :
if numero == "" then return "" end
if numero == "" then return "" end


-- Détection du niveau
local _, points = string.gsub(numero, "%.", "")
local _, points = string.gsub(numero, "%.", "")
local niveau = math.min(points + 1, 3)
local niveau = math.min(points + 1, 3)
-- Ancre
local ancre = "r-" .. string.gsub(numero, "%.", "-")
local ancre = "r-" .. string.gsub(numero, "%.", "-")


-- Parse le texte (gère les templates imbriqués)
-- Wikitext pur, pas de HTML
local texte_parse = frame:preprocess(texte)
local lien = '[[#' .. ancre .. '|§ ' .. numero .. ']]'
 
local sortie = lien .. ' ' .. texte
-- Retour via un tag <div> parsé par MediaWiki
-- On utilise frame:preprocess sur du wikitext contenant du HTML
local html = '<div class="regle-item regle-niveau-' .. niveau .. '" id="' .. ancre .. '">'
          .. '<a class="regle-numero" href="#' .. ancre .. '">§&#160;' .. numero .. '</a>'
          .. '<span class="regle-texte">' .. texte_parse .. '</span>'
          .. '</div>'


return frame:preprocess(html)
return frame:preprocess(sortie)
end
end


return p
return p

Version du 22 février 2026 à 11:43

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

local p = {}

function p.regle(frame)
local args   = frame:getParent().args
local numero = mw.text.trim(args[1] or "")
local texte  = mw.text.trim(args[2] or "")

if numero == "" then return "" end

local _, points = string.gsub(numero, "%.", "")
local niveau = math.min(points + 1, 3)
local ancre = "r-" .. string.gsub(numero, "%.", "-")

-- Wikitext pur, pas de HTML
local lien = '[[#' .. ancre .. '|§&nbsp;' .. numero .. ']]'
local sortie = lien .. ' ' .. texte

return frame:preprocess(sortie)
end

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