Пример #1
0
        public ActionResult CrearFlota([Bind(Include = "Id,Nombre,AdminNombre,AdminId")] CreacionFlota model)
        {
            if (ModelState.IsValid == false)
            {
                RellenarTodosAdminFlotas();
                ViewBag.AdminId = new SelectList(adminFlotas, "Id", "Nombre");
                return(View("CrearFlota", model));
            }

            Flota nombreRepetido = db.Flotas.Where(f => f.Nombre == model.Nombre).FirstOrDefault();

            if (nombreRepetido != null)
            {
                ModelState.AddModelError("Nombre", "Ese nombre ya existe.");
                RellenarTodosAdminFlotas();
                ViewBag.AdminId = new SelectList(adminFlotas, "Id", "Nombre");
                return(View("CrearFlota", model));
            }


            Flota.CrearFlota(db, model.Nombre, model.AdminId);

            return(RedirectToAction("AdminFlotas"));
        }
Пример #2
0
        public ActionResult Authenticate(String emailID, string passID)
        {
            int superAdmins = db.Usuarios.Where(u => u.Rol == Usuario.RolUsuario.SuperAdmin).ToList().Count;

            if (superAdmins == 0)
            {
                Session["Nombre"] = "first";
                return(RedirectToAction("PrimerUsuario"));
            }


            bool    validado       = false;
            Usuario userEncontrado = db.Usuarios.Where(u => u.Email == emailID).FirstOrDefault();

            if (userEncontrado != null)
            {
                //validado = true;
                validado = PasswordHash.ValidatePassword(passID, userEncontrado.Password);
            }


            if (validado)
            {
                Session["Nombre"] = userEncontrado.Nombre;
                Session["Email"]  = userEncontrado.Email;
                Session["Rol"]    = userEncontrado.Rol;

                if (userEncontrado.Rol == Usuario.RolUsuario.Bloqueado)
                {
                    TempData["msg"] = "Cuenta con acceso bloqueado.";
                    return(RedirectToAction("Index"));
                }
                else if (userEncontrado.Rol == Usuario.RolUsuario.SuperAdmin)
                {
                    return(RedirectToAction("Index", "SuperAdmin"));
                }
                else if (userEncontrado.Rol == Usuario.RolUsuario.AdminDeFlota)
                {
                    if (userEncontrado.UsuarioFlotaId == null)
                    {
                        Flota f = Flota.CrearFlota(db, userEncontrado.Nombre + "Flota" + userEncontrado.Id, userEncontrado.Id, "Default");

                        Session["Flota"] = f.Id;
                    }
                    else if (userEncontrado.UsuarioFlotaId != null)
                    {
                        Session["Flota"] = userEncontrado.UsuarioFlota.Flota.Id;
                    }

                    return(RedirectToAction("Index", "AdminFlota2"));
                }
                else
                {
                    //user normal
                    TempData["msg"] = "Este acceso es exclusivo de administradores.";
                    return(RedirectToAction("Index"));
                    //return RedirectToAction("Index", "UserNormal");
                }
            }
            else
            {
                TempData["msg"] = "Usuario/Contraseña no existentes.";
                return(RedirectToAction("Index"));
            }
        }