« Module:Interface Wikidata » : différence entre les versions

De Lagny-sur-Marne Wiki
Aller à la navigation Aller à la recherche
0x010D (discussion | contributions)
Aucun résumé des modifications
0x010D (discussion | contributions)
ajout, retire les blancs des paramètres de frame vide
Ligne 1 : Ligne 1 :
local p = {}
local p = {}
local d = require 'Module:Wikidata'
local d = require 'Module:Wikidata'
local entities = require 'Module:Wikidata/Formatage entité'


-- fonctions ne pouvant être appelées que depuis un autre module
-- fonctions ne pouvant être appelées que depuis un autre module
Ligne 24 : Ligne 25 :
-- utilisation de qids
-- utilisation de qids
formatEntity = function(entity, args) return d.formatEntity(entity, args) end,
formatEntity = function(entity, args) return d.formatEntity(entity, args) end,
getLabel = function(entity, lang) return entities.formatEntity(entity, lang) end, --getLabel est moins sophistiqué que formatEntity, ce qui peut-être pratique
citeItem = function(item, page) return d.citeitem(item, page) end,
citeItem = function(item, page) return d.citeitem(item, page) end,


Ligne 32 : Ligne 34 :


-- Fonctions frame pour usage depuis le Wikitexte (avec parfois des options pour gérer des données moins propres
-- Fonctions frame pour usage depuis le Wikitexte (avec parfois des options pour gérer des données moins propres
local function cleanargs(args)
for i, j in pairs(args) do
if j == '' then args[i] = nil end
end
return args
end




Ligne 48 : Ligne 56 :


function p.formatEntity(frame)
function p.formatEntity(frame)
local args = frame.args
local args = cleanargs(frame.args)
local entity = args.entity or args[1]
local entity = args.entity or args[1]
if (not entity) or (entity == '') then
if (not entity) or (entity == '') then
Ligne 57 : Ligne 65 :


function p.formatAndCat(frame)
function p.formatAndCat(frame)
return p.fromLua.formatAndCat(frame.args)
local args = cleanargs(frame.args)
return p.fromLua.formatAndCat(args)
end
end


function p.citeItem(frame)
function p.citeItem(frame)
local item, page = frame.args[1], frame.args['page']
local args = cleanargs(frame.args)
local item, page = args[1], args['page']
return p.fromLua.citeItem(item, page)
return p.fromLua.citeItem(item, page)
end
end

Version du 26 août 2015 à 15:54

local p = {} local d = require 'Module:Wikidata' local entities = require 'Module:Wikidata/Formatage entité'

-- fonctions ne pouvant être appelées que depuis un autre module p.fromLua = {

-- manipulation d'une liste d'affirmations getClaims = function(args) return d.getClaims(args) end, formatStatements = function(args) return d._formatStatements(args) end, formatQualifiers = function(args) return d.showQualifier(args) end, formatAndCat = function(args) return d._formatAndCat(args) end, formatClaimList = function(claims, params) return d.formatClaimList(claims, params) end,

-- manipulation d'une affirmation individelle getmainid = function(claim) return d.getmainid(claim) end, formatStatement = function(statement, param) return d.formatStatement(statement, params) end, statementDate = function(claim, params) return d.getFormattedDate(claim, params) end, -- récupère la date des qualificatifs getFormattedQualifiers = function(statement, qualifs, params) return d.getFormattedQualifiers(statement, qualifs, params) end,

-- manipulation de snaks getid = function(snak) return d.getid(snak) end, formatSnak = function(snak, params) return d.formatSnak(snak, params) end,

-- utilisation de qids formatEntity = function(entity, args) return d.formatEntity(entity, args) end, getLabel = function(entity, lang) return entities.formatEntity(entity, lang) end, --getLabel est moins sophistiqué que formatEntity, ce qui peut-être pratique citeItem = function(item, page) return d.citeitem(item, page) end,

-- Fonctions diverses keydate = function(args) return d.getTheDate(args) end, Dump = function(item) return d.Dump(item) end, }

-- Fonctions frame pour usage depuis le Wikitexte (avec parfois des options pour gérer des données moins propres local function cleanargs(args) for i, j in pairs(args) do if j == then args[i] = nil end end return args end


function p.formatStatements( frame ) -- pour Modèle:Wikidata local args = {} if frame == mw.getCurrentFrame() then args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?) for k, v in pairs(frame.args) do args[k] = v end else args = frame end return p.fromLua.formatStatements( args ) end

function p.formatEntity(frame) local args = cleanargs(frame.args) local entity = args.entity or args[1] if (not entity) or (entity == ) then return nil end return p.fromLua.formatEntity(entity, args) end

function p.formatAndCat(frame) local args = cleanargs(frame.args) return p.fromLua.formatAndCat(args) end

function p.citeItem(frame) local args = cleanargs(frame.args) local item, page = args[1], args['page'] return p.fromLua.citeItem(item, page) end

function p.Dump(frame) return p.fromLua.Dump(frame.args[1]) end

function p.formatQualifiers(frame) local args = frame.args return p.fromLua.formatQualifiers(args) end return p