Modulo:Controllo Wikidata: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m 'sì' |
+p._category() +from per accessi arbitrari e per poter creare Modulo:Controllo Wikidata/test |
||
Riga 1:
--[[▼
▲* Modulo che implementa il template Controllo Wikidata.
]]--▼
-- Per test
-- require('Modulo:No globals')
local getArgs = require('Modulo:Arguments').getArgs▼
local mWikidata = require('Modulo:Wikidata')▼
local p = {}
Line 29 ⟶ 26:
end
▲--[[
local function getCategory(wdval, userval, catprefix, args)▼
* La categoria senza wikitesto.
local genletto = { ms = 'letto', mp = 'letti', fs = 'letta', fp = 'lette' }▼
▲]]--
▲ local mWikidata = require('Modulo:Wikidata')
local wdval▼
-- con id=no il primo parametro non è più trattato come l'ID di una proprietà Wikidata▼
-- ma come una normale stringa da confrontare con il secondo parametro▼
if args.id == 'no' then▼
wdval = wdprop▼
else▼
wdval = mWikidata._getProperty( {▼
wdprop,▼
showunit = args['unità'] ~= 'no',▼
formatnum = args['unità'] ~= 'no',▼
from = args.from
} )▼
end
local comparefunc = function(v1, v2) return v1 == v2 end
local cat
Line 43 ⟶ 60:
end
end
▲ local genletto = { ms = 'letto', mp = 'letti', fs = 'letta', fp = 'lette' }
if userval then
Line 56 ⟶ 75:
end
return cat
end
--[[
* @return string
]]--
function p._main(args)
local wdprop, userval, catprefix = args[1], args[2], args[3]
▲ local wdval
-- namespace 0 obbligatorio salvo everyNS
if
-- namespace 0, proprietà Wikidata e prefisso categoria obbligatori▼
return ''
▲ if (mw.title.getCurrentTitle().namespace ~= 0 and args.everyNS ~= 'sì') or (args.id ~= 'no' and not wdprop) or not catprefix then
▲ return nil
end
▲ -- con id=no il primo parametro non è più trattato come l'ID di una proprietà Wikidata
if args.id ~= 'no' and not wdprop or not catprefix then
▲ -- ma come una normale stringa da confrontare con il secondo parametro
return ''
▲ if args.id == 'no' then
▲ wdval = wdprop
▲ else
▲ wdval = mWikidata._getProperty({
▲ wdprop,
▲ showunit = args['unità'] ~= 'no',
▲ formatnum = args['unità'] ~= 'no'
▲ })
end
return category and string.format('[[Categoria:%s]]', category) or ''
end
--[[
]]--
function p.main(frame)
▲ local getArgs = require('Modulo:Arguments').getArgs
return p._main(getArgs(frame, {parentOnly = true}))
end
--[[
* Entry-point di _category per unit test
]]--
function p.category(frame)
local getArgs = require('Modulo:Arguments').getArgs
local args = getArgs(frame)
return p._category(args[1], args[2], args[3], args)
end
|