Ejemplo n.º 1
0
        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));
        }