Commit Graph

162 Commits

Author SHA1 Message Date
3ac10c6e24 Docs: Add docs for collection and view commands 2023-04-03 15:23:14 +02:00
46f2bc377f Custom: Prevent dropping and burning of custom cards 2023-04-01 15:26:02 +02:00
35917db0d0 Lib: Update discord.js to 14.8
to include the fix from https://github.com/discordjs/discord.js/pull/9203
2023-04-01 14:28:44 +02:00
793119dfc9 Wishlist: Fix TypeError on initial wishlist creation
On creation Characters are not included. Since a new wishlist
is empty anyway, we attach an empty array manually.
2023-03-16 00:59:59 +01:00
7bb02e2d3d Drop: Revert change that limited drops to specific IDs
This was meant to be removed after debugging, oops
2023-03-16 00:37:20 +01:00
92807bc4db Drop: Add wishlist pings to drops 2023-03-16 00:30:38 +01:00
ce55b1b45a Debug: Add wishlist debug command 2023-03-16 00:30:21 +01:00
77e09ca5ce Wishlist: Add model and command 2023-03-16 00:29:53 +01:00
b8db85e71c Wishlist: Command boilerplate 2023-03-15 15:31:02 +01:00
b8ffa9fd94 Drop: Fix for patreon perks not applying
same as in 3d1ed01
We also move up the action handler hoping that persisting early helps with
multiple drops happening quickly
2023-03-15 11:23:58 +01:00
4a9450e82e Register: Add default values for nextDrop/Claim/Daily
Since we changed the datatype to TIMESTAMP we no longer have DB native default values
therefore we supply them on register.
2023-03-14 16:08:04 +01:00
0f4b23b4ab Fix registration check causing duplicate acks
Registration reminders are now sent as a unique message.
We also no longer perform a registration check on autocomplete requests
2023-03-14 16:06:25 +01:00
3d1ed01bcb Cooldowns: Fix for patreon perks not applying
if cooldown resets are trigered by a drop.
The tier parameter wasn't passed from within thedrop command.
We should probably move the tier fetch logic into getCooldown.
2023-03-14 10:52:58 +01:00
cecc9c4c9d Claim: Fix wrong user passed to actionHandler 2023-03-13 16:57:40 +01:00
646ef11abd Cooldown: Use Discord countdown tags for cooldowns
Closes #37
2023-03-13 16:22:07 +01:00
a096d288f6 Drop: Revert permission threshold change
to restore cooldown bypass for admins
2023-03-13 16:07:42 +01:00
31bb2512ec Debug: Allow patreon debug with optional extUser 2023-03-13 14:41:46 +01:00
22b712b0f0 CONSTANTS: Update modifiers to match tier descriptions 2023-03-13 14:40:06 +01:00
3a63d04af5 Daily: Implement daily rewards command 2023-03-13 12:37:44 +01:00
acc3f1319f CONSTANTS: Fix tier 1 claim/drop mix-up 2023-03-13 03:50:07 +01:00
a2883732ca Debug: Fix claim reset key 2023-03-13 03:43:34 +01:00
147cb1553d Cooldowns: Add support for new Patreon multi drops/pickups
Also include <t:> timestamp for Daily reset date
2023-03-13 03:31:20 +01:00
da78623a05 Drop: Add Patreon muti drop/pickup support 2023-03-13 03:30:56 +01:00
b4dda4b49f UserUtil: Add support for Patreon multi drop/pickup
Instead of setCooldown we now use the actionHandler to
process drops and pickups.
2023-03-13 03:28:35 +01:00
89448d01cb DB: Rename Bots column pullTimeout to claimTimeout 2023-03-13 03:26:57 +01:00
397ebde3e5 UserUtil: Add getPatreonPerks helper
and patreon debug command.
2023-03-12 20:35:14 +01:00
25aa6b50d6 CONST: Fix patreon tier constants
Whale tier (5) had the wrong index and the
object was never actually exported.
2023-03-12 19:14:24 +01:00
cb01327c7d DB: Change patreonTierRoles column to type STRING 2023-03-12 17:41:21 +01:00
0ea1cfe759 Add patreon tier configs to constants 2023-03-09 23:33:21 +01:00
0af9038b6e DB: Add and migrate columns in preparation for patreon perks
Renaming nextDrop/Pull required a bit of a hack resulting in
it no longer having a default value.
2023-03-09 23:29:46 +01:00
4c4a581a03 Collection: Fix username not showing as the title
FIXME: Find a better way to pass usernames.
2023-03-09 13:24:48 +01:00
a12c0a8211 Profile: (Amend) Fix replace/encode order of custom status
Replacement happened before encoding, causing the entire status
string to be encoded, including the SVG tags themselves.
2023-03-09 12:25:48 +01:00
af017bf125 Profile: encode special XML characters in usernames and descriptions
this fixes the problem of profiles not rendering when a user has
special characters such as < or > in their name or status.
We didn't implement proper sanitization considering this method of
profile rendering is going to be obsolete soon.
2023-03-09 12:14:49 +01:00
c93ffee69c Drop: Increase timeout to a minute 2023-03-09 10:05:36 +01:00
bb6f9e7d3f Badges: Add view/list commands and search util 2023-02-27 01:57:26 +01:00
06575d280f DB: Add models and migration for badges 2023-02-27 01:56:44 +01:00
1a5e7c1b62 View: Move search code into separate Util module 2023-02-26 18:20:50 +01:00
bb9ffd6b43 View: Allow searching cards by character name 2023-02-26 16:50:39 +01:00
4e98d744ce Assets: New card cover 2023-02-26 16:24:42 +01:00
51f8d03a69 Collection: Fix total count when grouping dupes
using array length if group is true. Fixes #47
2023-02-26 14:49:59 +01:00
1dde3a0a8c DB: Add auto_increment to Characters and Groups
starting at a very high ID because I was too lazy to migrate existing data
as it is referenced in json blobs.
Part of Issue #43
2023-02-25 01:55:27 +01:00
765e63b90e Generalize labels and options 2023-02-25 00:26:04 +01:00
50da918be5 NPM: Update to fix sequelize vulnerabilities
Dependabot alerts: 3,4,5,7
2023-02-24 23:51:50 +01:00
3b67c140af DB: Generalize table and model names 2023-02-24 23:51:32 +01:00
9661c65b27 Collection: Add options to filter by name,band and quality 2023-01-19 23:57:04 +01:00
98d4f5c2ac Edit: Use unique interaction IDs for each edit action
Resolves #30 where follow up edits would fail if previous
modals have been canceled/dismissed
2023-01-16 17:11:16 +01:00
1548ecf73b Collection: Only allow the initator to use the components
Fixes #40
2023-01-16 12:55:28 +01:00
f38b6abe19 View: Omit empty components prop for non-elevated users
Fixes #39
2023-01-12 15:06:56 +01:00
692904d462 Trade: Add tradehistories table
and create rows at the end of each trade.
Both users traded cards are logged.
2023-01-12 14:43:06 +01:00
2ef1dfe7a7 Trade: Persist trades in the database
using atomic transactions.
If a card happens to not be owned by the trading user, the entire
trade is being rolled back.
Rollback behaviour is a bit weird though, since we have to rollback
manually even in a managed transaction.
2023-01-02 22:49:46 +01:00