email response change
This commit is contained in:
@@ -83,12 +83,23 @@ namespace Webshop.Application.Services.Auth
|
||||
public async Task<ServiceResult> ResendEmailConfirmationAsync(string email)
|
||||
{
|
||||
var user = await _userManager.FindByEmailAsync(email);
|
||||
if (user == null || await _userManager.IsEmailConfirmedAsync(user))
|
||||
|
||||
// Fall 1: Benutzer existiert nicht. Aus Sicherheitsgründen trotzdem OK zurückgeben.
|
||||
if (user == null)
|
||||
{
|
||||
// Aus Sicherheitsgründen immer eine positive Antwort geben
|
||||
return ServiceResult.Ok();
|
||||
}
|
||||
|
||||
// Fall 2: Die E-Mail des Benutzers ist bereits bestätigt.
|
||||
// Wir prüfen die Eigenschaft direkt auf dem frisch geladenen User-Objekt.
|
||||
if (user.EmailConfirmed)
|
||||
{
|
||||
// In diesem Fall wollen wir einen Fehler an das Frontend geben,
|
||||
// damit der Benutzer weiß, dass alles in Ordnung ist.
|
||||
return ServiceResult.Fail(ServiceResultType.InvalidInput, "Diese E-Mail-Adresse ist bereits bestätigt.");
|
||||
}
|
||||
|
||||
// Fall 3: Benutzer existiert, ist aber nicht bestätigt -> E-Mail senden.
|
||||
await SendEmailConfirmationEmail(user);
|
||||
return ServiceResult.Ok();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user