private void EnregistrementDetails(Enregistrement enregSelected)
        {
            var navigationParam = new NavigationParameters();

            navigationParam.Add("Enregistrement", enregSelected);
            NavigationService.NavigateAsync("EnregistrementDetails", navigationParam);
        }
Example #2
0
        private async void AddEnregAsync()
        {
            var answer = await App.Current.MainPage.DisplayAlert("Question?", "Voulez-vous vraiment enregistrer ?", "Yes", "No");

            if (answer)
            {
                var locator  = CrossGeolocator.Current;
                var position = await locator.GetPositionAsync(TimeSpan.FromSeconds(1000));

                var placemarks = await Geocoding.GetPlacemarksAsync(position.Latitude, position.Longitude);     // position.Latitude, position.Longitude

                string adress    = "";
                var    placemark = placemarks?.FirstOrDefault();
                if (placemark != null)
                {
                    adress = placemark.FeatureName + " " + placemark.Thoroughfare + " " + ", " + placemark.PostalCode + " " + placemark.Locality + " - " + placemark.CountryName;
                }
                DateTime heurrr = DateTime.Now;
                string   heure  = heurrr.Hour.ToString() + "h" + heurrr.Minute.ToString();

                DateTime datee = DateTime.Now;

                Enregistrement Enreg = new Enregistrement(Name, Description, Tag, ImageName, position.Latitude, position.Longitude, adress, heure, datee);
                _enregistrementService.AddEnregistrement(Enreg);
                UserDialogs.Instance.Toast("Enregistrement avec succès!");
                resetInputs();
            }
        }
Example #3
0
        public ActionResult DeleteConfirmed(int id)
        {
            Enregistrement enregistrement = db.Enregistrement.Find(id);

            db.Enregistrement.Remove(enregistrement);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #4
0
 public ActionResult Edit([Bind(Include = "Code_Morceau,Titre,Code_Composition,Nom_de_Fichier,Duree,Duree_Seconde,Prix,Extrait")] Enregistrement enregistrement)
 {
     if (ModelState.IsValid)
     {
         db.Entry(enregistrement).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(enregistrement));
 }
        public override void OnNavigatingTo(INavigationParameters parameters)
        {
            base.OnNavigatingTo(parameters);

            _enregistrement = parameters.GetValue <Enregistrement>("Enregistrement");
            Name            = _enregistrement.Name;
            Description     = _enregistrement.Description;
            Date            = _enregistrement.Date;
            Location        = _enregistrement.Location;
            StringTags      = _enregistrement.StringTags;
        }
Example #6
0
        public override void OnNavigatingTo(INavigationParameters parameters)
        {
            base.OnNavigatingTo(parameters);
            Console.WriteLine("aaaaf");

            enrg        = parameters.GetValue <Enregistrement>("Enregistrement");
            ImageName   = enrg.ImageName;
            Heure       = enrg.Heure;
            Name        = enrg.Name;
            Tag         = enrg.Tag;
            Description = enrg.Description;
            Coordonnee  = enrg.Latitude + " - " + enrg.Longitude;
            Adress      = enrg.Adress;
        }
Example #7
0
        // GET: Enregistrements/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Enregistrement enregistrement = db.Enregistrement.Find(id);

            if (enregistrement == null)
            {
                return(HttpNotFound());
            }
            return(View(enregistrement));
        }
        private async void DeleteEnregistrement(Enregistrement obj)
        {
            var answer = await _dialogService.DisplayAlertAsync("ATTENTION !", "Êtes-vous sûr de vouloir supprimer cet enregistrement ?", "Oui", "Non");

            if (answer)
            {
                answer = await _dialogService.DisplayAlertAsync("ATTENTION !", "Êtes-vous réellement sûr ?", "Oui", "Non");

                if (answer)
                {
                    _enregistrementService.DeleteEnregistrement(obj);
                    _enregistrementsInDb.Remove(obj);
                    _EnregistrementsDisplayed.Remove(obj);
                }
            }
        }
Example #9
0
        private void InitLocal()
        {
            Enregistrement test = new Enregistrement("Le Coin Gourmand", "Après une dure matinée de cours, rien ne vaut un déjeuner au resto Le Coin Gourmand !", new DateTime(2017, 3, 16));

            test.AddTag(new Tag("LeCoinGourmand"));
            test.AddTag(new Tag("SuperRepas"));
            test.AddTag(new Tag("Food"));
            _enregistrements.Add(test);

            test = new Enregistrement("Salaire", "Quoi de mieux que d'être étudiant et d'avoir un salaire à chaque fin de mois", new DateTime(2018, 10, 5));
            test.AddTag(new Tag("Money"));
            test.AddTag(new Tag("PouvoirD'achat"));
            test.AddTag(new Tag("Etudiant"));
            test.AddTag(new Tag("Riche"));
            _enregistrements.Add(test);
        }
Example #10
0
        private void FirstInsertDB()
        {
            _liteDBClient.CleanCollection(_dbCollectionEnregistrement);

            Enregistrement test = new Enregistrement("Le Coin Gourmand", "Après une dure matinée de cours, rien ne vaut un déjeuner au resto Le Coin Gourmand !", new DateTime(2017, 3, 16));

            test.AddTag(new Tag("LeCoinGourmand"));
            test.AddTag(new Tag("SuperRepas"));
            test.AddTag(new Tag("Food"));
            _liteDBClient.InsertObjectInDB <Enregistrement>(test, _dbCollectionEnregistrement);

            test = new Enregistrement("Salaire", "Quoi de mieux que d'être étudiant et d'avoir un salaire à chaque fin de mois", new DateTime(2018, 10, 5));
            test.AddTag(new Tag("Money"));
            test.AddTag(new Tag("Salaire"));
            test.AddTag(new Tag("PouvoirD'achat"));
            test.AddTag(new Tag("Etudiant"));
            test.AddTag(new Tag("Riche"));
            _liteDBClient.InsertObjectInDB <Enregistrement>(test, _dbCollectionEnregistrement);
        }
 public void InitializeEnregistrementDateDifference(Enregistrement enregistrement)
 {
     if (enregistrement.Date.Year == DateTime.Now.Year &&
         enregistrement.Date.Month == DateTime.Now.Month &&
         enregistrement.Date.Day == DateTime.Now.Day)
     {
         enregistrement.DateDiff = "Today";
     }
     else
     {
         TimeSpan span = DateTime.Now.Subtract(enregistrement.Date);
         if (span.Days == 0)
         {
             enregistrement.DateDiff = "il y a " + span.Hours + " heures";
         }
         else
         {
             enregistrement.DateDiff = "il y a " + span.Days + " jours";
         }
     }
 }
Example #12
0
 public Item(Enregistrement en, int quantity)
 {
     this.en       = en;
     this.quantity = quantity;
 }
 public void DeleteEnregistrement(Enregistrement enreg)
 {
     _liteDBClient.RemoveObjectFromDB <Enregistrement>(enreg.Id, _dbCollectionEnreg);
     _enregs.Remove(enreg);
 }
 public void AddEnregistrement(Enregistrement enreg)
 {
     _liteDBClient.InsertObjectInDB <Enregistrement>(enreg, _dbCollectionEnreg);
     _enregs.Add(enreg);
 }
        /// <summary>
        /// Permet d'énumérer les enregistrements résultant d'une requête de consultation par une méthode passée en paramètre
        /// </summary>
        /// <param name="Requete">Requête SQL à exécuter (doit être de type SELECT ou SHOW)</param>
        /// <param name="Valeurs">Valeurs des parties variables</param>
        /// <returns>Chaque enregistrement produit par cette requête de consultation</returns>
        public IEnumerable <IEnregistrement> Enumerer(string Requete, params object[] Valeurs)
        {
            using (GestionnaireDeConnexionDeLecture GestionnaireConnexionLecture = new GestionnaireDeConnexionDeLecture(this))
            {
                // Boucle permettant de réessayer après une reconnexion
                for (int NombreEchecs = 0; NombreEchecs < 2; NombreEchecs++)
                {
                    Enregistrement Enregistrement       = null;
                    int            IndiceEnregistrement = 0;
                    while (true)
                    {
                        try
                        {
                            if (Enregistrement == null)
                            {
                                // Vérification de l'état théorique de la connexion
                                if (!EstConnecte)
                                {
                                    throw new Exception("Pas de connexion établie au serveur MySql");
                                }
                                // Vérification qu'il s'agit bien d'une requête de consultation
                                if (!EstRequeteConsultation(Requete))
                                {
                                    throw new Exception("Une requête d'action ne peut pas faire l'objet de la méthode MyDB.Consulter()");
                                }
                                // Création de la commande SQL
                                MySqlCommand Commande = CreerCommande(Requete, Valeurs);
                                if (!GestionnaireConnexionLecture.DebuterLecture(Commande))
                                {
                                    throw new Exception("Aucun objet de lecture n'a pu être créé");
                                }
                                // Préparation de l'objet représentant l'enregistrement courant
                                Enregistrement = new Enregistrement(GestionnaireConnexionLecture.ConnexionUtilisee.m_Lecteur);
                            }
                            // Boucle de lecture des enregistrements
                            if (!GestionnaireConnexionLecture.ConnexionUtilisee.m_Lecteur.Read())
                            {
                                /*
                                 * // Terminaison de la lecture avec libération des ressources associées
                                 * if (ConnexionLecture.ConnexionUtilisee != null) ConnexionLecture.ConnexionUtilisee.TerminerLecture(this);
                                 */
                                // Permet de quitter la boucle de lecture des enregistrements et cette méthode d'énumération
                                yield break;
                            }
                            // Transfert des valeurs de l'enregistrement courant dans le dictionnaire le représentant
                            Enregistrement.ChargerValeurs(IndiceEnregistrement, GestionnaireConnexionLecture.ConnexionUtilisee.m_Lecteur);
                            // Incrémentation du nombre d'enregistrements consultés
                            IndiceEnregistrement++;
                        }
                        catch (Exception Erreur)
                        {
                            /*
                             * System.Diagnostics.Debug.WriteLine(string.Format(
                             *  "\nMyDB.Consulter({0}, {1}) a échoué (version avec méthode de traitement) :\n{2}\n",
                             *  Requete,
                             *  string.Join("", Valeurs.Select(Valeur => string.Format(", {0}", Valeur))),
                             *  Erreur.Message));
                             */
                            if (SurErreur != null)
                            {
                                SurErreur(this, MethodeExecutantRequeteSql.Enumerer, Requete, Valeurs, Erreur.Message);
                            }

                            /*
                             * // Terminaison de la lecture avec libération des ressources associées
                             * if (ConnexionLecture.ConnexionUtilisee != null) ConnexionLecture.ConnexionUtilisee.TerminerLecture(this);
                             */
                            // Test de l'état de connexion
                            if ((EtatConnexionConnu != EtatConnexion.Perdu) && (!EstConnecte || TesterConnexion()))
                            {
                                if (SurErreur != null)
                                {
                                    SurErreur(this, MethodeExecutantRequeteSql.Enumerer, Requete, Valeurs, Erreur.Message);
                                }
                                yield break; // Permet de quitter la boucle de lecture des enregistrements et cette méthode d'énumération
                            }
                            // En cas de perte de connexion, on tente une fois de se reconnecter
                            if (!SeConnecter())
                            {
                                if (SurErreur != null)
                                {
                                    SurErreur(this, MethodeExecutantRequeteSql.Enumerer, Requete, Valeurs, Erreur.Message);
                                }
                                yield break; // Permet de quitter la boucle de lecture des enregistrements et cette méthode d'énumération
                            }
                            // En cas de réussite de la re-connexion, on boucle une seconde fois sur la tentative d'exécution de cette lecture
                            break; // Permet de quitter la boucle de lecture des enregistrements
                        }
                        // Enumération de l'élément courant (comme retour partiel devant être "consommé")
                        yield return(Enregistrement);
                    }
                }
            }
        }
 /// <summary>
 /// Permet de récupérer le premier enregistrement résultant d'une requête de consultation
 /// </summary>
 /// <param name="Requete">Requête SQL à exécuter (doit être de type SELECT ou SHOW)</param>
 /// <param name="Valeurs">Valeurs des parties variables</param>
 /// <returns>Enregistrement si possible, sinon null</returns>
 public IEnregistrement Consulter(string Requete, params object[] Valeurs)
 {
     for (int NombreEchecs = 0; NombreEchecs < 2; NombreEchecs++)
     {
         MyDB ConnexionUtilisee = null;
         try
         {
             // Vérification de l'état théorique de la connexion
             if (!EstConnecte)
             {
                 throw new Exception("Pas de connexion établie au serveur MySql");
             }
             // Vérification qu'il s'agit bien d'une requête de consultation
             if (!EstRequeteConsultation(Requete))
             {
                 throw new Exception("Une requête d'action ne peut pas faire l'objet de la méthode MyDB.Consulter()");
             }
             // Création de la commande SQL
             MySqlCommand Commande = CreerCommande(Requete, Valeurs);
             if (!DebuterLecture(Commande, out ConnexionUtilisee))
             {
                 throw new Exception("Aucun objet de lecture n'a pu être créé");
             }
             // Préparation de l'objet représentant l'enregistrement courant
             Enregistrement Enregistrement = new Enregistrement(ConnexionUtilisee.m_Lecteur);
             // Tentative de lecture du premier enregistrement
             if (ConnexionUtilisee.m_Lecteur.Read())
             {
                 // Transfert des valeurs de l'enregistrement courant dans le dictionnaire le représentant
                 Enregistrement.ChargerValeurs(0, ConnexionUtilisee.m_Lecteur);
                 // Terminaison de la lecture avec libération des ressources associées
                 if (ConnexionUtilisee != null)
                 {
                     ConnexionUtilisee.TerminerLecture(this);
                 }
                 // Retour du premier enregistrement lu
                 return(Enregistrement);
             }
             // Terminaison de la lecture avec libération des ressources associées
             if (ConnexionUtilisee != null)
             {
                 ConnexionUtilisee.TerminerLecture(this);
             }
         }
         catch (Exception Erreur)
         {
             /*
              * System.Diagnostics.Debug.WriteLine(string.Format(
              *  "\nMyDB.Consulter({0}, {1}) a échoué (version de récupération du premier enregistrement) :\n{2}\n",
              *  Requete,
              *  string.Join("", Valeurs.Select(Valeur => string.Format(", {0}", Valeur))),
              *  Erreur.Message));
              */
             // Terminaison de la lecture avec libération des ressources associées
             if (ConnexionUtilisee != null)
             {
                 ConnexionUtilisee.TerminerLecture(this);
             }
             // Test de l'état de connexion
             if ((EtatConnexionConnu != EtatConnexion.Perdu) && (!EstConnecte || TesterConnexion()))
             {
                 if (SurErreur != null)
                 {
                     SurErreur(this, MethodeExecutantRequeteSql.Enumerer, Requete, Valeurs, Erreur.Message);
                 }
                 break;
             }
             // En cas de perte de connexion, on tente une fois de se reconnecter
             if (!SeConnecter())
             {
                 if (SurErreur != null)
                 {
                     SurErreur(this, MethodeExecutantRequeteSql.Enumerer, Requete, Valeurs, Erreur.Message);
                 }
                 break;
             }
             // En cas de réussite de la re-connexion, on boucle une seconde fois sur la tentative d'exécution de cette lecture
         }
     }
     // Retour d'un enregistrement "null" afin de représenter l'absence d'enregistrement
     return(null);
 }
Example #17
0
 public void EditEnregistrement(Enregistrement enregistrement)
 {
     _liteDBClient.UpdateObjectFromDB <Enregistrement>(enregistrement, _dbCollectionEnregistrement);
     _enregistrements.Remove(enregistrement);
     _enregistrements.Add(enregistrement);
 }
Example #18
0
 public void DeleteEnregistrement(Enregistrement enregistrement)
 {
     //Pour les opérations sur la DB, il faudrait normalement vérifier le succès de l'opération (cascade d'exceptions)
     _liteDBClient.RemoveObjectFromDB <Enregistrement>(enregistrement.Id, _dbCollectionEnregistrement);
     _enregistrements.Remove(enregistrement);
 }
Example #19
0
 public void AddEnregistrement(Enregistrement enregistrement)
 {
     //Pour les opérations sur la DB, il faudrait normalement vérifier le succès de l'opération (cascade d'exceptions)
     _liteDBClient.InsertObjectInDB <Enregistrement>(enregistrement, _dbCollectionEnregistrement);
     _enregistrements.Add(enregistrement);
 }