Commit Graph

82 Commits

Author SHA1 Message Date
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
fc45908419 Add maintenance mode 2022-09-19 09:02:42 +02:00
0afedc86e5 View/Edit: Add option to direct edit from character views 2022-09-18 01:21:10 +02:00
60f4c51353 View: Add mixed view with autocomplete
for cards and characters
2022-09-18 00:49:30 +02:00
f211f4976f Cleanup some unused debug commands and arguments 2022-09-16 23:08:50 +02:00
a55ce1b5ff Edit: Fix path sanitization.
Spaces are being replaced with underscores
2022-09-15 22:23:30 +02:00
820ed99021 Edit: Add command to edit existing records.
This currently requires global admin permissions.
Each edit gets persisted in the history table.
2022-09-14 18:25:31 +02:00
1d4ec09bf8 Collection: Add duplicate grouping 2022-09-14 14:02:39 +02:00
83947eeafd Drop: Hightlight first prints and shiny cards in claim messages 2022-09-14 09:27:25 +02:00
055be119cc Profile: Show rendering gif placeholder instead of thinking text
while the profile is being rendered in the background.
2022-09-13 00:28:14 +02:00
54aee7624b Profile: Use sharp to prerender the profile background
including the user image. Also introduces axios as a dependency
2022-09-13 00:18:30 +02:00
494f574048 Profile: Fix call to refactored getLevel function
it is now user.level().currentLevel
2022-09-12 23:03:30 +02:00
af3f1237c6 Stats: Add stats command to show a users data
like cards owned, level progression and date registered
2022-09-12 22:18:53 +02:00
465f1f3221 Profile: Handle uninitialized customStatus rendering 2022-09-12 20:51:56 +02:00
7786c84ea7 Profile: Render custom status on profile images
A new line is added after each whitespace following each 40th+ character
2022-09-12 14:54:18 +02:00
c5fddd12cf Profile: Allow editing of customStatus using the editprofile command
Editprofile itself now shows buttons to select different subcommands.
2022-09-12 13:39:06 +02:00
5ea33b21a0 Profile: Fix discordUser object being of type member if we view our own profile 2022-09-12 10:31:46 +02:00
dc9502057d Profile: Add parameter to view some else's profile 2022-09-12 04:12:07 +02:00
292cd00613 Debug: Add command to alter a users experience
Also added the option to pass a user mention instead
of an id as the extUser parameter.
2022-09-12 04:03:04 +02:00