Commit Graph

55 Commits

Author SHA1 Message Date
50da6b18d2 (sessions): Account for rounding error in expiry.
Also make `_expiry_task` properly cancellable.
Fixes an issue where `schedule_expiry` would always reschedule itself.
2022-01-14 19:38:40 +02:00
b124cf8e1e (timers): Destroy timers when channel is gone. 2022-01-14 18:30:10 +02:00
3d5a1e9942 (sessions): Ignore bots. 2022-01-12 15:37:03 +02:00
b90cfbc615 (help): Add Pomodoro help group. 2022-01-12 10:15:13 +02:00
6b7c708fa2 fix (timer): Fix typo in --text setting. 2022-01-12 09:40:34 +02:00
d1f27ca826 (cmd_now): Wording updates and clear pathway. 2022-01-12 09:02:26 +02:00
1629a34ea1 fix: Add forgotten commands file. 2022-01-11 23:35:04 +02:00
e6e0d7a9a3 (sessions): Add customisable study tags. 2022-01-11 23:31:42 +02:00
29aff1bcb2 (timer): Add timers alias. 2022-01-11 19:54:18 +02:00
9e9ae18a4a (timer): Update notify instruction order.
Resolves a potential race condition between joining and updating.
2022-01-11 19:45:28 +02:00
331dece859 (timer): Lower limit on stage length. 2022-01-11 17:55:22 +02:00
271ecfffa4 (timer): Channel template changes. 2022-01-11 17:51:21 +02:00
4cd4fab68f (timer): Various bugfixes. 2022-01-11 10:32:30 +02:00
f409d2b955 fix (timer): Fix typo. 2022-01-10 19:05:04 +02:00
e6cbd31a23 (timer): Better timer listing UI. 2022-01-10 18:35:51 +02:00
14cab843a3 (timer): Limit number of timers per guild. 2022-01-10 17:23:44 +02:00
dd4fa985df (timer): UI improvements.
Add `pomodoro_channel` guild setting.
Add customisable per-timer text channel.
Improve `reaction_message` flow.
Change algorithm for updating vc name.
Add `stage` and `pattern` vc name substitutions.
2022-01-10 17:02:14 +02:00
5431877569 feature (timer): Core pomodoro system. 2022-01-08 02:58:16 +02:00
6aaa2377a4 refactor: Split stats module from study. 2021-12-29 20:19:35 +02:00
276886a3a7 sharding (general): Add launch data filters.
Filter cached reaction role messages by shardid.
Filter expiring rented room by shardid.
Filter scanned study badges by shardid.
Filter resumed study sessions by shardid.
Filter resumed workouts by shardid.

Fix a spacing issue in the log printer.
2021-12-22 17:26:49 +02:00
1c05d7a880 sharding (blacklists): Blacklist shard support.
Moved the `user_blacklist` and `guild_blacklist` to a client TTL cache.
2021-12-22 13:07:20 +02:00
8208f601d6 (stats): Remove dynamic field-reordering. 2021-12-22 08:18:40 +02:00
e8547f9f4b fix (stats): Fix misnamed variable. 2021-12-15 14:36:09 +02:00
d2a5eed245 Merge branch 'feature-session-tracker' into staging 2021-12-08 12:02:17 +02:00
f18af33fb6 fix (sessions): Recognise accountability sessions. 2021-12-08 11:44:35 +02:00
9d0fd93822 fix (stats): Fix time formatting issue. 2021-12-08 11:44:15 +02:00
d95faed02b fix (stats): Repair some formatting issues. 2021-12-07 11:02:40 +02:00
971446ffb5 (stats): Rewrite to include session data.
Complete `stats` command rewrite to include session data.
Added `get_member_rank` query to get accurate time and coin ranks.
2021-12-06 20:50:32 +02:00
179b6ebf4e (leaderboards): Update to support sessions.
Use `member_totals` to generate leaderboards instead of `members`.
Fix typo in data coin conversion.
2021-12-04 11:36:52 +02:00
bb181d9039 (badges): Update to account for session tracker.
Include current sessions in new badge scans.
Remove the voice update badge hook.
Account for current session in the current badge view.
2021-12-04 11:13:26 +02:00
144ccf9e81 (Lion): Update to account for current session.
Remove `time` pending and syncing logic.
Update `time` and `coins` to account for current session.
Add `Session.duration` for current session duration.
Add `Session.coins_earned` for current session coins.
2021-12-04 10:24:11 +02:00
cffdfb693b (sessions): Add guild join and leave hooks. 2021-12-02 13:16:36 +02:00
fe1cd85511 (sessions): Add UI for daily_study_cap. 2021-12-02 12:51:14 +02:00
734436e2a6 (sessions): Add daily_study_cap system. 2021-12-02 11:48:04 +02:00
ac71c4da9b (sessions): Add study_time_since function.
New `study_time_since` database function from session history.
Add `Lion.timezone`.
Add `Lion.day_start`.
Add `Lion.studied_today`.
Made `Table.queries` an instance variable.
Renamed the session channel types.
2021-11-29 13:33:21 +02:00
9c8dfd6a3a (sessions): Complete launch and init pathway. 2021-11-29 13:31:37 +02:00
2cf66ab600 (stats_cmd): Allow execution before ready. 2021-11-07 16:31:55 +02:00
65fcfe0289 feature (sessions): Core session tracker.
Base `Session` system with event trackers.
2021-10-31 20:15:32 +02:00
5ea7d06dae refactor: Update study module structure.
Prepare `study` module for session and timer systems.
Move regular sync to the studybadge loop.
2021-10-26 17:35:16 +03:00
91454b35cc fix (studybadges): Detect level duplicates.
Detect and complain about duplications in provided studybadge levels.
2021-10-19 21:26:03 +03:00
97e441f911 optimisation: Populate data caches on startup. 2021-10-05 10:21:24 +03:00
6ef6c757fb fix (studytracker): Cast NULL badgeid correctly. 2021-09-30 23:12:28 +03:00
9ae0de034f (Sysadmin): Add guild and user blacklist.
v2 -> v3 data migration for the blacklist tables.
Added blacklists and blacklist commands
Added bot admin level to help groups.
2021-09-28 20:54:22 +03:00
5ca10d5f74 fix (studybadges): Fix empty badge removal error. 2021-09-27 21:43:42 +03:00
f17a2d839a fix (studybadges): Fix cache refresh on update. 2021-09-27 21:31:44 +03:00
ad773c95d3 fix (Trackers): Ignore bots for workout and study. 2021-09-20 10:01:26 +03:00
1a8a50538d fix (Top): Handle empty exclude list. 2021-09-19 13:42:40 +03:00
d39ec3153a (Docs): Update command help categories. 2021-09-19 10:30:25 +03:00
73d210db31 (stats cmd): Fixed rank display.
Added `member_ranks` data view for getting time and coin ranks from db.
2021-09-13 09:28:12 +03:00
912409ec3e (Leaderboards): Filter out 0 entries. 2021-09-13 09:13:35 +03:00