Modul:Commonscat
Vzhled
function makeFormat(frame)
local parent = frame:getParent()
local params = parent and parent.args or {}
local pagename = mw.title.getCurrentTitle().text
local link, show, cats = '', '', ''
local Wikidata = require 'Modul:Wikidata'
local sitelink = Wikidata.getSitelink({ args = { site = 'commonswiki' } })
local property = 'Category:' .. Wikidata.formatStatementsFromLua({ property = 'P373', limit = 1 })
if params[1] and params[1] ~= '' then
link = 'Category:' .. params[1]
-- if params['lokální'] and params['lokální'] == 'ano' then
-- local Check = require 'Modul:WikidataCheck'
-- cats = cats .. Check.wikidatacheck({ args =
-- { value = link, category = 'Commonscat', property = 'P373', namespaces = '0,14' }
-- }) or ''
-- end
else
link = property -- upřednostni vlastnost
if link == '' then
link = sitelink -- vlastnost není, zkus odkaz z Wikidat
if link == '' or not string.find(link,'Category:') then
link = 'Category:' .. pagename -- nebo název stránky
end
end
end
-- pokud dostupné, srovnej vlastnost i odkaz
if (
sitelink ~= '' and string.find(sitelink,'Category:')
and property ~= '' and sitelink ~= property
) then
cats = cats .. '[[Kategorie:Údržba:Vlastnost a odkaz na Wikidatech se liší|' .. pagename .. ']]'
end
if params[2] and params[2] ~= '' then
show = params[2] -- zobraz lokální popis
else
show = Wikidata.getLabel() -- nebo štítek
if show == '' then
show = pagename -- nebo název stránky
cats = cats .. '[[Kategorie:Údržba:Doplnit štítek na Wikidatech|' .. pagename .. ']]'
end
end
local output = ""
output = output .. "<span class=\"sisterproject sisterproject-commons\">"
output = output .. "<span class=\"sisterproject_image\">[[Soubor:Commons-logo.svg|16x16px|alt=Logo Wikimedia Commons|link=Wikimedia Commons]]</span> "
output = output .. "<span class=\"sisterproject_text\">Obrázky, zvuky či videa k tématu "
output = output .. "<span class=\"sisterproject_text_target\">[[c:" .. link .. "|" .. show .. "]]</span> "
output = output .. "ve [[Wikimedia Commons]]</span>"
output = output .. "</span>" .. cats
-- output = frame:preprocess( output )
return output
end
local p = {}
function p.print(frame)
return makeFormat(frame)
end
return p