Modul:SDcat: Unterschied zwischen den Versionen
split to allow calling from other modules; add link prefix for testing
(Creating Module:Sandbox/RexxS/SDcat) |
(split to allow calling from other modules; add link prefix for testing) |
||
| Zeile 16: | Zeile 16: | ||
* Category:Short description is different from Wikidata | * Category:Short description is different from Wikidata | ||
* Category:Short description with empty Wikidata description | * Category:Short description with empty Wikidata description | ||
For testing purposes, a link prefix |lp= may be set to ":" to make the categories visible. | |||
--]] | --]] | ||
p. | -- function exported for use in other modules | ||
-- (Wikidata entity-ID, local short description, link prefix) | |||
p._setCat = function(itemID, sdesc, lp) | |||
-- Wikidata description field | |||
local wdesc = (mw.wikibase.getDescription(itemID) or ""):lower() | local wdesc = (mw.wikibase.getDescription(itemID) or ""):lower() | ||
if wdesc == "" then | if wdesc == "" then | ||
return "[[ | return "[[" .. lp .. "Category:Short description with empty Wikidata description]]" | ||
elseif wdesc == sdesc then | elseif wdesc == sdesc then | ||
return "[[ | return "[[" .. lp .. "Category:Short description matches Wikidata]]" | ||
else | else | ||
return "[[ | return "[[" .. lp .. "Category:Short description is different from Wikidata]]" | ||
end | end | ||
end | |||
-- function exported for call from #invoke | |||
p.setCat = function(frame) | |||
-- Wikidata entity-ID | |||
local itemID = mw.text.trim(frame.args.qid or "") | |||
if itemID == "" then itemID = nil end | |||
-- local short description | |||
local sdesc = mw.text.trim(frame.args.sd or ""):lower() | |||
-- link prefix, strip quotes | |||
local lp = mw.text.trim(frame.args.sd or ""):gsub('"', '') | |||
return p._setCat(itemID, sdesc, lp) | |||
end | end | ||
return p | return p | ||