public ActionResult <int> SendCode([FromBody] SendCodeDto input) { var code = db.Codes.FirstOrDefault(c => c.CodeId == input.Code); if (code == null) { return(NotFound()); } var recycle = db.RecycleDtos2.First(r => r.Id == code.RecycleId); recycle.UserId = input.UserId; recycle.IsApproved = true; db.SaveChanges(); return(recycle.ToRecycle().CalculatePoints()); }
public async Task <IActionResult> SendCode([FromBody] SendCodeDto model) { var user = await _signInManager.GetTwoFactorAuthenticationUserAsync(); if (user == null) { return(NotFound()); } // Generate the token and send it var code = await _userManager.GenerateTwoFactorTokenAsync(user, model.SelectedProvider); if (string.IsNullOrWhiteSpace(code)) { return(NotFound()); } var message = "Your security code is: " + code; var response = string.Empty; switch (model.SelectedProvider) { case "Email": await _emailSender.SendEmailAsync(await _userManager.GetEmailAsync(user), "Security Code", message); response = "An email has been sent to confirm your account"; break; case "Phone": await _smsSender.SendSmsAsync(await _userManager.GetPhoneNumberAsync(user), message); response = "An sms has been sent to confirm your account"; break; } return(Ok(response)); }