public ActionResult VerifyComplete()
        {
            string value = Request.QueryString["tk"];
            int    idk   = Convert.ToInt32(Request.QueryString["n"]);

            if (value != "")
            {
                using (var db = new cursomvcEntities())
                {
                    var activada = from d in db.user where d.tokenCuenta == value && d.IdState == 2 && d.Id == idk select d.IdState;

                    if (activada.Contains(2))
                    {
                        var oUser = db.user.Find(idk);
                        oUser.IdState = 1;

                        db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        return(View());
                    }


                    else
                    {
                        return(Redirect(Url.Content("~/Access/")));
                    }
                }
            }
            else
            {
                return(Redirect(Url.Content("~/Access/")));
            }
        }
예제 #2
0
        public ActionResult Edit(EditUserViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            using (var db = new cursomvcEntities())
            {
                var oUser = db.user.Find(model.Id);
                oUser.email = model.Email;
                oUser.edad  = model.Edad;

                if (model.Password != null && model.Password.Trim() != "")
                {
                    oUser.password = model.Password;
                }

                db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
            }


            return(Redirect(Url.Content("~/User/")));
        }
        public ActionResult SaveArticulo(ArchivoViewModel mdel)
        {
            int      ses       = (int)Session["idusu"];
            string   nameimage = mdel.Imagen.FileName;
            DateTime today     = DateTime.Now;

            string RutaSitio = Server.MapPath("~/");
            string pathImg   = Path.Combine(RutaSitio + "/Files/" + nameimage);

            if (!ModelState.IsValid)
            {
                return(View("NewArticle", mdel));
            }

            using (cursomvcEntities db = new cursomvcEntities())
            {
                articulo oArticulo = new articulo();
                oArticulo.idState     = 1;
                oArticulo.nombre      = mdel.Nombre;
                oArticulo.descripcion = mdel.Descripcion;
                oArticulo.fecha       = today;
                oArticulo.nombreImg   = nameimage;
                oArticulo.idUsuario   = ses;

                db.articulo.Add(oArticulo);
                db.SaveChanges();
            }

            mdel.Imagen.SaveAs(pathImg);
            @TempData["Message"] = "Se ha publicado tu artículo";

            return(RedirectToAction("Index", "Home"));
        }
예제 #4
0
        public ActionResult Delete(int id)
        {
            using (var db = new cursomvcEntities())
            {
                var oUser = db.user.Find(id);
                oUser.idStates = 0;

                db.Entry(oUser).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
            }

            return(Content("1"));
        }
예제 #5
0
        public ActionResult Add(UserViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            using (var db = new cursomvcEntities())
            {
                user oUser = new user();
                oUser.email    = model.Email;
                oUser.idStates = 1;
                oUser.password = model.Password;
                oUser.edad     = model.Edad;

                db.user.Add(oUser);
                db.SaveChanges();
            }
            return(Redirect(Url.Content("~/user/")));
        }
예제 #6
0
        public ActionResult Add(UserViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            using (cursomvcEntities db = new cursomvcEntities())
            {
                user oUser = new user
                {
                    idState  = 1,
                    email    = model.Email,
                    edad     = model.Edad,
                    password = model.Password
                };

                db.user.Add(oUser);
                db.SaveChanges();
            }

            return(Redirect(Url.Content("~/User/")));
        }
        public ActionResult CreateAccount(UserAddViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            string      body           = "";
            VerifyEmail objVerifyEmail = new VerifyEmail();

            try
            {
                using (var db = new cursomvcEntities())
                {
                    user oUser = new user();
                    oUser.IdState     = 2; //1-Activo 2-Activacion Pendiente 3-Eliminado
                    oUser.nombre      = model.Nombre;
                    oUser.email       = model.Email;
                    oUser.password    = Encrypt.GetSHA256(model.Password);
                    oUser.edad        = model.Edad;
                    oUser.tokenCuenta = Encrypt.genTok(model.Email);

                    db.user.Add(oUser);
                    db.SaveChanges();

                    string c = "\"";


                    body = @"
                <body>
	                <style>
                      h3{color:default;}
                      h4{color:lightgreen;}
                    </style>
 
                 <div>   
    
                 <h3>Hola " + oUser.nombre + @".</h3>
                   <p>Gracias por unirte a nuestro Blog. Para hacer uso de nuestra plataforma por favor da clic en el enlace para verificar tu cuenta.</p>
                      <div align=" + c + "center" + c + @">
                      <a href=" + c + "https://*****:*****@">Activar Cuenta</a>
                       
                        <br>
                        <br>
                        <div align=" + c + "left" + c + @">
                        Ricardo Alcántara Castro<br>
                        5561086391 <br>
                        Ingeniero en Computación
                    </div>
                 </body>
                ";

                    objVerifyEmail.sendMail(oUser.email, "Activar Cuenta", body);
                }
                HttpContext.Application["verifyAccount"] = 1;

                return(Redirect(Url.Content("~/Access/Verify/")));
            }
            catch (Exception ex)
            {
                return(Redirect(Url.Content("~/Access/") + ex.Message));
            }
        }
        public ActionResult RecuperarPass(string email)
        {
            string      body           = "";
            VerifyEmail objVerifyEmail = new VerifyEmail();
            user        oUser          = new user();

            try
            {
                using (cursomvcEntities db = new cursomvcEntities())
                {
                    try
                    {
                        var lst = from usu in db.user
                                  where usu.email == email && usu.IdState == 1   //Tiene que ser un usuario con cuenta activada
                                  select usu.Id;

                        Random cod = new Random(Convert.ToInt32(lst.First()));
                        int    n   = cod.Next(1000, 1000000);

                        var okUser = db.user.Find(Convert.ToInt32(lst.First()));
                        okUser.password        = Encrypt.GetSHA256(n.ToString());
                        db.Entry(okUser).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();

                        int codigo = n;

                        if (lst.Count() > 0)
                        {
                            //Mandas el correo

                            string c = "\"";


                            body = @"
                        <body>
	                        <style>
                              h3{color:default;}
                              h4{color:lightgreen;}
                            </style>
 
                         <div>   
    
                         <h3>Hola " + okUser.nombre + @".</h3>
                           <p>Damos seguimiento a la recuperación de tu contraseña. Podrás acceder a nuestro blog con el siguiente código.</p>
                            <p>Código de Acceso: " + codigo + @"</p>  
                         </body>
                        ";

                            objVerifyEmail.sendMail(email, "Recuperar Contraseña", body);

                            return(Content("1"));
                        }
                        else
                        {
                            return(Content("El correo proporcionado no se encuentra registrado en nuestro Blog"));
                        }
                    }
                    catch (Exception d)
                    {
                        return(Content("El correo proporcionado no se encuentra registrado en nuestro Blog"));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Content("Ocurrio un error :(" + ex.Message));
            }
        }