예제 #1
0
        public ActionResult verUsuarios(RegisterModel t)
        {
            string username;
            NameValueCollection col = Request.Params;
            string nombreParam = "";
            for (int i = 0; i < Request.Params.Count; i++)
            {
                nombreParam = col.GetKey(i); //Con esto accedo al nombre del parámetro
                if (nombreParam.Contains("quitar_")) //Con esto omito los parámetros que no me importan
                {
                    username = nombreParam.Substring("quitar_".Length);
                    if (username.Equals("admin"))
                    {
                        ViewBag.respuestaPost = "No es posible eliminar el usuario admin";
                        ViewBag.tipoRespuestaPost = "error";

                    }
                    else
                    {
                        if (Membership.DeleteUser(username))
                        {
                            ViewBag.respuestaPost = "Se ha eliminado satisfactoriamente el usuario";
                            ViewBag.tipoRespuestaPost = "satisfactorio";
                        }
                        else
                        {
                            ViewBag.respuestaPost = "Ha ocurrido un error al eliminar el usuario";
                            ViewBag.tipoRespuestaPost = "error";
                        }
                    }
                }
            }

            ViewBag.listaUsuarios = Membership.GetAllUsers();
            return View();
        }
예제 #2
0
        public ActionResult Register(RegisterModel model)
        {
            List<SelectListItem> tiposDeUsuario = new List<SelectListItem>();
            tiposDeUsuario.Add(new SelectListItem
            {
                Text = "Administrador",
                Value = "Administrador"
            });
            tiposDeUsuario.Add(new SelectListItem
            {
                Text = "Jefe de bodega",
                Value = "Jefe_bodega"
            });
            tiposDeUsuario.Add(new SelectListItem
            {
                Text = "Jefe de cuadrilla",
                Value = "Jefe_cuadrilla"
            });
            tiposDeUsuario.Add(new SelectListItem
            {
                Text = "Supervisor",
                Value = "Supervisor"
            });
            ViewBag.listaTiposUsuarios = tiposDeUsuario;

            if (model.tipoUsuario.Equals("Jefe_cuadrilla"))
            {
                int enteroTemp;
                if (Int32.TryParse(model.rut, out enteroTemp))
                {
                    if (enteroTemp < 0)
                        ModelState.AddModelError("rut", "El rut no es válido");
                    model.UserName = model.rut;

                }
                else
                {
                    ModelState.AddModelError("rut", "El rut no es válido");
                }
            }
            else
            {
                if (!ModelState.IsValidField("rut"))
                {
                    ModelState.Remove("rut");
                }
            }

            if (ModelState.IsValid)
            {

                // Attempt to register the user
                MembershipCreateStatus createStatus;
                try
                {
                    Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus);
                    Roles.AddUserToRole(model.UserName, model.tipoUsuario);
                    if (createStatus == MembershipCreateStatus.Success)
                    {
                        //FormsAuthentication.SetAuthCookie(model.UserName, false); //Hace que ahora quede logueado con el usuario recién creado
                        ViewBag.RespuestaPost = "Usuario creado correctamente";
                        ViewBag.tipoRespuestaPost = "satisfactorio";
                    }
                    else
                    {
                        ModelState.AddModelError("", AccountController.ErrorCodeToString(createStatus));
                    }
                }
                catch (Exception) {
                    ModelState.AddModelError("", "Ha ocurrido un error al crear el nuevo usuario");
                }

            }

            // If we got this far, something failed, redisplay form
            ViewBag.listaRuts = ListarTrabajadorModel.getAllTrabajadores();
            return View(model);
        }