Módulo:Citar série

local s = require('Módulo:Citação/CS1')

--[[--------------------------< e . s e r i e >------------------------------------

Este é o método principal da predefinição {{citar série}}

]]

s.serie = function(frame)
    -- lista de parâmetros usados apenas neste módulo
    frame.whitelist = {
        ['episódio'] = true,
        episodio = true,
        episode = true
    }
    local config, args, A = tratarArgumentos(frame)
    config.CitationClass = ''
    config.naoUsaPage = true
    local B
    local sepc = set_style (A.Mode:lower())
    
    cfg.aliases.Chapter = {'episodio', 'episódio', 'episode'}

    -- verefica wikimarkup em |series-link= ou em |series= quando |series-link= estiver definido
    link_title_ok (A.SeriesLink, A:ORIGIN ('SeriesLink'), A.Series, 'series')

    local s, n = {}, {};
    if is_set(A.Network) then table.insert(n, A.Network); end
    if is_set(A.Station) then table.insert(n, A.Station); end
    A.ID = table.concat(n, sepc .. ' ');

    if not is_set (A.Date) and is_set (A.AirDate) then
        A.Date = A.AirDate
    end

    -- esvaziado por não er suportado
    A.Issue = ''
    if is_set (A.Series) and is_set (A.SeriesLink) then
        A.Series = '[[' .. A.SeriesLink .. '|' .. A.Series .. ']]'
    end
    A.Series = wrap_style ('italic-title', A.Series) -- series é italizado

    -- Função com o código abstraído
    A, B = citation0( config, args, A)

    config.CitationClass = 'serial'
    B.config = config

    return textoFinal(A, B)
end

return s