Hopp til innhold

Modul:Flagg/Data/info

Fra Wikipedia, den frie encyklopedi
Moduldokumentasjon

Modul:Flagg med undersider er tenkt brukt av {{Flagg}} for fremvisning av områders flagg.

Modulserien består av følgende sider:


I tillegg brukes Modul:Flagg/Data/info til å automatisk vise alle flagg på dokumentasjonssidene.

Legge til nytt flagg?


Registrerte flagg

Lua-feil i linje 267: assign to undeclared variable 'retval'.


local p = {}
local getArgs = require('Module:Arguments').getArgs

function p.docpages(frame, args)
	local pagename = 'Modul:Flagg/Masterdata'
	local pg = mw.title.new( pagename)
	local text = pg:getContent()
	if not (text) then return "error: feilet i å laste mw.title.new(" .. pagename .. ")" end
   	local args = getArgs(frame)
	local Pages = ""
	local Areas = 0
	for area in mw.ustring.gmatch( text, '%[%"%a*%s?%p?%s?%-?%(?%a*%s?%a*%)?%p?%s?%-?%a*%s?%-?%a*%s?%-?%(?%a*%)?%p?%s?%a*%s?%a*%"%] %= %{\n') do
		area = string.sub(area,3,-8)
			
			Areas = Areas+1
			-- Henter ut nødvendige data fra undersider basert på første bokstav i områdets fulle navn
			frame.args[1] = area
			local flagdata = require("Modul:Flagg/Masterdata").flagdata[area]
			local PageLink = flagdata.pagelink
			local Name = flagdata.name
			local Defflag = flagdata.defflag
			if Defflag == "" or Defflag == nil then Flag = "Flag of None.svg" else Flag = Defflag end
			if PageLink == nil then Link = Name else Link = PageLink end
			local docpage
			if area == "Ikke-eksisterende" then
				docpage = ""
				Areas = Areas - 1
			else
				docpage = Areas .. "&nbsp;[[Fil:" .. Flag .. "|22x18px|lenke=" .. Link .. "]]&nbsp;[[" .. Link .. "]]&nbsp;([[Modul:Flagg/data/" .. area .. "|dok]])<br />"
			end
			Pages = Pages .. docpage
	
	end	

	local Navbox = require('Module:Navbox')
	local box = Navbox._navbox( {
		title = 'Registrerte&nbsp;flagg&nbsp;(' .. Areas .. '&nbsp;områder)',
		name = pagename,
		navbar = 'plain',
		state = 'collapsed',
		group1 = "Områder",
		list1 = Pages,
	} )
	retval = box
	
	return retval
end

function p.info(frame, args)
	local pagename = 'Modul:Flagg/Masterdata'
	local pg = mw.title.new( pagename)
	local text = pg:getContent()
	if not (text) then return "error: feilet i å laste mw.title.new(" .. pagename .. ")" end
   	local args = getArgs(frame)
	local rows = ''
	local Tables = ''
	local Areas = 0
	for area in mw.ustring.gmatch( text, '%[%"%a*%s?%p?%s?%-?%(?%a*%s?%a*%)?%p?%s?%-?%a*%s?%-?%a*%s?%-?%(?%a*%)?%p?%s?%a*%s?%a*%"%] %= %{\n') do
		area = string.sub(area,3,-8)
			
			Areas = Areas+1
			-- Henter ut nødvendige data fra undersider basert på første bokstav i områdets fulle navn
			frame.args[1] = area
			local flagdata = require("Modul:Flagg/Masterdata").flagdata[area]
			local PageLink = flagdata.pagelink
			local Name = flagdata.name
			local Defflag = flagdata.defflag
			local sb = string.sub(Name,-1)
				if sb == "s" or sb == "x" or sb == "z" or sb == "ş" or sb == "ŝ" or sb == "ș" or sb == "š" or sb == "ś" or sb == "ß" or sb == "ž" or sb == "ż" or sb == "ź" then
					genitivform = Name .. "ʼ"
				else
					genitivform = Name .. "s"
				end
			if PageLink == nil then lenke = '[[' .. Name .. ']]' else lenke = '[[' .. PageLink .. '|' .. Name .. ']]' end
			if Defflag == "" then DefFlag = "Flag of None.svg" else DefFlag = Defflag end
			Col0 = '|' .. Areas .. '\n'
			Col1 = '|' .. lenke .. '\n'
			Col2 = '|<code>' .. area .. '</code>\n'
			Col3 = '|align="center"|[[Fil:' .. DefFlag .. '|33x27px|lenke=' .. genitivform .. ' flagg]]'
			ColHeader0 = '#'
			ColHeader1 = 'Område'
			ColHeader2 = 'Argument 1'
			ColHeader3 = 'Standard'
			
			 	-- Henter ut historiske flagg
				local Histyears = ''
				local HistColHeaderx = ''
				local i = 1
 				repeat
					if flagdata['histyear'..i] then
						Histyearx = flagdata['histyear'..i]
						Histflagx = flagdata['histflag'..i]
						if i > 1 then
							Histyearfrom = flagdata['histyear'..i-1]+1 .. '–'
							Histyearto = Histyearx
						else
							Histyearfrom = "<="
							Histyearto = Histyearx
						end
						HistColHeaderx = HistColHeaderx .. '\n!' .. Histyearfrom .. Histyearx
					else
						break
					end
					Histyears = Histyears .. '\n|align="center"|[[Fil:' .. Histflagx .. '|33x27px]]'
					i=i+1
				until not flagdata['histyear' .. i]
				
			 	-- Henter ut olympiske flagg
				local OLyears = ''
				local OLColHeaderx = ''
				local j = 1
 				repeat
					if flagdata['OLyear'..j] then
						OLyearx = flagdata['OLyear'..j]
						OLflagx = flagdata['OLflag'..j]
						OLColHeaderx = OLColHeaderx .. '\n!' .. OLyearx
					else
						break
					end
					OLyears = OLyears .. '\n|align="center"|[[Fil:' .. OLflagx .. '|33x27px]]'
					j=j+1
				until not flagdata['OLyear' .. j]
				if flagdata['histyeara'] then
					histyeara = flagdata['histyeara']
					histflaga = flagdata['histflaga']
					ColHeadera = '\n!' .. histyeara
					yearsa = '\n|align="center"|[[Fil:' .. histflaga .. '|33x27px]]'
				else
					yearsa = ""
					ColHeadera = ""
				end
				if flagdata['histyearb'] then
					histyearb = flagdata['histyearb']
					histflagb = flagdata['histflagb']
					ColHeaderb = '\n!' .. histyearb
					yearsb = '\n|align="center"|[[Fil:' .. histflagb .. '|33x27px]]'
				else
					yearsb = ""
					ColHeaderb = ""
				end
				if flagdata['histyearc'] then
					histyearc = flagdata['histyearc']
					histflagc = flagdata['histflagc']
					ColHeaderc = '\n!' .. histyearc
					yearsc = '\n|align="center"|[[Fil:' .. histflagc .. '|33x27px]]'
				else
					yearsc = ""
					ColHeaderc = ""
				end
				if flagdata['naval'] then
					naval = flagdata['naval']
					ColHeaderNaval = '\n!naval'
					navalflag = '\n|align="center"|[[Fil:' .. naval .. '|33x27px]]'
				else
					navalflag = ""
					ColHeaderNaval = ""
				end
				if flagdata['airforce'] then
					airforce = flagdata['airforce']
					ColHeaderAirforce = '\n!airforce'
					airforceflag = '\n|align="center"|[[Fil:' .. airforce .. '|33x27px]]'
				else
					airforceflag = ""
					ColHeaderAirforce = ""
				end
				if flagdata['coastguard'] then
					coastguard = flagdata['coastguard']
					ColHeaderCoastguard = '\n!coastguard'
					coastguardflag = '\n|align="center"|[[Fil:' .. coastguard .. '|33x27px]]'
				else
					coastguardflag = ""
					ColHeaderCoastguard = ""
				end
				if flagdata['sultanatet'] then
					sultanatet = flagdata['sultanatet']
					ColHeaderSultanatet = '\n!sultanatet'
					sultanatetflag = '\n|align="center"|[[Fil:' .. sultanatet .. '|33x27px]]'
				else
					sultanatetflag = ""
					ColHeaderSultanatet = ""
				end
				if flagdata['coa'] then
					coa = flagdata['coa']
					ColHeaderCoa = '\n!våpen'
					coaflag = '\n|align="center"|[[Fil:' .. coa .. '|33x27px]]'
				else
					coaflag = ""
					ColHeaderCoa = ""
				end
				if flagdata['shield'] then
					shield = flagdata['shield']
					ColHeaderShield = '\n!skjold'
					shieldflag = '\n|align="center"|[[Fil:' .. shield .. '|33x27px]]'
				else
					shieldflag = ""
					ColHeaderShield = ""
				end
				if flagdata['seal'] then
					seal = flagdata['seal']
					ColHeaderSeal = '\n!segl'
					sealflag = '\n|align="center"|[[Fil:' .. seal .. '|33x27px]]'
				else
					sealflag = ""
					ColHeaderSeal = ""
				end
				if flagdata['football'] then
					football = flagdata['football']
					ColHeaderFootball = '\n!fotball'
					footballflag = '\n|align="center"|[[Fil:' .. football .. '|33x27px]]'
				else
					footballflag = ""
					ColHeaderFootball = ""
				end
				if flagdata['OLfootball'] then
					olfootball = flagdata['OLfootball']
					ColHeaderOLFootball = '\n!OL (fotball)'
					olfootballflag = '\n|align="center"|[[Fil:' .. olfootball .. '|33x27px]]'
				else
					olfootballflag = ""
					ColHeaderOLFootball = ""
				end
				if flagdata['turkvision'] then
					turkvision = flagdata['turkvision']
					ColHeaderTurkvision = '\n!Turkvision'
					turkvisionflag = '\n|align="center"|[[Fil:' .. turkvision .. '|33x27px]]'
				else
					turkvisionflag = ""
					ColHeaderTurkvision = ""
				end
				if flagdata['eurovision'] then
					eurovision = flagdata['eurovision']
					ColHeaderEurovision = '\n!Eurovision'
					eurovisionflag = '\n|align="center"|[[Fil:' .. eurovision .. '|33x27px]]'
				else
					eurovisionflag = ""
					ColHeaderEurovision = ""
				end
			ColEnd = '\n|-\n'
			ColYear = coaflag .. shieldflag .. sealflag .. Histyears .. OLyears .. yearsa .. yearsb .. yearsc
						.. navalflag .. airforceflag .. coastguardflag .. sultanatetflag 
						.. footballflag .. olfootballflag .. turkvisionflag .. eurovisionflag
			ColHeaderx = ColHeaderCoa .. ColHeaderShield .. ColHeaderSeal .. HistColHeaderx .. OLColHeaderx
						.. ColHeadera .. ColHeaderb .. ColHeaderc
						.. ColHeaderNaval ..  ColHeaderAirforce .. ColHeaderCoastguard .. ColHeaderSultanatet
						.. ColHeaderFootball .. ColHeaderOLFootball .. ColHeaderTurkvision .. ColHeaderEurovision
			TableHeader = 
[=[{| class="wikitable"
|-
!]=] .. ColHeader0 .. '\n!' .. ColHeader1 .. '\n!' .. ColHeader2 .. '\n!' .. ColHeader3 .. ColHeaderx .. '\n' ..
[=[|-
]=]
			TableBottom = '|}\n'
			row = Col0 .. Col1 .. Col2 .. Col3 .. ColYear .. ColEnd
			rows = rows .. row
			Table = TableHeader .. row .. TableBottom
			Tables = Tables .. Table
	end
	
	local Navbox = require('Module:Navbox')
	local box = Navbox._navbox( {
		title = 'Registrerte&nbsp;flagg&nbsp;(' .. Areas .. '&nbsp;områder)',
		name = pagename,
		navbar = 'plain',
		state = 'collapsed',
		list1 = Tables,
	} )
	retval = box
	
	return retval
end

return p