Versie door Dennis Groenewegen (overleg | bijdragen) op 23 okt 2025 om 21:05
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Semantic MediaWikiDit bericht verdwijnt nadat alle relevante taken zijn afgerond.

Er is één onvoltooide of openstaande taak, die nodig is om het bijwerken 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.

Module:Class/Periodical issue




{"Has initial":"R","Has sort label":"robbedoes vlaams 1939 0012¶","Title":"Robbedoes (Vlaams) 0012 (1939)","Title plain":"Robbedoes (Vlaams) 0012 (1939)"}

local p = {}
local mSlot = require("Module:Slot")
local mFormatForSorting= require("Module:Format for sorting")

--[[
-->{{#slottemplates:ws-page-props|{{{TijdschriftID|}}}|@periodical-props }}<!--

-->{{#vardefine:@label1|<i>{{#caprint:@periodical-props[Periodical][Titel]}}</i> {{{VolgNr|}}} ({{{Jaar|jaar onbekend}}}) }}<!--
-->{{#vardefine:@label2|{{#caprint:@periodical-props[Periodical][Titel]}} {{{VolgNr|}}} ({{{Jaar|jaar onbekend}}}) }}<!--

year first then issue number
-->{{#vardefine:@sort title|{{Strip title for sorting|1={{lc:{{#caprint:@periodical-props[Periodical][Titel]}}}} }} {{{Jaar|}}} {{{VolgNr|}}} }}<!--


|Title={{#var:@label1}}
|Title plain={{#var:@label2}}
|Has sort label={{#var:@sort title}}¶
|Has initial={{uc:{{#sub:{{#var:@sort title}}|0|1}}}}

-->{{DISPLAYTITLE:{{#var:@label1}}}}<!--
-->{{DEFAULTSORT:{{#var:@sort title}}}}<!--

]]--
p.set = function(frame)
	local tijdschriftid = frame.args["tijdschriftid"] or nil
	local volgnr = frame.args["volgnr"] or ""
	local jaar = frame.args["jaar"] or ""
	-- mSlot.
	local set = {}
	
	local labelforTitle = ""
	local labelforTitlePlain = ""
	local sortTitle = ""
	if tijdschriftid ~= nil then
		local periodicalTitle = mSlot.getValueFromTemplateData( "ws-page-props", tijdschriftid, "Periodical", "Titel" )
		labelforTitle = "<i>" .. periodicalTitle .. "</i>" .. " " .. volgnr .. " (" .. jaar .. ")"
		labelforTitlePlain = periodicalTitle .. " " .. volgnr .. " (" .. jaar .. ")"
		sortTitle = mFormatForSorting.flatten( periodicalTitle ) .. " " .. jaar .. " " .. volgnr
		
		set = {
			["Title"] = labelforTitle,
			["Title plain"] = labelforTitlePlain,
			["Has sort label"] = sortTitle .. "¶",
			["Has initial"] = mw.ustring.upper( mw.ustring.sub( sortTitle, 1, 1 ) )
		}
	end

	local debugmode = frame.args.debugmode or "false"
	if debugmode == "true" then
		return "<pre>" .. mw.text.jsonEncode( set ) .. "</pre>"
	end

	-- #set
	local setResult = nil
	if mw.smw then
		setResult = mw.smw.set( set )
	end

	if tijdschriftid == nil then return "" end
	-- DISPLAYTITLE and DEFAULTSORT
	mw.ext.displaytitle.set( labelforTitle )
	frame:callParserFunction( 'DEFAULTSORT', { sortTitle } )
end

return p