Commit Graph

  • 7d18f51e08 added some post target descriptions Sheldan 2020-05-25 23:18:06 +02:00
  • 213f42ffbd added current values to post post target added support for custom setup steps for each feature added mod mail category setup step Sheldan 2020-05-25 23:11:44 +02:00
  • 3714fd2582 added default value handling to setup wizard added table to store the default values of the whole system, to not require the property files added ability to cancel setup wizard Sheldan 2020-05-22 20:13:24 +02:00
  • 992357b2cb added setup command which includes an interactive process in order to setup features the current supported features are post targets and system config the wizard includes a summary step where the user can confirm the changes removed some unnecessary validators, which were basically just validating the system config from some features fixed post target name Sheldan 2020-05-22 17:25:44 +02:00
  • e2f71ef7a3 added possibility to define the text which is used for notifying the user when closing a thread Sheldan 2020-05-20 01:13:45 +02:00
  • 1e667686d3 introduced *all* intents abstracto requires in order to function...., because with the new version the guild members intent was not used, and various features were not functioning added initial message also to be send Sheldan 2020-05-20 00:31:43 +02:00
  • 5b7d224fd9 added bundled third party licenses Sheldan 2020-05-18 01:45:03 +02:00
  • b45f5abd8e added documentation of user notes Sheldan 2020-05-17 23:18:49 +02:00
  • 20f8e422a2 added commands to create/delete/list usernotes Sheldan 2020-05-17 23:13:01 +02:00
  • 0260862e8e added command to set roles for which experience gain is disabled and separate command to remove them from the list again added command to see all roles for which experience gain is disabled Sheldan 2020-05-17 20:35:53 +02:00
  • cf1816597c added command to specifically disable/experience for a user Sheldan 2020-05-17 01:24:27 +02:00
  • 59ff1f1f40 added listener to listen for all reactions removed Sheldan 2020-05-17 00:40:16 +02:00
  • db8edb26f0 upgraded to new JDA version and changed some deprecated methods Sheldan 2020-05-16 23:40:02 +02:00
  • 3bb6620cbe added a condition to check for the correct feature mode merged mod mail logging back into the mod mail feature and set it up as a mode Sheldan 2020-05-16 22:40:11 +02:00
  • b0ab88d143 added setMode to documentation, added error handling with templated exception for set mode and refactored some feature config related methods (changed the equal to be case insensitive) Sheldan 2020-05-16 21:46:10 +02:00
  • d2264937b2 added the concept of feature modes, these are the modes in which a feature can operate, its basically a separate way how the feature does it jobs, for example mod mail might log or it might not. bot of these are different modes refactored services for feature flag and feature config Sheldan 2020-05-16 20:55:13 +02:00
  • cd80d27795 added command to completely silently close a mod mail thread (no logging, no notification) this is part of the mod mai logging feature, because without logging the normal closeSilently behaves the same way by default Sheldan 2020-05-16 11:06:48 +02:00
  • d5007e362b added support for example templates/direct strings to commands who need it added example templates for some commands added the examples to documentation as well Sheldan 2020-05-16 01:20:23 +02:00
  • ddb540ccfe added columns for tracking created/updated Sheldan 2020-05-16 00:21:53 +02:00
  • 82c63d4825 added validation for emotes to features Sheldan 2020-05-15 20:31:16 +02:00
  • b984129df6 added check for existing system config when a feature is enabled Sheldan 2020-05-15 18:53:51 +02:00
  • f11232de05 moved post targets to an enum, in order to have more type safety, this might be changed in the future added validation check when a feature is enabled, in order to notify which configuration is missing for this feature to function properly Sheldan 2020-05-15 17:43:39 +02:00
  • e4efc26740 added templates parameters for help Sheldan 2020-05-14 18:53:09 +02:00
  • 3f6d980c4c added template for command not found, when disabling a command in a group Sheldan 2020-05-14 01:02:31 +02:00
  • 4c826676d0 pulled some more user facing strings into templates Sheldan 2020-05-14 00:49:57 +02:00
  • 40731157f7 restructured template config layout moved some exception messages from module templates to template config Sheldan 2020-05-14 00:28:50 +02:00
  • b591ae497d added more specific exceptions Sheldan 2020-05-13 23:46:58 +02:00
  • cf04687f04 moved some more exceptions to templates made more specific exceptions for certain cases Sheldan 2020-05-13 23:25:52 +02:00
  • cb1abaed7d moved some more templates to template config fixed usage of post target exceptions Sheldan 2020-05-13 17:45:55 +02:00
  • 80505d1014 migrated some exceptions to use templates fixed missed hard coded value in template fixed listing of channels in channel groups fixed template loading Sheldan 2020-05-13 17:04:21 +02:00
  • c429aa882b refactored channel exception to have a unified interface to form the exception message replaced getOne with findById in order to get optionals and handle those some places still have the general abstracto run time exception Sheldan 2020-05-13 12:49:08 +02:00
  • 5755d033eb fixed command and feature mapping added a bunch of java doc to moderation interface added check in case the text channel on the server was deleted while the mod mail thread was still open This now returns an error to the user side and prompts to message the bot again in order to create a new mod mail thread Sheldan 2020-05-12 22:44:44 +02:00
  • 8d8f735672 fixed future handling in message cache, so methods return futures instead of requiring them as parameters and adapted the code using this fixed config loading still relying on double, where the values were changed to long Sheldan 2020-05-12 09:32:18 +02:00
  • 1634f5e9cc fixed link embedding not properly working with sessions Sheldan 2020-05-12 08:59:08 +02:00
  • 5639ca20b5 added check to not allow two channel groups with the same name Sheldan 2020-05-12 00:55:45 +02:00
  • 59c449f4d3 added evaluation of the allowed commands when executing help added a note that a few commands are only available within a mod mail thread Sheldan 2020-05-12 00:45:13 +02:00
  • c234266b7b restructured the duration formatting templates for easier translation Sheldan 2020-05-11 21:14:55 +02:00
  • 70428e6e03 added a first version of java doc for the templating module Sheldan 2020-05-11 20:46:14 +02:00
  • e89c3b8796 added html output for documentation restructured documentation added more levels to table of contents Sheldan 2020-05-11 19:05:59 +02:00
  • b13309a026 Split the logging of mod mail threads to a separate feature fixed the default values of features in properties files Sheldan 2020-05-11 16:15:02 +02:00
  • af15becf84 fixed the type of initial values for configuration Sheldan 2020-05-11 15:42:54 +02:00
  • 6b37b9e8b7 merged the config commands into one command for setting the appropriate value Sheldan 2020-05-11 15:39:11 +02:00
  • e314ec178d added explanation about immune roles Sheldan 2020-05-11 15:14:13 +02:00
  • 9197fe0268 removed decay feature boolean from myWarnings, because only automatic decay is an additional feature fixed post target for kicking fixed casing for mod mail post targets added initial version of the ascii doctor documentation Sheldan 2020-05-11 15:00:00 +02:00
  • ba032194ce added bean configuration for event waiter to be used for paginator fixed initial setup for server fixed command in a server configuration Sheldan 2020-05-10 20:29:32 +02:00
  • 82186c8757 added command to delete a warning by id Sheldan 2020-05-10 19:34:35 +02:00
  • 860aa0eed7 added ability to configure paginators to be used added paginator for warnings command Sheldan 2020-05-09 21:31:31 +02:00
  • 1e203c19e0 added command to check your own commands Sheldan 2020-05-09 17:19:09 +02:00
  • aba98ef0c6 fixed jpa annotations for one to many Sheldan 2020-05-09 16:21:48 +02:00
  • da8fea34da replaced a bunch of places where the database loaded objects were referenced across threads, this might have lead to problems when lazy loading them fixed starboard post template fixed starboard post deletion Sheldan 2020-05-09 16:15:07 +02:00
  • 8db1cead57 fixed some catch blocks to include all exceptions fixed message sending undo action Sheldan 2020-05-09 01:32:09 +02:00
  • 0e7add826b added undo logic to mod mail logging added some more logging when closing the mod mail thread Sheldan 2020-05-09 01:10:46 +02:00
  • 379db1ff73 added concept of undo actions used undo actions to delete the mod mail thread channel, if it already reached a certain state when initially setting up the mod mail thread Sheldan 2020-05-09 00:19:19 +02:00
  • 271ea7364a fixed initial setup for mod mail category fixed setup for locking added exception message in case the modmail post target is not defined Sheldan 2020-05-08 23:22:23 +02:00
  • d1f307837d added initial setting for the mod mail category in a listener, so it can be configured via command Sheldan 2020-05-08 18:27:04 +02:00
  • 1c67d96887 added subscribe and unsubscribe command Sheldan 2020-05-08 17:02:22 +02:00
  • 5ace3e2abb restructured templates for mod mail a bit Sheldan 2020-05-08 12:27:08 +02:00
  • 9fdca52005 added command to remove the role from mod mail configuration again added convenience method to disallow a whole feature for a role Sheldan 2020-05-08 12:11:35 +02:00
  • 4236db7a5b updated mod mail help command texts Sheldan 2020-05-08 11:23:02 +02:00
  • 7699075b33 added mod mail thread notification, if a user initiates a mod mail thread added the concept of a mod mail role, these are roles being pinged when a thread is opened, and they also are able to execute mod mail related commands fixed past thread count in mod mail header added convenience method to allow a role to execute a whole feature Sheldan 2020-05-08 10:49:06 +02:00
  • ea6fe240f4 added anonymous message handling to modmail Sheldan 2020-05-08 00:58:05 +02:00
  • c03788a065 added closesilently command for modmail largely refactored modmail future handling and error handling in case: no permission, unable to contact user fixed help command template Sheldan 2020-05-08 00:20:20 +02:00
  • 95733c9b98 moved default close note to template, added notification if there are no servers available which have mod mail enabled, added check to only present the servers which have the feature mod mail enabled. Sheldan 2020-05-07 20:20:40 +02:00
  • 6cf69af438 added header message containing information about the user the mod mail thread has been opened for Sheldan 2020-05-07 00:26:19 +02:00
  • cb1a14e46b added user facing message in case the initial modmail creation fails Sheldan 2020-05-06 23:41:35 +02:00
  • feb9ce07ee fixed using the correct parameter for reply and anon reply (not the whole message, so we dont need to parse out the actual reply again) added optional note parameter for close fixed state not being saved in database for mod mail thread changed logging of mod mail to be templated, instead of replaying the messages added reaction to indicate the user, that the message was processes by modmail fixed future handling for user message replies (we blocked) added header for initial information about the user when he opens a thread fixed duration formater resulting in new lines Sheldan 2020-05-06 23:22:43 +02:00
  • ad1cbb54fd refactored the naming in channel service added initial version of closing and logging the thread Sheldan 2020-05-06 18:32:08 +02:00
  • 54327c3e58 implemented contact command and added check if the thread already exists added anon reply command Sheldan 2020-05-06 15:36:13 +02:00
  • a06006d763 added jda utilities dependency added modmail with some simple features (chat between user and moderator), and initial server selection (currently allows all servers, and does not consider the modmail feature) added the initial commands, not all of them hold logic currently added some checks to not crash when a command has null configuration changed systemconfig to also have a long value, because double is not fit for all cases added locking mechanism, to effectively lock the whole table without using the ... proper locking mechanism (needs to be reviewed) changed interface in channel service to be a message channel instead of a textChannel changed starboard post to be a user in a server instead of only user Sheldan 2020-05-06 14:17:44 +02:00
  • cf713cc561 added unremind command Sheldan 2020-05-01 23:24:05 +02:00
  • 70365ca556 added logging to several places concerning futures Sheldan 2020-05-01 22:56:21 +02:00
  • f2ce402256 introduced eh-cache as a caching provider instead of caffeine to be used in hibernate (only ram cache is currently possible) added caching configuration for 2nd level caching in hibernate added command to clear hibernate caches changed some interfaces so the api looks a bit more consistent (return the created/updated value) split user management and user in server management added try catch block to message received listener execution, to make them independent moved some feature flag methods to the feature flag service bean instead of the management service, as they used the FeatureEnum directly fixed feature disable text always rendering removed some non embed logging fixed message embed template added exception logging to message embedding Sheldan 2020-05-01 22:42:12 +02:00
  • 59dc8c602a refactored command responses to use a central place for configuration in an extra module fixed makeAffected role parameter made command check name case insensitive added name to parameter for decayAllWarnings removed simple log from message edited listener Sheldan 2020-04-30 22:29:49 +02:00
  • d5482fabd4 renamed feature display to feature config added concept of feature dependencies, if one feature depends on another feature, and it gets enabled, the other feature is enabled as well changed some feature related apis added ability to automatically decay warnings (separate feature) added command to trigger the warn decay manually added command to decay all active warnings added method to scheduler service to directly start a cron job Sheldan 2020-04-29 21:25:26 +02:00
  • 85c47db5ed allowed the Arole parameter type to be either an id or the role mention fixed adding/removing allowed roles, the compare did not work changed a few commands to use the Arole parameter Sheldan 2020-04-28 22:12:29 +02:00
  • 6ed3a133e2 added allowed roles, immune roles and restriction status to help command Sheldan 2020-04-28 21:32:20 +02:00
  • 65b693be7b added alias support to help command Sheldan 2020-04-28 20:22:27 +02:00
  • 1fc459f65e added description/long help and usage to all the current commands and updated a few of existing ones added help info objects to the commands who missed them changed all commands to be templated and removed the hard coded strings to only rely on templates (other commands might only want to use the direct string) fixed handling of null parameters/submodules in help command fixed experience module not showing up in help command Sheldan 2020-04-28 20:02:03 +02:00
  • 93f587bf26 refactored help command Sheldan 2020-04-28 15:39:47 +02:00
  • 8e7bc7d98f fixed some code smells Sheldan 2020-04-27 20:23:02 +02:00
  • e08086b6a9 added the concept of commands in server, to have a separate config for commands within a server added server config listener, to create such commands moved the command and feature creation to separate spring listener (they are dependant, a mechanism for dependencies is needed) added a feature flag to the command table, so we know what the feature of a command is added ability to restrict commands to certain roles/remove the restriction added ability to make some roles not affected by a command/remove the immunity, this works by retrieving the first member from the command parameters, and checking if the member has the said role commands in a server now have a restricted flag to indicate, if the role checks should be in effect (only affects role-to-execute restriction) fixed initial prefix config added the immune user check only to commands most likely needing it Sheldan 2020-04-27 17:32:33 +02:00
  • 05aa0815d6 added feature to dynamically adapt the prefix while the bot is running, multiple characters are supported Sheldan 2020-04-26 12:11:28 +02:00
  • 4800470f86 refactored features to be components instead, so we have more runtime config (for example template config etc), this can be done, because features depend on the code anyway and do not need to be done via property files, the property files only define the default values when starting up fixed feature disabled message not being templated and refactored the way condition checks are handled by the command received handler, so we do not use exceptions for this, this handled by a specified state in the result and a separate post execution handler added separate config module to the commands added command to see which features are available, and their current state fixed scheduler test Sheldan 2020-04-26 11:38:27 +02:00
  • bd554537cc removed some unused autowired services changed place to use the starboard post source channel instead of the message channel Sheldan 2020-04-25 14:41:31 +02:00
  • 7ac2f2ce08 added unmute command to end all mutes, and remove the current one, this also cancels all running jobs, so we need to store the triggers enabled voice state cache, as its necessary for voice state operations kick user out of voice chat, if they are in any changed unmute date to the the effective date of the unmute, instead of the planned date added possibility to stop a job via the trigger key Sheldan 2020-04-25 11:10:59 +02:00
  • d4eeb2dadb added check to unmute user, in case the user left the guild added checks if users being awarded a role are still in the guild Sheldan 2020-04-24 20:49:06 +02:00
  • 0f8a39a336 changed catch block in join listener for Exception, so the listener dont interrupt one another fixed join template added join listener to check if a joined user should be muted changed cached message to be an intant instead fixed wrong id in mute table moved the timestamps for mute notifications to the footer fixed a case for message embeds, when the embed does not have a description Sheldan 2020-04-24 20:04:19 +02:00
  • b41a596acd added Arole to command received handler in order to handle it restructured channel service calls a little bit moved dm sending to message service fixed log level configuration added full user dto, to be used as a combination of a AUserInServer and Member, for operations which need both, to avoid converting and reloading the user added mute command and mute role command added mute table added mute role table added job to automatically unmute people at the given time period restructured warn service removed simple message log for warnings added method to templating to support formatting instants Sheldan 2020-04-24 18:02:05 +02:00
  • cf37d4adef added javadoc to experience tracking module changed persistence configuration for entities, so cascade is more correct changed the way channels get their server assigned added feature to only change the exp role of a user, if he doesn't already have the new target role added the name of the needed feature, to the message indicating that a feature has been disabled updated unsetExpRole to have a status update message, because there might be a lot of users which need a role update Sheldan 2020-04-23 23:39:05 +02:00
  • 1a74924850 changed parameter for slowmode command to be a duration string instead of just seconds added exception to duration parsing, in case there is a unknown duration indicator Sheldan 2020-04-21 22:20:39 +02:00
  • ff8817f765 added duration field to reminder and restructured remind text added general duration formatting to freemarker (its a builtin method currently added source channel attribute to starboard post added exception logging to immediate reminders Sheldan 2020-04-21 21:54:47 +02:00
  • 7b56b89157 added check to check if a role is in the server added more log output Sheldan 2020-04-21 19:25:12 +02:00
  • 5edb2e4cc8 added command to set config double to a certain value, added command to scale the exp (separately) renamed multiplier property, to be more descriptive Sheldan 2020-04-12 23:46:36 +02:00
  • edb270e887 added command to sync roles for the whole server added command to remove a role from the experience roles added leaderboard command added rank command fixed missfire configuration for cron jobs (they should not be executed) added ability to configure recovery for jobs added tracking of message count added join listener to automatically give the appropriate role for a joined user added parameter to join listener containing the userInAServer re-added command exception templates added method to create a status message (basically only a single message is returned and expected) added method to edit a single message in a channel to channel service fixed cases in which there are no embeds, but we still used the embed principle of sending messages (only text was send) added more functions to channel service to send messages with moved joined listeners to their separate transaction Sheldan 2020-04-12 19:35:42 +02:00
  • 6a31dfde8a added experience tracking and automatic role assigning at given levels includes: set role command to set a role to a given level (it clears out previous levels) automatic level config generation on startup min/max/multiplier configuration job to persist the xp of the previous minute added delayed scheduler start, so that events have a discord context in order to function added role listener to automatically add and mark roles when they are created/deleted fixed user in a server not being created correctly added role service to give users role given by id added server reference to role Sheldan 2020-04-11 17:21:55 +02:00
  • 87c97d5069 added exception in case the feature is not known to the system Sheldan 2020-04-10 12:06:46 +02:00
  • e84e384706 added ability to define and use default emotes (introduced them in starboard/embed deletion/command reactions/suggestions) fixed post target validation for suggestions Sheldan 2020-04-10 11:24:16 +02:00
  • aa8ff9ddb5 added rework of model split, not completely done, a lot of questions open (converters evaluate lazy evaluated properties (might need addition of different convert methods), hen egg problem with channel and server for converters, AModels still need to be exposed regardless, because else database cannot be used in same schema (jpa needs the objects), api need to be checked, to not convert all the time between objects for no reason) modelsplit Sheldan 2020-04-09 23:59:47 +02:00
  • ef8dcb61d9 added reminders command fixed embedbuilder list not containing an initial embed builder Sheldan 2020-04-08 16:22:58 +02:00
  • c30d7aab92 added test for context utils Sheldan 2020-04-08 14:50:08 +02:00