Module:Upcoming Birthdays
From NOISZ Wiki
Documentation for this module may be created at Module:Upcoming Birthdays/doc
local capiunto = require 'capiunto' local lang = mw.language.getContentLanguage() local currentYear = lang:formatDate("Y") local currentDay = os.time() local p = {} local function sortBirthdays( a, b ) return a[2] < b[2] and b[2] > 0 and a[2] > 0; end function p.main() birthdays = {} birthdays[1] = {'Hikari Aoki',os.difftime(os.time{year=currentYear,month=01,day=22},currentDay)} birthdays[2] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear,month=03,day=14},currentDay)} birthdays[3] = {'Grace Kamenashi',os.difftime(os.time{year=currentYear,month=04,day=01},currentDay)} birthdays[4] = {'Arietta Antiphon',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay)} birthdays[5] = {'Joker',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay)} birthdays[6] = {'Asuka Fujita',os.difftime(os.time{year=currentYear,month=07,day=30},currentDay)} birthdays[7] = {'Sumire Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay)} birthdays[8] = {'Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay)} birthdays[9] = {'Hakuno Nekoda',os.difftime(os.time{year=currentYear,month=12,day=25},currentDay)} birthdays[10] = {'Shion Nekoda',os.difftime(os.time{year=currentYear,month=12,day=29},currentDay)} birthdays[11] = {'Hikari Aoki',os.difftime(os.time{year=currentYear+1,month=01,day=22},currentDay)} birthdays[12] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear+1,month=03,day=14},currentDay)} table.sort(birthdays, sortBirthdays) local removed = 0 for k, v in pairs(birthdays) do if v[2] < 0 then table.remove(birthdays,k - removed) removed = removed + 1 end end return mw.dumpObject(birthdays) end return p