Semantic MediaWikiDit bericht verdwijnt nadat alle relevante taken zijn afgerond.

Er is één onvoltooide of openstaande taak, die nodig is om het installeren van Semantic MediaWiki te voltooien. Een beheerder of gebruiker met voldoende rechten kan deze uitvoeren. Dit moet worden gedaan voordat nieuwe gegevens worden toegevoegd om tegenstrijdigheden te voorkomen.

Geen bewerkingssamenvatting
Geen bewerkingssamenvatting
Regel 8: Regel 8:
local output = jsonstr
local output = jsonstr
return output
return output
end
local function send_to_template( frame, templateName, argsTable )
if templateName ~= nil and  argsTable ~= nil then
return frame:expandTemplate{ title = templateName, args = argsTable }
else
return ""
end
end
end


Regel 43: Regel 51:
end
end
--local datatype = awardsTitle .. "<br>" .. firstWinner
return output
end
end


-- return p
-- return p

Versie van 2 jun 2023 11:56

Module:Read award recognition




-- @param string jsonstr
-- @todo: use new Lua function that comes with WSSlots (available since Feb)

local p = {}

function p.main ( frame )
	local jsonstr = frame.args['jsonstr']
	local output = jsonstr
	return output
end

local function send_to_template( frame, templateName, argsTable ) 
	if templateName ~= nil and  argsTable ~= nil then
		return frame:expandTemplate{ title = templateName, args = argsTable }
	else
		return ""
	end
end

function p.subobject( frame )
	local jsonstr = frame.args['jsonstr'] or nil
	if jsonstr == nil or jsonstr == "" then
		return error("No JSON string found")
	end
	local jsondata = mw.text.jsonDecode( jsonstr )
	local awardsTitle = jsondata["Title"]
	local firstWinner = jsondata["Awards"][1]["winner"]
	local winners = jsondata["Awards"]
	
	local output = ""
	for i, v in ipairs( winners ) do
		local item = v -- array { "name"="Stephen", "rank"="" }
		local name = v["winner"] or ""
		local nameArr = mw.text.split( name, ',', plain )
		local rank = v["rank"] or ""
		--function here - set for SMW or show on page
		--local win = "<div>" .. rank .. ". " .. name .. "</div>"
		--output = output .. win
		
		--subobject
		if mw.smw then
			local subobjectTable = {}
			subobjectTable['Has name'] = nameArr
			subobjectTable['Has rank'] = rank
			local subobjectStore = mw.smw.subobject( subobjectTable )
		end
		
		--presentation through template
		local templateArgsTable = { Name = name, Rank = rank }
		output = output .. send_to_template( frame, "Show winner", templateArgsTable )
	end
	
	--local datatype = awardsTitle .. "<br>" .. firstWinner
	return output
	
end

-- return p