aboutsummaryrefslogtreecommitdiffstats
path: root/bot/exts/christmas (follow)
Commit message (Collapse)AuthorAgeLines
...
* Fix docstrings and add a few explanatory commentsGravatar Sebastiaan Zeeff2020-11-30-3/+6
|
* Remove now redundant advent_of_code_staff constantGravatar Sebastiaan Zeeff2020-11-30-1/+1
| | | | | We're no longer going to use a two-channel setup for this event, as we don't want to split the event community into two, staff and non-staff.
* Remove redundant _error_embed_helper functionGravatar Sebastiaan Zeeff2020-11-30-7/+3
| | | | | | This helper function was only being used in one spot and did not factor out any logic. I've removed the helper function to just create the embed where it's needed.
* Rewrite Advent of Code leaderboard logicGravatar Sebastiaan Zeeff2020-11-30-0/+680
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've rewritten the Advent of Code leaderboard logic. Unfortunately, nearly all of the changes made are interrelated, meaning that they've ended up in the same commit. To add a bit of structure to the extension, I've chosen for a subpackage structure instead of a single file structure. The biggest changes: - Whether or not you get a join code for the staff leaderboard will now be determined by looking for the Helpers-role. - The Python Discord Leaderboard now includes all boards, including the staff leaderboard. This is one event. - Redis is now used to set a cache expiry period. This means that our code does not have to check for cache staleness; Redis will do that for us. - The period "fetching" task has been removed. We now fetch solely when the data is needed to prevent putting unnecessary stress on the Advent of Code website. - The option to display the Global Leaderboard within Discord has been removed. Rather, we now link to the website. This simplified the code for now, although we could add it back later. - An additional command, `.aoc refresh`, has been added to allow Admins and the Events Lead to force the cache to be invalidated. This should be done sparingly to not overburden the AoC website. - I've also made sure that the daily notification task actually pings the notification role by setting the `allowed_mentions` kwarg.
* Remove adventofcode.py in favour of subpackageGravatar Sebastiaan Zeeff2020-11-30-983/+0
| | | | | | As the Advent of Code file was getting massive, I've removed the old single-file based extension as I'm going to replace it with a partially rewritten subpackage-based extension.
* Fix adventofcode extension (and constants) grammarGravatar ks1292020-11-27-10/+10
| | | Co-authored-by: Joe Banks <[email protected]>
* Use default 0 for score and reverse leaderboard membersGravatar ks1292020-11-27-1/+3
|
* Handle leaderboard cache create/update failGravatar ks1292020-11-27-12/+52
|
* Remove unnecessary check for members in leaderboard updater taskGravatar ks1292020-11-27-3/+1
|
* Add comment about choosing leaderboard for userGravatar ks1292020-11-27-0/+1
|
* Store AoC leaderboard IDs instead join codes for users mappingGravatar ks1292020-11-26-5/+10
|
* Implement staff and public leaderboardsGravatar ks1292020-11-26-58/+197
|
* Implement different invitation codes for staff and public leaderboardsGravatar ks1292020-11-25-11/+66
|
* Add staff AoC channel to whitelistGravatar ks1292020-11-24-1/+1
|
* Remove redundant f-stringsGravatar MarkKoz2020-07-14-1/+1
| | | | This fixes a new lint error (F541) introduced by flake8 3.8.
* 5/19 - bot | xmas, easter, evergreen - updated open statesments with ↵Gravatar jodth072020-05-19-1/+1
| | | | explicit encoding
* Refactor: capitalize Month enum membersGravatar kwzrd2020-03-31-2/+2
| | | | Co-authored-by: MarkKoz <[email protected]>
* Deseasonify: log in `add_cog` rather than in each `setup`Gravatar kwzrd2020-03-28-2/+0
| | | | | | | | | | | | The previous system required each extension's `setup` func to log that the cog was loaded. This leads to inconsistent messages all trying to convey the same thing, variable logger names in the output file are difficult to read, and several extensions were not logging at all. By logging directly in the `add_cog` method, we reduce code repetition, ensure consistent format, and remove the responsibility to remember that a log should be made.
* Deseasonify: rename `seasons` pkg to `exts`Gravatar kwzrd2020-03-28-0/+858
It is believed that this is now a more logical name for the package, as extensions no longer bind to seasons. Internally, packages are still grouped into seasonal sub-packages. There are quite a few, and it makes sense to group them by a common theme that inspired their functionality.