Example #1
0
        private void banner_Load(object sender, EventArgs e)
        {
            //Si se inicializa el formulario con una campaña a modificar
            if (iBanner != null) //Entramos aqui si entramos queriendo modificar un banner
            {
                //Cargamos los datos de la campaña en los TextBox
                dtp_fechaInicio.Text = iBanner.iFechaInicio.ToString("dd/MM/yyyy");
                dtp_fechaFin.Text    = iBanner.iFechaFin.ToString("dd/MM/yyyy");
                mtxt_horaInicio.Text = Convert.ToString(iBanner.iHoraInicio);
                mtxt_horaFin.Text    = Convert.ToString(iBanner.iHoraFin);
                txt_nombre.Text      = Convert.ToString(iBanner.iNombre);

                if (this.iBanner is BannerFuenteRSS)
                {   //Este es un control que acomoda la pantalla cuando queremos modificar un banner fuente rss
                    rb_fuenteRSS.Checked      = true;
                    dgv_fuentesRSS.Enabled    = true;
                    txt_textoFijo.Enabled     = false;
                    lbl_ayuda.Enabled         = true;
                    dgv_fuentesRSS.DataSource = this.iFachadaFuente.ObtenerFuentesRSS().ToList();
                    #region Acomodando DGV.
                    dgv_fuentesRSS.Columns["iIdFuenteRSS"].Visible            = false;
                    dgv_fuentesRSS.Columns["iUltimaObtencionDeFeeds"].Visible = false;
                    dgv_fuentesRSS.Columns["iDescripcion"].HeaderText         = "Nombre Fuente";
                    dgv_fuentesRSS.Columns["iUrl"].HeaderText         = "URL fuente";
                    dgv_fuentesRSS.Columns["iUrl"].FillWeight         = 70;
                    dgv_fuentesRSS.Columns["iDescripcion"].FillWeight = 30;

                    #endregion

                    lbl_ayuda.Text = "Fuente actual: " +
                                     iFachadaFuente.ObtenerFuenteRSS((this.iBanner as BannerFuenteRSS).iIdFuenteRSS).iDescripcion;
                }
                else
                {  //Este es un control que acomoda la pantalla cuando queremos modificar un banner texto fijo
                    rb_textoFijo.Checked           = true;
                    dgv_fuentesRSS.Enabled         = false;
                    txt_textoFijo.Enabled          = true;
                    lbl_ayuda.Enabled              = false;
                    this.dgv_fuentesRSS.DataSource = null;

                    txt_textoFijo.Text = (this.iBanner as BannerFuenteTextoFijo).TextoFijo;
                }

                //Actualizamos el nombre de la ventana a modificar campaña
                this.Text = "Modificar Campaña";
                this.Refresh();
            }
        }
Example #2
0
        private void btn_modificar_Click(object sender, EventArgs e)
        {
            //Obtiene la fuente a modificar a partir del ID de la grilla
            FuenteRSS fuente = iFachadaFuente.ObtenerFuenteRSS(Convert.ToInt32(DGV_Fuentes.CurrentRow.Cells[0].Value));

            // Abre el formulario de alta de fuente tomando los datos de la fuente a modificar
            AgregarFuenteRSS fuenteRSSInterfaz = new AgregarFuenteRSS(fuente);

            fuenteRSSInterfaz.ShowDialog();

            DGV_Fuentes.Refresh();

            btn_eliminar.Enabled  = false;
            btn_modificar.Enabled = false;

            this.Close();
        }
Example #3
0
        /// <summary>
        /// Timer que consulta con cada tick el banner y su fuente a mostrar.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void timerBanner_Tick(object sender, EventArgs e)
        {
            //Se obtiene el banner activo para la fecha y horario actual
            Banner bActivo = iControladorBanner.bannerActivo();

            //Si existe un banner activo y no es nulo
            if (bActivo != null)
            {
                //Si el banner posee una FuenteRSS para mostrar
                if (bActivo is BannerFuenteRSS)
                {
                    //Se obtiene el URL de la FuenteRSS
                    string url = iControladorFuente.ObtenerFuenteRSS((bActivo as BannerFuenteRSS).iIdFuenteRSS).iUrl;

                    //Se asigna al atributo de la pantalla fuenteActual para poder actualizar la ultima obtencion de feeds
                    //en el background worker
                    this.fuenteActual = iControladorFuente.ObtenerFuenteRSS((bActivo as BannerFuenteRSS).iIdFuenteRSS);

                    //Se comprueba que el servicio no este ocupado
                    if (!this.bwRssReader.IsBusy)
                    {
                        Uri mUrl;

                        //Se comprueba que la URL sea valida
                        if (!Uri.TryCreate(url.Trim(), UriKind.Absolute, out mUrl))
                        {
                            label1.Text = "URL no valida";
                        }
                        //Se activa el timer para el movimiento de texto
                        timer1.Enabled = true;
                        //Si el label esta vacio se carga el texto con los feeds
                        if (label1.Text == "")
                        {
                            //
                            this.bwRssReader.RunWorkerAsync(mUrl);
                        }

                        //this.bwRssReader.RunWorkerAsync(mUrl);
                    }
                }
                else//Si el banner posee una FuenteTextoFijo para mostrar
                {
                    //Se utiliza una lista auxiliar para la muestra repetida del texto deslizante
                    List <BannerFuenteTextoFijo> listaTextoFijo = new List <BannerFuenteTextoFijo>();
                    listaTextoFijo.Add(bActivo as BannerFuenteTextoFijo);

                    if (textoBanner == null)
                    {
                        textoBanner = listaTextoFijo[0].TextoFijo;
                    }
                    //Se activa el timer para el movimiento de texto
                    timer1.Enabled = true;

                    if ((bActivo as BannerFuenteTextoFijo).TextoFijo != textoBanner)
                    {
                        //esta condicion actua como un control para poder limpiar el texto del banner cuando se hace una
                        //transicion de banner.
                        textoBanner = (bActivo as BannerFuenteTextoFijo).TextoFijo;
                        label1.Text = textoBanner + "       ";
                    }
                    //Se va concatenando la cadena ingresada de texto
                    //a medida que el texto se desliza, para que no se deje de mostrar
                    label1.Text = label1.Text + (listaTextoFijo[0].TextoFijo) + "       ";
                }
            }
            else//Si el banner activo es nulo y no hay nada para mostrar
            {
                label1.Text = String.Empty;
            }
        }