private void btn_scanner_Click(object sender, EventArgs e)
        {
            // -- Vérivier que l'adresse est correcte -- //
            if (PHClass.Est_Site_Web(this.tb_adresse_site_web.Text))
            {
                // -- Me fermer -- //
                this.Hide();

                // -- Ouvrir la fenêtre application -- //
                Program.form_application = new Form_Application(this.tb_adresse_site_web.Text);
                Program.form_application.Show();
            }
            else
            {
                // -- Message d'erreur -- //
                MessageBox.Show(
                    "L'adresse du site web est incorrect, celui ci est peut être inexistant!", "information",
                    MessageBoxButtons.OK, MessageBoxIcon.Information
                    );
            }
        }
        private void webBrowser_btn_rechercher_Click(object sender, EventArgs e)
        {
            // -- Vérivier que l'adresse est correcte -- //
            if (PHClass.Est_Site_Web(this.webBrowser_tb_adresse_site.Text))
            {
                // -- Accéder à une adresse définie -- //
                this.webBrowser.Navigate(this.webBrowser_tb_adresse_site.Text);

                // -- AJouter la page d'acceuil à l'historique de navigation si celui ci n'existe pas encore -- //
                //if (!this._historique_navigation.Contains(this.webBrowser_tb_adresse_site.Text))
                //{
                //    this._historique_navigation.Add(this.webBrowser_tb_adresse_site.Text);
                //}
            }
            else
            {
                // -- Message d'erreur -- //
                MessageBox.Show(
                    "L'adresse du site web est incorrect, celui ci est peut être inexistant!", "information",
                    MessageBoxButtons.OK, MessageBoxIcon.Information
                    );
            }
        }
        // -- Enregistrer les ressources su site dans les différeents onglet des la page -- //
        private void webBrowser_btn_enregistrer_ressources_Click(object sender, EventArgs e)
        {
            try
            {
                // -- Initialiser les fchiers de sauvegarde -- //
                Initialiser_App_Data();

                // -- Réccupération de l'url du site web -- //
                string adresse_site_web = webBrowser_tb_adresse_site.Text;

                // -- Requete vers la page -- //
                Uri adresse_uri_site_web = new Uri(adresse_site_web);

                // -- Adresse serveur site web -- //
                string adresse_serveur_site_web = adresse_uri_site_web.Scheme + "://" + adresse_uri_site_web.Host + "/";

                // -- Répertoire actuel -- //
                string url_actuel = System.IO.Directory.GetCurrentDirectory();

                // -- Enregistrement du HTML du site -- //
                #region Enregistrement du HTML du site

                string contenu_html = PHClass.HTML_Site_Web(adresse_site_web);

                System.IO.File.WriteAllText(url_actuel + "/App_Data/Sites/HTML/" + this._historique_navigation.First(l => l.url == adresse_site_web).id + ".html", contenu_html);
                #endregion

                // -- Enregistrer les images du site -- //
                #region Enregistrer les images du site
                int numero_resource = 1;
                foreach (string url_image in PHClass.Images_Site_Web(contenu_html, true))
                {
                    // -- Essaies de sauvegarde -- //
                    KeyValuePair <int, Boolean> essaie = new KeyValuePair <int, bool>(1, false);

                    // -- Essayer tant que la sauvegarde n'est pas effectué -- //
                    while (essaie.Value == false && essaie.Key <= 3)
                    {
                        try
                        {
                            // -- Mise à jour de l'adresse d'une resources -- //
                            string url_image_modifier = "";

                            // -- Essaie 1 -- //
                            if (essaie.Key == 1)
                            {
                                // -- src = '//image/'
                                url_image_modifier = adresse_uri_site_web.Scheme + ":" + (url_image.Split(':').Count() > 1 ? url_image.Split(':')[1]
                                                                                                                           : url_image);
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 2)
                            {
                                url_image_modifier = adresse_serveur_site_web + url_image;
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 3)
                            {
                                url_image_modifier = url_image;
                            }
                            // -- Essaie 3 -- //
                            else
                            {
                            }

                            // -- Génération du lien de sauvegarde lde l'image -- //
                            string lien_sauvegarde = url_actuel + "\\App_Data\\Sites\\Images\\" + this._historique_navigation.First(l => l.url == adresse_site_web).id + separateur + (numero_resource++) + System.IO.Path.GetExtension(url_image_modifier);

                            // -- Telecharger la resource -- //
                            using (WebClient client = new WebClient())
                            {
                                // -- Telechargement de la resource à l'emplacement défini -- //
                                client.DownloadFile(new Uri(url_image_modifier), lien_sauvegarde);
                            }

                            // -- Mise à jour de l'etat d el'essaie -- //
                            essaie = new KeyValuePair <int, bool>(
                                // -- Incrémenter l'essaie -- //
                                essaie.Key + 1,
                                // -- Teste si la sauvegarde s'est effectué -- //
                                (System.IO.File.Exists(lien_sauvegarde))
                                );
                        }
                        catch (Exception ex)
                        {
                            // -- Reinitiliser lessaie -- //
                            essaie = new KeyValuePair <int, bool>(essaie.Key + 1, false);
                        }
                    }
                }
                #endregion

                // -- Enregistrer les audios du site -- //
                #region Enregistrer les audios du site
                foreach (string url_audio in PHClass.Audio_Site_Web(contenu_html))
                {
                    // -- Essaies de sauvegarde -- //
                    KeyValuePair <int, Boolean> essaie = new KeyValuePair <int, bool>(1, false);

                    // -- Essayer tant que la sauvegarde n'est pas effectué -- //
                    while (essaie.Value == false && essaie.Key <= 2)
                    {
                        try
                        {
                            // -- Mise à jour de l'adresse d'une resources -- //
                            string url_audios_modifier = "";

                            // -- Essaie 1 -- //
                            if (essaie.Key == 1)
                            {
                                url_audios_modifier = adresse_uri_site_web.Scheme + ":" + (url_audio.Split(':').Count() > 1 ? url_audio.Split(':')[1]
                                                                                                                            : url_audio);
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 2)
                            {
                                url_audios_modifier = adresse_serveur_site_web + url_audio;
                            }
                            // -- Essaie 3 -- //
                            else
                            {
                            }

                            // -- Génération du lien de sauvegarde lde l'image -- //
                            string lien_sauvegarde = url_actuel + "\\App_Data\\Sites\\Audios\\" + this._historique_navigation.First(l => l.url == adresse_site_web).id + separateur + (numero_resource++) + System.IO.Path.GetExtension(url_audios_modifier);

                            // -- Telecharger la resource -- //
                            using (WebClient client = new WebClient())
                            {
                                // -- Telechargement de la resource à l'emplacement défini -- //
                                client.DownloadFile(new Uri(url_audios_modifier), lien_sauvegarde);
                            }

                            // -- Mise à jour de l'etat d el'essaie -- //
                            essaie = new KeyValuePair <int, bool>(
                                // -- Incrémenter l'essaie -- //
                                essaie.Key + 1,
                                // -- Teste si la sauvegarde s'est effectué -- //
                                (System.IO.File.Exists(lien_sauvegarde))
                                );
                        }
                        catch (Exception ex)
                        {
                            // -- Reinitiliser lessaie -- //
                            essaie = new KeyValuePair <int, bool>(essaie.Key + 1, false);
                        }
                    }
                }
                #endregion

                // -- Enregistrement des programme TV du site -- //
                #region Enregistrement des programme TV du site
                List <Programme_TV> programmes_tv_list = PHClass.Programes_TV(contenu_html, true);
                foreach (Programme_TV programme_tv in programmes_tv_list)
                {
                    // -- Essaies de sauvegarde -- //
                    KeyValuePair <int, Boolean> essaie = new KeyValuePair <int, bool>(1, false);

                    // -- Essayer tant que la sauvegarde n'est pas effectué -- //
                    while (essaie.Value == false && essaie.Key <= 2)
                    {
                        try
                        {
                            // -- Mise à jour de l'adresse d'une resources -- //
                            string url_image_modifier = "";

                            // -- Essaie 1 -- //
                            if (essaie.Key == 1)
                            {
                                // -- src = '//image/'
                                url_image_modifier = adresse_uri_site_web.Scheme + ":" + (programme_tv.fichier.ToString().Split(':').Count() > 1 ? programme_tv.fichier.ToString().Split(':')[1]
                                                                                                                                                 : programme_tv.fichier.ToString());
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 2)
                            {
                                url_image_modifier = adresse_serveur_site_web + programme_tv.fichier.ToString();
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 3)
                            {
                                url_image_modifier = programme_tv.fichier.ToString();
                            }
                            // -- Essaie 3 -- //
                            else
                            {
                            }

                            // -- Génération du lien de sauvegarde lde l'image -- //
                            string lien_sauvegarde = url_actuel + "\\App_Data\\Sites\\Images\\" + this._historique_navigation.First(l => l.url == adresse_site_web).id + separateur + (numero_resource++) + System.IO.Path.GetExtension(url_image_modifier);

                            // -- Telecharger la resource -- //
                            using (WebClient client = new WebClient())
                            {
                                // -- Telechargement de la resource à l'emplacement défini -- //
                                client.DownloadFile(new Uri(url_image_modifier), lien_sauvegarde);
                            }

                            // -- Mise à jour de l'etat d el'essaie -- //
                            essaie = new KeyValuePair <int, bool>(
                                // -- Incrémenter l'essaie -- //
                                essaie.Key + 1,
                                // -- Teste si la sauvegarde s'est effectué -- //
                                (System.IO.File.Exists(lien_sauvegarde))
                                );

                            // -- Mise à jour du lien de destination du fichier -- //
                            if (System.IO.File.Exists(lien_sauvegarde))
                            {
                                programme_tv.fichier = lien_sauvegarde;
                            }
                        }
                        catch (Exception ex)
                        {
                            // -- Reinitiliser lessaie -- //
                            essaie = new KeyValuePair <int, bool>(essaie.Key + 1, false);
                        }
                    }
                }
                #endregion

                // -- Enregistrement des programme TV du site -- //
                #region Enregistrement des actualité du site
                List <Programme_TV> actualite_list = PHClass.Actualite(contenu_html, true);
                foreach (Programme_TV actualite in actualite_list)
                {
                    // -- Essaies de sauvegarde -- //
                    KeyValuePair <int, Boolean> essaie = new KeyValuePair <int, bool>(1, false);

                    // -- Essayer tant que la sauvegarde n'est pas effectué -- //
                    while (essaie.Value == false && essaie.Key <= 2)
                    {
                        try
                        {
                            // -- Mise à jour de l'adresse d'une resources -- //
                            string url_image_modifier = "";

                            // -- Essaie 1 -- //
                            if (essaie.Key == 1)
                            {
                                // -- src = '//image/'
                                url_image_modifier = adresse_uri_site_web.Scheme + ":" + (actualite.fichier.ToString().Split(':').Count() > 1 ? actualite.fichier.ToString().Split(':')[1]
                                                                                                                                              : actualite.fichier.ToString());
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 2)
                            {
                                url_image_modifier = adresse_serveur_site_web + actualite.fichier.ToString();
                            }
                            // -- Essaie 2 -- //
                            else if (essaie.Key == 3)
                            {
                                url_image_modifier = actualite.fichier.ToString();
                            }
                            // -- Essaie 3 -- //
                            else
                            {
                            }

                            // -- Génération du lien de sauvegarde lde l'image -- //
                            string lien_sauvegarde = url_actuel + "\\App_Data\\Sites\\Images\\" + this._historique_navigation.First(l => l.url == adresse_site_web).id + separateur + (numero_resource++) + System.IO.Path.GetExtension(url_image_modifier);

                            // -- Telecharger la resource -- //
                            using (WebClient client = new WebClient())
                            {
                                // -- Telechargement de la resource à l'emplacement défini -- //
                                client.DownloadFile(new Uri(url_image_modifier), lien_sauvegarde);
                            }

                            // -- Mise à jour de l'etat d el'essaie -- //
                            essaie = new KeyValuePair <int, bool>(
                                // -- Incrémenter l'essaie -- //
                                essaie.Key + 1,
                                // -- Teste si la sauvegarde s'est effectué -- //
                                (System.IO.File.Exists(lien_sauvegarde))
                                );

                            // -- Mise à jour du lien de destination du fichier -- //
                            if (System.IO.File.Exists(lien_sauvegarde))
                            {
                                actualite.fichier = lien_sauvegarde;
                            }
                        }
                        catch (Exception ex)
                        {
                            // -- Reinitiliser lessaie -- //
                            essaie = new KeyValuePair <int, bool>(essaie.Key + 1, false);
                        }
                    }
                }
                #endregion

                // -- Charger le contenu des images -- //
                Chargement_ressource(programmes_tv_list, actualite_list);

                // -- Message -- //
                MessageBox.Show("Telechargement des ressources terminé!", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                // -- Message -- //
                MessageBox.Show(ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }