33import net .dv8tion .jda .api .EmbedBuilder ;
44import net .dv8tion .jda .api .entities .Guild ;
55import net .dv8tion .jda .api .entities .Member ;
6+ import net .dv8tion .jda .api .entities .MessageEmbed ;
67import net .dv8tion .jda .api .entities .Role ;
78import net .dv8tion .jda .api .entities .channel .ChannelType ;
89import net .dv8tion .jda .api .entities .channel .concrete .TextChannel ;
@@ -94,24 +95,14 @@ public void execute(@NotNull SlashCommandInteractionEvent event) {
9495 Responses .warning (event , "Sorry, this command cannot be used directly after a post has been created." ).queue ();
9596 return ;
9697 }
98+
99+ String comment = event .getOption ("comment" , null , OptionMapping ::getAsString );
100+
97101 if (isHelpPingTimeoutElapsed (member .getIdLong (), config )) {
98102 lastPingTimes .put (event .getMember ().getIdLong (), new Pair <>(System .currentTimeMillis (), config .getGuild ()));
99103 TextChannel notifChannel = config .getHelpConfig ().getHelpNotificationChannel ();
100- EmbedBuilder eb = new EmbedBuilder ()
101- .setDescription ("%s requested help in %s"
102- .formatted (
103- event .getUser ().getAsMention (),
104- post .getAsMention ()
105- ))
106- .setAuthor (member .getEffectiveName (), null , member .getEffectiveAvatarUrl ())
107- .setFooter (event .getUser ().getId ())
108- .setColor (Color .YELLOW );
109104
110- appendComment (eb , event .getOption ("comment" , null , OptionMapping ::getAsString ));
111- appendTags (eb , post );
112- eb .appendDescription ("\n \n [Click to view](" +post .getJumpUrl ()+")" );
113-
114- notifChannel .sendMessageEmbeds (eb .build ())
105+ notifChannel .sendMessageEmbeds (createHelpEmbed (comment , post , member ))
115106 .addActionRow (createAcknowledgementButton ())
116107 .queue ();
117108 event .reply ("""
@@ -127,6 +118,27 @@ public void execute(@NotNull SlashCommandInteractionEvent event) {
127118 }
128119 }
129120
121+ private MessageEmbed createHelpEmbed (String comment , ThreadChannel post , Member member ) {
122+ EmbedBuilder eb = createBasicHelpEmbedBuilder (post , member );
123+ appendComment (eb , comment );
124+ appendTags (eb , post );
125+ eb .appendDescription ("\n \n [Click to view](" +post .getJumpUrl ()+")" );
126+ return eb .build ();
127+ }
128+
129+ private EmbedBuilder createBasicHelpEmbedBuilder (ThreadChannel post , Member member ) {
130+ EmbedBuilder eb = new EmbedBuilder ()
131+ .setDescription ("%s requested help in %s"
132+ .formatted (
133+ member .getAsMention (),
134+ post .getAsMention ()
135+ ))
136+ .setAuthor (member .getEffectiveName (), null , member .getEffectiveAvatarUrl ())
137+ .setFooter (member .getId ())
138+ .setColor (Color .YELLOW );
139+ return eb ;
140+ }
141+
130142 private void appendTags (EmbedBuilder eb , ThreadChannel post ) {
131143 List <ForumTag > tags = post .getAppliedTags ();
132144 if (!tags .isEmpty ()) {
0 commit comments