Module:Correction syntaxique : Différence entre versions

De Lagny-sur-Marne Wiki
Aller à : navigation, rechercher
m (A protégé « Module:Correction syntaxique » : très utilisé suite à intégration dans Modèle:Section vide ou incomplète ([Modifier=Autoriser uniquement les utilisateurs autopatrolled] (infini) [Renommer=Autoriser uniquement les utilisat...)
(mieux de laisser le tri par défaut, sinon tout est dans "0-9"… seule exception, on affiche en tête avec "+" les pages avec plus de 10 erreurs, cas assez exceptionnel)
 
(6 révisions intermédiaires par le même utilisateur non affichées)
Ligne 2 : Ligne 2 :
  
 
function p.verifierLesArguments(frame)
 
function p.verifierLesArguments(frame)
local passed_args = frame:getParent().args
+
    local passed_args = frame:getParent().args
local modele_args = frame.args
+
    local modele_args = frame.args
local rv = ""
+
    local rv = ""
local nombre = 0
+
    local nombre = 0
 
     for a,b in pairs(passed_args) do
 
     for a,b in pairs(passed_args) do
      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 <nowiki>" .. b .. "</nowiki>) n'existe pas dans le modèle appelé</div>"
+
            rv = rv .. '<div class="erreur_syntaxe_modele" 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
 +
    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
 +
        if (nombre > 10) then
 +
            rv = rv .. "[[" .. categorie .. "|+]]"
 +
        else
 +
            rv = rv .. "[[" .. categorie .. "]]"
 +
        end
 
     end
 
     end
if (nombre > 10) then
 
      rv = rv .. "[[Catégorie:Page appelant un modèle avec un paramètre inconnu|+" .. nombre .. "]]"
 
    elseif (nombre > 0) then
 
      rv = rv .. "[[Catégorie:Page appelant un modèle avec un paramètre inconnu|" .. nombre .. "]]"
 
end
 
 
     return rv
 
     return rv
 
end
 
end
  
 
return p
 
return p

Version actuelle datée du 15 février 2017 à 00:45

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 class="erreur_syntaxe_modele" 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
        if (nombre > 10) then
            rv = rv .. "[[" .. categorie .. "|+]]"
        else
            rv = rv .. "[[" .. categorie .. "]]"
        end
    end
    return rv
end

return p