Commit Graph

314 Commits

Author SHA1 Message Date
f3cf4fcb5a fix (accountability): Disallow near bookings.
Don't allow members to book within 11 minutes of the room start.
Patches a race condition where the open room doesn't include the member.
2021-12-22 08:57:57 +02:00
d2fd3c9c0d fix (renting): Disallow removing owner.
Don't allow the room owner to be added or removed from the rented room.
Also fixes an issue where the room expiry log would try to use deleted data.
2021-12-22 08:34:38 +02:00
8208f601d6 (stats): Remove dynamic field-reordering. 2021-12-22 08:18:40 +02:00
73e329ee94 fix (LionModule): Fix channel existence ward.
Fixes an issue where all commands would fail in DMs.
2021-12-22 08:14:32 +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
b273ae0596 (data): Update version and migration. 2021-12-07 13:23:13 +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
Harsha Raghu
4582d9a1a1 Implement proper check for admin 2021-12-06 19:50:28 +05:30
Harsha Raghu
d529daaa27 [Guild_Admin] set_coins Admin command 2021-12-06 19:14:47 +05:30
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
3abac63379 style (config): Add closest-match suggestions. 2021-12-02 12:50:23 +02:00
3cb9d97e1e fix: Improve launch caching systems. 2021-12-02 12:01:12 +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
fc3246913f fix (core): Update guild_config definition.
Increase the cache size, and update the columns.
2021-11-07 16:27:38 +02:00
0b5be79b69 (LionModule): Improve startup handling.
Update `cmdClient` pointer for module launch updates.
Implement module launch wait logic in `pre_command`.
Add details to `SafeCancellation` calls in `pre_command`.
2021-11-07 16:14:26 +02:00
0fbf7c8903 fix (seekers): Consider news channels as text.
Non-canonical hack to `find_channel` to include `news` types in `text`.
2021-11-07 15:23:14 +02:00
e797b67c3b fix (rooms): Remove speak permission from room. 2021-11-07 15:09:06 +02:00
db6cc078db fix (rroles): Off by one error in maximum. 2021-11-07 15:05:05 +02:00
4c21160b31 fix (rroles): Repair setting error reply.
Modified `error_reply` utility so `kwargs` are passed to `Embed`.
Added `send_args` kwarg to `error_reply`.

Fixed an rroles issue where `UserInputError` handling would fail.
2021-11-07 15:00:04 +02:00
0e62ebdb2b fix (rroles): Increase maximum role price. 2021-11-07 14:58:57 +02:00
10f048fabc fix (rooms): Avoid loading rooms in dead guilds. 2021-11-07 03:16:56 +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
0b7b84556d fix (renting): Fix expiry execution order. 2021-10-26 11:42:25 +03:00
f18b7c2702 docs (config): Add more documentation.
Write `config` command docs.
Extend `config` header and add tutorial link.
Allow moderators to read settings (but not configure them).
Change `config help` to `config info`.
2021-10-25 16:15:43 +03:00
17d6f10345 UI (help): Add flavour and links to help. 2021-10-25 15:00:09 +03:00
cf610ef44d fix (rent): Handle non-existent objects.
Handle room channel being deleted before expiry.
Handle room owner leaving the server before expiry.
2021-10-25 14:37:38 +03:00
e9c812b65a fix (Message): Harden parsing and display.
Significantly broaden error handling for initial parsing.
Add error details upon parsing error.
Add more error catchers to parser and formatter.
Remove assumptions about data fields from format and output.
2021-10-24 21:06:37 +03:00
5ad4ec5ee1 fix (send cmd): Harden arg parsing.
Fix an issue where the send arg parsing would pass non-matching input.
2021-10-24 20:12:28 +03:00
9b8c952e78 fix (rroles): Handle unicode emojis on creation.
Fixes a rroles creation issues with pre-existing unicode emojis.
2021-10-24 19:52:06 +03:00
d619b0fe17 fix (rroles): Fix tracker issues.
Make `cancel_expiry` arguments consistent with call.
Add initial `guild` ward to the raw reaction events.
2021-10-24 19:39:06 +03:00
66fdf54ca8 (core): Improve permission error handling.
Add channel permission wards to `LionModule` pre-command hook.
Improve `Forbidden` handling in `embed_reply` and `error_reply` addons.
2021-10-24 18:50:14 +03:00
c275b8b095 (LionModule): Add custom exception handler.
Provide more context when logging errors, and a friendlier message.
2021-10-20 13:26:39 +03:00
42e47bea1a fix (rooms): Cancel rooms on system shutdown.
Fix typos in the `success_response` for `accountability_category`.
Make the `TimeSlot.cancel()` method more robust.
2021-10-20 12:55:36 +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
6a43530142 fix (rooms): Harden turnover to deletion.
Fix an issue where `TimeSlot.start()` could propagate an exception.
2021-10-19 20:21:57 +03:00
7c2a6c39a7 fix (Ticket): Make default _revert a no-op.
Fixes an issue where pardoning a non-revertable ticket throws an exception.
2021-10-19 19:58:04 +03:00
a044071387 style (settings): Don't display deleted channels.
Hides deleted or inexistent channels in the formatted settings.
2021-10-19 19:42:43 +03:00
8eaaeedf93 fix (settings): Handle empty setting input.
Handle empty `userstr` when parsing setting input.
List types also ignore empty fields or trailing commas.
Fixes an issue where parsing would throw an exception on empty fields.
2021-10-19 19:32:30 +03:00