コード例 #1
0
ファイル: Detalle.aspx.cs プロジェクト: jorge1qaz/RWServer
        protected void chbVotoUtilItem_CheckedChanged(object sender, EventArgs e)
        {
            if (IdUser == "")
            {
                if (Session["IdUser"] != null)
                {
                    IdUser = Session["IdUser"].ToString();
                }
                else
                {
                    Response.Write("<script>alert('Su sesión a caducado, por favor vuelva a iniciar sesión.')</script>");
                }
            }
            Foro_Puntos foro_Puntos = new Foro_Puntos()
            {
                IdForo    = int.Parse(Request.QueryString["idForo"].ToString()),
                IdCliente = IdUser,
                Punto     = chbVotoUtilItem.Checked
            };

            if (foro_Puntos.CreatePuntoItem("[foro].[FORO_Create_New_Punto_Foro]"))
            {
                Response.Redirect("~/Foro/Detalle.aspx?idForo=" + Request.QueryString["idForo"].ToString());
            }
            else
            {
                Response.Redirect("~/Perfiles/MensajeError", false);
            }
        }
コード例 #2
0
ファイル: Detalle.aspx.cs プロジェクト: jorge1qaz/RWServer
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                #region Control de la sesión
                linkSesion.Visible       = false;
                linkCerrarSesion.Visible = false;
                try
                {
                    if (Request.Cookies["mantenerSesion"].Value.ToString() == "1") // Sí el usuario decidió mantener iniciada la sesión, entonces se empleará la cookie
                    {
                        try
                        {
                            IdUser = Request.Cookies["idUserCookie"].Value;
                            if (IdUser == "" || IdUser == null) // Se supone que se perdió la cookie
                            {
                                linkSesion.Visible       = true;
                                linkCerrarSesion.Visible = false;
                            }
                            else // Aquí se tiene al usuario logeado
                            {
                                linkSesion.Visible       = false;
                                linkCerrarSesion.Visible = true;
                                Cliente cliente = new Cliente() // Instancio el objeto CLIENTE
                                {
                                    IdCliente = IdUser
                                };                                                                             // Guardo en la variable IdCliente el ID del cliente
                                lblNombreUsuario.Text    = cliente.IdParameterUserName("RW_header_name_user"); // Traigo desde la base de datos, el nombre del cliente
                                linkCerrarSesion.Visible = true;
                                linkSesion.Visible       = false;
                            }
                        }
                        catch
                        {
                        }
                    }
                }
                catch (Exception) // Si entra al catch es porque no decidió mantener iniciada la sesión
                {
                    if (Session["IdUser"] != null)
                    {
                        IdUser = Session["IdUser"].ToString();
                        Cliente cliente = new Cliente() // Instancio el objeto CLIENTE
                        {
                            IdCliente = IdUser
                        };                                                                             // Guardo en la variable IdCliente el ID del cliente
                        lblNombreUsuario.Text    = cliente.IdParameterUserName("RW_header_name_user"); // Traigo desde la base de datos, el nombre del cliente
                        linkCerrarSesion.Visible = true;
                        linkSesion.Visible       = false;
                    }
                    else
                    {
                        linkSesion.Visible       = true;
                        linkCerrarSesion.Visible = false;
                    }
                }
                Cliente clienteModerador = new Cliente()
                {
                    IdCliente = IdUser
                };
                if (clienteModerador.IdParameterUser("[foro].[FORO_Profiles_Comprobar_Moderador]")) // Sí es true entonces es moderador, Verifica si el usuario logeado es Moderador o no
                {
                    linkCrearItem.Visible               = true;
                    linkItemsSinRespuesta.Visible       = true;
                    dtlComentariosModeracion.DataSource = accesoDatos.Extrae("[foro].[FORO_List_Comentarios]", Request.QueryString["idForo"].ToString(), "@IdForo");
                    dtlComentariosModeracion.DataBind();
                }
                else
                {
                    linkCrearItem.Visible         = false;
                    linkItemsSinRespuesta.Visible = false;
                    dtlComentarios.DataSource     = accesoDatos.Extrae("[foro].[FORO_List_Restricted_Comentarios]", Request.QueryString["idForo"].ToString(), "@IdForo");
                    dtlComentarios.DataBind();
                }
                #endregion
                List <string> listaTags = accesoDatos.ExtraeList("[foro].[FORO_List_Tags]");
                jsonListaTags = JsonConvert.SerializeObject(listaTags, Formatting.None);
                if (!Page.IsPostBack)
                {
                    SqlCommand cmd         = new SqlCommand();
                    Foro_Foros detalleForo = new Foro_Foros();
                    cmd.Connection  = conexion.cadena;
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@IdForo", SqlDbType.Int).Value = Request.QueryString["idForo"];
                    cmd.CommandText = "[foro].[FORO_Details_Foro]";
                    SqlDataReader sqlReader;
                    conexion.Connect();
                    sqlReader = cmd.ExecuteReader();
                    while (sqlReader.Read())
                    {
                        detalleForo.Codigo        = sqlReader["Codigo"].ToString();
                        detalleForo.Titulo        = sqlReader["Titulo"].ToString();
                        detalleForo.Descripcion   = sqlReader["Descripcion"].ToString();
                        detalleForo.FechaCreacion = Convert.ToDateTime(sqlReader["FechaCreacion"]);
                        detalleForo.Respondido    = Convert.ToBoolean(sqlReader["Respondido"]);
                        detalleForo.VotosUtiles   = Convert.ToInt32(sqlReader["VotosUtiles"]);
                        //detalleForo.NombreProducto = sqlReader["NombreProducto"].ToString();
                    }
                    lblCodigo.Text        = detalleForo.Codigo;
                    lblTitulo.Text        = detalleForo.Titulo;
                    lblDescripción.Text   = detalleForo.Descripcion;
                    lblFechaCreacion.Text = detalleForo.FechaCreacion.ToString();
                    lblVotosItem.Text     = detalleForo.VotosUtiles.ToString();

                    if (IdUser == null || IdUser == "") // Cuando el cliente NO esta logeado
                    {
                        linkIniciarSesionComentarios.Visible = true;
                        btnHacerComentario.Visible           = false;
                        blockMarcarVotoUtil.Visible          = false;
                        dtlComentarios.DataSource            = accesoDatos.Extrae("[foro].[FORO_List_Restricted_Comentarios]", Request.QueryString["idForo"].ToString(), "@IdForo");
                        dtlComentarios.DataBind();
                    }
                    else // Cuando el cliente SI esta logeado
                    {
                        linkIniciarSesionComentarios.Visible = false;
                        btnHacerComentario.Visible           = true;
                        blockMarcarVotoUtil.Visible          = true;
                    }
                }
                dtlEditores.DataSource = accesoDatos.Extrae("[foro].[FORO_List_Editores]", Request.QueryString["idForo"].ToString(), "@IdForo");
                dtlEditores.DataBind();

                Foro_Puntos foro_Puntos = new Foro_Puntos()
                {
                    IdForo    = int.Parse(Request.QueryString["idForo"].ToString()),
                    IdCliente = IdUser
                };
                if (foro_Puntos.GetValuePuntoItem("[foro].[FORO_Get_Value_Punto_Item_Foro]")) // El cliente ya le asignó un punto a favor
                {
                    chbVotoUtilItem.Checked          = true;
                    lblMarcarDesmarcarVoto.InnerText = "Quitar punto  ";
                }
                else
                {
                    chbVotoUtilItem.Checked          = false;
                    lblMarcarDesmarcarVoto.InnerText = "Marcar como útil  ";
                }
            }
        }