Aller au contenu

Discussion modèle:Maintenance armorial

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une page de Wikipédia, l'encyclopédie libre.
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons

Explication du code du modèle

[modifier le code]

Principes généraux

[modifier le code]

Ce modèle, dont le code est reproduit ci dessous, fonctionne comme les modèles {{Portail}} ou {{Ébauche}}, qui acceptent un nombre variable de paramètre dans une ordre variable.

Il utilise le modèle {{Méta bandeau d'avertissement}} et accepte jusqu'à six paramètres. A chacun des six paramètres possibles correspond une sous page du modèle qui spécifient les options :

Pourquoi y a-t-il sept paramètres alors que le modèle n'en accepte que six ?
Le paramètre "référence inconnue" indique que quelques blasons seulement n'ont pas de source, alors que le paramètre "à sourcer" est à utiliser quand la majorité des blasons n'ont pas de source. Il y a peu de chances pour que ces deux paramètres soient utilisés en même temps

Le code de ce modèle se décompose en trois parties :

  1. la vérification des paramètres
  2. l'utilisation de {{Méta bandeau d'avertissement}}
  3. Quelques lignes de mise en forme (documentation, catégorisation du modèle, ...)

Pour une question de (relative) lisibilité du code, des sauts de lignes sont insérés. Mais pour éviter que ces sauts soit incluse dans les pages utilisées dans le modèle, elle sont mises en commentaire.

La vérification des paramètres

[modifier le code]

Cette première partie vérifie que les paramètres sont bien existant, et qu'il n'y en a pas plus de six. C'est une série de if qui vérifient l'existence de la sous page décrivant le paramètre et affiche un message si ce n'est pas le cas.

Exemple :

  1. j'insère ceci dans une page : {{Maintenance armorial|jpeg}}.
  2. le code de la première partie constate l'inexistence de la sous page Modèle:Maintenance armorial/paramètres jpeg
  3. le modèle affiche :
Erreur dans {{Maintenance armorial}} : le cas « jpeg » n’est pas défini (cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement, forme).

S'il y a plus de six paramètres, cela donne ceci :

Erreur dans {{Maintenance armorial}} : au maximum six thèmes sont admis.

<includeonly><!--
*** VÉRIFICATIONS DE FORME ***
-->{{#if:{{{1|}}} | {{#ifexist: Modèle:Maintenance armorial/paramètres {{{1|}}} | | <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{1}}} » n’est pas défini (cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div>}} }}<!--
-->{{#if:{{{2|}}}<!--
-->| {{#ifexist: Modèle:Maintenance armorial/paramètres {{{2|}}}<!--
-->| {{#ifeq: {{Maintenance armorial/paramètres {{{2|}}}|type}} | {{Maintenance armorial/paramètres|type}} || <div class="error">Erreur dans {{m|Maintenance armorial}} : le thème « {{{2}}} » doit apparaitre en tête de liste.</div> }}<!--
-->| <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{2}}} » n’est pas défini (cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div><!--
-->}} }}<!--
-->{{#if:{{{3|}}}<!--
-->| {{#ifexist: Modèle:Maintenance armorial/paramètres {{{3|}}}<!--
-->| {{#ifeq: {{Maintenance armorial/paramètres {{{3|}}}|type}} | {{Maintenance armorial/paramètres|type}} || <div class="error">Erreur dans {{m|Maintenance armorial}} : le thème « {{{3}}} » doit apparaitre en tête de liste.</div> }}<!--
-->| <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{3}}} » n’est pas défini (cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div><!--
-->}} }}<!--
-->{{#if:{{{4|}}}<!--
-->| {{#ifexist: Modèle:Maintenance armorial/paramètres {{{4|}}}<!--
-->| {{#ifeq: {{Maintenance armorial/paramètres {{{4|}}}|type}} | {{Maintenance armorial/paramètres|type}} || <div class="error">Erreur dans {{m|Maintenance armorial}} : le thème « {{{4}}} » doit apparaitre en tête de liste.</div> }}<!--
-->| <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{4}}} » n’est pas défini (cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div><!--
-->}} }}<!--
-->{{#if:{{{5|}}}<!--
-->| {{#ifexist: Modèle:Maintenance armorial/paramètres {{{5|}}}<!--
-->| {{#ifeq: {{Maintenance armorial/paramètres {{{5|}}}|type}} | {{Maintenance armorial/paramètres|type}} || <div class="error">Erreur dans {{m|Maintenance armorial}} : le thème « {{{5}}} » doit apparaitre en tête de liste.</div> }}<!--
-->| <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{5}}} » n’est pas défini(cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div><!--
-->}} }}<!--
-->{{#if:{{{6|}}}<!--
-->| {{#ifexist: Modèle:Maintenance armorial/paramètres {{{6|}}}<!--
-->| {{#ifeq: {{Maintenance armorial/paramètres {{{6|}}}|type}} | {{Maintenance armorial/paramètres|type}} || <div class="error">Erreur dans {{m|Maintenance armorial}} : le thème « {{{6}}} » doit apparaitre en tête de liste.</div> }}<!--
-->| <div class="error">Erreur dans {{m|Maintenance armorial}} : le cas « {{{6}}} » n’est pas défini(cas définis : à sourcer, peu nombreux, référence inconnue, conflit, bitmap, figure vide, blasonnement).</div><!--
-->}} }}<!--
-->{{#if:{{{7|}}} | <div class="error">Erreur dans {{m|Maintenance armorial}} : au maximum six thèmes sont admis.</div>}}<!--

Voici maintenant l'appel du modèle {{Méta bandeau d'avertissement}} avec pour particularité le paramètre texte, qui concatène mes différents messages des appels utilisés par {{Maintenance armorial}}

*** BANDEAU ***
-->{{Méta bandeau d'avertissement<!--
-->| niveau = ébauche<!--
-->| icône-complexe = [[Fichier:Blason Projet-Blasons.svg|45x35px]] <!--
-->| titre = Cet armorial peut être amélioré car il comporte les défauts suivants :<!--
-->| texte = {{Espace}}
{{#if:{{{1|}}} |* {{Maintenance armorial/paramètres {{{1}}}|info}}.
}}{{#if:{{{2|}}} |* {{Maintenance armorial/paramètres {{{2}}}|info}}.
}}{{#if:{{{3|}}} |* {{Maintenance armorial/paramètres {{{3}}}|info}}.
}}{{#if:{{{4|}}} |* {{Maintenance armorial/paramètres {{{4}}}|info}}.
}}{{#if:{{{5|}}} |* {{Maintenance armorial/paramètres {{{5}}}|info}}.
}}
Vous pouvez partager vos connaissances en l’améliorant ('''[[Aide:Comment modifier une page|comment ?]]''') selon les recommandations du [[Projet:Blasons|Projet Blasons]].<!--
-->}}<!--

Une autre fonctionnalité du modèle est de catégoriser les pages utilisant ce modèle dans des catégories de maintenance. Cette fonctionnalité est assurée par le code qui suit.

*** CATÉGORISATION ***
-->{{#if:{{{nocat|}}} | | <!-- catégorise seulement si « {{{nocat|}}} » est vide.
-->{{#switch:{{NAMESPACE}} | {{TALKSPACE}} = | {{ns:user}} = | #default = <!-- ne catégorise pas les pages de discussion ni les pages utilisateur
-->{{#if:{{{1|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{1}}}|catégorie}}]] | [[Catégorie:Wikipédia:Maintenance armorial]] }}<!--
-->{{#if:{{{2|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{2}}}|catégorie}}]] }}<!--
-->{{#if:{{{3|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{3}}}|catégorie}}]] }}<!--
-->{{#if:{{{4|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{4}}}|catégorie}}]] }}<!--
-->{{#if:{{{5|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{5}}}|catégorie}}]] }}<!--
-->{{#if:{{{6|}}} | [[Catégorie:Wikipédia:{{Maintenance armorial/paramètres {{{6}}}|catégorie}}]]
}}<!--
-->}} }}</includeonly><!--

Quelques lignes de mise en forme

[modifier le code]

Le code se termine ensuite par la documentation et la catégorisation du modèle, le tout entre les balises <noinclude></noinclude> pour éviter que cela apparaisse dans les pages utilisant le modèle.

*** DOCUMENTATION ***
--><noinclude>{{/Documentation}}</noinclude>

<noinclude>[[Catégorie:Projet:Blasons Maintenance]]</noinclude>