예제 #1
0
        public async Task <IActionResult> SignUpUser(string Email, string Username, string Password)
        {
            User newUser = new User();

            newUser.IdCode      = Role.RoleGuest;
            newUser.IsConfirmed = false;
            newUser.Username    = Username;
            newUser.Email       = Email;
            if (EmailExists(newUser.Email) || UsernameExists(newUser.Username))
            {
                TempData[TempDataHelper.TempdataKeyErrorMessage] = "Email or username already exist";
                return(View("SignUp"));
            }
            else
            {
                var userIdentity = new IdentityUser {
                    UserName = newUser.Username, Email = newUser.Email, EmailConfirmed = false
                };
                var result = await userManager.CreateAsync(userIdentity, Password);

                if (result.Succeeded)
                {
                    _context.User.Add(newUser);
                    _context.SaveChanges();
                    _context.Entry(newUser).GetDatabaseValues();
                    SendActivationMail(newUser.Email, CreateToken(newUser).Code);
                }
            }
            return(RedirectToAction("Index", "home"));
        }
예제 #2
0
 public static void Initialize(IServiceProvider serviceProvider)
 {
     using (var context = new ELearningPlatformContext(
                serviceProvider.GetRequiredService <
                    DbContextOptions <ELearningPlatformContext> >()))
     {
         // Look for any tokens.
         if (!context.Role.Any())
         {
             context.Role.AddRange(
                 new Role
             {
                 Label = "Guest"
             },
                 new Role
             {
                 Label = "Student"
             },
                 new Role
             {
                 Label = "Instructor"
             }
                 );
             context.SaveChanges();
         }
         if (!context.User.Any())
         {
             context.User.AddRange(
                 new User
             {
                 Email       = "*****@*****.**", //account specially created as default user
                 Username    = "******",
                 IdCode      = 3,
                 IsConfirmed = true,
                 Password    = "******"
             }
                 );
             context.SaveChanges();
         }
     }
 }
예제 #3
0
        public AccountController(ILogger <HomeController> logger, ELearningPlatformContext context, EmailConfiguration emailConfiguration,
                                 UserManager <IdentityUser> userManager, SignInManager <IdentityUser> signInManager)
        {
            _logger            = logger;
            _context           = context;
            this.userManager   = userManager;
            this.signInManager = signInManager;
            usersData          = new UsersData(_context);
            _emailSender       = new EmailSender(emailConfiguration);


            if (_context.User.Count() == 0)
            {
                // Create a new User if collection is empty,
                // which means you can't delete all users.
                _context.User.Add(new User {
                    Email = "*****@*****.**", IsConfirmed = true, IdCode = 3
                });
                _context.SaveChanges();
            }
            usersData.GetAllUser();
        }