Modul:Vorlage:LeMO

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Die Dokumentation für dieses Modul kann unter Modul:Vorlage:LeMO/Doku erstellt werden

--[=[ 2014-10-08
Vorlage:LeMO

Behelfsmäßige Reparatur der im Herbst 2014 umgestellten URL.
]=]


-- Export
local p = { }

p.fix = function (frame)
    local r = ""
    local pars  = frame:getParent().args
    local oldid = pars[ 1 ] or pars.ID
    local titel = pars[ 2 ] or pars.Titel or pars.linktext
    local autor = pars[ 3 ] or pars.Autor or pars.autoren
    local shift = pars.ID2014
    local HDG   = pars.HDG
    if shift == "" then
        shift = false
    end
    if not titel  or  titel == "" then
        titel = mw.title.getCurrentTitle().text
        if titel:find( "(", 3, true ) then
            local s = titel:match( "^(.+) %(.+%)$" )
            if s then
                titel = s
            end
        end
    end
    if not shift then
        if not oldid and pars.url then
            local url = pars.url .. ".html"
            shift = url:match( "%....%.de/lemo/[Bb]iografie/(%l+%-%l+-?%l*)%.html" )
        elseif oldid then
            local nach, vor = oldid:match( "^%s*(%u%l+)(%u%l*)%s*$" )
            if nach then
                shift = string.format( "%s-%s", vor, nach ):lower()
            else
                r = "[[Kategorie:Wikipedia:Vorlagenfehler/Vorlage:LeMO/Namensformat]]"
            end
        end
    end
    if shift then
        if autor then
            r = autor .. ": "
        end
        if HDG ~= "1" then
            HDG = false
        end
        if pars.url  and not  HDG then
            HDG = pars.url:lower():find( "//www.hdg.de/lemo/", 1, true )
        end
        if HDG then
            r = r .. "[http://www.hdg.de"
        else
            r = r .. "[//www.dhm.de"
        end
        r = r .. "/lemo/biografie/" .. shift
        if HDG then
            r = r .. ".html"
        end
        r = r .. " ''" .. titel .. "''.] Tabellarischer Lebenslauf"
        if pars.url or pars.linktext or pars.autoren then
            r = r .. "[[Kategorie:Wikipedia:Vorlagenfehler/Vorlage:LeMO/transit]]"
        end
        if HDG then
            r = r .. "[[Kategorie:Wikipedia:Vorlagenfehler/Vorlage:LeMO/HDG]]"
        end
    else
        r = titel
            .. " <span class=\"error\">[[Vorlage:LeMO]]</span>[[Kategorie:Wikipedia:Vorlagenfehler/Vorlage:LeMO/Parameterfehler]]"
    end
    r = r .. " im [[Deutsches Historisches Museum#LeMO|LeMO]] "
          .. "([[Deutsches Historisches Museum|DHM]] und [[Haus der Geschichte|HdG]])"
    return r
end -- p.fix

return p