Moduldokumentasjon

Modul:Våpenskjold med undersider brukes av {{Våpenskjold}} for fremvisning av områders våpenskjold.

Modulserien består av følgende sider:

Oppdatering rediger

For å legge til nye data, gjør du følgende:

  1. Gå til undersiden for data, det vil si Modul:Våpenskjold/Data/..., der første bokstav i området som skal legges til avgjør hvilken underside som skal benyttes. Begynner området på A, B eller C, skal undersiden være /a-c, begynner det på D, E eller F, skal undersiden være /d-f, osv...
  2. Når du har funnet riktig underside, legger du inn data på følgende format:
	["OMRÅDE"] = {
		name = "OMRÅDE",
		coat_of_arms = "FILNAVN",
		dispname = "VISNINGSNAVN",
		border = "RAMME",
	},
A) OMRÅDE erstattes med områdets navn. Det kan være en fordel at OMRÅDE har likt navn som sideplasseringen her på no:wp
B) FILNAVN erstattes med hele filnavnet, inkl filtype. Fil: i begynnelsen tas ikke med.
C) VISNINGSNAVN brukes dersom området inneholder parenteser, feks. for Bø (Telemark) settes visningsnavn til . Hvis det ikke er forskjell mellom sidens plassering her på no:wp og ønsket visningsnavn, kan hele linjen dispname fjernes.
D) RAMME erstattes med ønsket ramme, feks. border, middle etc. Standard er frameless, så hvis ingen ramme ønskes, kan hele linjen utgå.
Viktig: Det er viktig å ha med alle kommaer, klammeparenteser etc, slik det er vist i eksempelet.


local p = {}
 
local lang = mw.getContentLanguage()
function p.areaname( frame )
	-- Den første bokstaven i et områdes fulle navn, angir underside hvor data er lagret
	local area_name = lang:lcfirst(frame.args[1])
	local firstLetter = string.sub(area_name, 1, 1)
	local subdata = "Modul:Våpenskjold/Data"
	local datapage;
	datapage = require("Modul:Våpenskjold/Data/nye") -- søker først om våpenskjoldet nylig er lagt til
	if datapage.coat_of_armsdata[frame.args[1]] == nil or datapage.coat_of_armsdata[frame.args[1]] == "" then -- hvis ikke, søkes det etter eksisterende flagg basert på angitt områdes første bokstav
		if string.find(firstLetter, "^[a-c]") then
			datapage = require(subdata .. "/a-c")
		elseif string.find(firstLetter, "^[d-f]") then
			datapage = require(subdata .. "/d-f")
		elseif string.find(firstLetter, "^[g-i]") then
			datapage = require(subdata .. "/g-i")
		elseif string.find(firstLetter, "^[j-l]") then
			datapage = require(subdata .. "/j-l")
		elseif string.find(firstLetter, "^[m-o]") then
			datapage = require(subdata .. "/m-o")
		elseif string.find(firstLetter, "^[p-r]") then
			datapage = require(subdata .. "/p-r")
		elseif string.find(firstLetter, "^[s-u]") then
			datapage = require(subdata .. "/s-u")
		elseif string.find(firstLetter, "^[v-z]") then
			datapage = require(subdata .. "/v-z")
		else
			datapage =  require(subdata .. "/andre") -- hvis angitt område ikke begynner på bokstavene A-Z, havner de her
		end
	end
 
	return datapage
end
 
return p