Пример #1
0
        /// <summary>
        /// Metodo que se dispara al hacer click en el boton ENVIAR para enviar un correo.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btEnviar_Click(object sender, EventArgs e)
        {
            //Muestra el mensaje de información al usuario.
            mensajeEnviando.Visible = true;
            mensajeEnviando.Update();

            CorreoDTO pCorreo = new CorreoDTO();

            pCorreo.Leido         = false;
            pCorreo.CuentaOrigen  = Convert.ToString(listaCuentas.SelectedItem);
            pCorreo.CuentaDestino = correo_Destino.Text;
            pCorreo.Asunto        = correo_Asunto.Text;
            pCorreo.Fecha         = DateTime.Today;
            pCorreo.Texto         = correo_Texto.Text;
            pCorreo.TipoCorreo    = "Enviado";
            pCorreo.Adjuntos      = archivos;
            pCorreo.Eliminado     = false;

            try
            {
                //Obtenemos la cuenta con la que se envía el correo
                CuentaDTO pCuenta = FachadaABMCuenta.Instancia.ObtenerCuenta(pCorreo.CuentaOrigen);
                if (pCuenta.Contraseña == "" || pCuenta.Contraseña == null)
                {
                    FormContraseña f2  = new FormContraseña(pCuenta);
                    DialogResult   res = f2.ShowDialog(); //abrimos el formulario contraseña como cuadro de dialogo modal

                    if (res == DialogResult.OK)
                    {
                        // Recuperando la variable publica del formulario contraseña
                        // asignamos al texbox el dato de la variable
                        pCuenta.Contraseña = f2.varf2;
                    }
                }

                //Enviamos el correo.
                FachadaCorreo.Instancia.EnviarCorreo(pCorreo, pCuenta);

                //Guardamos el correo en la base de datos.

                // Actualiza el valor del campo CuentaOrigen, ya que tiene el nombre de la cuenta pero se debe guardar con la direccion.
                pCorreo.CuentaOrigen = FachadaABMCuenta.Instancia.ObtenerCuenta(pCorreo.CuentaOrigen).Direccion;
                //Setea el valor del campo servicioid
                pCorreo.ServicioId = "Correo enviado por el Cliente de Correo";
                FachadaCorreo.Instancia.CrearCorreo(pCorreo);
                MessageBox.Show("Enviado con exito.", "Envio de mail", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception exeption)
            {
                MessageBox.Show(exeption.Message, "PostApp", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

            //Oculta el mensaje de información al usuario
            mensajeEnviando.Visible = false;
            this.Close();
        }
        /// <summary>
        /// Metodo para descargar los correos de una cuenta.
        /// </summary>
        /// <param name="pCuenta"></param>
        private void ActualizarCuenta(CuentaDTO pCuenta)
        {
            if (pCuenta.Contraseña == "" || pCuenta.Contraseña == null)
            {
                FormContraseña f2 = new FormContraseña(pCuenta);
                DialogResult res = f2.ShowDialog(); //abrimos el formulario contraseña como cuadro de dialogo modal

                if (res == DialogResult.OK)
                {
                    //recuperando la variable publica del formulario contraseña
                    pCuenta.Contraseña = f2.varf2; //asignamos al texbox el dato de la variable
                }
            }
            try
            {
                FachadaCorreo.Instancia.DescargarCorreos(pCuenta);
            }
            catch (Exception exeption)
            {
                MessageBox.Show(exeption.Message, "PostApp", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        /// <summary>
        /// Metodo para descargar los correos de una cuenta.
        /// </summary>
        /// <param name="pCuenta"></param>
        private void ActualizarCuenta(CuentaDTO pCuenta)
        {
            if (pCuenta.Contraseña == "" || pCuenta.Contraseña == null)
            {
                FormContraseña f2  = new FormContraseña(pCuenta);
                DialogResult   res = f2.ShowDialog(); //abrimos el formulario contraseña como cuadro de dialogo modal

                if (res == DialogResult.OK)
                {
                    //recuperando la variable publica del formulario contraseña
                    pCuenta.Contraseña = f2.varf2; //asignamos al texbox el dato de la variable
                }
            }
            try
            {
                FachadaCorreo.Instancia.DescargarCorreos(pCuenta);
            }
            catch (Exception exeption)
            {
                MessageBox.Show(exeption.Message, "PostApp", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        /// <summary>
        /// Metodo que se dispara al hacer click en el boton ENVIAR para enviar un correo.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btEnviar_Click(object sender, EventArgs e)
        {
            //Muestra el mensaje de información al usuario.
            mensajeEnviando.Visible = true;
            mensajeEnviando.Update();

            CorreoDTO pCorreo = new CorreoDTO();
            pCorreo.Leido = false;
            pCorreo.CuentaOrigen = Convert.ToString(listaCuentas.SelectedItem);
            pCorreo.CuentaDestino = correo_Destino.Text;
            pCorreo.Asunto = correo_Asunto.Text;
            pCorreo.Fecha = DateTime.Today;
            pCorreo.Texto = correo_Texto.Text;
            pCorreo.TipoCorreo = "Enviado";
            pCorreo.Adjuntos = archivos;
            pCorreo.Eliminado = false;

            try
            {
                //Obtenemos la cuenta con la que se envía el correo
                CuentaDTO pCuenta = FachadaABMCuenta.Instancia.ObtenerCuenta(pCorreo.CuentaOrigen);
                if (pCuenta.Contraseña == "" || pCuenta.Contraseña == null)
                {
                    FormContraseña f2 = new FormContraseña(pCuenta);
                    DialogResult res = f2.ShowDialog(); //abrimos el formulario contraseña como cuadro de dialogo modal

                    if (res == DialogResult.OK)
                    {
                        // Recuperando la variable publica del formulario contraseña
                        // asignamos al texbox el dato de la variable
                        pCuenta.Contraseña = f2.varf2;
                    }
                }

                //Enviamos el correo.
                FachadaCorreo.Instancia.EnviarCorreo(pCorreo,pCuenta);

                //Guardamos el correo en la base de datos.

                // Actualiza el valor del campo CuentaOrigen, ya que tiene el nombre de la cuenta pero se debe guardar con la direccion.
                pCorreo.CuentaOrigen = FachadaABMCuenta.Instancia.ObtenerCuenta(pCorreo.CuentaOrigen).Direccion;
                //Setea el valor del campo servicioid
                pCorreo.ServicioId = "Correo enviado por el Cliente de Correo";
                FachadaCorreo.Instancia.CrearCorreo(pCorreo);
                MessageBox.Show("Enviado con exito.", "Envio de mail", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception exeption)
            {
                MessageBox.Show(exeption.Message, "PostApp", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

            //Oculta el mensaje de información al usuario
            mensajeEnviando.Visible = false;
            this.Close();
        }