Module:Upcoming Birthdays: Difference between revisions
From NOISZ Wiki
RiceEmpress (talk | contribs) mNo edit summary |
RiceEmpress (talk | contribs) No edit summary |
||
| Line 33: | Line 33: | ||
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 | birthdayString = birthdayString .. v[3] .. ' - ' .. v[1] .. ' (' ..math.ceil(v[2]/86400) .. ' days) <br/>' | ||
end | end | ||
end | end | ||
return | return string.sub(birthdaySub,1,string.len(birthdaySub) - 4) | ||
end | end | ||
return p | return p | ||
Revision as of 11:56, 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 = ''
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
birthdayString = birthdayString .. v[3] .. ' - ' .. v[1] .. ' (' ..math.ceil(v[2]/86400) .. ' days) <br/>'
end
end
return string.sub(birthdaySub,1,string.len(birthdaySub) - 4)
end
return p