// GET: Admin/AspNetUsers/Create
 public ActionResult Create()
 {
     RegisterViewModel user = new RegisterViewModel();
     user.Email = "";
     user.Password = "";
     ViewBag.UserRoles = daluser.GetRoles(0);
     ViewBag.ProjectsDeveloper = daluser.GetProjects(0);
     return View(user);
 }
Exemplo n.º 2
0
        protected async Task<RegisterViewModel> generateRegisterViewModelFromAspNetUser(ApplicationUser user, int id)
        {
            if (user == null) user = await UserManager.FindByIdAsync(id);

            RegisterViewModel u = new RegisterViewModel();
            u.Id = user.Id;
            u.UserName = user.UserName;
            u.Email = user.Email;
            u.Address = user.Address;
            u.Password = user.PasswordHash;
            u.ConfirmPassword = user.PasswordHash;
            u.PhoneNumber1 = user.PhoneNumber;
            u.PhoneNumber2 = user.PhoneNumber2;
            u.IsDeleted = user.IsDeleted;
            u.IsActive = user.IsActive;

            return u;
        }
Exemplo n.º 3
0
        public async Task<ActionResult> UsersEdit(RegisterViewModel model)
        {
            int id = User.Identity.GetUserId<int>();
            model.Id = id;
            ApplicationUser user = await UserManager.FindByIdAsync(model.Id);

            user.Address = model.Address;
            user.PhoneNumber = model.PhoneNumber1;
            user.PhoneNumber2 = model.PhoneNumber2;
            //user.IsActive = model.IsActive;
            //user.IsDeleted = model.IsDeleted;

            if (model.Password != null)
            {
                ProjectManagerPasswordHasher ph = new ProjectManagerPasswordHasher();
                user.PasswordHash = ph.HashPassword(model.Password);
            }

            IdentityResult result = await UserManager.UpdateAsync(user);
            if (result.Succeeded)
            {
                if (model.Password != null)
                {
                    IdentityResult securityToken = await UserManager.UpdateSecurityStampAsync(model.Id);
                }

               
            }
            return RedirectToAction("Index", "Home");
        }
        public async Task<ActionResult> Create(RegisterViewModel model)
        {

            ViewBag.UserRoles = daluser.GetRoles(0);
            ViewBag.ProjectsDeveloper = daluser.GetProjects(0);

            model.Id = 0;
            
            if (ModelState.IsValid) {

                string projectsDeveloperCSV = Request.Form["chkProjectsDeveloper"];
                string userRoleCSV = Request.Form["chkUserRole"];

                var user = new ApplicationUser();
                user.UserName = model.UserName;
                user.Email = model.Email;
                user.Address = model.Address;
                user.PhoneNumber = model.PhoneNumber1;
                user.PhoneNumber2 = model.PhoneNumber2;
                user.IsActive = true;
                user.IsDeleted = false;
                user.EmailConfirmed = true;
                user.LockoutEnabled = true;

                if (model.Password != null)
                {
                    ProjectManagerPasswordHasher ph = new ProjectManagerPasswordHasher();
                    user.PasswordHash = ph.HashPassword(model.Password);
                }

                IdentityResult result = await UserManager.CreateAsync(user, model.Password);
               
               
              
                if (result.Succeeded)
                {
                    dal.GetAllAspNetUserRolesUpdate(user.Id, userRoleCSV);
                    dal.GetProjectsDeveloperUpdate(user.Id, projectsDeveloperCSV);

                }
               return RedirectToAction("Index", "AspNetUsers");
                

            }

            
            return View ("Create", model);
        }
        public async Task<ActionResult> Edit(RegisterViewModel model)
        {

            ApplicationUser user = await UserManager.FindByIdAsync(model.Id);
      
                user.Address = model.Address;
                user.PhoneNumber = model.PhoneNumber1;
                user.PhoneNumber2 = model.PhoneNumber2;
                user.IsActive = model.IsActive;
                user.IsDeleted = model.IsDeleted;

                string projectsDeveloperCSV = Request.Form["chkProjectsDeveloper"];
                string userRoleCSV = Request.Form["chkUserRole"];



                if (model.Password != null)
                {
                    ProjectManagerPasswordHasher ph = new ProjectManagerPasswordHasher();
                    user.PasswordHash = ph.HashPassword(model.Password);
                }

                IdentityResult result = await UserManager.UpdateAsync(user);
                if (result.Succeeded)
                {
                if (model.Password != null)
                {
                    IdentityResult securityToken = await UserManager.UpdateSecurityStampAsync(model.Id);
                }

                dal.GetAllAspNetUserRolesUpdate(user.Id, userRoleCSV);
                    dal.GetProjectsDeveloperUpdate(user.Id, projectsDeveloperCSV);
                }
                return RedirectToAction("Index", "AspNetUsers");

            }
        public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser
                {
                    UserName = model.UserName,
                    Email = model.Email,
                    Address = model.Address,
                    PhoneNumber = model.PhoneNumber1,
                    PhoneNumber2 = model.PhoneNumber2,
                    IsActive=true,
                    IsDeleted=false                    
                };
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {
                    UserManager.AddToRole(user.Id, "Developer");

                    //   await SignInManager.SignInAsync(user, isPersistent:false, rememberBrowser:false);

                    // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    //await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    string callbackUrl = await SendEmailConfirmationTokenAsync(user.Id, "Confirm your account");

                    ViewBag.Message = "Check your email and confirm your account, you must be confirmed "
                                    + "before you can log in.";

                    return View("Info");


              
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }