public VerifyEmailAddressResult VerifyEmailAddress(byte[] id, out PartnerEmailVerificationDTO emailVerification) { try { Connector.IsTransaction = true; VerifyEmailAddressResult result = default; PartnerEmailVerificationDTO emailVerificationResult = ReadById(id); if (emailVerificationResult != null && emailVerificationResult.IsActive) { PartnerBLL partnerBLL = new PartnerBLL(Connector); partnerBLL.Update(emailVerificationResult.Partner.Id, new Dictionary <string, object>() { { "HasEmailAddressBeenVerified", true } }); Delete(id); result = VerifyEmailAddressResult.OK; } else { result = VerifyEmailAddressResult.NotFound; } Connector.CommitTransaction(); emailVerification = emailVerificationResult; return(result); } catch (Exception exception) { Connector.RollbackTransaction(); throw exception; } }
public void Insert(PartnerEmailVerificationDTO emailVerification, out byte[] id) { byte[] generatedId = SecureIdGenerator.Generate(emailVerification); Connector.ExecuteNonQuery(insertQuery, new Dictionary <string, object>() { { "Id", generatedId }, { "Partner", emailVerification.Partner }, { "EmailAddress", emailVerification.EmailAddress }, { "ExpiresOn", emailVerification.ExpiresOn } }); id = generatedId; }
public VerifyEmailAddressResult VerifyEmailAddress(string id, out PartnerEmailVerificationDTO emailVerification) => VerifyEmailAddress(FormatHelper.FromHexStringToArray(id), out emailVerification);
public CreateResult Create(PartnerEmailVerificationDTO emailVerification) { Repository.Insert(emailVerification, out byte[] id); emailVerification.Id = id; return(CreateResult.OK); }
public static byte[] Generate(PartnerEmailVerificationDTO emailVerification) => Generate($"Security.PartnerEmailVerification|Partner={emailVerification.Partner.Id};EmailAddress={emailVerification.EmailAddress}");