İçeriğe atla

Modül:Askeri dolaşım

Vikipedi, özgür ansiklopedi
Modül belgelemesi[oluştur]
local p = { }

local Navbox = require('Modül:Dolaşım')
local Styles = require('Modül:WPMILHIST Infobox style')

local function isblank(s)
	return (not s) or s == ''
end
local function isnotblank(s)
	return s and s ~= ''
end

function p.main(frame)
    local args = { }
    local pargs = frame:getParent().args
    local sargs = {}
    local tcats = ''

	-- process bodystyle and titlestyle
	if (pargs['biçim'] or '') == 'wide' then
		args['başlıkbiçimi'] = Styles['nav_box_wide_header']
		args['gövdebiçimi'] = Styles['nav_box_wide']
	else
		args['başlıkbiçimi'] = Styles['nav_box_header']
		if (pargs['kenar'] or '') == 'child' or 
			(pargs['kenar'] or '') == 'subgroup' then
			args['gövdebiçimi'] = Styles['nav_box_child']
		else
			args['gövdebiçimi'] = Styles['nav_box']
		end
	end
	sargs['başlıkbiçimi'] = 1
	sargs['gövdebiçimi'] = 1

	-- process groupstyle, abovestyle, belowstyle
	args['grupbiçimi'] = Styles['nav_box_label'] .. (pargs['grupbiçimi'] or '')
	sargs['grupbiçimi'] = 1
	args['üstbiçim'] = Styles['nav_box_label'] .. (pargs['üstbiçim'] or '')
	sargs['üstbiçim'] = 1
	args['altbiçim'] = Styles['nav_box_label'] .. (pargs['altbiçim'] or '')
	sargs['altbiçim'] = 1
	-- process oddstyle, evenstyle
	args['tekbiçim'] = isnotblank(pargs['tek_renk'])
		and ('background:' .. pargs['tek_renk']) or nil
	sargs['tekbiçim'] = 1
	args['çiftbiçim'] = isnotblank(pargs['çift_renk'])
		and ('background:' .. pargs['çift_renk']) or nil
	sargs['çiftbiçim'] = 1
	-- process name and rawname
	args['ad'] = (isnotblank(pargs['ad']) and pargs['ad']) or pargs['sade_ad']
	if isblank(args['ad']) then args['dolçub'] = 'plain' end
	sargs['ad'] = 1
	sargs['sade_ad'] = 1
	
    -- copy the remaining args
    for k, v in pairs(pargs) do
        if v and v ~= '' and sargs[k] == nil then
            args[k] = v
        end
    end
	-- add allow wrap
	if args['başlık'] and (pargs['biçim'] or '') ~= 'wide' then
		if not mw.ustring.match(args['başlık'], '<span class="wrap">') then
			-- probably a more efficient way to match 15 or more characters
			local m = '[^%[%]<>|][^%[%]<>|][^%[%]<>|][^%[%]<>|][^%[%]<>|]'
			m = m .. m .. m
			args['başlık'] = mw.ustring.gsub(args['başlık'], 
				'%[%[(' .. m .. '[^%[%]<>|]*)%]%]', 
				'[[%1|<span class="wrap">%1</span>]]')
			args['başlık'] = mw.ustring.gsub(args['başlık'], 
				'%[%[([^%[%]<>|]*)|(' .. m .. '[^%[%]<>|]*)%]%]', 
				'[[%1|<span class="wrap">%2</span>]]')
		end
	end
    return tcats .. Navbox._navbox(args)

end  

return p