public async Task AgentRegister(AgentRegisterDto agentRegister) { var agent = _mapper.Map <User>(agentRegister); agent.ImagePath = agentRegister.ImagePath; agent.AgentProfile.Id = agent.Id; agent.EmailConfirmed = true; var result = await _userManager.CreateAsync(agent, agentRegister.Password); if (result.Succeeded) { var currentUser = await _userManager.FindByNameAsync(agent.UserName); await _userManager.AddToRoleAsync(currentUser, "Agent"); string body = string.Empty; using (StreamReader reader = new StreamReader(Path.Combine(_env.ContentRootPath, "Templates", "Welcome.html"))) { body = await reader.ReadToEndAsync(); } var url = "https://realestate20200708014452.azurewebsites.net"; if (_env.IsDevelopment()) { url = "http://localhost:4200"; } var code = await _userManager.GenerateEmailConfirmationTokenAsync(agent); var email = EmailSendingHelper.RegisterEmail(code, body, agent, _emailSettings.Email, url); await _confirmationService.SendEmail(email); } }
public async Task <bool> ForgotPassword(ForgotPasswordDto forgotPasswordDto) { var user = await _unitOfWork.Repository <User>().GetAsync(u => u.Email == forgotPasswordDto.Email); if (user == null || !(await _userManager.IsEmailConfirmedAsync(user))) { return(false); } string body = string.Empty; using (StreamReader reader = new StreamReader(Path.Combine(_env.ContentRootPath, "Templates", "password.html"))) { body = await reader.ReadToEndAsync(); } var url = "https://realestate20200708014452.azurewebsites.net"; if (_env.IsDevelopment()) { url = "http://localhost:4200"; } var code = await _userManager.GeneratePasswordResetTokenAsync(user); var email = EmailSendingHelper.RegisterEmail(code, body, user, _emailSettings.Email, url); await _confirmationService.SendEmail(email); return(true); }