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
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
3a63d04af5
Daily: Implement daily rewards command
2023-03-13 12:37:44 +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
397ebde3e5
UserUtil: Add getPatreonPerks helper
...
and patreon debug command.
2023-03-12 20:35:14 +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
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
765e63b90e
Generalize labels and options
2023-02-25 00:26:04 +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
95c3f41fde
Trade: Properly handle trade cancellation and timeouts
...
- Trade finishing states are now handled properly.
- Deferring cancel button press
- A user is on a 2 minute cooldown after a trade finishes or
cancels if he is the one who initiated it.
- Updated emote IDs
2023-01-02 21:04:24 +01:00
c29c018bba
Register: Always defer and update replies
2023-01-02 19:25:36 +01:00
c866bc08eb
Trade: Add TradeStore and trade flow
...
Adding a TradeStore to keep track of active trades and their states.
Also implements the core trade flow and embed logic.
2022-11-23 17:35:29 +01:00
42797eb90e
[WIP] Trading and TradingStore implementation 1
2022-11-22 17:15:48 +01:00
5be326d56a
Added permission levels to all commands
2022-09-29 11:23:15 +02:00
07b48087b4
Help: Add very basic help command
2022-09-29 11:19:16 +02:00
b5d2b68294
Stats/View: Add wallet stats and shiny emote to card views
2022-09-26 16:15:20 +02:00
16bb46403b
Burn: Added card burning for notes and gems
2022-09-26 16:09:23 +02:00
bbbcaaaf29
User/Debug/Profile: Add primary and secondary currency
2022-09-26 13:15:40 +02:00
d8905a279a
Drop: Added icons if drop contains FPs or shiny cards as well as the droppers name
2022-09-26 12:22:53 +02:00
a49a478972
History: Add currency and XP tracking
2022-09-21 17:18:12 +02:00
c8fb87dc70
View: Handle empty or invalid card IDs. Fixes #24
2022-09-21 13:41:56 +02:00
dcb7e334e2
History: Add details to drop history and split by type
...
that being 0 for drops and 1 for claims.
Fixes #16
2022-09-21 13:35:43 +02:00
f021234e45
Profile: Add initial default customStatus and allow empty values
...
Fixes #20
2022-09-21 12:49:21 +02:00
deee1bf0c4
Collection: Fix empty collection message not showing up
...
Fixes #4
2022-09-21 12:29:12 +02:00
73fb84c33d
Debug: Defer all debug replies and lock clear_cards in production
2022-09-21 12:22:34 +02:00
767f5bb761
Stats: Use sourced constants for quality names
2022-09-21 12:13:35 +02:00
4d97215891
Drop: Fix cooldown formatting ( fixes #15 )
...
Formatted cooldown strings are now properly pluralized
trimmed for zero values and also include seconds.
2022-09-21 11:51:58 +02:00
f0a0bef7e9
Drop: Always defer drop replies
2022-09-21 11:50:45 +02:00
73a2df6e74
Drop: Select quality of cards based on drop rates
2022-09-21 11:17:11 +02:00