Module:InfoboxBuilder/Documentation

De Baripedia
< Module:InfoboxBuilder
Révision datée du 14 janvier 2014 à 00:02 par Arthur (discussion | contributions) (1 version)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Ce module permet de créer des infobox à partir d'un tableau de configuration situé dans la page Module:InfoboxBuilder/NOM_DE_L'INFOBOX. Utilise Module:Infobox.

Briques d'Infobox

Briques élémentaires

Voir Module:InfoboxBuilder/Helpers.

Briques spécifiques

Voir Module:InfoboxBuilder/Common queries.

Exemples

Voir module:InfoboxBuilder/Composé chimique et l'application sur undéc-1-ène.

Configuration: Module:InfoboxBuilder/Philosophe

<source lang=lua> local helper = require "Module:InfoboxBuilder/Helpers" local common = require "Module:InfoboxBuilder/Common queries"

return {

   parts = {

helper.title_n({ value = 'nom', icon = 'auteur', background = function(frame) if frame.args['couleur'] then return frame.args['couleur'] else return '#B0C4DE' end end }),

       {
           type = 'text',

text = function( frame ) if frame.args['région'] then return '

' .. frame.args['région'] .. '

' end end

       },
       {
           type = 'text',

text = function( frame ) if frame.args['époque'] then return '

' .. frame.args['époque'] .. '

' end end

       },
       common.mainimage('image', 'légende'),
       helper.table('hidden',
               common.birth('naissance', 'lieu de naissance'),
               common.death('décès', 'lieu de décès'),
               common.nationality('nationalité'),
               helper.mixed('Langue', 'langue'),
               -- version paramètres nommés
               helper.mixed_n{ label = 'Titre', params = 'titre'},
               helper.mixed('École/tradition', 'tradition philosophique'),
               -- version paramètres nommés
               helper.mixed_n{ label = 'Principaux intérêts', params = 'principaux intérêts'},
               helper.mixed('Idées remarquables', 'idées remarquables'),
               helper.mixed('Œuvres principales', 'œuvres principales'),
               -- utilisation paramètres nommés + valeur par défaut
               common.influencedby('influencé par'),
               common.influenced('a influencé'),
               helper.mixed('Célèbre pour', 'célèbre pour'),
               -- utilisation paramètres nommés + valeur par défaut
               helper.mixed_n{ label = 'Citation'},
               helper.mixed('Adjectifs dérivés', 'adjectifs dérivés')
           ),
   }

} </source>

Contenu du modèle

{{#invoke:InfoboxBuilder|build|nom=Philosophe}}

Voir aussi

Documentation

Le module situé dans la page Module:InfoboxBuilder/NOM_DE_L'INFOBOX doit retourner un tableau de la forme suivante (toutes les entrés sont optionnelles sauf précision contraire et avec leur valeur par défaut) :

Tableau principal

<source lang=lua> {

'isPart' = false, -- Bolléen permettant de désactiver la sortie de la

contenant l'infobox. Permet de faire des infobox modulaires
  'typeInfobox' = , -- string indiquant le type d'infobox, par exemple 'infobox_v3' pour une infobox V3 ('infobox_v3' par défaut)
  'styleInfobox' = , -- string indiquant les différent paramètres de style appliqués à l'infobox
  'parts' = { COMPOSANTS } --Contenu de l'infobox

} </source>

Composants

title

Permet d'afficher le titre de l’infobox. <source lang=lua> {

  'type' = 'title', --Type du composant
'class' = , --Class porté par le

contenant le titre 'icon' = , --Icône de titre gérée via Common.css 'params' = nil, --Paramètres à utiliser pour le titre. peut être une table trié par ordre décroissant de priorité 'text' = --Si string titre par défaut, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le titre (court-circuite params) 'background' = --Couleur de font du titre } </source>

images

Permet d'afficher une ou deux images côte à côte. <source lang=lua> {

  'type' = 'images', --Type du composant
  'images' = { --Paramètres pour chacune des images, si le nom d'une des images ne peux être trouvé, l'image n’est pas affichée
      {
          'params' = nil, --Paramètre(s) à utiliser pour obtenir le nom de l'image
          'name' = , --Si string nom de l'image par défaut, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le nom (court-circuite params). Si la fonction retourne nil ou , rien n’est affiché
          'alt' = , --Alternative textuelle de l'image
          'upright' = 1 --upright pour l'image. par défaut 1 / nombre d'images
      }
  },
  'legendParams' =  --Paramètre(s) correspondant à la légende
  'legend' =  --Si string légende par défaut, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir la légende. Si la fonction retourne nil ou , rien n’est affiché

} </source>

text

Permet d'ajouter du wikitext. <source lang=lua> {

  'type' = 'text', --Type du composant
  'text' =  --Si string texte à ajouter, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le wikitext

} </source>

table

Permet d'ajouter un tableau. <source lang=lua> {

  'type' = 'table', --Type du composant
  'params' = nil, --Paramètres à utiliser pour le titre du tableau
  'text' = , --Si string titre du tableau par défaut, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le titre (court-circuite params)
'class' = , --Class porté par le contenant le titre 'rows' = { LIGNES } } </source>

lignes

mixed

Cette structure permet de créer une ligne composée de 2 cellules : la première contenant la clé ou le label, la deuxième contenant la valeur.

label valeur

<source lang=lua> {

  'type' = 'mixed', --Type de la ligne
  'label' = , --Clef de la ligne. Obligatoire.
  'params' = nil, --Paramètre à utiliser pour le titre. peut être une table trié par ordre décroissant de priorité
  'property' = , --String de type Pxxx où x est un nombre. Correspond à l'identifiant de la propriété de Wikidata stockant la valeur liée au label. Si une valeur existe sur l'article, cette valeur à la priorité, Si aucune valeur n'est fournie, le code va chercher la valeur correspondante sur Wikidata.
  'hidden' = , -- valeur possible 1 ou 0. Permet de masquer l'affichage de la valeur dans un menu déroulant. Utile dans la cas d'une valeur très longue pour réduire la taille de l'infobox en mode normal
  'weblink' = , -- String correspondant à un lien web absolu qui permet de créer un hyperlien avec la valeur 
  'value' = , --Si string valeur par défaut, si function, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le titre (court-circuite params). Si la fonction retourne nil ou , la ligne n'est pas affichée
  'styleHeader' = , -- String ou table décrivant les éléments de style applicable au label
  'styleValue' = , -- String ou table décrivant les éléments de style applicable à la valeur

} </source>

Exemple (sans intérêt) avec l'usage d'une fonction : <source lang=lua> {

  'type' = 'mixed',
  'label' = 'Test',
  'value' = function( frame ) return frame.args.test end

} </source>

doubled

Cette structure permet de créer deux lignes composées chacune d'une cellule : la cellule du haut contient la clé ou le label et celle du dessous contient la valeur.

label
valeur

<source lang=lua> {

  'type' = 'mixed', --Type de la ligne
  'label' = , --Clef de la ligne. Obligatoire.
  'params' = nil, --Paramètre à utiliser pour le titre. peut être une table trié par ordre décroissant de priorité
  'property' = , --String de type Pxxx où x est un nombre. Correspond à l'identifiant de la propriété de Wikidata stockant la valeur liée au label. Si une valeur existe sur l'article, cette valeur à la priorité, Si aucune valeur n'est fournie, le code va chercher la valeur correspondante sur Wikidata.
  'value' = , --Si string valeur par défaut, si fonction, fonction, prenant en paramètre le frame correspondant à l'article, exécutée pour obtenir le titre (court-circuite params). Si la fonction retourne nil ou , la ligne n'est pas affichée
  'styleHeader' = , -- String ou table décrivant les éléments de style applicable au label
  'styleValue' = , -- String ou table décrivant les éléments de style applicable à la valeur

} </source>