« Module:Correction syntaxique » : différence entre les versions
Al1 (discuter | contributions) Création d'un template permettant de trouver les modules appelés avec des paramètres inconnus |
Al1 (discuter | contributions) mAucun résumé des modifications |
||
Ligne 4 : | Ligne 4 : | ||
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 = "" |
||
for a,b in pairs(passed_args) do |
for a,b in pairs(passed_args) do |
||
if (modele_args[a] == nil) then |
if (modele_args[a] == nil) then |
Version du 24 mars 2015 à 14:24
Utilisation
Fonctions exportables :
verifierLesArguments(frame)
– vérifie l'existence des arguments passés à un modèle
Exemple
En plaçant dans la source d'un modèle le code suivant, chaque appel du modèle va vérifier la présence d'arguments autres que nom, prenom et age :
{{#invoke: Correction syntaxique | verifierLesArguments | nom = | prenom = | age = }}
Si d'autres arguments sont présents, alors :
- du code caché sera écrit dans la page (visible en consultant la source HTML de la page, ou en affichant via CSS ou JavaScript les éléments
.erreur_syntaxe_modele
) - et la page sera ajoutée dans la catégorie cachée Page appelant un modèle avec un paramètre inconnu.
Configuration
Il est possible de spécifier la catégorie à remplir en ajoutant un paramètre _catégorie
:
{{#invoke: Correction syntaxique | verifierLesArguments | nom = | prenom = | age = | _catégorie = Catégorie:Modèle Foobar avec un paramètre inconnu }}
(la saisie du namespace Catégorie:
peut être omise)
Semble remplir la même fonction que Module:Check for unknown parameters.
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
local p = {}
function p.verifierLesArguments(frame)
local passed_args = frame:getParent().args
local modele_args = frame.args
local rv = ""
for a,b in pairs(passed_args) do
if (modele_args[a] == nil) then
rv = rv .. '<div style="display: none">' .."L'argument " .. a .. " n'existe pas dans le modèle appelé</div>"
rv = rv .. "[[Catégorie:Page appelant un modèle avec un paramètre inconnu]]"
end
end
return rv
end
return p