[server] Remove existing scheduledDelete entries if account is recovered

This commit is contained in:
Neeraj Gupta 2024-04-11 11:03:57 +05:30
parent 02e8861e96
commit 830483ca68

View file

@ -190,8 +190,15 @@ func (c *DeleteUserCleanupController) storageCheck(ctx context.Context, item *en
}
func (c *DeleteUserCleanupController) isDeleted(item *entity.DataCleanup) error {
_, err := c.UserRepo.Get(item.UserID)
u, err := c.UserRepo.Get(item.UserID)
if err == nil {
// user is not deleted, double check by verifying email is not empty
if u.Email != "" {
remErr := c.Repo.RemoveScheduledDelete(context.Background(), item.UserID)
if remErr != nil {
return stacktrace.Propagate(remErr, "failed to remove scheduled delete entry")
}
}
return stacktrace.Propagate(ente.NewBadRequestWithMessage("User ID is linked to undeleted account"), "")
}
if !errors.Is(err, ente.ErrUserDeleted) {