4b598cadbfDB: Add fields for ping settingsJan Groß2023-04-05 15:23:42 +02:00
c5ab964cefAPI: Add type filter to most-recent-drop otherwise claims would break the outputJan Groß2023-04-05 13:07:20 +02:00
f1e01f2a9fAPI: Add experimental Json API in preparation for external healthchecks and the admin backend. We define a couple test routes:Jan Groß2023-04-05 12:00:46 +02:00
fdf5a4074bWishlist: Implement Patreon perks for wishlist slotsJan Groß2023-04-03 17:16:23 +02:00
c48aa8b34fDocs: Add docs to collection commandJan Groß2023-04-03 15:30:38 +02:00
3ac10c6e24Docs: Add docs for collection and view commandsJan Groß2023-04-03 15:23:14 +02:00
46f2bc377fCustom: Prevent dropping and burning of custom cardsMinzkraut2023-04-01 15:26:02 +02:00
793119dfc9Wishlist: 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.Jan Groß2023-03-16 00:59:59 +01:00
7bb02e2d3dDrop: Revert change that limited drops to specific IDs This was meant to be removed after debugging, oopsJan Groß2023-03-16 00:37:20 +01:00
92807bc4dbDrop: Add wishlist pings to dropsJan Groß2023-03-16 00:30:38 +01:00
b8ffa9fd94Drop: 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 quicklyJan Groß2023-03-15 11:23:58 +01:00
4a9450e82eRegister: 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.Jan Groß2023-03-14 16:08:04 +01:00
0f4b23b4abFix registration check causing duplicate acks Registration reminders are now sent as a unique message. We also no longer perform a registration check on autocomplete requestsJan Groß2023-03-14 16:06:25 +01:00
3d1ed01bcbCooldowns: 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.Jan Groß2023-03-14 10:52:58 +01:00
cecc9c4c9dClaim: Fix wrong user passed to actionHandlerJan Groß2023-03-13 16:57:40 +01:00
646ef11abdCooldown: Use Discord countdown tags for cooldowns Closes#37Jan Groß2023-03-13 16:22:07 +01:00
a096d288f6Drop: Revert permission threshold change to restore cooldown bypass for adminsJan Groß2023-03-13 16:07:42 +01:00
31bb2512ecDebug: Allow patreon debug with optional extUserJan Groß2023-03-13 14:41:46 +01:00
22b712b0f0CONSTANTS: Update modifiers to match tier descriptionsJan Groß2023-03-13 14:40:06 +01:00
147cb1553dCooldowns: Add support for new Patreon multi drops/pickups Also include <t:> timestamp for Daily reset dateMinzkraut2023-03-13 03:31:20 +01:00
b4dda4b49fUserUtil: Add support for Patreon multi drop/pickup Instead of setCooldown we now use the actionHandler to process drops and pickups.Minzkraut2023-03-13 03:28:35 +01:00
89448d01cbDB: Rename Bots column pullTimeout to claimTimeoutMinzkraut2023-03-13 03:26:57 +01:00
397ebde3e5UserUtil: Add getPatreonPerks helper and patreon debug command.Minzkraut2023-03-12 20:35:14 +01:00
25aa6b50d6CONST: Fix patreon tier constants Whale tier (5) had the wrong index and the object was never actually exported.Minzkraut2023-03-12 19:14:24 +01:00
cb01327c7dDB: Change patreonTierRoles column to type STRINGMinzkraut2023-03-12 17:41:21 +01:00
0ea1cfe759Add patreon tier configs to constantsMinzkraut2023-03-09 23:33:21 +01:00
0af9038b6eDB: 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.Minzkraut2023-03-09 23:29:46 +01:00
4c4a581a03Collection: Fix username not showing as the title FIXME: Find a better way to pass usernames.Jan Groß2023-03-09 13:10:04 +01:00
a12c0a8211Profile: (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.Jan Groß2023-03-09 12:20:28 +01:00
af017bf125Profile: 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.Jan Groß2023-03-09 12:14:49 +01:00
c93ffee69cDrop: Increase timeout to a minuteJan Groß2023-03-09 10:05:36 +01:00
bb6f9e7d3fBadges: Add view/list commands and search utilMinzkraut2023-02-27 01:57:26 +01:00
06575d280fDB: Add models and migration for badgesMinzkraut2023-02-27 01:56:44 +01:00
1a5e7c1b62View: Move search code into separate Util moduleMinzkraut2023-02-26 18:20:50 +01:00
bb9ffd6b43View: Allow searching cards by character nameMinzkraut2023-02-26 16:50:39 +01:00
51f8d03a69Collection: Fix total count when grouping dupes using array length if group is true. Fixes#47Minzkraut2023-02-26 14:49:59 +01:00
1dde3a0a8cDB: 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 #43Minzkraut2023-02-25 01:55:27 +01:00
3b67c140afDB: Generalize table and model namesMinzkraut2023-02-24 20:46:47 +01:00
9661c65b27Collection: Add options to filter by name,band and qualityMinzkraut2023-01-19 23:57:04 +01:00
98d4f5c2acEdit: Use unique interaction IDs for each edit action Resolves#30 where follow up edits would fail if previous modals have been canceled/dismissedJan Groß2023-01-16 17:05:58 +01:00
1548ecf73bCollection: Only allow the initator to use the components Fixes#40Jan Groß2023-01-16 12:55:28 +01:00
692904d462Trade: Add tradehistories table and create rows at the end of each trade. Both users traded cards are logged.Jan Groß2023-01-12 14:43:06 +01:00
2ef1dfe7a7Trade: 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.Minzkraut2023-01-02 22:49:46 +01:00
95c3f41fdeTrade: 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 IDsMinzkraut2023-01-02 21:04:24 +01:00
d0535e06adDocker: Restart mysql container unless stoppedMinzkraut2023-01-02 19:26:25 +01:00
c29c018bbaRegister: Always defer and update repliesMinzkraut2023-01-02 19:25:36 +01:00
c866bc08ebTrade: 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.Jan Groß2022-11-23 17:35:29 +01:00
78fe0857e8CardUtils: Add helper to get one-line formatted card infoJan Groß2022-11-23 17:34:01 +01:00
42797eb90e[WIP] Trading and TradingStore implementation 1Jan Groß2022-11-22 17:15:48 +01:00
5be326d56aAdded permission levels to all commandsJan Groß2022-09-29 11:23:15 +02:00
07b48087b4Help: Add very basic help commandJan Groß2022-09-29 11:19:16 +02:00
cf159c43bcDocker: Make DB port changeable via .envJan Groß2022-09-26 16:21:43 +02:00
e72b098dabDocker: Always run migrations on compose upJan Groß2022-09-26 16:18:42 +02:00
b5d2b68294Stats/View: Add wallet stats and shiny emote to card viewsJan Groß2022-09-26 16:15:20 +02:00
16bb46403bBurn: Added card burning for notes and gemsJan Groß2022-09-26 16:09:23 +02:00
bbbcaaaf29User/Debug/Profile: Add primary and secondary currencyJan Groß2022-09-26 13:15:40 +02:00
d8905a279aDrop: Added icons if drop contains FPs or shiny cards as well as the droppers nameJan Groß2022-09-26 12:22:53 +02:00
a49a478972History: Add currency and XP trackingJan Groß2022-09-21 17:16:10 +02:00
dcd05322caMerge pull request #31 from JanGross/dependabot/npm_and_yarn/moment-timezone-0.5.37Minzkraut2022-09-21 14:19:56 +02:00
9054649d0cBump moment-timezone from 0.5.34 to 0.5.37
dependabot[bot]
2022-09-21 12:18:47 +00:00
deee1bf0c4Collection: Fix empty collection message not showing up Fixes#4Jan Groß2022-09-21 12:29:12 +02:00
73fb84c33dDebug: Defer all debug replies and lock clear_cards in productionJan Groß2022-09-21 12:22:34 +02:00
767f5bb761Stats: Use sourced constants for quality namesJan Groß2022-09-21 12:13:35 +02:00
4d97215891Drop: Fix cooldown formatting (fixes#15) Formatted cooldown strings are now properly pluralized trimmed for zero values and also include seconds.Jan Groß2022-09-21 11:51:58 +02:00
f0a0bef7e9Drop: Always defer drop repliesJan Groß2022-09-21 11:50:45 +02:00
73a2df6e74Drop: Select quality of cards based on drop ratesJan Groß2022-09-21 11:17:11 +02:00
0afedc86e5View/Edit: Add option to direct edit from character viewsMinzkraut2022-09-18 01:21:10 +02:00
60f4c51353View: Add mixed view with autocomplete for cards and charactersMinzkraut2022-09-18 00:49:30 +02:00
f211f4976fCleanup some unused debug commands and argumentsMinzkraut2022-09-16 23:08:50 +02:00
a55ce1b5ffEdit: Fix path sanitization. Spaces are being replaced with underscoresMinzkraut2022-09-15 22:23:30 +02:00
820ed99021Edit: Add command to edit existing records. This currently requires global admin permissions. Each edit gets persisted in the history table.Jan Groß2022-09-14 18:25:31 +02:00
826834ebabHistory: Add record history tableJan Groß2022-09-14 18:24:10 +02:00
83947eeafdDrop: Hightlight first prints and shiny cards in claim messagesJan Groß2022-09-14 09:27:25 +02:00
055be119ccProfile: Show rendering gif placeholder instead of thinking text while the profile is being rendered in the background.Minzkraut2022-09-13 00:28:14 +02:00
54aee7624bProfile: Use sharp to prerender the profile background including the user image. Also introduces axios as a dependencyMinzkraut2022-09-13 00:18:30 +02:00
494f574048Profile: Fix call to refactored getLevel function it is now user.level().currentLevelMinzkraut2022-09-12 23:03:30 +02:00
d8c18f8b01User: Fix wrong rounding on level calculation we have to floor it, otherwise we're always one level aheadMinzkraut2022-09-12 22:22:15 +02:00
af3f1237c6Stats: Add stats command to show a users data like cards owned, level progression and date registeredMinzkraut2022-09-12 22:18:53 +02:00
7786c84ea7Profile: Render custom status on profile images A new line is added after each whitespace following each 40th+ characterJan Groß2022-09-12 13:41:45 +02:00
c5fddd12cfProfile: Allow editing of customStatus using the editprofile command Editprofile itself now shows buttons to select different subcommands.Jan Groß2022-09-12 13:39:06 +02:00
5ea33b21a0Profile: Fix discordUser object being of type member if we view our own profileJan Groß2022-09-12 10:31:46 +02:00
dc9502057dProfile: Add parameter to view some else's profileMinzkraut2022-09-12 04:12:07 +02:00