TJ-Bot icon indicating copy to clipboard operation
TJ-Bot copied to clipboard

Feat: Add slash command to generate application form for various community roles

Open christolis opened this issue 1 year ago • 5 comments

Closes #1024.

Screenshots

ScreenRecording2024-03-11at18 29 35-ezgif com-video-to-gif-converter image

Configuration changes

Property Description Type Default
applicationForm.applicationChannelPattern Where submitted
applications end up.
String "applications-log"

TODO

  • [x] Add a 5 minute cooldown per member for sending applications to prevent spam (feel free to recommend alternatives).
    • This could be done by having a HashMap<Member, OffsetDateTime> where the key is the Member who sent an application and the value is the date and time that they sent it. There should be a condition every time a Member attempts to send any application which utilizes the aforementioned HashMap to prevent spam.
  • [x] Add JavaDocs for every method where it's necessary.
  • [x] ~~Switch to EntitySelectInteractionEvent for the dropdown menu.~~ (EDIT: Impossible since this would forcibly include all existing roles)
  • [x] Move selectable roles from the config to the command parameters in a similar fashion with previous commands.
    • This eliminates emoji/description metadata as well that was previously defined in the configuration file.

christolis avatar Mar 08 '24 13:03 christolis

Can i be assigned to this?

Suleman70 avatar Mar 08 '24 14:03 Suleman70

Marked PR as draft since there needs to be some rework on certain things which will be specified in the TODO.

christolis avatar Mar 19 '24 22:03 christolis