diff --git a/OliverBooth/Controllers/ContactController.cs b/OliverBooth/Controllers/ContactController.cs index 0f11dc5..4d50ec7 100644 --- a/OliverBooth/Controllers/ContactController.cs +++ b/OliverBooth/Controllers/ContactController.cs @@ -31,6 +31,33 @@ public class ContactController : Controller return RedirectToPage("/Contact/Index"); } + [HttpPost("privacy-policy")] + public async Task HandlePrivacyPolicy() + { + if (!Request.HasFormContentType) + { + return RedirectToPage("/Contact/Privacy"); + } + + IFormCollection form = Request.Form; + StringValues name = form["name"]; + StringValues email = form["email"]; + StringValues subject = form["subject"]; + StringValues message = form["message"]; + StringValues privacyPolicy = form["privacy-policy"]; + + await using SmtpSender sender = CreateSender(); + await sender.WriteEmail + .To("Oliver Booth", _destination.GetValue("PrivacyPolicy")) + .From(name, email) + .Subject($"[{privacyPolicy}] {subject}") + .BodyHtml(message) + .SendAsync(); + + TempData["Success"] = true; + return RedirectToPage("/Contact/Result"); + } + [HttpPost("other")] public async Task HandleMiscellaneous() { diff --git a/OliverBooth/Pages/Contact/Privacy.cshtml b/OliverBooth/Pages/Contact/Privacy.cshtml index 0e05fd7..baf5fc1 100644 --- a/OliverBooth/Pages/Contact/Privacy.cshtml +++ b/OliverBooth/Pages/Contact/Privacy.cshtml @@ -18,21 +18,21 @@ Please outline your concerns in the form below, and I will get back to you as soon as possible.

-
+
- - + +
- - + +
- + + +
- - + +