Exemplo n.º 1
0
        public async Task <IActionResult> CreateTeacher([FromForm] CreateTeacherVM teacher)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser {
                    UserName = teacher.Email, Email = teacher.Email
                };
                var result = await _userManager.CreateAsync(user, teacher.FirstName + "@Yy2018");

                if (result.Succeeded)
                {
                    //_logger.LogInformation("User created a new account with password.");

                    var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);

                    var callbackUrl = Url.EmailConfirmationLink(user.Id, code, Request.Scheme);
                    result = _userManager.AddToRoleAsync(user, "Teacher").Result;
                    Teacher teacherData = new Teacher {
                        FirstName = teacher.FirstName, LastName = teacher.LastName, Email = teacher.Email
                    };

                    _context.Add(teacherData);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));

                    //await _emailSender.SendEmailConfirmationAsync(model.Email, callbackUrl);

                    //await _signInManager.SignInAsync(user, isPersistent: false);
                    //_logger.LogInformation("User created a new account with password.");
                    //return RedirectToAction("Index");
                }
                AddErrors(result);
            }
            return(View(teacher));
        }
Exemplo n.º 2
0
 // GET: Teachers/Create
 public IActionResult Create(CreateTeacherVM model)
 {
     return(View(model));
 }