Module:Upcoming Birthdays: Difference between revisions
From NOISZ Wiki
RiceEmpress (talk | contribs) mNo edit summary Tag: Manual revert |
RiceEmpress (talk | contribs) No edit summary |
||
Line 14: | Line 14: | ||
birthdays = {} | birthdays = {} | ||
birthdays[1] = {' | birthdays[1] = {'Hikari Aoki',os.difftime(os.time{year=currentYear,month=01,day=22},currentDay),'January 22nd'} | ||
birthdays[2] = {' | birthdays[2] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear,month=03,day=14},currentDay),'March 14th'} | ||
birthdays[3] = {' | birthdays[3] = {'Grace Kamenashi',os.difftime(os.time{year=currentYear,month=04,day=01},currentDay),'April 1st'} | ||
birthdays[4] = {' | birthdays[4] = {'Arietta Antiphon',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay),'June 18th'} | ||
birthdays[5] = {' | birthdays[5] = {'Joker',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay),'June 18th'} | ||
birthdays[6] = {' | birthdays[6] = {'Asuka Fujita',os.difftime(os.time{year=currentYear,month=07,day=30},currentDay),'July 30th'} | ||
birthdays[7] = {' | birthdays[7] = {'Sumire Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay),'September 9th'} | ||
birthdays[8] = {' | birthdays[8] = {'Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay),'September 9th'} | ||
birthdays[9] = {' | birthdays[9] = {'Hakuno Nekoda',os.difftime(os.time{year=currentYear,month=12,day=25},currentDay),'December 25th'} | ||
birthdays[10] = {' | birthdays[10] = {'Shion Nekoda',os.difftime(os.time{year=currentYear,month=12,day=29},currentDay),'December 29th'} | ||
birthdays[11] = {' | birthdays[11] = {'Hikari Aoki',os.difftime(os.time{year=currentYear+1,month=01,day=22},currentDay),'January 22nd'} | ||
birthdays[12] = {' | birthdays[12] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear+1,month=03,day=14},currentDay),'March 14th'} | ||
birthdays[13] = {' | birthdays[13] = {'Grace Kamenashi',os.difftime(os.time{year=currentYear+1,month=04,day=01},currentDay),'April 1st'} | ||
table.sort(birthdays, sortBirthdays) | table.sort(birthdays, sortBirthdays) | ||
local numBirthdays = 0 | local numBirthdays = 0 | ||
local birthdayString = '' | local birthdayString = '' | ||
local galleryString = '{{SL Story Gallery|spacerheight=20px' | |||
for k, v in pairs(birthdays) do | for k, v in pairs(birthdays) do | ||
if (v[2] > 0 and numBirthdays < 3 and v[2] < 2592000) or (numBirthdays < 2 and v[2] > 0) then | if (v[2] > 0 and numBirthdays < 3 and v[2] < 2592000) or (numBirthdays < 2 and v[2] > 0) then | ||
numBirthdays = numBirthdays + 1 | numBirthdays = numBirthdays + 1 | ||
birthdayString = birthdayString .. v[3] .. ' - ' .. v[1] .. ' (' ..math.ceil(v[2]/86400) .. ' days) <br/>' | gallerystring = galleryString .. '|char' .. numBirthdays .. '=' .. v[1] | ||
birthdayString = birthdayString .. '[[' .. v[3] .. ']] - ' .. v[1] .. ' (' ..math.ceil(v[2]/86400) .. ' days) <br/>' | |||
end | end | ||
end | end | ||
return birthdayString | return galleryString .. '}} <br/>' .. birthdayString | ||
end | end | ||
return p | return p |
Revision as of 13:12, 29 September 2025
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; end function p.main() birthdays = {} birthdays[1] = {'Hikari Aoki',os.difftime(os.time{year=currentYear,month=01,day=22},currentDay),'January 22nd'} birthdays[2] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear,month=03,day=14},currentDay),'March 14th'} birthdays[3] = {'Grace Kamenashi',os.difftime(os.time{year=currentYear,month=04,day=01},currentDay),'April 1st'} birthdays[4] = {'Arietta Antiphon',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay),'June 18th'} birthdays[5] = {'Joker',os.difftime(os.time{year=currentYear,month=06,day=18},currentDay),'June 18th'} birthdays[6] = {'Asuka Fujita',os.difftime(os.time{year=currentYear,month=07,day=30},currentDay),'July 30th'} birthdays[7] = {'Sumire Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay),'September 9th'} birthdays[8] = {'Hitori',os.difftime(os.time{year=currentYear,month=09,day=09},currentDay),'September 9th'} birthdays[9] = {'Hakuno Nekoda',os.difftime(os.time{year=currentYear,month=12,day=25},currentDay),'December 25th'} birthdays[10] = {'Shion Nekoda',os.difftime(os.time{year=currentYear,month=12,day=29},currentDay),'December 29th'} birthdays[11] = {'Hikari Aoki',os.difftime(os.time{year=currentYear+1,month=01,day=22},currentDay),'January 22nd'} birthdays[12] = {'Sera Hoshikawa',os.difftime(os.time{year=currentYear+1,month=03,day=14},currentDay),'March 14th'} birthdays[13] = {'Grace Kamenashi',os.difftime(os.time{year=currentYear+1,month=04,day=01},currentDay),'April 1st'} table.sort(birthdays, sortBirthdays) local numBirthdays = 0 local birthdayString = '' local galleryString = '{{SL Story Gallery|spacerheight=20px' for k, v in pairs(birthdays) do if (v[2] > 0 and numBirthdays < 3 and v[2] < 2592000) or (numBirthdays < 2 and v[2] > 0) then numBirthdays = numBirthdays + 1 gallerystring = galleryString .. '|char' .. numBirthdays .. '=' .. v[1] birthdayString = birthdayString .. '[[' .. v[3] .. ']] - ' .. v[1] .. ' (' ..math.ceil(v[2]/86400) .. ' days) <br/>' end end return galleryString .. '}} <br/>' .. birthdayString end return p