Commit Graph

2502 Commits

Author SHA1 Message Date
conatum d60a8772a3 feature (stats): Weekly and monthly goals.
Add a new editing interface for weekly and monthly goals.
Textual viewing interface is currently a stub.
Add `month_timestamp` and `week_timestamp` lion properties.
2021-12-30 11:26:58 +02:00
conatum fa430b8403 fix (todo): Correctly filter deleted tasks. 2021-12-30 10:57:30 +02:00
conatum b1bcee8cc6 fix (setprofile): Guard against empty input. 2021-12-29 21:57:32 +02:00
conatum 113ff0379a fix (setprofile): Update tag parsing. 2021-12-29 21:55:25 +02:00
conatum c519725755 fix (setprofile): Add check for max tasks. 2021-12-29 20:49:49 +02:00
conatum 46bf03ae25 feature (setprofile): Profile tag editor. 2021-12-29 20:20:17 +02:00
conatum 6aaa2377a4 refactor: Split stats module from study. 2021-12-29 20:19:35 +02:00
conatum e2c096f350 (todo): Add extra metrics for stats.
v6 -> v7 data migration.
Use soft deletion for tasks.
Remove task expiry.
Migrate `complete` field to `completed_at`.
2021-12-29 08:27:53 +02:00
conatum 36f92add4e (todo): Small refactor.
Refactor `Tasklist` to allow for alternative (plugin) implementation.
2021-12-28 15:15:47 +02:00
conatum 46fd2b65e4 fix (rooms): Ignore vanishing lobby channel. 2021-12-28 00:27:59 +02:00
conatum a31f451102 Merge branch 'staging' of cgithub:StudyLions/StudyLion into staging 2021-12-27 13:42:33 +02:00
Interitio 0000528a0a Merge pull request #14 from StudyLions/staging
Sharding support and session tracker system
2021-12-22 21:05:53 +02:00
Interitio 8f03773d7b Merge pull request #13 from StudyLions/sharding
Sharding support.
2021-12-22 20:45:49 +02:00
conatum e979e5cf45 sharding (reminders): Adapt for sharding.
Restrict reminder execution to shard `0`.
Add a poll on shard `0` to pick up new reminders.
Check whether the reminder still exists on execution.
2021-12-22 20:35:06 +02:00
conatum 0dd5213f13 sharding (accountability): Adapt for sharding.
Filter initially loaded accountability guilds.
Filter timeslots loaded in `open_next`.
Reload members and overwrites on slot start.
2021-12-22 19:07:28 +02:00
conatum 68ff40cb0b sharding (status): Use sessions for bot status.
Uses the `current_sessions` table to generate the status summary.
2021-12-22 17:42:33 +02:00
conatum 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
conatum 25e22c07d0 sharding (tickets): Filter expiring tickets.
Only expire tickets which are on this shard.
`THIS_SHARD` application is a no-op when unsharded.
2021-12-22 13:20:27 +02:00
conatum 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
conatum 20697c4823 sharding (core): Add base sharding support.
Add `meta.args` for command line argument access.
Add command line argument support for shard number.
Add shard count to config file.
Add `meta.sharding` exposing shard properties.
Add shard number to logging methods.
Add shard number to data appid.
2021-12-22 11:28:43 +02:00
conatum d498673020 sharding (data): Add SHARDID condition. 2021-12-22 10:34:34 +02:00
conatum 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
conatum 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
conatum 8208f601d6 (stats): Remove dynamic field-reordering. 2021-12-22 08:18:40 +02:00
conatum 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
conatum e8547f9f4b fix (stats): Fix misnamed variable. 2021-12-15 14:36:09 +02:00
conatum d2a5eed245 Merge branch 'feature-session-tracker' into staging 2021-12-08 12:02:17 +02:00
conatum 6f4c62b4b1 Merge branch 'staging' of cgithub:StudyLions/StudyLion into staging 2021-12-08 11:57:33 +02:00
conatum f18af33fb6 fix (sessions): Recognise accountability sessions. 2021-12-08 11:44:35 +02:00
conatum 9d0fd93822 fix (stats): Fix time formatting issue. 2021-12-08 11:44:15 +02:00
conatum b273ae0596 (data): Update version and migration. 2021-12-07 13:23:13 +02:00
conatum d95faed02b fix (stats): Repair some formatting issues. 2021-12-07 11:02:40 +02:00
conatum 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
Interitio 28275bea83 Merge pull request #11 from ShootingKing-AM/feature-admin-set-coins
[Guild Admin] Implemented admin set_coins command
2021-12-06 16:22:29 +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
conatum 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
conatum 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
conatum 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
conatum cffdfb693b (sessions): Add guild join and leave hooks. 2021-12-02 13:16:36 +02:00
conatum fe1cd85511 (sessions): Add UI for daily_study_cap. 2021-12-02 12:51:14 +02:00
conatum 3abac63379 style (config): Add closest-match suggestions. 2021-12-02 12:50:23 +02:00
conatum 3cb9d97e1e fix: Improve launch caching systems. 2021-12-02 12:01:12 +02:00
conatum 734436e2a6 (sessions): Add daily_study_cap system. 2021-12-02 11:48:04 +02:00
conatum 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
conatum 9c8dfd6a3a (sessions): Complete launch and init pathway. 2021-11-29 13:31:37 +02:00
Interitio b465617c3a Merge pull request #10 from StudyLions/patch-startup
Patch startup
2021-11-16 09:09:15 +02:00
Interitio f0aac7f57b Merge pull request #7 from ShootingKing-AM/gitignore
Added standard .gitignore for project
2021-11-12 13:43:57 +02:00
Harsha Raghu 6bc831a549 Added standard .gitignore for project
Standard python .gitignore: https://github.com/github/gitignore/blob/master/Python.gitignore

and to ignore changes to `config/**` dir (hiding bot.conf file)
2021-11-11 19:11:37 +05:30
conatum 2cf66ab600 (stats_cmd): Allow execution before ready. 2021-11-07 16:31:55 +02:00