Módulo:Categorização AD e AB de outras wikis

Origem: IRChelp Brasil - Wiki
Ir para navegação Ir para pesquisar


Módulo de suporte de {{Categorização AD e AB de outras wikis}}



local p = { }

local badgesList = {
    Q6540291 = 'portal destacado',
    Q17437796 = 'artigo destacado',
    Q17437798 = 'artigo bom',
    Q17506997 = 'lista destacada',
    --Q6540326 = 'tema destacado',
    Q17507019 = 'Sabias que',
    Q17559452 = 'artigo recomendado',
    Q17580674 = 'portal destacado',
    Q17580678 = 'artigo de qualidade alta',
    Q17580679 = 'artigo de qualidade media',
    Q17580680 = 'artigo de qualidade baixa',
    Q17580682 = 'artigo de alta importância',
}

local badgesCategory = {
    Q17437796 = '!Artigos destacados',
    Q17437798 = '!Artigos bons',
    Q17506997 = '!Listas destacadas',
}

local linkCategoryPrefix = {
    default = '',
}

local linkCategorySuffix = {
    default = ' em Wirchelp sem categoria específica',
    afwiki = ' na Wirchelp em africâner‎',
    alswiki = ' na Wirchelp em alemânico',
    amwiki = ' na Wirchelp em amárico',
    anwiki = ' na Wirchelp em aragonês',
    arwiki = ' na Wirchelp em árabe',
    arzwiki = ' na Wirchelp em árabe egípcio‎ ',
    astwiki = ' na Wirchelp em asturiano',
    aswiki = ' na Wirchelp em assamês',
    azwiki = ' na Wirchelp em azeri',
    bawiki = ' na Wirchelp em baskir',
    barwiki = ' na Wirchelp em bávaro',
    bat_smgwiki = ' na Wirchelp em samogício',
    bewiki = ' na Wirchelp em bielorrusso‎',
    be_taraskwiki = ' na Wirchelp em bielorrusso (taraškievica)',
    bgwiki = ' na Wirchelp em búlgaro',
    bnwiki = ' na Wirchelp em bengali',
    bpywiki = ' na Wirchelp em bishnupriya manipuri',
    brwiki = ' na Wirchelp em bretão',
    bswiki = ' na Wirchelp em bósnio',
    cawiki = ' na Wirchelp em catalão',
    cdowiki = ' na Wirchelp em min dong',
    cebwiki = ' na Wirchelp em cebuano',
    cewiki = ' na Wirchelp em checheno‎',
    cswiki = ' na Wirchelp em checo‎',
    cvwiki = ' na Wirchelp em chuvasio',
    cywiki = ' na Wirchelp em galês',
    dawiki = ' na Wirchelp em dinamarquês',
    dewiki = ' na Wirchelp em alemão',
    dvwiki = ' na Wirchelp em divehi‎',
    elwiki = ' na Wirchelp em grego',
    enwiki = ' na Wirchelp em inglês',
    eowiki = ' na Wirchelp em esperanto',
    eswiki = ' na Wirchelp em espanhol',
    etwiki = ' na Wirchelp em estoniano',
    euwiki = ' na Wirchelp em basco',
    extwiki = ' na Wirchelp em estremenho‎ ',
    fawiki = ' na Wirchelp em persa',
    fiwiki = ' na Wirchelp em finlandês',
    fowiki = ' na Wirchelp em feroês',
    frwiki = ' na Wirchelp em francês',
    frrwiki = ' na Wirchelp em frísio setentrional',
    fywiki = ' na Wirchelp em frísio',
    gawiki = ' na Wirchelp em irlandês',
    gdwiki = ' na Wirchelp em gaélico escocês',
    glwiki = ' na Wirchelp em galego',
    guwiki = ' na Wirchelp em guzerate',
    gvwiki = ' na Wirchelp em manês',
    hewiki = ' na Wirchelp em hebraico',
    hiwiki = ' na Wirchelp em hindi',
    hrwiki = ' na Wirchelp em croata',
    hsbwiki = ' na Wirchelp em alto sorábio',
    htwiki = ' na Wirchelp em crioulo haitiano',
    huwiki = ' na Wirchelp em húngaro',
    hywiki = ' na Wirchelp em armênio',
    iawiki = ' na Wirchelp em interlíngua',
    idwiki = ' na Wirchelp em indonésio',
    iswiki = ' na Wirchelp em islandês',
    itwiki = ' na Wirchelp em italiano',
    jawiki = ' na Wirchelp em japonês',
    jvwiki = ' na Wirchelp em javanês',
    kawiki = ' na Wirchelp em georgiano',
    klwiki = ' na Wirchelp em gronelandês',
    kkwiki = ' na Wirchelp em cazaque',
    kmwiki = ' na Wirchelp em khmer',
    knwiki = ' na Wirchelp em canarês',
    kowiki = ' na Wirchelp em coreano',
    krcwiki = ' na Wirchelp em carachai-balcar‎',
    kuwiki = ' na Wirchelp em curdo',
    kvwiki = ' na Wirchelp em komi',
    lawiki = ' na Wirchelp em latim',
    lbwiki = ' na Wirchelp em luxemburguês',
    lezwiki = ' na Wirchelp em lezgui',
    liwiki = ' na Wirchelp em limburguês',
    lmowiki = ' na Wirchelp em lombardo',
    lowiki = ' na Wirchelp em laociano',
    ltwiki = ' na Wirchelp em lituano',
    lvwiki = ' na Wirchelp em letão',
    map_bmswiki = ' na Wirchelp em banyumasan',
    mgwiki = ' na Wirchelp em malgache',
    minwiki = ' na Wirchelp em minangkabau',
    mkwiki = ' na Wirchelp em macedônio',
    mlwiki = ' na Wirchelp em malaiala‎ ',
    mrwiki = ' na Wirchelp em marata',
    mswiki = ' na Wirchelp em malaio',
    mtwiki = ' na Wirchelp em maltês',
    mwlwiki = ' na Wirchelp em mirandês',
    nahwiki = ' na Wirchelp em náuatle‎',
    napwiki = ' na Wirchelp em napolitano',
    nds_nlwiki = ' na Wirchelp em baixo-saxão neerlandês‎',
    nlwiki = ' na Wirchelp em neerlandês‎',
    nnwiki = ' na Wirchelp em novo norueguês',
    nowiki = ' na Wirchelp em norueguês',
    nvwiki = ' na Wirchelp em navajo',
    ocwiki = ' na Wirchelp em occitano',
    orwiki = ' na Wirchelp em oriá',
    oswiki = ' na Wirchelp em osseta',
    pamwiki = ' na Wirchelp em pamgano',
    piwiki = ' na Wirchelp em pali',
    plwiki = ' na Wirchelp em polonês',
    ptwiki = '',
    quwiki = ' na Wirchelp em quíchua‎',
    rowiki = ' na Wirchelp em romeno',
    ruwiki = ' na Wirchelp em russo',
    sawiki = ' na Wirchelp em sânscrito',
    scnwiki = ' na Wirchelp em siciliano',
    scowiki = ' na Wirchelp em scots',
    shwiki = ' na Wirchelp em servo-croata',
    simplewiki = ' na Wirchelp em inglês básico',
    skwiki = ' na Wirchelp em eslovaco',
    slwiki = ' na Wirchelp em esloveno',
    sqwiki = ' na Wirchelp em albanês',
    srwiki = ' na Wirchelp em sérvio',
    srnwiki = ' na Wirchelp em sranan tongo',
    stqwiki = ' na Wirchelp em frísio oriental',
    svwiki = ' na Wirchelp em sueco',
    swwiki = ' na Wirchelp em suaíli‎',
    szlwiki = ' na Wirchelp em silesiano',
    tawiki = ' na Wirchelp em tâmil',
    tewiki = ' na Wirchelp em telugu',
    thwiki = ' na Wirchelp em tailandês',
    tlwiki = ' na Wirchelp em tagalo',
    tnwiki = ' na Wirchelp em tsuana',
    trwiki = ' na Wirchelp em turco',
    ttwiki = ' na Wirchelp em tártaro',
    ukwiki = ' na Wirchelp em ucraniano',
    urwiki = ' na Wirchelp em urdu',
    uzwiki = ' na Wirchelp em uzbeque',
    vecwiki = ' na Wirchelp em vêneto',
    vepwiki = ' na Wirchelp em vepsio',
    viwiki = ' na Wirchelp em vietnamita',
    vlswiki = ' na Wirchelp em flamengo ocidental',
    vowiki = ' na Wirchelp em volapuque‎',
    wawiki = ' na Wirchelp em valão',
    warwiki = ' na Wirchelp em samareno',
    yiwiki = ' na Wirchelp em iídiche',
    yowiki = ' na Wirchelp em iorubá',
    zhwiki = ' na Wirchelp em chinês',
    zh_classicalwiki = ' na Wirchelp em chinês clássico',
    zh_min_nanwiki = ' na Wirchelp em chinês min nan',
    zh_yuewiki = ' na Wirchelp em cantonês',
    }

function p.badgesCategories( frame )
    local entity = mw.wikibase.getEntityObject()
    local wikitext = {}
    local categoryNs = mw.site.namespaces[14].name
    if not entity then
        return ''
    end
   
    for siteid, linkTable in pairs( entity.sitelinks ) do
        for i, badgeId in ipairs( entity.sitelinks[ siteid ].badges ) do
            if badgesCategory[ badgeId ] and string.sub(siteid, -4) == 'wiki' then
                local prefix = linkCategoryPrefix[ siteid ] or linkCategoryPrefix.default or ''
                local main = badgesCategory[ badgeId ] or ''
                local suffix = linkCategorySuffix[ siteid ] or linkCategorySuffix.default or ''
                local category = string.format('[[%s:%s]]', categoryNs, prefix .. main .. suffix )
                table.insert( wikitext, category )
            end
        end
    end
    return table.concat( wikitext )
end

function p.hasAnyBadge( frame )
    local entity = mw.wikibase.getEntityObject()
    if not entity then
        return ''
    end
    for siteid, linkTable in pairs( entity.sitelinks ) do
        if next(entity.sitelinks[ siteid ].badges) ~= nil then
            return '1'
        end
    end
    return ''
end

return p