예제 #1
0
    public Table GetTablaChats()
    {
        Table tabla = new Table();

        tabla.Width = Unit.Percentage(100);
        DaoUsuario      gestorUsuarios = new DaoUsuario();
        List <EUsuario> usuarios       = gestorUsuarios.GetUsuarios(curso);

        foreach (EUsuario usuario in usuarios)
        {
            TableRow    fila          = new TableRow();
            TableCell   celdaImagen   = new TableCell();
            TableCell   celdaBoton    = new TableCell();
            ImageButton imagenUsuario = new ImageButton();
            imagenUsuario.ImageUrl = usuario.ImagenPerfil;
            imagenUsuario.CssClass = "card-img rounded-circle";
            if (string.IsNullOrEmpty(imagenUsuario.ImageUrl))
            {
                imagenUsuario.ImageUrl = Constantes.IMAGEN_DEFAULT;
            }
            imagenUsuario.Width  = Unit.Percentage(100);
            imagenUsuario.Height = 40;
            imagenUsuario.Click += new ImageClickEventHandler(CambiarDeChatPorImagen);

            LinkButton botonChat = new LinkButton();
            botonChat.Text    = usuario.NombreDeUsuario;
            botonChat.Width   = Unit.Percentage(100);
            botonChat.Height  = 40;
            botonChat.Click  += new EventHandler(CambiarDeChat);
            celdaImagen.Width = Unit.Percentage(20);
            celdaBoton.Width  = Unit.Percentage(79);
            celdaImagen.Controls.Add(imagenUsuario);
            celdaBoton.Controls.Add(botonChat);

            fila.Cells.Add(celdaImagen);
            fila.Cells.Add(celdaBoton);

            tabla.Rows.Add(fila);
        }
        return(tabla);
    }
예제 #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        emisor = (EUsuario)Session[Constantes.USUARIO_LOGEADO];
        Uri urlAnterior = Request.UrlReferrer;

        if (emisor != null)
        {
            Hyperlink_Devolver.NavigateUrl = urlAnterior == null ? "~/Vistas/Home.aspx"
               : urlAnterior.ToString().Contains("Chat.aspx") ? "~/Vistas/Home.aspx" : urlAnterior.ToString();
            DaoUsuario gestorUsuarios = new DaoUsuario();
            curso = (ECurso)Session[Constantes.CURSO_SELECCIONADO_PARA_CHAT];
            EUsuario creadorCurso = gestorUsuarios.GetUsuario(curso.Creador);

            if (emisor.NombreDeUsuario != creadorCurso.NombreDeUsuario)
            {
                receptor = creadorCurso;
                Table1.Rows[0].Cells[0].Width = Unit.Percentage(0);
                Table1.Rows[0].Cells[1].Width = Unit.Percentage(100);
                Table2.Rows[0].Cells[0].Width = Unit.Percentage(0);
                Table2.Rows[0].Cells[1].Width = Unit.Percentage(100);
                Table2.Rows[1].Cells[0].Width = Unit.Percentage(0);
                Table2.Rows[1].Cells[1].Width = Unit.Percentage(100);
                panelChats.ScrollBars         = ScrollBars.None;
            }
            else
            {
                EUsuario usuarioChat;

                if (Session[Constantes.USUARIO_SELECCIONADO_CHAT] == null)
                {
                    usuarioChat = gestorUsuarios.GetUsuarios(curso).FirstOrDefault();
                }
                else
                {
                    usuarioChat = (EUsuario)Session[Constantes.USUARIO_SELECCIONADO_CHAT];
                }
                receptor = usuarioChat;
                panelChats.Controls.Add(GetTablaChats());
            }

            if (receptor != null)
            {
                etiquetaCurso.Text = curso.Nombre;

                etiquetaNombre.Text = receptor.NombreDeUsuario;

                imagenPerfil.ImageUrl = receptor.ImagenPerfil;

                if (string.IsNullOrEmpty(imagenPerfil.ImageUrl))
                {
                    imagenPerfil.ImageUrl = Constantes.IMAGEN_DEFAULT;
                }
                panelMensajes.Controls.Add(GetTablaMensajes());
            }
            else
            {
                etiquetaCurso.Visible = false;

                etiquetaNombre.Visible = false;

                botonEnviar.Enabled = false;

                botonEnviarImagen.Enabled = false;

                temporizador.Enabled = false;

                imagenPerfil.Visible = false;
            }

            if (Session["subiendoImagen"] != null && (bool)Session["subiendoImagen"])
            {
                MostrarModal();
            }
        }
        else
        {
            Response.Redirect("~/Vistas/Home.aspx");
        }
    }