4a67736adc
(core): Add member name caching.
2022-01-20 12:12:17 +02:00
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