public ActionResult Registrar(string email_nuevo)
        {
            ViewData["email_nuevo"] = email_nuevo;
            Cliente cl = new Cliente();
            cl.email = email_nuevo;

            return View(cl);
        }
        public ActionResult Create(Cliente cliente)
        {
            //cliente.estado.idestado = 1;

            if (ModelState.IsValid)
            {

                db.Cliente.Add(cliente);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            ViewBag.idestado = new SelectList(db.estado, "idestado==1", "descrip", cliente.idestado == 1);
            ViewBag.idrol = new SelectList(db.rol, "idrol", "descrip", cliente.idrol);
            return View(cliente);
        }
        public ActionResult Logueo(Cliente cli)
        {
            if (ModelState.IsValid) //Verificar que el modelo de datos sea válido en cuanto a la definición de las propiedades
            {
                if (verificaCliente(cli.email,cli.clave).Equals("cliente"))//Verificar que el email y clave exista utilizando el método privado
                {
                    FormsAuthentication.SetAuthCookie(cli.email, false); //crea variable de usuario con el correo del usuario
                    return RedirectToAction("Index", "Tienda"); //dirigir al controlador home vista Index una vez se a autenticado en el sistema
                }
                else if(verificaCliente(cli.email,cli.clave).Equals("empleado")){
                    // FormsAuthentication.SetAuthCookie(cli.email, false);
                    var emp = bd.empleado.FirstOrDefault(e => e.email == cli.email && e.clave==cli.clave);
                    this.HttpContext.Session["sessionEmpleado"] = emp;

                    return RedirectToAction("Index", "Producto");
                }
            }
               ModelState.AddModelError("", "Usuario o contraseña es Incorrecto"); //adicionar mensaje de error al model
               return View(cli);
        }
 public ActionResult Edit(Cliente cliente)
 {
     if (ModelState.IsValid)
     {
         db.Entry(cliente).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     ViewBag.idestado = new SelectList(db.estado, "idestado", "descrip", cliente.idestado);
     ViewBag.idrol = new SelectList(db.rol, "idrol", "descrip", cliente.idrol);
     return View(cliente);
 }
        public ActionResult Registrar(Cliente cli)
        {
            if (ModelState.IsValid)
            {
                int i = 0;

                if (cli.nombre == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de nombre");
                    i++;
                }
                if (cli.apePaterno == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de A.Paterno");
                    i++;
                }

                if (cli.apeMaterno == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de A. Materno");
                    i++;
                }
                if (cli.email == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de email");
                    i++;
                }
                if (cli.dni == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de dni");
                    i++;
                }
                if (cli.fechaNac == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de fecha nacimiento");
                    i++;
                }
                if (cli.clave == null)
                {
                    ModelState.AddModelError("", "Formato incorrecto de clave");
                    i++;
                }

                if (i > 0)
                {
                    return View(cli);
                }
                else
                {

                    cli.fechaRegistro = DateTime.Now;
                    cli.idestado = 1;
                    cli.idrol = 5;
                    bd.Cliente.Add(cli);
                    bd.SaveChanges();
                    FormsAuthentication.SetAuthCookie(cli.email, false); //crea variable de usuario con el correo del usuario
                    return RedirectToAction("Index", "Tienda");

                }

            }
            return View();
        }
        public ActionResult VerificaCliente(Cliente cli)
        {
            if (ModelState.IsValid)
            {

                if (cli.email == null)
                {
                    ViewData["error"] = "Por favor escriba un email";
                    return View("Logueo");
                }
                else
                {
                    if (verificaEmailCliente(cli.email))
                    {

                        ViewData["error"] = "Ya existe usuario con el mismo correo electrónico";
                        return View("Logueo");

                    }
                }

            }
            return RedirectToAction("Registrar", "Cuenta", new { email_nuevo = cli.email });
        }