Модуль:Uses Wikidata

Матеріал з Вікіпедія

Документацію для цього модуля можна створити у Модуль:Uses Wikidata/документація

local p = {}

local function incat( dot, name, label )
  local incat = ''
  if not dot then dot = '' end
  local pincat = mw.site.stats.pagesInCategory( name, all )
  if pincat ~= 0 then incat = dot .. "[[:Категорія:" .. name .. "|" .. label .. tostring( pincat ) .. "]]"  end
  return incat
end

local function trackingcats(p_num)
  local result = 
    incat( nil, "Вікіпедія:" .. p_num .. ":використовується", "'''U''':" ) ..
    incat( "·", "Вікіпедія:" .. p_num .. ":відсутня", "'''<s>E</s>''':") ..
    incat( "·", "Вікідані:" .. p_num .. ":відсутня", "'''<s>D</s>''':") ..
    incat( "·", "Вікідані:" .. p_num .. ":відрізняється", "'''↑↓''':")
  if result ~= "" then return "[<span></span>" .. result .. "]"
  else return "" end
end

function p.usesProperty(frame)
  local parent = frame.getParent(frame)
  local result = ''
  local ii = 1
  while true do
    local p_num = ""
    if parent.args[ii] or frame.args[ii] then
      p_num = mw.text.trim(string.upper(parent.args[ii] or frame.args[ii])) end
    if p_num ~= "" then
      local label = mw.wikibase.label(p_num) or "БЕЗ НАЗВИ"
      result = result .. "<ul><li><i>[[d:Property:" .. p_num .. "|<small>" ..
        p_num .. "</small>:" .. label .. "]]</i> {[[d:Property talk:" ..
        p_num .. "|<span title='сторінка обговорення Властивості'>о</span>]]·[[d:Special:WhatLinksHere/Property:" ..
        p_num .. "|<span title='посилання'>←</span>]]}" ..
        -- commented: -- trackingcats(p_num) ..
    	"</li></ul>"
      ii = ii + 1
    else break
    end
  end
  return result
end
 
return p