Module:Chronology: Difference between revisions
MusikAnimal (talk | contribs) No edit summary |
MusikAnimal (talk | contribs) No edit summary |
||
(18 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
['albums'] = { | ['albums'] = { | ||
{ title = 'Nothing Ever Changes', year = 1988 }, | { title = 'Nothing Ever Changes', year = 1988 }, | ||
{ title = 'The Smashing Pumpkins', year = 1989 | { title = 'The Smashing Pumpkins (album)', year = 1989 }, | ||
{ title = 'Moon Demo', year = 1989 }, | { title = 'Moon Demo', year = 1989 }, | ||
{ title = 'Gish', year = 1991 }, | { title = 'Gish', year = 1991 }, | ||
Line 19: | Line 19: | ||
{ title = 'Live at Cabaret Metro 10-5-88', year = 2000 }, | { title = 'Live at Cabaret Metro 10-5-88', year = 2000 }, | ||
{ title = 'Rotten Apples', year = 2001 }, | { title = 'Rotten Apples', year = 2001 }, | ||
{ title = 'Earphoria', year = 2002 }, | { title = 'Earphoria', year = 2002 }, | ||
{ title = 'Rarities and B-Sides', year = 2005 }, | { title = 'Rarities and B-Sides', year = 2005 }, | ||
Line 27: | Line 26: | ||
{ title = 'Oceania', year = 2011 }, | { title = 'Oceania', year = 2011 }, | ||
{ title = 'Monuments to an Elegy', year = 2014 }, | { title = 'Monuments to an Elegy', year = 2014 }, | ||
{ title = 'Shiny and Oh So Bright | { title = 'Shiny and Oh So Bright - Vol. 1 / LP: No Past. No Future. No Sun.', year = 2018 }, | ||
{ title = 'CYR', year = 2020 }, | |||
{ title = 'Live at the Viper Room 1.15.98', year = 2021 }, | |||
{ title = 'Live at Kawasaki 2.24.92', year = 2022 }, | |||
{ title = 'The Rubano Tapes Vol. 1', year = 2022 }, | |||
{ title = 'The Rubano Tapes Vol. 2', year = 2022 }, | |||
{ title = 'ATUM', year = 2023 }, | |||
{ title = 'Smashing Pumpkins 4/12/94', year = 2023 }, | |||
{ title = 'London By Day', year = 2023 }, | |||
{ title = 'SP on the Radio 1988-89 / Starchildren Live 8.18.90', year = 2024 }, | |||
}, | }, | ||
['singles'] = { | ['singles'] = { | ||
Line 66: | Line 74: | ||
{ title = 'Panopticon', year = 2012 }, | { title = 'Panopticon', year = 2012 }, | ||
{ title = 'Being Beige', year = 2014 }, | { title = 'Being Beige', year = 2014 }, | ||
{ title = 'One and All | { title = 'One and All', year = 2014 }, | ||
{ title = 'Drum + Fife', year = 2014 }, | { title = 'Drum + Fife', year = 2014 }, | ||
{ title = 'Run2me', year = 2015 }, | { title = 'Run2me', year = 2015 }, | ||
{ title = 'Solara', year = 2018 }, | { title = 'Solara', year = 2018 }, | ||
{ title = 'Silvery Sometimes (Ghosts)', year = 2018 } | { title = 'Silvery Sometimes (Ghosts)', year = 2018 }, | ||
{ title = 'Knights of Malta', year = 2018 }, | |||
{ title = 'Cyr (song)', year = 2020 }, | |||
{ title = 'Confessions of a Dopamine Addict', year = 2020 }, | |||
{ title = 'Anno Santana', year = 2020 }, | |||
{ title = 'Ramona', year = 2020 }, | |||
{ title = 'Purple Blood', year = 2020 }, | |||
{ title = 'Beguiled', year = 2022 }, | |||
{ title = 'Mayonaise', year = 2023 }, | |||
} | } | ||
}, | }, | ||
Line 77: | Line 93: | ||
{ title = 'TheFutureEmbrace', year = 2005 }, | { title = 'TheFutureEmbrace', year = 2005 }, | ||
{ title = 'Ogilala', year = 2017 }, | { title = 'Ogilala', year = 2017 }, | ||
{ title = 'Cotillions', year = 2019 } | { title = 'Cotillions', year = 2019 }, | ||
{ title = 'Neath The Darkest Eves', year = 2023 }, | |||
{ title = 'Candide', year = 2023 } | |||
}, | }, | ||
['singles'] = { | ['singles'] = { | ||
Line 99: | Line 117: | ||
['albums'] = { | ['albums'] = { | ||
{ title = 'Life Begins Again', year = 2005 }, | { title = 'Life Begins Again', year = 2005 }, | ||
{ title = 'The Parable', year = 2017 } | { title = 'The Parable', year = 2017 }, | ||
{ title = 'Honor', year = 2020 } | |||
} | |||
}, | |||
['Sierra Swan'] = { | |||
['albums'] = { | |||
{ title = 'Selections From \'Ladyland\'', year = 2005 }, | |||
{ title = 'Ladyland', year = 2006 }, | |||
{ title = 'Coward EP', year = 2007 }, | |||
{ title = 'Queen of the Valley', year = 2008 }, | |||
{ title = 'Girl Who Cried Wolf', year = 2009 }, | |||
{ title = 'The Sun Sessions', year = 2011 }, | |||
{ title = 'Good Soldier', year = 2014 }, | |||
{ title = 'Tangerines', year = 2021 } | |||
} | } | ||
}, | }, |
Latest revision as of 17:57, 12 May 2024
Documentation for this module may be created at Module:Chronology/doc
local p = {};
local data = {
['The Smashing Pumpkins'] = {
['albums'] = {
{ title = 'Nothing Ever Changes', year = 1988 },
{ title = 'The Smashing Pumpkins (album)', year = 1989 },
{ title = 'Moon Demo', year = 1989 },
{ title = 'Gish', year = 1991 },
{ title = 'Lull', year = 1991 },
{ title = 'Peel Sessions', year = 1992 },
{ title = 'Siamese Dream', year = 1993 },
{ title = 'Siamese Singles', year = 1994 },
{ title = 'Pisces Iscariot', year = 1994 },
{ title = 'Mellon Collie and the Infinite Sadness', year = 1995 },
{ title = 'The Aeroplane Flies High', year = 1996 },
{ title = 'Adore', year = 1998 },
{ title = 'Machina/The Machines of God', year = 2000},
{ title = 'Machina II/The Friends & Enemies of Modern Music', year = 2000 },
{ title = 'Live at Cabaret Metro 10-5-88', year = 2000 },
{ title = 'Rotten Apples', year = 2001 },
{ title = 'Earphoria', year = 2002 },
{ title = 'Rarities and B-Sides', year = 2005 },
{ title = 'Zeitgeist', year = 2007 },
{ title = 'American Gothic', year = 2007 },
{ title = 'Teargarden by Kaleidyscope', year = 2009 },
{ title = 'Oceania', year = 2011 },
{ title = 'Monuments to an Elegy', year = 2014 },
{ title = 'Shiny and Oh So Bright - Vol. 1 / LP: No Past. No Future. No Sun.', year = 2018 },
{ title = 'CYR', year = 2020 },
{ title = 'Live at the Viper Room 1.15.98', year = 2021 },
{ title = 'Live at Kawasaki 2.24.92', year = 2022 },
{ title = 'The Rubano Tapes Vol. 1', year = 2022 },
{ title = 'The Rubano Tapes Vol. 2', year = 2022 },
{ title = 'ATUM', year = 2023 },
{ title = 'Smashing Pumpkins 4/12/94', year = 2023 },
{ title = 'London By Day', year = 2023 },
{ title = 'SP on the Radio 1988-89 / Starchildren Live 8.18.90', year = 2024 },
},
['singles'] = {
{ title = 'I Am One', year = 1990 },
{ title = 'Tristessa', year = 1990 },
{ title = 'Siva', year = 1991 },
{ title = 'Rhinoceros', year = 1991 },
{ title = 'Drown', year = 1992 },
{ title = 'Cherub Rock', year = 1993 },
{ title = 'Today', year = 1993 },
{ title = 'Disarm', year = 1994 },
{ title = 'Rocket', year = 1994 },
{ title = 'Bullet with Butterfly Wings', year = 1995 },
{ title = '1979', year = 1996 },
{ title = 'Zero', year = 1996 },
{ title = 'Tonight, Tonight', year = 1996 },
{ title = 'Muzzle', year = 1996 },
{ title = 'Thirty-Three', year = 1996 },
{ title = 'Eye', year = 1997 },
{ title = 'The End Is the Beginning Is the End', year = 1997 },
{ title = 'Ava Adore', year = 1998 },
{ title = 'Perfect', year = 1998 },
{ title = 'Crestfallen', year = 1998 },
{ title = 'To Sheila', year = 1999 },
{ title = 'The Everlasting Gaze', year = 1999 },
{ title = 'Stand Inside Your Love', year = 2000 },
{ title = 'I of the Mourning', year = 2000 },
{ title = 'Try, Try, Try', year = 2000 },
{ title = 'Heavy Metal Machine', year = 2000 },
{ title = 'Untitled', year = 2000 },
{ title = 'Tarantula', year = 2007 },
{ title = "That's the Way (My Love Is)", year = 2007 },
{ title = 'G.L.O.W.', year = 2008 },
{ title = 'Widow Wake My Mind', year = 2010 },
{ title = 'Freak', year = 2010 },
{ title = 'Owata', year = 2011 },
{ title = 'The Celestials', year = 2012 },
{ title = 'Panopticon', year = 2012 },
{ title = 'Being Beige', year = 2014 },
{ title = 'One and All', year = 2014 },
{ title = 'Drum + Fife', year = 2014 },
{ title = 'Run2me', year = 2015 },
{ title = 'Solara', year = 2018 },
{ title = 'Silvery Sometimes (Ghosts)', year = 2018 },
{ title = 'Knights of Malta', year = 2018 },
{ title = 'Cyr (song)', year = 2020 },
{ title = 'Confessions of a Dopamine Addict', year = 2020 },
{ title = 'Anno Santana', year = 2020 },
{ title = 'Ramona', year = 2020 },
{ title = 'Purple Blood', year = 2020 },
{ title = 'Beguiled', year = 2022 },
{ title = 'Mayonaise', year = 2023 },
}
},
['Billy Corgan'] = {
['albums'] = {
{ title = 'TheFutureEmbrace', year = 2005 },
{ title = 'Ogilala', year = 2017 },
{ title = 'Cotillions', year = 2019 },
{ title = 'Neath The Darkest Eves', year = 2023 },
{ title = 'Candide', year = 2023 }
},
['singles'] = {
{ title = 'Walking Shade', year = 2005 },
{ title = 'Mina Loy (M.O.H.)', year = 2005 },
{ title = 'Aeronaut', year = 2017 }
}
},
['James Iha'] = {
['albums'] = {
{ title = 'Let It Come Down', year = 1998 },
{ title = 'Look to the Sky', year = 2012 }
},
['singles'] = {
{ title = 'Be Strong Now', year = 1998 },
{ title = 'Jealousy', year = 1998 },
{ title = 'To Who Knows Where', year = 2012 }
}
},
['Jimmy Chamberlin Complex'] = {
['albums'] = {
{ title = 'Life Begins Again', year = 2005 },
{ title = 'The Parable', year = 2017 },
{ title = 'Honor', year = 2020 }
}
},
['Sierra Swan'] = {
['albums'] = {
{ title = 'Selections From \'Ladyland\'', year = 2005 },
{ title = 'Ladyland', year = 2006 },
{ title = 'Coward EP', year = 2007 },
{ title = 'Queen of the Valley', year = 2008 },
{ title = 'Girl Who Cried Wolf', year = 2009 },
{ title = 'The Sun Sessions', year = 2011 },
{ title = 'Good Soldier', year = 2014 },
{ title = 'Tangerines', year = 2021 }
}
},
['Tribute'] = {
['albums'] = {
{ title = 'Ghost Children: A Tribute To The Smashing Pumpkins', year = 2001 },
{ title = 'Ghost Children/Friends and Enemies', year = 2006 },
{ title = 'MySpace Smashing Pumpkins Tribute', year = 2007 }
}
}
}
function p._track_listing( album, song )
local cargo = mw.ext.cargo
local results = cargo.query(
'track_listings',
'track, song',
{ where = 'work = "' .. album .. '" AND main_listing = 1' }
)
for r = 1, #results do
local result = results[r]
if result.song == song then
local wikitext = "{| style='background: transparent; width: 100%; min-width: 100%; border-collapse: collapse'"
wikitext = wikitext .. "\n|- style='line-height: 1.4em;'"
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em .1em .2em 0' |"
if r > 1 then
local prev_song = results[r - 1]
wikitext = wikitext .. prev_song.track .. '.<br/>"[[' .. prev_song.song .. ']]"'
end
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em .1em' |"
wikitext = wikitext .. result.track .. '.<br/>"[[' .. result.song .. ']]"'
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em 0 .2em .1em' |"
if results[r + 1] ~= nil then
local next_song = results[r + 1]
wikitext = wikitext .. next_song.track .. '.<br/>"[[' .. next_song.song .. ']]"'
end
return wikitext .. "\n|}"
end
end
return ''
end
function p.track_listing( frame )
return p._track_listing( frame.args[1], frame.args[2] )
end
function p.check( frame )
local artist = frame.args[1]
local kind = frame.args[2]
local title = frame.args[3]
if data[artist] == nil then
return ''
end
if data[artist][kind] == nil then
return ''
end
for _i, subject in ipairs(data[artist][kind]) do
if title == subject.title then
return 'true'
end
end
return ''
end
local function entry(row, kind, current)
local formatting = "''" -- For albums
if kind == 'singles' then
formatting = '"'
end
if current then
formatting = formatting .. "'''"
end
local link = row.title
if row.link ~= nil then
link = row.link .. "|" .. row.title
end
return formatting .. "[[" .. link .. "]]" .. formatting .. "<br/>(" .. row.year .. ")"
end
function p.main( frame )
local artist = frame.args[1]
local kind = frame.args[2]
local title = frame.args[3]
if data[artist] == nil then
return ''
end
local collection = data[artist][kind]
if collection == nil then
return ''
end
for i, subject in ipairs(collection) do
if title == subject.title then
local wikitext = "{| style='background: transparent; width: 100%; min-width: 100%; border-collapse: collapse'"
wikitext = wikitext .. "\n|- style='line-height: 1.4em;'"
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em .1em .2em 0' |"
if i > 1 then
wikitext = wikitext .. entry(collection[i - 1], kind, false)
end
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em .1em' |"
wikitext = wikitext .. entry(subject, kind, true)
wikitext = wikitext .. "\n| style='width: 33%; text-align: center; vertical-align: top; padding: .2em 0 .2em .1em' |"
if collection[i + 1] ~= nil then
wikitext = wikitext .. entry(collection[i + 1], kind, false)
end
return wikitext .. "\n|}"
end
end
return ''
end
return p