Beispiel #1
0
        /// Ouverture de la fenêtre de rédaction de mail, préchargée avec les informations en fonction du mail à l'origine de la réponse
        private void loadMailReponse()
        {
            if (currentCompteMessagerie.isAuthenticated() & gCurrentMail != null)
            {
                inboxMode = InboxMode.Reponse;
                SIMAIL.Classes.Email.Email vEmail = new SIMAIL.Classes.Email.Email();

                // Les émetteurs (From) deviennent récepteurs (To)
                foreach (var vDestinataire in gCurrentMail.From.Mailboxes)
                {
                    cEmail_Contact vContact = new cEmail_Contact(vDestinataire.Address, vDestinataire.Name);
                    vEmail.To.Add(vContact);
                }
                vEmail.From             = currentCompteMessagerie.Login;
                vEmail.Object           = "RE : " + gCurrentMail.Subject;
                vEmail.Body.Text        = "";
                vEmail.Body.TextReponse = vEmail.getReponseHeader(gCurrentMail);

                SIMAIL.Views.Email fenEmail = new SIMAIL.Views.Email();
                // Chargement de la fenetre
                fenEmail.action = Email.Action.Reponse;
                fenEmail.currentCompteMessagerie = currentCompteMessagerie;
                vEmail.ShowFenMail(fenEmail);
            }
        }
Beispiel #2
0
        // Transférer un mail
        private void loadMailTransfert()
        {
            if (currentCompteMessagerie.isAuthenticated() & gCurrentMail != null)
            {
                inboxMode = InboxMode.Transfert;
                SIMAIL.Classes.Email.Email vEmail = new SIMAIL.Classes.Email.Email();

                vEmail.From             = currentCompteMessagerie.Login;
                vEmail.Object           = "TR : " + gCurrentMail.Subject;
                vEmail.Body.Text        = "";
                vEmail.Body.TextReponse = vEmail.getReponseHeader(gCurrentMail);

                SIMAIL.Views.Email fenEmail = new SIMAIL.Views.Email();
                // Chargement de la fenetre
                fenEmail.action = Email.Action.Transfert;
                fenEmail.currentCompteMessagerie = currentCompteMessagerie;
                vEmail.ShowFenMail(fenEmail);
            }
        }
Beispiel #3
0
 private async Task envoyer()
 {
     if (currentCompteMessagerie.isAuthenticated())
     {
         if (asyncProcessRunning == false)
         {
             try
             {
                 if (checkMandatoryFields())
                 {
                     setInfoMail();
                     // Envoi du mail
                     PG_ProgressBar.Visibility      = Visibility.Visible;
                     PG_ProgressBar.IsIndeterminate = true;
                     this.Cursor = Cursors.Wait;
                     if (await email.EnvoyerEmail() == true)
                     {
                         MessageBox.Show("Envoi effectué.");
                         email             = null;
                         _ChampObligatoire = null;
                         this.Close();
                     }
                     else
                     {
                         MessageBox.Show("Une erreur est survenue, réessayer.");
                     }
                 }
             }
             catch (Exception ex)
             {
                 MessageBox.Show(ex.Message);
             }
             finally
             {
                 this.Cursor = Cursors.Arrow;
                 PG_ProgressBar.Visibility      = Visibility.Hidden;
                 PG_ProgressBar.IsIndeterminate = false;
             }
         }
     }
 }
Beispiel #4
0
        public Email()
        {
            InitializeComponent();
            this.DataContext = this;

            // Action de la fenetre par défaut
            this.action = Action.Nouveau;

            // Initialisation de l'email
            email = new Classes.Email.Email();

            // Initialisation du compte utilisateur
            CompteMessagerie cm = new CompteMessagerie();

            email.CompteMessagerie = cm;

            // Initialisation editeur de texte
            CB_BodyFontFamily.ItemsSource = Fonts.SystemFontFamilies.OrderBy(f => f.Source);
            CB_BodyFontSize.ItemsSource   = new List <double>()
            {
                8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28
            };

            // Initialisation des pj
            L_Pj.ItemsSource = null;
            L_Pj.ItemsSource = email.Pj;
            L_Pj.AllowDrop   = true;

            // Champs obligatoires
            _ChampObligatoire     = new Collection <TextBox>();
            _DestChampObligatoire = new Collection <TextBox>();
            _ChampObligatoire.Add(this.I_Objet);
            _ChampObligatoire.Add(this.I_De);
            _ChampObligatoire.Add(this.I_A);
            _DestChampObligatoire.Add(this.I_A);
            _DestChampObligatoire.Add(this.I_Cc);
            // Champs de saisie
            I_De.IsReadOnly = true;
        }
Beispiel #5
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            // Initialisation de l'email
            if (email == null)
            {
                email = new Classes.Email.Email();
            }
            if (currentCompteMessagerie != null)
            {
                if (currentCompteMessagerie.isAuthenticated())
                {
                    // Chargement des paramètres utilisateur
                    email.CompteMessagerie = currentCompteMessagerie;
                    email.From             = currentCompteMessagerie.Login;
                }
                else
                {
                    this.Close();
                }
            }

            if (this.action == Action.Reponse)
            {
                // Préchargement d'un mail
                I_A.Text     = email.ToToString();
                I_Cc.Text    = email.CCToString();
                I_Objet.Text = email.Object;
                I_Body.AppendText(email.Body.TextReponse);
            }
            if (this.action == Action.Transfert)
            {
                I_Objet.Text = email.Object;
                I_Body.AppendText(email.Body.TextReponse);
            }
            // Préchargement du mail utilisateur
            I_De.Text = email.From;
        }