Professor Layton Wiki
Advertisement
Professor Layton Wiki

Die Dokumentation für dieses Modul kann unter Modul:Orte Infobox/Doku erstellt werden

--<pre>
local p = {}
local categories = {}
local pgN = mw.title.getCurrentTitle().text
local locationData =  mw.loadData("Modul:OrteDaten")

local function isEmpty(arg) return not arg or arg == '' end
local function getCleanName(pageName) return pageName:match("[^%(]+") end
local function tt(p1, p2) return p2 .. "<br />" .. p1 end

local function addCategory(cat)
	categories[#categories+1] = "[[Kategorie:" .. cat .. "]]"
	return "[[Kategorie:" .. cat .. "]]"
end

-- Solange nicht alle Seiten in Modul:OrteTitel aufgeführt sind,
-- hilft dieser Code, Fehler zu vermeiden.
local function getTitle()
	local orteTitelLeer = {
		["Jp"] = "",
		["En"] = "",
		["It"] = "",
		["Fr"] = "",
		["Sp"] = "",
		["Kr"] = "",
		["Nl"] = "",
		["__FEHLT__"] = true,
	}
	return locationData[pgN] and locationData[pgN] or orteTitelLeer
end

function p.Name() return getCleanName(pgN) end
function p.Titel(frame)
    local code = frame.args[1]
    local title = ""
    local hilf = {
    	["JP"] = {A = "Japanischer Titel fehlt", B = getTitle().Jp},
        ["EN"] = {A = "Englischer Titel fehlt", B = getTitle().En},
        ["US"] = {B = getTitle().Us},
        ["UK"] = {B = getTitle().Uk},
        ["IT"] = {A = "Italienischer Titel fehlt", B = getTitle().It},
        ["FR"] = {A = "Französischer Titel fehlt", B = getTitle().Fr},
        ["SP"] = {A = "Spanischer Titel fehlt", B = getTitle().Sp},
        ["KR"] = {A = "Koreanischer Titel fehlt", B = getTitle().Kr},
        ["NL"] = {A = "Niederländischer Titel fehlt", B = getTitle().Nl},
    }

	-- Fügt Kategorie "Ungelistete Orte-Seite" hinzu
	if not isEmpty(getTitle()["__FEHLT__"]) then
		title = title .. addCategory("Ungelistete Orte-Seite")
	end
	
	if code == "JP" then 
        if not isEmpty(getTitle().Romaji) then
            title = tt(getTitle().Romaji, hilf["JP"].B)
        elseif isEmpty(hilf["JP"].B) then
        	title = "''Unbekannt''" .. addCategory(hilf[code].A)
        end
    elseif code == "KR" then
    	if not isEmpty(hilf["KR"].B) then
    		if not isEmpty(getTitle().Romaja) then
            	title = tt(getTitle().Romaja, hilf["KR"].B)
        	else
        		title = hilf["KR"].B
        	end
        end
    else
    	if isEmpty(hilf[code].B) then
        	if code == "SP" or code == "IT" or code == "FR" then
            	title = "''Unbekannt''" .. addCategory(hilf[code].A)
        	end
    	else
        	title = hilf[code].B
        end
    end
    
    return title
end

return p
--</pre>
Advertisement