public async Task SignupAsync() { EmailAlreadyTaken = await Context.Users.WhereEmail(User.Email).AnyAsync(); if (!EmailAlreadyTaken) { User.LastLogin = DateTime.UtcNow; User.Salt = Guid.NewGuid().ToString("N"); User.Password = new Sha256Hash(User.Password, User.Salt).ToString(); User.LastChangePassword = DateTime.UtcNow; User.Tenant = new Tenant(); User.Tenant.Owner = User.Email; User.Tenant.CreatedAt = DateTime.UtcNow; ClosureRequest = new ClosureRequest(); ClosureRequest.Token = Guid.NewGuid().ToString("N"); ClosureRequest.Email = User.Email; ClosureRequest.RequestDate = User.LastLogin; ClosureRequest.ExpiryDate = ClosureRequest.RequestDate .AddHours(ClosureRequest.ExpiryHours); Context.Users.Add(User); Context.ClosureRequests.Add(ClosureRequest); await Context.SaveChangesAsync(); } }
public SignupEmail(User user, ClosureRequest closureRequest) { User = user; ClosureRequest = closureRequest; }