Skip to content

Commit 78624bb

Browse files
committed
Field removal subcommand improvements
1 parent 462138d commit 78624bb

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

src/main/java/net/discordjug/javabot/systems/staff_commands/forms/commands/RemoveFieldFormSubcommand.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,6 @@ public void execute(SlashCommandInteractionEvent event) {
5252
return;
5353
}
5454
FormData form = formOpt.get();
55-
if (index < 0 || index >= form.fields().size()) {
56-
event.getHook().sendMessage("Field index out of bounds.").queue();
57-
return;
58-
}
5955

6056
if (form.isAttached() && form.fields().size() <= 1) {
6157
event.getHook().sendMessage(
@@ -64,7 +60,10 @@ public void execute(SlashCommandInteractionEvent event) {
6460
return;
6561
}
6662

67-
formsRepo.removeField(form, index);
63+
if (!formsRepo.removeField(form, index)) {
64+
event.getHook().sendMessage("A field on this index was not found.").queue();
65+
return;
66+
}
6867

6968
event.getHook().sendMessage("Removed field `" + form.fields().get(index).label() + "` from the form.").queue();
7069
}

src/main/java/net/discordjug/javabot/systems/staff_commands/forms/dao/FormsRepository.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@
1111
import java.util.Map;
1212
import java.util.Objects;
1313
import java.util.Optional;
14+
1415
import org.springframework.dao.EmptyResultDataAccessException;
1516
import org.springframework.jdbc.core.JdbcTemplate;
1617
import org.springframework.jdbc.core.RowMapper;
1718
import org.springframework.stereotype.Repository;
19+
1820
import lombok.NonNull;
1921
import lombok.RequiredArgsConstructor;
2022
import net.discordjug.javabot.systems.staff_commands.forms.model.FormData;
@@ -238,11 +240,12 @@ public void addSubmission(User user, FormData form, Message message) {
238240
*
239241
* @param form form to remove the field from
240242
* @param index index of the field to remove
243+
* @return
241244
*/
242-
public void removeField(FormData form, int index) {
245+
public boolean removeField(FormData form, int index) {
243246
List<FormField> fields = form.fields();
244-
if (index < 0 || index >= fields.size()) return;
245-
jdbcTemplate.update("delete from `form_fields` where `id` = ?", fields.get(index).id());
247+
if (index < 0 || index >= fields.size()) return false;
248+
return jdbcTemplate.update("delete from `form_fields` where `id` = ?", fields.get(index).id()) > 0;
246249
}
247250

248251
/**

0 commit comments

Comments
 (0)