Modul:Namespace detect: razlika između inačica

Izvor: Hrvatska internetska enciklopedija
Prijeđi na navigaciju Prijeđi na pretraživanje
mNema sažetka uređivanja
mNema sažetka uređivanja
Redak 51: Redak 51:
     local title = args[1] or mw.title.getCurrentTitle().fullText
     local title = args[1] or mw.title.getCurrentTitle().fullText
     return p._namespaceName(title) or ''
     return p._namespaceName(title) or ''
end
function p.main(frame)
    local args = frame:getParent().args
    local title = args.page or mw.title.getCurrentTitle().fullText
    if args.file then
        return p._namespaceId(title) == 6 and args.file or ''
    end
    if args.other then
        return p._namespaceId(title) ~= 6 and args.other or ''
    end
    return ''
end
end


return p
return p

Inačica od 15. travanj 2026. u 10:15

Lua error: Internal error: The interpreter exited with status 127.


Script error: Lua error: Internal error: The interpreter exited with status 127.

-- Modul:Namespace_detect
-- Minimalna, stabilna verzija kompatibilna s MediaWiki

local p = {}

local getArgs = require('Module:Arguments').getArgs

-- Mapiranje namespace ID → ime
local ns = mw.site.namespaces

-- Funkcija: vrati namespace ID
function p._namespaceId(title)
    if not title then return nil end
    local t = mw.title.new(title)
    if not t then return nil end
    return t.namespace
end

-- Funkcija: vrati namespace ime (lokalizirano)
function p._namespaceName(title)
    local id = p._namespaceId(title)
    if not id then return nil end
    return ns[id].name
end

-- Funkcija: vrati "glavni", "datoteka", "predložak", itd.
function p._namespaceCanonical(title)
    local id = p._namespaceId(title)
    if not id then return nil end
    return ns[id].canonicalName
end

-- Funkcija: provjera je li stranica u glavnom imenskom prostoru
function p._isMain(title)
    return p._namespaceId(title) == 0
end

-- Funkcija: provjera je li stranica u imenskom prostoru predložaka
function p._isTemplate(title)
    return p._namespaceId(title) == 10
end

-- Funkcija: provjera je li stranica u imenskom prostoru modula
function p._isModule(title)
    return p._namespaceId(title) == 828
end

-- Glavna funkcija za #invoke
function p.namespace(frame)
    local args = getArgs(frame)
    local title = args[1] or mw.title.getCurrentTitle().fullText
    return p._namespaceName(title) or ''
end

function p.main(frame)
    local args = frame:getParent().args
    local title = args.page or mw.title.getCurrentTitle().fullText

    if args.file then
        return p._namespaceId(title) == 6 and args.file or ''
    end

    if args.other then
        return p._namespaceId(title) ~= 6 and args.other or ''
    end

    return ''
end

return p