Module:Infobox/Fonctions : Différence entre versions

De Lagny-sur-Marne Wiki
Aller à : navigation, rechercher
(suppression variable globale ; indentation)
(Chargement de Module:Infobox/Fonctions/Géolocalisation uniquement si nécessaire (ce n'est pas le cas sur toute les biographies))
Ligne 2 : Ligne 2 :
 
local localdata = require( 'Module:Infobox/Localdata' )
 
local localdata = require( 'Module:Infobox/Localdata' )
 
local wikidata = require( 'Module:Interface Wikidata' ).fromLua
 
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 'Module:Linguistique'
 
 
local p = {}
 
local p = {}
  
Ligne 10 : Ligne 9 :
 
type = 'title',
 
type = 'title',
 
value = function()  
 
value = function()  
return localdata['nom']  
+
return localdata['nom']  
or linguistic.ucfirst( wikidata.getLabel(localdata.item) or mw.title.getCurrentTitle().text )
+
or wikidata.getLabel(localdata.item)
end,
+
or mw.title.getCurrentTitle().text
 +
end,
 
subtitle = function() return localdata[subtitleparam] end,
 
subtitle = function() return localdata[subtitleparam] end,
 
wikidatasubtitle = subtitlequery,
 
wikidatasubtitle = subtitlequery,
Ligne 76 : Ligne 76 :
 
-- Fonctins de géolocalisation
 
-- Fonctins de géolocalisation
 
function p.country(default)
 
function p.country(default)
 +
local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
 
return coordfunctions.country(default)
 
return coordfunctions.country(default)
 
end
 
end
  
 
function p.geoloc(params)
 
function p.geoloc(params)
 +
local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
 
return coordfunctions.geoloc(params)
 
return coordfunctions.geoloc(params)
 
end
 
end
  
 
function p.coordinates(params)
 
function p.coordinates(params)
 +
local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
 
return coordfunctions.coordinates(params)
 
return coordfunctions.coordinates(params)
 
end
 
end
  
 
function p.locationmap(params)
 
function p.locationmap(params)
 +
local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
 
return coordfunctions.locationmap(params)
 
return coordfunctions.locationmap(params)
 
end
 
end
  
 
return p
 
return p

Version du 15 septembre 2016 à 05:23

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 p = {}

function p.title(icon, style, subtitleparam, subtitlequery)
	return {
		type = 'title',
		value = function() 
			return localdata['nom'] 
				or 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)
	local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
	return coordfunctions.country(default)	
end

function p.geoloc(params)
	local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
	return coordfunctions.geoloc(params)	
end

function p.coordinates(params)
	local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
	return coordfunctions.coordinates(params)
end

function p.locationmap(params)
	local coordfunctions = coordfunctions or require 'Module:Infobox/Fonctions/Géolocalisation'
	return coordfunctions.locationmap(params)	
end

return p