Commit Graph

128 Commits

Author SHA1 Message Date
Sheldan
9ce07a1a4a [AB-352] removing conversion tests 2021-12-24 23:49:26 +01:00
Sheldan
ee01a3f07c [AB-352] adding caching to the loading of members for warnings/user notes/mutes. this becomes relevant as members which left the guild are not cached by jda, which means, we retry it again
improved models for templates to simplify the objects passed
2021-12-24 23:41:27 +01:00
Sheldan
0e7ea25aef [AB-291] refactoring pagination to custom button pagination
adding mutes command
fixing edit message not considering components
reversing the origin comparison in a few button click listeners
fixing ordering of warnings and mutes from converter
2021-12-01 23:22:46 +01:00
Sheldan
362d87778e [AB-339] repurposing the softban command for a ban command with deletion days 2021-10-25 01:11:32 +02:00
Sheldan
0514d355c7 [AB-167] adding warning created events and infraction counter
adding disabling of post targets
adding some logging for message sending failure consumer
2021-10-25 00:04:08 +02:00
Sheldan
8909e8ebe5 [AB-333] providing some dates as separate instants instead of relying on the member attributes
truncating date to day when displaying the date for export emote stats
fixing wrong message when confirming a command and adding missing exception handling
2021-10-14 01:31:52 +02:00
Sheldan
b2a94059e2 [AB-332] showing separate message in case there are no warnings 2021-09-28 22:05:51 +02:00
Sheldan
16e6caa1f0 [AB-196] adding confirmation requirement to various commands
refactoring command received handler in order to re-use when confirmation has been given
removing reaction from showSuggestion and remind command
adding log message for message deleted message, in case the member left
all commands from now on must work without the member field from the message, as this is not available when retrieving the message
2021-09-27 00:22:37 +02:00
Sheldan
2c31fa1c1e [AB-xxx] not always creating a user instance in the experience listener
adding logging in case the warn decay notification fails
2021-08-21 15:50:11 +02:00
Sheldan
19a4858da1 [AB-323] improving logging when using whenComplete 2021-08-14 12:15:18 +02:00
Sheldan
92a8b5ba64 [AB-311] adding softban command 2021-07-20 02:02:42 +02:00
Sheldan
7535b2e66d [AB-xxx] make ban reason mandatory 2021-07-18 19:29:58 +02:00
Sheldan
7117ac26d3 [AB-308] adding a separate type for assignable role places to enable booster only places
adding more detailed logging to assignable roles
adding some fall through logic to the banned listener to always log at least the basic information
refactoring some command structure for showing configuration, so the command actually executes the message response
fixing potential exception case for starboard updates causing the message ID to not be persisted
2021-07-18 19:20:14 +02:00
Sheldan
794fc7ceac [AB-71] adding very simple anti raid feature to automatically mute member who mass mention users 2021-07-14 01:48:53 +02:00
Sheldan
7e7591a4b3 [AB-302] refactoring assignable roles to use buttons instead of reactions
moved button related services to component service instead of message service
adding component type to component payload
renamed async role service methods
ignoring bot reactions in starboard
fixing rank not showing correct experience to next level for other members
2021-07-11 19:05:53 +02:00
Sheldan
bc276c0b12 [AB-299] fixing incorrect handling of ban notifications 2021-07-04 13:00:36 +02:00
Sheldan
67121b318d [AB-271] fixing tests 2021-06-27 19:57:38 +02:00
Sheldan
5a35137132 [AB-271] limiting certain arguments for commands to require the same server 2021-06-27 17:07:01 +02:00
Sheldan
942a20700e [AB-294] fixing test 2021-06-21 21:51:12 +02:00
Sheldan
0d25b9c384 [AB-294] fixing unmuting not cached members
adding logging and catches for unbanned listener
2021-06-21 21:47:23 +02:00
Sheldan
d5f572262f [AB-287] fixing members not being available breaking warning display converter 2021-06-09 12:56:01 +02:00
Sheldan
2c3b5fb651 [AB-290] fixing showing wrong active warning count in warn decay notification
fixing un mute log failing to render in case the mute did not come from a message
fixing notification failing with exception in case there were no warnings to decay
2021-06-09 12:18:36 +02:00
Sheldan
82281cbd6c [AB-285] fixing interval of warn decay job
removing has example config from unban
enabling to change the configuration for cron scheduler job
adding HTTP method to okhttp logger
fixing unmute job parameters
changing to use cache when retrieving reactions for a message to cache it
2021-06-02 12:27:10 +02:00
Sheldan
793a1c3657 [AB-284] resizing warn length and changing default date behaviour for mute 2021-06-02 00:36:36 +02:00
Sheldan
7fdb87ef1f [AB-284] adding warn decay notification
adding default mute reason
fixing incorrect muting user being stored
2021-06-01 23:38:06 +02:00
Sheldan
3bf761a2e5 [AB-281] adding ban and unban command
removing banId command in favor of the normal ban command
removing various feature modes for moderation for clearer configuration
2021-06-01 21:10:17 +02:00
Sheldan
55e0879e06 [AB-277] adding report mechanism via reactions 2021-05-30 21:00:49 +02:00
Sheldan
13a6e1fdca [AB-263] adding stricter not null checks to database, disabling updates/inserts for created and updated columns to only rely on triggers 2021-05-23 14:17:03 +02:00
Sheldan
e31d257e6f [AB-240] changing invite filter to actively filter the server instead of only being based on the code
moving invite filter to separate module
updating to newer liquibase version
changing concept of immune roles which are directly associated to commands to immune roles which are immune against certain effects. these effects can be configured directly by the command (and a condition checks this effect), but they can be used in services as well, unrelated to commands
adding checks to not execute message received listeners for the wrong message types
adding metric support for 502 status
fixing duplicating help entries when two module definitions with the same key are present
2021-05-10 20:45:34 +02:00
Sheldan
27763e985d [AB-232] moving logging to separate module
refactoring leave and join listener
2021-04-24 16:00:58 +02:00
Sheldan
8258197bfc [AB-xx] replacing trace log with debug 2021-04-04 18:23:18 +02:00
Sheldan
6375dbf463 [AB-218] adding ability to split the normal message as well according to custom configuration
adding ability to define the max amount of messages resulting from a template on a server and template base
fixing not always considering the server when rendering templates in various places
2021-03-30 20:29:13 +02:00
Sheldan
9541f907b8 [AB-215] adding create alias and delete alias commands to create service specific aliases for commands
renaming package in commands package
defaulting to latest in docker compose build for deployment container
fixing jacoco configuration
changing that if there are no parameters required, parameters are accepted
2021-03-28 16:46:21 +02:00
Sheldan
f53f0cb66c [AB-205] making exception message for command not found configurable
making feature config classes more unified in the naming
2021-03-21 22:59:01 +01:00
Sheldan
b4e36efafb [AB-203] restructuring listeners to use more common code and common interfaces for listeners and models
restructuring entity listener to be async and added models
fixing usage of repository save method
adding interface dependencies to bundle dependency management
2021-03-21 16:26:06 +01:00
Sheldan
2ed456c164 [AB-197] splitting utility maven module into separate maven modules
aligning some package names
removing some unnecessary computed values from liquibase
2021-03-12 18:48:56 +01:00
Sheldan
e780b0e75c [AB-137] fixing occurrences for templates in cases entities do not exist anymore
fixing feature mode retrieval to adapt to lowercase
fixing disable exp role creation and retrieval
removing ansible code
2021-03-09 21:39:29 +01:00
Sheldan
66061b7719 [AB-xx] improving scheduling interface
moving renaming module to int
removing duplicated starboard feature validator
sonar fixes
2021-03-08 01:27:50 +01:00
Sheldan
821971523e [AB-165] removing mocking utils and general test improvements 2021-03-01 01:57:13 +01:00
Sheldan
5f6746d742 [AB-149] adding command to reset configuration to default values
removing listener to create system config instances
adding default value retrieval to appropriate places
making config key handling case insensitive
changing exp multiplier to double value
refactoring experience service bean test
2021-02-27 23:56:38 +01:00
Sheldan
43eca33113 [AB-77] moving the templating module into the core module
adding a possibility to overlay specific templates for particular servers
adding commands to configure templates
adding file parameter support
2021-02-20 13:29:09 +01:00
Sheldan
a536a0c2b3 [AB-191] grouping invite links in invite link deletion notification 2021-02-14 19:09:53 +01:00
Sheldan
94532be54d [AB-112] adding star levels to setup feature wizard
moving star level configuration to only be instantiated when needed
2021-02-14 17:04:37 +01:00
Sheldan
34b9bca7ac [AB-192] removing second level cache
changing assignable role place module name
fixing starboard retrieving the starstats incorrectly
fixing removing user assigned roles when removing a role from assignable role place
fixing not being able to remove external emote for assignable role place
2021-02-13 16:16:50 +01:00
Sheldan
047c574319 [AB-190] migrating default config (featureMode, system config, post targets, feature flags) from tables to property files
not longer immediately instantiating the feature flag instance when a new server is found, but only when its config is changed or when a feature mod has its config changed
2021-02-11 00:19:17 +01:00
Sheldan
038d5c3832 [AB-103] adding triggers to update created and updating attributes on tables
fixing error handling in installer
merging change sets to larger operations
adding check constraints
fixing suggestion id handling
applying naming conventions to various columns
adding indices to tables
adding user in server and user locking
2021-02-07 22:58:06 +01:00
Sheldan
b838678c15 [AB-184] adding various metrics to the system, organizing imports, changing some transactional behaviour
adding okhttp metrics, split bot service into multiple services (guild, message), unified some places that services are used in order to interact with the api, and not directly the objects (this is to make it easier for metric to be accurate)
2021-02-03 03:16:51 +01:00
Sheldan
2a2a3aea70 [AB-68] adding invite filter with commands to allow/disallow invites, remove stored filtered invite links and show filtered invite links
removing database entities from command context
2021-01-24 22:34:01 +01:00
Sheldan
fb3ed69650 [AB-154] split up private and guild message received handler, split handlers into async and sync handlers
adapting the tests and improving tests to reduce usage of MockUtils
adding some util methods to message bean
extending cache for cached messages
enabling to build cached messages from messages in DM channels (they are not part of the message cache)
splitting multiple listeners to different beans, for better overview (emote updated)
adding convenience service for reactions specifically
split cached reaction and cached reactions, singular only contains one user, while the later contains all users
fixing liquibase configuration for assigned role user
fixing assignable role not having a transaction
moved caching update a bit earlier in various methods
fixing bug that a manual unmute caused duplicate unmute notification
fixing short scheduled unmute not checking the new mute state
limiting parameters for roll
2021-01-23 11:40:41 +01:00
Sheldan
325264a325 [AB-150] creating repost detection feature including configuration and documentation
adding http and hash service
adding ability to add default emotes to a message to message service
adding message embedded listener to wrap the embedded event
adding custom channel groups which can be defined by modules, in case a change on a channel group (only created and updated) happens a listener is available in order to sync the state in dependant areas
changing command receiver re-throwing abstracto runtime exceptions in order to display them better
changing channel group parameter handler to throw an exception in case the channel group was not found
adding User in a server parameter handler
split channel not found exception to be able to differentiate between not found in database and not found in guild
changing exception handling in command received handler to handle the case for only one parameter handler future which failed (the whole single future failed, which was not reported)
changing parameter type of `removeFromChannelGroup` to AChannel in order to be able to delete channels in the database via ID
moving method to mock utils for mocking consumer
removing parameter validation from commands, as it should be done in the command received handler and parameter handlers anyway
2020-12-13 01:50:09 +01:00