Knowledge Base Wiki

Search for LIMS content across all our Wiki Knowledge Bases.

Type a search term to find related articles by LIMS subject matter experts gathered from the most trusted and dynamic collaboration tools in the laboratory informatics industry.

Labot saites
Dokumentācijas ikona Moduļa dokumentācija[skatīt] [] [hronoloģija] [pārlādēt]
Parametrs Veidne Modulis
{{Tnavbar|Veidnes nosaukums|mini=1}}
{{Tnavbar|Veidnes nosaukums|nodiv=1}}
{{Tnavbar|Veidnes nosaukums|mini=1|nodiv=1}}

{{Tnavbar|Veidnes nosaukums|plain=1}}

{{Tnavbar|Veidnes nosaukums|plain=1|nodiv=1}}

local p = {}

local getArgs
local ul

function p.addItem (mini, full, link, descrip, args, url)
	local l
	local addStyle = ''
	
	if url then
		l = {'[', '', ']'}
	else
		l = {'[[', '|', ']]'}
	end
	if mini=='d' then
		addStyle = 'color:#002bb8;'
	end
	
	ul:tag('li')
		:addClass('nv-'..full)
		:wikitext(l[1] .. link .. l[2])
		:tag(args.mini and 'abbr' or 'span')
			:attr('title', descrip..' šo veidni')
			:cssText( addStyle )
			:cssText( args.fontstyle or '' )
			:wikitext(args.mini and mini or full)
			:done()
		:wikitext(l[3])
end

function p.brackets (position, c, args, div)
	if args.brackets then
		div
			:tag('span')
				:css('margin-'..position, '-0.125em')
				:cssText(args.fontstyle)
				:wikitext(c)
	end
end

function p._navbar(args)
	local show = {true, true, true, false, false, false}
	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'
	end
	
	if args.template then
		titleArg = 'template'
		show = {true, false, false, false, false, false}
		local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6, talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
		for k,v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
			local num = index[v]
			if num then show[num] = true end
		end
	end
	
	if args.noedit then show[3] = false end
	
	local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
	local title = mw.title.new(mw.text.trim(titleText), 'Veidne')
	if not title then
		error('Nederīgs nosaukums ' .. 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 'Šī kaste:')
				:wikitext(' ')
	end
	
	p.brackets('right', '[ ', args, div)
	
	ul = div:tag('ul')
	if show[1] then p.addItem('s', 'skatīt', title.fullText, 'Skatīt', args) end
	if show[2] then p.addItem('d', 'diskusija', talkpage, 'Diskusija par', args) end
	if show[3] then p.addItem('l', 'labot', title:fullUrl('action=edit'), 'Labot', args, true) end
	if show[4] then p.addItem('v', 'vēsture', title:fullUrl('action=history'), 'vēsture', args, true) end
	if show[5] then
		local move = mw.title.new ('Special:Movepage')
		p.addItem('p', 'pārvietot', move:fullUrl('target='..title.fullText), 'Pārvietot', args, true) end
	if show[6] then p.addItem('u', 'uzraudzīt', title:fullUrl('action=watch'), 'Uzraudzīt', args, true) end
	
	p.brackets('left', ' ]', args, div)
	
	if args.collapsible then
		div
			:done()
		:tag('div')
			:css('font-size', '114%')
			:css('margin', args.mini and '0 4em' or '0 7em')
			:cssText(args.fontstyle)
			:wikitext(args[1])
	end

	return tostring(div:done())
end

function p.navbar(frame)
	if not getArgs then
		getArgs = require('Module:Arguments').getArgs
	end
	return p._navbar(getArgs(frame))
end

return p