Module:Infobox/Fonctions : Différence entre versions
(retouche mainimage pour gérer plus de parmètres, de façon flexible (possibilité d'une table en paramètre), ajout de altparameter et alt) |
(suppression variable globale ; indentation) |
||
Ligne 1 : | Ligne 1 : | ||
-- Fonctions communes à diverses infobox | -- Fonctions communes à diverses infobox | ||
− | local wikidata = require 'Module:Interface Wikidata'.fromLua | + | local localdata = require( 'Module:Infobox/Localdata' ) |
+ | local wikidata = require( 'Module:Interface Wikidata' ).fromLua | ||
local coordfunctions = require 'Module:Infobox/Fonctions/Géolocalisation' | local coordfunctions = require 'Module:Infobox/Fonctions/Géolocalisation' | ||
− | local linguistic = require | + | local linguistic = require 'Module:Linguistique' |
local p = {} | local p = {} | ||
function p.title(icon, style, subtitleparam, subtitlequery) | function p.title(icon, style, subtitleparam, subtitlequery) | ||
return { | return { | ||
− | + | type = 'title', | |
− | + | value = function() | |
− | + | return localdata['nom'] | |
− | + | or linguistic.ucfirst( wikidata.getLabel(localdata.item) or mw.title.getCurrentTitle().text ) | |
− | + | end, | |
− | + | subtitle = function() return localdata[subtitleparam] end, | |
+ | wikidatasubtitle = subtitlequery, | ||
+ | icon = icon, | ||
+ | style = style, | ||
} | } | ||
end | end | ||
Ligne 57 : | Ligne 61 : | ||
function p.website() --texte libre [http://example.org example.org] ou url seule | function p.website() --texte libre [http://example.org example.org] ou url seule | ||
return { | return { | ||
− | + | type = 'mixed', | |
− | + | label = 'Site web', | |
− | + | plurallabel = 'Sites web', | |
− | + | wikidata = {entity = localdata.item, displayformat = 'weblink', conjtype = '<br />', property = 'P856'}, | |
− | + | value = | |
− | + | function() | |
− | + | local siteurl = localdata['site web'] or localdata['site_web'] or localdata['site officiel'] | |
− | + | local sitename = localdata['nom site'] | |
− | + | return require("Module:Weblink").makelink(siteurl, sitename) | |
− | + | end, | |
− | + | } | |
end | end | ||
Version du 15 septembre 2016 à 00:16
La documentation pour ce module peut être créée à Module:Infobox/Fonctions/doc
-- Fonctions communes à diverses infobox local localdata = require( 'Module:Infobox/Localdata' ) local wikidata = require( 'Module:Interface Wikidata' ).fromLua local coordfunctions = require 'Module:Infobox/Fonctions/Géolocalisation' local linguistic = require 'Module:Linguistique' local p = {} function p.title(icon, style, subtitleparam, subtitlequery) return { type = 'title', value = function() return localdata['nom'] or linguistic.ucfirst( wikidata.getLabel(localdata.item) or mw.title.getCurrentTitle().text ) end, subtitle = function() return localdata[subtitleparam] end, wikidatasubtitle = subtitlequery, icon = icon, style = style, } end function p.mainimage(args, defaultimage) if type( args ) ~= 'table' then args = { cat = args, defaultimage = defaultimage } end return { type = 'images', imageparameters = {'image'}, defaultimages = args.defaultimage, defaultimagelink = 'Aide:Insérer une image', sizeparameter = 'taille image', uprightparameter = 'upright', defaultupright = args.upright, defaultsize = args.size, maintenancecat = args.cat or 'Article à illustrer', captionparameter = 'légende', altparameter = args.altparameter or 'alternative image', defaultalt = args.alt, defaultimagealt = args.defaultimagealt, wikidata = args.wikidata or {property = 'P18'}, numval = 1, } end function p.logo(upright) return { type = 'images', imageparameters = {'logo'}, -- defaultimage = {}, -- maintenancecat = captionparameter = 'légende logo', property = 'P154', defaultupright = upright or '0.6', uprightparameter = 'upright logo', sizeparameter = 'taille logo', numval = 1, } end -- Liens externes function p.website() --texte libre [http://example.org example.org] ou url seule return { type = 'mixed', label = 'Site web', plurallabel = 'Sites web', wikidata = {entity = localdata.item, displayformat = 'weblink', conjtype = '<br />', property = 'P856'}, value = function() local siteurl = localdata['site web'] or localdata['site_web'] or localdata['site officiel'] local sitename = localdata['nom site'] return require("Module:Weblink").makelink(siteurl, sitename) end, } end -- Fonctins de géolocalisation function p.country(default) return coordfunctions.country(default) end function p.geoloc(params) return coordfunctions.geoloc(params) end function p.coordinates(params) return coordfunctions.coordinates(params) end function p.locationmap(params) return coordfunctions.locationmap(params) end return p