Ejemplo n.º 1
0
        public ActionResult Index()
        {
            //nos traemos el usuario
            var usrs = (from o in DbContext.Usuario
                        where o.idRol == 2
                        orderby o.display_order descending
                        select o);

            //lo metemos todo
            if (usrs != null && usrs.Any())
            {
                var data = new List <MedicoVista>();
                foreach (var usr in usrs)
                {
                    var dataItem = new MedicoVista
                    {
                        IdUsuario       = usr.idUsuario,
                        Nombre          = usr.nombre,
                        Apellidos       = usr.apellidos,
                        Foto            = usr.foto,
                        Login           = usr.login,
                        IdCurriculum    = usr.idCurriculum,
                        IdDatosContacto = usr.idDatosContacto,
                        Telefono        = usr.DatosContacto.telefono,
                        Linkedin        = usr.linkedin,
                        Curriculum      = new Curriculum
                        {
                            Titulo = usr.Curriculum.Titulo
                        }
                    };

                    //por el lazy loading, metemos el curriculum a manuji
                    foreach (var item in usr.Curriculum.ItemCurriculum)
                    {
                        dataItem.Curriculum.ItemCurriculum.Add(item);
                    }

                    data.Add(dataItem);
                }

                ViewBag.ShowEditButton = false;
                return(View(data));
            }

            //algo deberiamos hacer si falla..pero si no podemos enviar un email...chungo..
            return(Json("error buscando usuario", JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 2
0
        public ActionResult Editar(int id)
        {
            //solo vamos a dejar editar a un fulano si es el mismo o si es superadmin
            //sacamos el usuario completo
            ////var cus = (CustomIdentity)System.Web.HttpContext.Current.User.Identity;
            ////var usr = Db.Usuario.FirstOrDefault(oo => oo.login == cus.Email);
            var usr = DbContext.Usuario.FirstOrDefault(oo => oo.idUsuario == id);

            if (usr != null && (usr.idUsuario == id || usr.idRol == 1))
            {
                //lo metemos todo
                var data = new MedicoVista
                {
                    IdUsuario       = usr.idUsuario,
                    Nombre          = usr.nombre,
                    Apellidos       = usr.apellidos,
                    Foto            = usr.foto,
                    Login           = usr.login,
                    IdCurriculum    = usr.idCurriculum,
                    IdDatosContacto = usr.idDatosContacto,
                    Telefono        = usr.DatosContacto.telefono,
                    Linkedin        = usr.linkedin,
                    Curriculum      = new Curriculum
                    {
                        Titulo = usr.Curriculum.Titulo
                    }
                };
                //por el lazy loading, metemos el curriculum a manuji
                if (usr.Curriculum.ItemCurriculum != null)
                {
                    foreach (var item in usr.Curriculum.ItemCurriculum)
                    {
                        data.Curriculum.ItemCurriculum.Add(item);
                    }
                }

                return(View(data));
            }

            //no tiene permisos
            return(RedirectToAction("Index", new { id = id }));
        }
Ejemplo n.º 3
0
        public ActionResult Editar(MedicoVista model, HttpPostedFileBase fichero)
        {
            if (model != null && ModelState.IsValid)
            {
                //modificamos el curriculum nice & easy
                var usu = DbContext.Usuario.Find(model.IdUsuario);
                usu.Curriculum.Titulo = model.Curriculum.Titulo;
                usu.login             = model.Login;
                usu.linkedin          = model.Linkedin;
                foreach (var item in model.Curriculum.ItemCurriculum)
                {
                    var pos            = item.idItem;
                    var firstOrDefault = usu.Curriculum.ItemCurriculum.FirstOrDefault(o => o.idItem == pos);
                    if (firstOrDefault != null)
                    {
                        firstOrDefault.Titulo = item.Titulo;
                        firstOrDefault.Fechas = item.Fechas;
                        firstOrDefault.Texto  = item.Texto ?? string.Empty;
                    }
                }

                if (fichero != null && fichero.ContentLength > 0)
                {
                    //guardamos el fichero de la foto con nombre usu + id
                    var nombreFichero = fichero.FileName;
                    var extension     = nombreFichero.Substring(nombreFichero.LastIndexOf(".", StringComparison.Ordinal));
                    var rutacompleta  = Server.MapPath("~/uploads/fotos") + @"\usu" + model.IdUsuario + extension;
                    fichero.SaveAs(rutacompleta);
                    usu.foto = "~/uploads/fotos/usu" + model.IdUsuario + extension;
                }

                DbContext.SaveChanges();

                var url = "~/Perfiles/Index/?id=" + model.IdUsuario;
                return(Redirect(url));
            }

            //no iene los datos adecuados
            return(RedirectToAction("Index", "Home"));
        }
Ejemplo n.º 4
0
        public ActionResult Index(int id)
        {
            //nos traemos el usuario
            var usr = (from o in DbContext.Usuario
                       where o.idUsuario == id
                       select o).FirstOrDefault();

            //lo metemos todo
            if (usr != null)
            {
                var data = new MedicoVista
                {
                    IdUsuario       = usr.idUsuario,
                    Nombre          = usr.nombre,
                    Apellidos       = usr.apellidos,
                    Foto            = usr.foto,
                    Login           = usr.login,
                    IdCurriculum    = usr.idCurriculum,
                    IdDatosContacto = usr.idDatosContacto,
                    Telefono        = usr.DatosContacto.telefono,
                    Linkedin        = usr.linkedin,
                    Curriculum      = new Curriculum
                    {
                        Titulo = usr.Curriculum.Titulo
                    }
                };
                //por el lazy loading, metemos el curriculum a manuji
                foreach (var item in usr.Curriculum.ItemCurriculum)
                {
                    data.Curriculum.ItemCurriculum.Add(item);
                }

                ViewBag.ShowEditButton = true;
                return(View(data));
            }

            //algo deberiamos hacer si falla..pero si no podemos enviar un email...chungo..
            return(Json("error buscando usuario", JsonRequestBehavior.AllowGet));
        }