« Module:Correction syntaxique » : différence entre les versions

De Le Wiki de Lug
Aller à la navigation Aller à la recherche
Modèle>Od1n
(le nowiki ne fonctionnait pas)
Modèle>Od1n
(ici aussi, car on trouve des syntaxes erronées à des points…)
Ligne 9 : Ligne 9 :
         if (modele_args[a] == nil and b ~= "") then
         if (modele_args[a] == nil and b ~= "") then
             nombre = nombre + 1
             nombre = nombre + 1
             rv = rv .. '<div style="display: none">' .. "L'argument " .. a .. " (valeur " .. mw.text.nowiki(b) .. ") n'existe pas dans le modèle appelé</div>"
             rv = rv .. '<div style="display: none">' .. "L'argument " .. mw.text.nowiki(a) .. " (valeur " .. mw.text.nowiki(b) .. ") n'existe pas dans le modèle appelé</div>"
         end
         end
     end
     end

Version du 19 octobre 2016 à 15:43

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

local p = {}

function p.verifierLesArguments(frame)
    local passed_args = frame:getParent().args
    local modele_args = frame.args
    local rv = ""
    local nombre = 0
    for a,b in pairs(passed_args) do
        if (modele_args[a] == nil and b ~= "") then
            nombre = nombre + 1
            rv = rv .. '<div style="display: none">' .. "L'argument " .. mw.text.nowiki(a) .. " (valeur " .. mw.text.nowiki(b) .. ") n'existe pas dans le modèle appelé</div>"
        end
    end
    if (nombre > 0) then
        local categorie
        if (modele_args["_catégorie"] and modele_args["_catégorie"] ~= "") then
            categorie = tostring(mw.title.new(modele_args["_catégorie"], "Catégorie"))
        else
            categorie = "Catégorie:Page appelant un modèle avec un paramètre inconnu"
        end
        local cle_tri
        if (nombre > 10) then
            cle_tri = "+" .. nombre
        else
            cle_tri = nombre
        end
        rv = rv .. "[[" .. categorie .. "|" .. cle_tri .. "]]"
    end
    return rv
end

return p