Uwaga
Serwis Wedateka jest portalem tematycznym prowadzonym przez Grupę Wedamedia. Aby zostać wedapedystą, czyli Użytkownikiem z prawem do tworzenia i edycji artykułów, wystarczy zarejestrować się na tej witrynie poprzez złożenie wniosku o utworzenie konta, co można zrobić tutaj. Liczymy na Waszą pomoc oraz wsparcie merytoryczne przy rozwoju także naszych innych serwisów tematycznych.

Moduł:WikiStyles

Z Wedateka, archiwa
Przejdź do nawigacji Przejdź do wyszukiwania

Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:WikiStyles/opis

local p = {}
local defaultStyleName = 'default'

function p.somethingUndefined()
	return "<span class='undefinedWikiStyle' id='undefinedWikiStyle'>Błąd wywołania WikiStyles</span>"
end

function p.delegate( frame )
    -- parametr "style" (domyślnie nazwa szablonu, który wywołał)
    -- book - rodzina stylów
    local parent = frame:getParent()
    local styleName = frame.args[ "style" ] or ''
    if (parent and styleName == '') then
        styleName = parent:getTitle()
    end
    if (styleName == '') then
        return p.somethingUndefined()
    end
    local bookName = frame.args[ "book" ] or defaultStyleName
    local target = styleName .. '/' .. bookName
    local newTitle = mw.title.new( target )
    local content = nil
    if ( newTitle ) then
        content = newTitle:getContent()
        if ( content == nil ) then
            target = styleName .. '/' .. defaultStyleName
            newTitle = mw.title.new( target )
            if ( newTitle ) then
                content = newTitle:getContent()
            end
        end
    end
    if ( content == nil ) then
        return p.somethingUndefined()
    end
    return frame:expandTemplate{ title = target, args = parent.args }
end
return p