add EmailSent in checking for signatory

This commit is contained in:
jojo aquino 2025-03-22 09:32:55 +00:00
parent a09e2a5613
commit ad026acb66
2 changed files with 6 additions and 3 deletions

View File

@ -10,6 +10,8 @@
public static bool IsInList(this string s, params string[] list) => list.Contains(s, StringComparer.OrdinalIgnoreCase);
public static bool IsInList<T>(this string stringValue, IEnumerable<T> listOfEnums) where T : struct, Enum => Enum.TryParse(stringValue, out T enumValue) && listOfEnums.Contains(enumValue);
public static string NullIfWhiteSpace(this string s) => string.IsNullOrWhiteSpace(s) ? null : s;
public static Guid ToGuidFromBase64(this string s)

View File

@ -24,16 +24,17 @@ namespace EnotaryoPH.Web.Pages.Participant.Registration
return NotFound();
}
var validStates = new SignatoryStatus[] { SignatoryStatus.New, SignatoryStatus.Registered, SignatoryStatus.EmailSent };
var invitationCodeGuid = InvitationCode.ToGuidFromBase64();
var signatory = _notaryoDBContext.TransactionSignatories
.Include(e => e.Transaction)
.FirstOrDefault(e => e.InvitationCode == invitationCodeGuid.ToString() && (e.Status == nameof(SignatoryStatus.New) || e.Status == nameof(SignatoryStatus.Registered)));
if (signatory == null)
.FirstOrDefault(e => e.InvitationCode == invitationCodeGuid.ToString());
if (signatory == null || !signatory.Status.IsInList(validStates))
{
return NotFound();
}
var existingUser = _notaryoDBContext.Users.FirstOrDefault(e => e.Email.Equals(signatory.Email, StringComparison.CurrentCultureIgnoreCase));
var existingUser = _notaryoDBContext.Users.FirstOrDefault(e => e.Email.ToLower() == signatory.Email.ToLower());
if (existingUser != null)
{
signatory.Status = nameof(SignatoryStatus.Registered);