diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index f41ce3c..7b2c1af 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,8 +4,12 @@
-
+
+
+
+
+
@@ -50,6 +54,7 @@
+
@@ -76,6 +81,14 @@
"accountId": "ad9eb076-a98f-40c2-b7e5-9fc28b23038f"
}
}
+
+
+
+
+
+
+
+
{
"isMigrated": true
}
@@ -117,7 +130,6 @@
"RequestMappingsPanelWidth1": "75",
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
- "SHARE_PROJECT_CONFIGURATION_FILES": "true",
"Spring Boot.Main.executor": "Run",
"Tomcat Server.Tomcat 10.1.17.executor": "Run",
"git-widget-placeholder": "master",
@@ -133,7 +145,7 @@
"project.structure.proportion": "0.0",
"project.structure.side.proportion": "0.0",
"run.code.analysis.last.selected.profile": "pProject Default",
- "settings.editor.selected.configurable": "preferences.lookFeel",
+ "settings.editor.selected.configurable": "org.codinjutsu.tools.jenkins.servers",
"vue.rearranger.settings.migration": "true"
},
"keyToStringList": {
@@ -382,6 +394,9 @@
+
+
+
@@ -647,7 +662,15 @@
1723249968746
-
+
+
+ 1723392636255
+
+
+
+ 1723392636255
+
+
@@ -665,8 +688,6 @@
-
-
@@ -690,6 +711,12 @@
-
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/com/alttd/forms/controlers/apply/StaffAppFormData.java b/src/main/java/com/alttd/forms/controlers/apply/StaffAppFormData.java
index 44adb25..da4cdd8 100644
--- a/src/main/java/com/alttd/forms/controlers/apply/StaffAppFormData.java
+++ b/src/main/java/com/alttd/forms/controlers/apply/StaffAppFormData.java
@@ -1,6 +1,7 @@
package com.alttd.forms.controlers.apply;
import com.alttd.forms.form.Form;
+import com.alttd.forms.mail.mail_forms.Mailable;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.*;
import org.hibernate.validator.constraints.Length;
@@ -9,7 +10,7 @@ import org.hibernate.validator.constraints.Range;
import java.time.LocalDate;
import java.util.Optional;
-public class StaffAppFormData extends Form {
+public class StaffAppFormData extends Form implements Mailable {
public StaffAppFormData() {}
@@ -125,6 +126,12 @@ public class StaffAppFormData extends Form {
return "apply@alttd.com";
}
+ @JsonIgnore
+ @Override
+ public String getSubject() {
+ return "Staff Application: " + username;
+ }
+
@JsonIgnore
@Override
public String getSender() {
diff --git a/src/main/java/com/alttd/forms/controlers/contact/ContactFormData.java b/src/main/java/com/alttd/forms/controlers/contact/ContactFormData.java
index 2ca646e..417d0a8 100644
--- a/src/main/java/com/alttd/forms/controlers/contact/ContactFormData.java
+++ b/src/main/java/com/alttd/forms/controlers/contact/ContactFormData.java
@@ -1,6 +1,7 @@
package com.alttd.forms.controlers.contact;
import com.alttd.forms.form.Form;
+import com.alttd.forms.mail.mail_forms.Mailable;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
@@ -9,7 +10,7 @@ import org.hibernate.validator.constraints.Length;
import java.util.Optional;
-public class ContactFormData extends Form {
+public class ContactFormData extends Form implements Mailable {
public ContactFormData() {}
@@ -54,6 +55,12 @@ public class ContactFormData extends Form {
return "support@alttd.com";
}
+ @JsonIgnore
+ @Override
+ public String getSubject() {
+ return "Contact form: " + username;
+ }
+
@JsonIgnore
@Override
public String getSender() {
diff --git a/src/main/java/com/alttd/forms/form/Form.java b/src/main/java/com/alttd/forms/form/Form.java
index 7f4cd7c..d0a722a 100644
--- a/src/main/java/com/alttd/forms/form/Form.java
+++ b/src/main/java/com/alttd/forms/form/Form.java
@@ -45,7 +45,5 @@ public abstract class Form {
public abstract Optional getDiscordBotUrl();
- public abstract String getReceiver();
-
public abstract String getSender();
}
diff --git a/src/main/java/com/alttd/forms/mail/mail_forms/MailForm.java b/src/main/java/com/alttd/forms/mail/mail_forms/MailForm.java
index 4ce0f2d..1bb8b25 100644
--- a/src/main/java/com/alttd/forms/mail/mail_forms/MailForm.java
+++ b/src/main/java/com/alttd/forms/mail/mail_forms/MailForm.java
@@ -15,7 +15,8 @@ public class MailForm {
private static final Logger logger = LoggerFactory.getLogger(MailForm.class);
- public static void sendForm(String receiver, Form form) {
+ public static void sendForm(Form form, Mailable mailable) {
+ String receiver = mailable.getReceiver();
Properties mailProperties = MailSettings.getMailProperties();
Optional accountDetails = MailSettings.getAccountDetails();
if (accountDetails.isEmpty()) {
@@ -32,8 +33,7 @@ public class MailForm {
Message.RecipientType.TO,
InternetAddress.parse(receiver)
);
- message.setSubject("Altitude Form");
- //TODO add something above the html form probably
+ message.setSubject(mailable.getSubject());
message.setContent(form.toHtml(), "text/html");
try {
Transport.send(message);
diff --git a/src/main/java/com/alttd/forms/mail/mail_forms/Mailable.java b/src/main/java/com/alttd/forms/mail/mail_forms/Mailable.java
new file mode 100644
index 0000000..690a1d0
--- /dev/null
+++ b/src/main/java/com/alttd/forms/mail/mail_forms/Mailable.java
@@ -0,0 +1,9 @@
+package com.alttd.forms.mail.mail_forms;
+
+public interface Mailable {
+
+ String getReceiver();
+
+ String getSubject();
+
+}
diff --git a/src/main/java/com/alttd/forms/verify_mail/VerifyController.java b/src/main/java/com/alttd/forms/verify_mail/VerifyController.java
index d84e0f8..eb991ad 100644
--- a/src/main/java/com/alttd/forms/verify_mail/VerifyController.java
+++ b/src/main/java/com/alttd/forms/verify_mail/VerifyController.java
@@ -1,7 +1,9 @@
package com.alttd.forms.verify_mail;
+import com.alttd.forms.controlers.apply.StaffAppFormData;
import com.alttd.forms.form.Form;
import com.alttd.forms.mail.mail_forms.MailForm;
+import com.alttd.forms.mail.mail_forms.Mailable;
import com.fasterxml.jackson.core.JsonProcessingException;
import jakarta.validation.Valid;
import org.slf4j.Logger;
@@ -41,7 +43,8 @@ public class VerifyController {
return stringResponseEntity.get();
}
}
- MailForm.sendForm(form.getReceiver(), form);
+ if (form instanceof Mailable mailable)
+ MailForm.sendForm(form, mailable);
try {
return ResponseEntity.ok(form.toJsonString());
} catch (JsonProcessingException e) {