Modulo:Cita premio giochi

Versione del 2 nov 2014 alle 14:10 di Moroboshi (discussione | contributi) (Nuova pagina: local p = {} local function dump(t, ...) local args = {...} for _, s in ipairs(args) do table.insert(t, s) end end local origins_award_links = {...)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Info Istruzioni per l'uso
Questo è un modulo scritto in Lua. Le istruzioni che seguono sono contenute nella sottopagina Modulo:Cita premio giochi/man (modifica · cronologia)
Sandbox: Modulo:Cita premio giochi/sandbox (modifica · cronologia) · Sottopagine: lista · Test: Modulo:Cita premio giochi/test (modifica · cronologia · esegui)

Modulo Lua per implementare i template:


local p = {}


local function dump(t, ...)
    local args = {...}
    for _, s in ipairs(args) do
        table.insert(t, s)
    end
end

local origins_award_links = {
    ['1974'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1974OriginsAwards/tabid/3212/Default.aspx', 'https://web.archive.org/web/20141007012406/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1974OriginsAwards/tabid/3212/Default.aspx', '2014 ottobre 7'},
    ['1975'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1975OriginsAwards/tabid/3213/Default.aspx', 'https://web.archive.org/web/20141006235152/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1975OriginsAwards/tabid/3213/Default.aspx', '2014 ottobre 6'},
    ['1976'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1976OriginsAwards/tabid/3214/Default.aspx', 'https://web.archive.org/web/20141006181230/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1976OriginsAwards/tabid/3214/Default.aspx', '2014 ottobre 6'},
    ['1977'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1977OriginsAwards/tabid/3215/Default.aspx', 'https://web.archive.org/web/20141006193134/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1977OriginsAwards/tabid/3215/Default.aspx', '2014 ottobre 6'},
    ['1978'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1978OriginsAwards/tabid/3216/Default.aspx', 'https://web.archive.org/web/20141006235620/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1978OriginsAwards/tabid/3216/Default.aspx', '2014 ottobre 6'},
    ['1979'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1979OriginsAwards/tabid/3217/Default.aspx', 'https://web.archive.org/web/20141007010019/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1970s/The1979OriginsAwards/tabid/3217/Default.aspx', '2014 ottobre 7'},
    ['1980'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1980OriginsAwards/tabid/3223/Default.aspx', 'https://web.archive.org/web/20141007022016/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1980OriginsAwards/tabid/3223/Default.aspx', '2014 ottobre 7'},
    ['1981'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1981OriginsAwards/tabid/3224/Default.aspx', 'https://web.archive.org/web/20141006214155/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1981OriginsAwards/tabid/3224/Default.aspx', '2014 ottobre 6'},
    ['1982'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1982OriginsAwards/tabid/3225/Default.aspx', 'https://web.archive.org/web/20141006163659/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1982OriginsAwards/tabid/3225/Default.aspx', '2014 ottobre 6'},
    ['1983'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1983OriginsAwards/tabid/3226/Default.aspx', 'https://web.archive.org/web/20141006234233/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1983OriginsAwards/tabid/3226/Default.aspx', '2014 ottobre 6'},
    ['1984'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1984OriginsAwards/tabid/3227/Default.aspx', 'https://web.archive.org/web/20141007022304/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1984OriginsAwards/tabid/3227/Default.aspx', '2014 ottobre 7'},
    ['1985'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1985OriginsAwards/tabid/3228/Default.aspx', 'https://web.archive.org/web/20141006171124/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1985OriginsAwards/tabid/3228/Default.aspx', '2014 ottobre 6'},
    ['1986'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1986OriginsAwards/tabid/3229/Default.aspx', 'https://web.archive.org/web/20141006205458/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1986OriginsAwards/tabid/3229/Default.aspx', '2014 ottobre 6'},
    ['1987'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1987OriginsAwards/tabid/3230/Default.aspx', 'https://web.archive.org/web/20141006211739/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1987OriginsAwards/tabid/3230/Default.aspx', '2014 ottobre 6'},
    ['1988'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1988OriginsAwards/tabid/3231/Default.aspx', 'https://web.archive.org/web/20141006195939/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1988OriginsAwards/tabid/3231/Default.aspx', '2014 ottobre 6'},
    ['1989'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1989OriginsAwards/tabid/3232/Default.aspx', 'https://web.archive.org/web/20141007024457/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1980s/The1989OriginsAwards/tabid/3232/Default.aspx', '2014 ottobre 7'},
    ['1990'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1990OriginsAwards/tabid/3234/Default.aspx', 'https://web.archive.org/web/20141007005603/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1990OriginsAwards/tabid/3234/Default.aspx', '2014 ottobre 7'},
    ['1991'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1991OriginsAwards/tabid/3235/Default.aspx', 'https://web.archive.org/web/20141007000102/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1991OriginsAwards/tabid/3235/Default.aspx', '2014 ottobre 7'},
    ['1992'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1992OriginsAwards/tabid/3236/Default.aspx', 'https://web.archive.org/web/20141006073549/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1992OriginsAwards/tabid/3236/Default.aspx', '2014 ottobre 6'},
    ['1993'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1993OriginsAwards/tabid/3237/Default.aspx', 'https://web.archive.org/web/20141006220316/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1993OriginsAwards/tabid/3237/Default.aspx', '2014 ottobre 6'},
    ['1994'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1994OriginsAwards/tabid/3238/Default.aspx', 'https://web.archive.org/web/20141006235253/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1994OriginsAwards/tabid/3238/Default.aspx', '2014 ottobre 6'},
    ['1995'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1995OriginsAwards/tabid/3239/Default.aspx', 'https://web.archive.org/web/20141007012401/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1995OriginsAwards/tabid/3239/Default.aspx', '2014 ottobre 7'},
    ['1996'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1996OriginsAwards/tabid/3240/Default.aspx', 'https://web.archive.org/web/20141006122453/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1996OriginsAwards/tabid/3240/Default.aspx', '2014 ottobre 6'},
    ['1997'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1997OriginsAwards/tabid/3241/Default.aspx', 'https://web.archive.org/web/20141006233456/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1997OriginsAwards/tabid/3241/Default.aspx', '2014 ottobre 6'},
    ['1998'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1998OriginsAwards/tabid/3242/Default.aspx', 'https://web.archive.org/web/20141006195337/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1998OriginsAwards/tabid/3242/Default.aspx', '2014 ottobre 6'},
    ['1999'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1999OriginsAwards/tabid/3243/Default.aspx', 'https://web.archive.org/web/20141006174818/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe1990s/The1999OriginsAwards/tabid/3243/Default.aspx', '2014 ottobre 6'},
    ['2000'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2000OriginsAwards/tabid/3245/Default.aspx', 'https://web.archive.org/web/20141007005721/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2000OriginsAwards/tabid/3245/Default.aspx', '2014 ottobre 7'},
    ['2001'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2001OriginsAwards/tabid/3246/Default.aspx', 'https://web.archive.org/web/20141006210217/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2001OriginsAwards/tabid/3246/Default.aspx', '2014 ottobre 6'},
    ['2002'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2002OriginsAwards/tabid/3247/Default.aspx', 'https://web.archive.org/web/20141006172147/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2002OriginsAwards/tabid/3247/Default.aspx', '2014 ottobre 6'},
    ['2003'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2003OriginsAwards/tabid/3248/Default.aspx', 'https://web.archive.org/web/20141007023331/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2003OriginsAwards/tabid/3248/Default.aspx', '2014 ottobre 7'},
    ['2004'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2004OriginsAwards/tabid/3249/Default.aspx', 'https://web.archive.org/web/20141006112722/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2004OriginsAwards/tabid/3249/Default.aspx', '2014 ottobre 6'},
    ['2005'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2005OriginsAwards/tabid/3250/Default.aspx', 'https://web.archive.org/web/20141006113835/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2005OriginsAwards/tabid/3250/Default.aspx', '2014 ottobre 6'},
    ['2006'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2006OriginsAwards/tabid/3251/Default.aspx', 'https://web.archive.org/web/20141007021156/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2006OriginsAwards/tabid/3251/Default.aspx', '2014 ottobre 7'},
    ['2007'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2007OriginsAwards/tabid/3252/Default.aspx', 'https://web.archive.org/web/20141006215646/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2007OriginsAwards/tabid/3252/Default.aspx', '2014 ottobre 6'},
    ['2008'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2008OriginsAwards/tabid/3203/Default.aspx', 'https://web.archive.org/web/20141006192212/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2008OriginsAwards/tabid/3203/Default.aspx', '2014 ottobre 6'},
    ['2009'] = { 'http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2009OriginsAwards/tabid/3196/Default.aspx', 'https://web.archive.org/web/20141006224519/http://www.gama.org/OriginsAwards/OriginsAwardsWinnersThe2000s/The2009OriginsAwards/tabid/3196/Default.aspx', '2014 ottobre 6'},
    ['2010'] = { 'http://www.gama.org/OriginsAwards/37thOriginsAwards/tabid/3193/Default.aspx', 'https://web.archive.org/web/20141007012650/http://www.gama.org/OriginsAwards/37thOriginsAwards/tabid/3193/Default.aspx', '7 ottobre 2014'},
    ['2011'] = { 'http://www.gama.org/OriginsAwards/38thOriginsAwards/tabid/3207/Default.aspx', 'https://web.archive.org/web/20141007032931/http://www.gama.org/OriginsAwards/38thOriginsAwards/tabid/3207/Default.aspx', '7 ottobre 2014'},
    ['2012'] = { 'http://www.gama.org/OriginsAwards/39thOriginsAwards/tabid/3265/Default.aspx', 'https://web.archive.org/web/20141006224021/http://www.gama.org/OriginsAwards/39thOriginsAwards/tabid/3265/Default.aspx', '6 ottobre 2014'},
    ['hall'] = { 'http://www.gama.org/OriginsAwards/HallofFame/tabid/3205/Default.aspx', 'https://web.archive.org/web/20141006235950/http://www.gama.org/OriginsAwards/HallofFame/tabid/3205/Default.aspx', '6 ottobre 2014'}
}

local spiel_des_jahres = {
     ['1979'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=121',
     ['1980'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=161',
     ['1981'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=145',
     ['1982'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=144',
     ['1983'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=143',
     ['1984'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=142',
     ['1985'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=141',
     ['1986'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=140',
     ['1987'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=139',
     ['1988'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=138',
     ['1989'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=137',
     ['1990'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=136',
     ['1991'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=135',
     ['1992'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=134',
     ['1993'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=133',
     ['1994'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=132',
     ['1995'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=131',
     ['1996'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=130',
     ['1997'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=129',
     ['1998'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=128',
     ['1999'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=127',
     ['2000'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=126',
     ['2001'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=156',
     ['2002'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=124',
     ['2003'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=123',
     ['2004'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=148',
     ['2005'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=270',
     ['2006'] = 'http://www.spieldesjahres.de/cms/front_content.php?idcatart=369',
     ['2007'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=469',
     ['2008'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=569',
     ['2009'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=636',
     ['2010'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=756',
     ['2011'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=977',
     ['2012'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=1111',
     ['2013'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=1224',
     ['2014'] = 'http://www.spieldesjahres.de/cms/front_content.php?idart=1365'
}

local ENnies = {
     ['2001'] = 'http://www.ennie-awards.com/blog/about-us/2001-noms-and-winners/',
     ['2002'] = 'http://www.ennie-awards.com/blog/about-us/2002-noms-and-winners/',
     ['2003'] = 'http://www.ennie-awards.com/blog/about-us/2003-noms-and-winners/',
     ['2004'] = 'http://www.ennie-awards.com/blog/about-us/2004-noms-and-winners/',
     ['2005'] = 'http://www.ennie-awards.com/blog/about-us/2005-noms-and-winners/',
     ['2006'] = 'http://www.ennie-awards.com/blog/about-us/2006-noms-and-winners/',
     ['2007'] = 'http://www.ennie-awards.com/blog/about-us/2007-noms-and-winners/',
     ['2008'] = 'http://www.ennie-awards.com/blog/about-us/2008-noms-and-winners/',
     ['2009'] = 'http://www.ennie-awards.com/blog/about-us/2009-noms-and-winners/',
     ['2010'] = 'http://www.ennie-awards.com/blog/about-us/2010-winners/',
     ['2011'] = 'http://www.ennie-awards.com/blog/about-us/2011-nominees-and-winners/',
     ['2012'] = 'http://www.ennie-awards.com/blog/about-us/2012-noms-and-winners/',
     ['2013'] = 'http://www.ennie-awards.com/blog/about-us/2013-noms-and-winners-2/',
     ['2014'] = 'http://www.ennie-awards.com/blog/about-us/2014-ennie-awards-nominees/',
}

function p.cita_origins_award(frame)
    local getArgs = require('Module:Arguments').getArgs
    local args = getArgs(frame)
    local result = ''
    local year = args[1]
    if year and origins_award_links[year] then
        local title
        if year == 'hall' then
            title = 'Hall of Fame Inductees'
        else
            title = 'The ' .. year .. ' Origins Awards - Presented at Origins ' ..  year+1
        end
        local citazione = require( "Modulo:Citazione" );
        frame.args = {
                    CitationClass = 'testo',
                    url = origins_award_links[year][1],
                    urlarchivio = origins_award_links[year][2],
                    dataarchivio = origins_award_links[year][3],
                    titolo = title,
                    accesso = args['accesso'],
                    cid = args['cid'],
                    editore = '[[Game Manufacturers Association]]',
                    lingua = 'en'
        }
        result = citazione.citation(frame)
    else
        result = '<strong class="error">Inserire un anno valido o "hall"</strong>'
    end
    return result
end

function p.cita_spiel_des_jahres(frame)
    local getArgs = require('Module:Arguments').getArgs
    local args = getArgs(frame)
    local result = ''
    local year = args[1]
    if year and spiel_des_jahres[year] then
        local title= 'Ausgezeichnete Spiele ' ..  year
        local url_to_link = spiel_des_jahres[year]
        local citazione = require( "Modulo:Citazione" );
        frame.args = {
                    CitationClass = 'testo',
                    url =  url_to_link,
                    titolo = title,
                    accesso = args['accesso'],
                    cid = args['cid'],
                    editore ='[[Spiel des Jahres]]',
                    lingua = 'de en'
        }
        result = citazione.citation(frame)
    else
        result = '<strong class="error">Inserire un anno valido</strong>'
    end
    return result
end


function p.cita_ENnies(frame)
    local getArgs = require('Module:Arguments').getArgs
    local args = getArgs(frame)
    local result = ''
    local year = args[1]
    if year and ENnies[year] then
        local title= year .. ' ENnie Awards Winners'
        local url_to_link = ENnies[year]
        local citazione = require( "Modulo:Citazione" );
        frame.args = {
                    CitationClass = 'testo',
                    url =  url_to_link,
                    titolo = title,
                    accesso = args['accesso'],
                    cid = args['cid'],
                    editore =  '[[Gen Con]] EN World RPG Awards',
                    lingua = 'en'
        }
        result = citazione.citation(frame)
    else
        result = '<strong class="error">Inserire un anno valido</strong>'
    end
    return result
end

function p.award_list(frame)
    local getArgs = require('Module:Arguments').getArgs
    local args = getArgs(frame)
    local t = {}
    local sources = {
        origins = origins_award_links,
        spiel = spiel_des_jahres,
        ennie = ENnies
    }
    local source_table = sources[args[1]]
    local is_archived = args[1] == 'origins'
    local result = ''
    if source_table then
        local labels = {}
        for label, _ in pairs(source_table) do table.insert(labels, label) end
        table.sort(labels)
        for i, label in ipairs(labels) do
            if is_archived then
                dump(t, '* [', source_table[label][2], ' ', label, ']\n')
            else
                dump(t, '* [', source_table[label], ' ', label, ']\n' )
            end
        end
        result = table.concat(t)
    end
    return result
end

return p