public async Task <ActionResult> Create(newUserViewModel user) { if (ModelState.IsValid) { if (user.UsuariosChequeados != null && user.UsuariosChequeados.Count > 0) { try { var resultado = await _userService.CreateAsync(new ApplicationUser { Email = user.Email, UserName = user.UserName }, user.Password); if (resultado.Succeeded) { var usuario = await _userService.FindByEmailAsync(user.Email); _userService.AddToRoles(usuario.Id, user.UsuariosChequeados.ToArray()); AddMessage("Usuario Creado correctamente", Helpers.Managers.MessageType.Normal); return(RedirectToAction("Details", new { id = usuario.Id })); } foreach (var e in resultado.Errors) { AddMessage(e, Helpers.Managers.MessageType.Error); } } catch { AddMessage("Hubo un error al crear el usuario", Helpers.Managers.MessageType.Error); } } else { AddMessage("Debe seleccionar un role", Helpers.Managers.MessageType.Error); } } user.Password = ""; user.RePassword = ""; var roles = _roleService.Roles; user.ListaDeRoles = new List <RolesDeUsuarioViewModel>(); foreach (var rol in roles) { user.ListaDeRoles.Add(new RolesDeUsuarioViewModel() { Checked = false, NombreRol = rol.Name }); } return(View("Create", user)); }
// GET: Administracion/Usuarios/Create public ActionResult Create() { var vm = new newUserViewModel(); var roles = _roleService.Roles; vm.ListaDeRoles = new List <RolesDeUsuarioViewModel>(); foreach (var rol in roles) { vm.ListaDeRoles.Add(new RolesDeUsuarioViewModel() { Checked = false, NombreRol = rol.Name }); } return(View(vm)); }
public async Task <ActionResult> Register(newUserViewModel model) { string username = ""; if (ModelState.IsValid) { if (model.newProfile.user.UserName != null) { string checkedUsername = createUserName(model.newProfile.user.UserName); if (checkedUsername == model.newProfile.user.UserName) { username = model.newProfile.user.UserName; } else { ViewBag.ErrorMessage = "Username is already in use, try something else or leave line blank to use your email address."; return(View(model)); } } else { username = createUserName(createUsernamePrefix(model.newProfile)); } ApplicationUser user = new ApplicationUser { UserName = username, Email = model.newUser.Email }; var result = await UserManager.CreateAsync(user, model.newUser.Password); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); UserManager.AddToRole(user.Id, "StdUser"); var profile = new userProfileModel { fName = model.newProfile.fName, MInitial = model.newProfile.MInitial, lName = model.newProfile.lName, state = model.newProfile.state, city = model.newProfile.city, zipcode = model.newProfile.zipcode, address = model.newProfile.address, contactEmail = model.newUser.Email, ID = user.Id, UserID = user.Id }; db.userprofilemodel.Add(profile); db.SaveChanges(); await signInOut(model.newUser.Password, user); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }