« Module:Infobox/Fonctions » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 9 : | Ligne 9 : | ||
type = 'title', | type = 'title', | ||
value = function(localdata, item) return localdata['nom'] or wikidata._getLabel(item) or mw.title.getCurrentTitle().text end, | value = function(localdata, item) return localdata['nom'] or wikidata._getLabel(item) or mw.title.getCurrentTitle().text end, | ||
subtitle = 'nom local' | subtitle = function(localdata, item) | ||
if localdata['nom local'] then | |||
return localdata['nom local'] | |||
end | |||
if not item then | |||
return nil | |||
end | |||
local subtitles = wikidata.getClaims({item=item, property = 'P1448'}) | |||
local subtitlestr = '' | |||
if not subtitles then return | |||
nil | |||
end | |||
local title = localdata['nom'] or wikidata._getLabel(item) or mw.title.getCurrentTitle().text | |||
local langspan = require('Module:Langue').langue | |||
local dones = {} | |||
local text, textlang | |||
for i, j in pairs(subtitles) do | |||
if j.mainsnak.snaktype then | |||
text, textlang = j.mainsnak.datavalue.value.text, j.mainsnak.datavalue.value.language | |||
end | |||
if text ~= title and not dones[text] then | |||
subtitlestr = subtitlestr .. langspan{textlang, text} .. '<br />' | |||
dones[text]= true | |||
end | |||
end | |||
return subtitlestr | |||
end | |||
, | |||
class = class, | class = class, | ||
} | } |
Version du 29 septembre 2014 à 15:03
-- Fonctions communes à diverses infobox local wikidata = require('Module:Wikidata') local d = require('Module:Wikidata/Dates')
local p = {}
function p.title()
return {
type = 'title',
value = function(localdata, item) return localdata['nom'] or wikidata._getLabel(item) or mw.title.getCurrentTitle().text end,
subtitle = function(localdata, item)
if localdata['nom local'] then
return localdata['nom local']
end
if not item then
return nil
end
local subtitles = wikidata.getClaims({item=item, property = 'P1448'})
local subtitlestr =
if not subtitles then return
nil
end
local title = localdata['nom'] or wikidata._getLabel(item) or mw.title.getCurrentTitle().text
local langspan = require('Module:Langue').langue
local dones = {}
local text, textlang
for i, j in pairs(subtitles) do
if j.mainsnak.snaktype then
text, textlang = j.mainsnak.datavalue.value.text, j.mainsnak.datavalue.value.language
end
if text ~= title and not dones[text] then
subtitlestr = subtitlestr .. langspan{textlang, text} .. '
'
dones[text]= true
end
end
return subtitlestr
end
,
class = class,
}
end
function p.mainimage(cat) return { type = 'images', imageparameters = {'image'}, defaultimage = {defaultimage}, maintenancecat = function(localdata, item, params) if (cat == '-') or localdata['image'] == 'non' then return nil elseif cat then return cat else return 'Article à illustrer' end end, captionparameter = 'légende', defaultcaption = function() return defaultcaption end, property = 'P18', numval = 1, } end
-- Liens externes
function p.website() --texte libre example.org ou url seule
return {
type = 'mixed', label = "Site web", wikidata = wikidata.formatStatements({property='p856', first = "true"}), value = function() return require("Module:Weblink").makelink(localdata['site web']) end }
end
return p