Module:Common: Difference between revisions

From DataTrek
Jump to navigation Jump to search
No edit summary
No edit summary
Line 19: Line 19:
      
      
       PDetails[#PDetails + 1] = Property.id
       PDetails[#PDetails + 1] = Property.id
     
       if Property.labels["it"] then
       if Property.labels["it"] then
       PDetails[#PDetails + 1] = Property.labels["it"].value
       PDetails[#PDetails + 1] = Property.labels["it"].value
Line 24: Line 25:
       PDetails[#PDetails + 1] = "()"
       PDetails[#PDetails + 1] = "()"
       end
       end
     
       if Property.labels["en"] then
       if Property.labels["en"] then
       PDetails[#PDetails + 1] = Property.labels["en"].value
       PDetails[#PDetails + 1] = Property.labels["en"].value
Line 29: Line 31:
       PDetails[#PDetails + 1] = "()"
       PDetails[#PDetails + 1] = "()"
       end
       end
     
       PDetails[#PDetails + 1] = Property.datatype
       PDetails[#PDetails + 1] = Property.datatype
      
      
       if Property.descriptions then
       if Property.descriptions then
      if Property.descriptions[it] then
      if Property.descriptions[it] then
       PDetails[#PDetails + 1] = Property.descriptions[it].value
      PDetails[#PDetails + 1] = Property.descriptions[it].value
       else
      PDetails[#PDetails + 1] = "()"
      end
      if Property.descriptions[en] then
      PDetails[#PDetails + 1] = Property.descriptions[en].value
      else
      PDetails[#PDetails + 1] = "()"
      end
       else
       else
       PDetails[#PDetails + 1] = "()"
       PDetails[#PDetails + 1] = "()|()"
      end
      if Property.descriptions[en] then
      PDetails[#PDetails + 1] = Property.descriptions[en].value
      else
      PDetails[#PDetails + 1] = "()"
      end
       end
       end
      
      

Revision as of 22:24, 10 June 2020

Documentation for this module may be created at Module:Common/doc

-- Keyword: wikitrek
local p = {}
function p.SiteAllP(frame)
	local MaxP
	local Separator = "|"
	local AllP = {}
	local PDetails = {}
	
	if tonumber(frame.args[1]) < 1 then
		MaxP = 10
	else
		MaxP = tonumber(frame.args[1])
	end
	
	for PNumber = 1, MaxP, 1 do
      if mw.wikibase.entityExists('P' .. PNumber) then
      	local PDetails = {}
      	local Property = mw.wikibase.getEntity('P' .. PNumber)
      	
       	PDetails[#PDetails + 1] = Property.id
       	
       	if Property.labels["it"] then
      		PDetails[#PDetails + 1] = Property.labels["it"].value
      	else
      		PDetails[#PDetails + 1] = "()"
      	end
      	
      	if Property.labels["en"] then
      		PDetails[#PDetails + 1] = Property.labels["en"].value
      	else
      		PDetails[#PDetails + 1] = "()"
      	end
      	
      	PDetails[#PDetails + 1] = Property.datatype
      	
      	if Property.descriptions then
      		if Property.descriptions[it] then
      			PDetails[#PDetails + 1] = Property.descriptions[it].value
      		else
      			PDetails[#PDetails + 1] = "()"
      		end
      		if Property.descriptions[en] then
      			PDetails[#PDetails + 1] = Property.descriptions[en].value
      		else
      			PDetails[#PDetails + 1] = "()"
      		end
      	else
      		PDetails[#PDetails + 1] = "()|()"
      	end
      	
      	--AllP[#AllP + 1] = 'P' .. PNumber
      	AllP[#AllP + 1] = table.concat(PDetails, Separator)
      end
    end
	
	return table.concat(AllP, "<br />" .. string.char(10))
end
return p