From 33c3b434d7ea06a4d6ce6abd666c0cd6c9279a16 Mon Sep 17 00:00:00 2001 From: Oliver Booth Date: Mon, 25 Sep 2023 19:58:11 +0100 Subject: [PATCH] fix: redirect to error message on contact failure --- OliverBooth/Controllers/ContactController.cs | 21 ++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/OliverBooth/Controllers/ContactController.cs b/OliverBooth/Controllers/ContactController.cs index 415f7dd..418279b 100644 --- a/OliverBooth/Controllers/ContactController.cs +++ b/OliverBooth/Controllers/ContactController.cs @@ -46,12 +46,21 @@ public class ContactController : Controller StringValues message = form["message"]; await using SmtpSender sender = CreateSender(); - await sender.WriteEmail - .To("Oliver Booth", _destination.Get()) - .From(name, email) - .Subject($"[Contact via Website] {subject}") - .BodyText(message) - .SendAsync(); + try + { + await sender.WriteEmail + .To("Oliver Booth", _destination.Get()) + .From(name, email) + .Subject($"[Contact via Website] {subject}") + .BodyText(message) + .SendAsync(); + } + catch (Exception e) + { + _logger.LogError(e, "Failed to send email"); + TempData["Success"] = false; + return RedirectToPage("/Contact/Result"); + } TempData["Success"] = true; return RedirectToPage("/Contact/Result");