Exemple #1
0
        public ActionResult Detalle(int id)
        {
            ViewBag.SesionIniciada = false;
            if (sessionHelper.HaySesionIniciada())
            {
                ViewBag.InicioSesionCorrecto = (HayRedireccion()) ? InicioSesionCorrecto() : false;
                ViewBag.NombreUsuario        = (sessionHelper.getUserNameUsuarioEnSesion() != null) ? sessionHelper.getUserNameUsuarioEnSesion() : "USUARIO";
                ViewBag.SesionIniciada       = true;
                ViewBag.EsAdmin = sessionHelper.EsAdmin();
                Propuestas prop = propuestaServicio.ObtenerPorIdParaDetalle(id);

                if (prop != null)
                {
                    if (prop.TipoDonacion == (int)TipoDePropuesta.Monetaria)
                    {
                        ViewBag.Estilo = "fondo fondo-monetaria";
                        ViewBag.Tipo   = "MONETARIA";
                    }
                    else if (prop.TipoDonacion == (int)TipoDePropuesta.Insumos)
                    {
                        ViewBag.Estilo = "fondo fondo-insumos";
                        ViewBag.Tipo   = "INSUMOS";
                    }
                    else
                    {
                        ViewBag.Estilo = "fondo fondo-trabajo";
                        ViewBag.Tipo   = " HORAS DE TRABAJO";
                        bool isNumeric;
                        foreach (var p in prop.PropuestasDonacionesHorasTrabajo)
                        {
                            isNumeric = int.TryParse(p.Profesion, out int n);
                            // select string o select option guardada
                            ViewBag.Profesion = (!isNumeric) ? p.Profesion : UDropDownList.GetNombreSelecccionado(p.Profesion);
                        }
                    }

                    ViewBag.Visibilidad = (propuestaServicio.SeDebeVerBotonera(prop, sessionHelper.GetIdUsuarioEnSesion())) ? "d-inline" : "disabled readonly d-none";
                    ViewBag.MeGusta     = propuestaServicio.TieneValoracion(prop, sessionHelper.GetIdUsuarioEnSesion());
                    return(View(prop));
                }
                TempData["ErrorInternoEnElServidor"] = true;
                return(RedirectToAction("Index", "Home"));
            }
            TempData["Redireccion"]   = "../Propuesta/Detalle/" + id;
            TempData["DebeLoguearse"] = true;
            return(RedirectToAction("Login", "Perfil"));
        }