Fandom

Kraftens Arkiver

Modul:Navbar

664pages on
this wiki
Add New Page
Talk0
local p = {}
 
local getArgs
 
function p._navbar(args)
	local titleArg = 1
 
	if args.collapsible then
		titleArg = 2
		if not args.plain then
			args.mini = 1
		end
		if args.fontcolor then
			args.fontstyle = 'color:' .. args.fontcolor .. ';'
		end
		args.style = 'float:left; text-align:left; width:6em;'
	end
 
	local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
	local title = mw.title.new(mw.text.trim(titleText), 'Skabelon');
 
	if not title then
		error('Invalid title ' .. titleText)
	end
 
	local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
 
	local div = mw.html.create():tag('div')
	div
		:addClass('plainlinks')
		:addClass('hlist')
		:addClass('navbar')
		:cssText(args.style)
 
	if args.mini then div:addClass('mini') end
 
	if not (args.mini or args.plain) then
		div
			:tag('span')
				:css('word-spacing', 0)
				:cssText(args.fontstyle)
				:wikitext(args.text or 'Denne boks:')
				:wikitext(' ')
	end
 
	if args.brackets then
		div
			:tag('span')
				:css('margin-right', '-0.125em')
				:cssText(args.fontstyle)
				:wikitext('[')
				:newline();
	end
 
	local ul = div:tag('ul');
 
	ul
		:tag('li')
			:addClass('nv-view')
			:wikitext('[[' .. title.fullText .. '|')
			:tag('span')
				:attr('title', 'Se denne skabelon')
				:cssText(args.fontstyle)
				:wikitext(args.mini and 'v' or 'vis')
				:done()
			:wikitext(']]')
			:done()
		:tag('li')
			:addClass('nv-talk')
			:wikitext('[[' .. talkpage .. '|')
			:tag('span')
				:attr('title', 'Diskuter denne skabelon')
				:cssText(args.fontstyle)
				:wikitext(args.mini and 'd' or 'diskussion')
				:done()
			:wikitext(']]');
 
	if not args.noedit then
		ul
			:tag('li')
				:addClass('nv-edit')
				:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
				:tag('span')
					:attr('title', 'Rediger denne skabelon')
					:cssText(args.fontstyle)
					:wikitext(args.mini and 'r' or 'rediger')
					:done()
				:wikitext(']');
	end
 
	if args.brackets then
		div
			:tag('span')
				:css('margin-left', '-0.125em')
				:cssText(args.fontstyle)
				:wikitext(']')
				:newline();
	end
 
	if args.collapsible then
		div
			:done()
		:tag('span')
			:css('font-size', '110%')
			:cssText(args.fontstyle)
			:wikitext(args[1])
	end
 
	return tostring(div:done())
end
 
function p.navbar(frame)
	if not getArgs then
		getArgs = require('Modul:Arguments').getArgs
	end
	return p._navbar(getArgs(frame))
end
 
return p

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on Fandom

Random Wiki