private void btnConfirmer_Click(object sender, RoutedEventArgs e) { //Récupère tout les enfants de type RadioButton de wrapMontant et enregistre selui sélectionné dans btnChecked. RadioButton btnChecked = wrapMontant.Children.OfType<RadioButton>().FirstOrDefault(r => r.IsChecked == true); int valeurRadio; //Prend la valeur en string du contenu du radioButton. string stringContent = btnChecked.Content.ToString(); //Convertir le string en int, c'est le montant du don, enlève le dernier caractère car c'est le signe de dollard. bool IsInt = int.TryParse(stringContent.Remove(stringContent.Length - 1), out valeurRadio); if (IsInt) { valeurDon = valeurRadio; //Méthode qui affiche les labels de messages d'erreurs au dessus des champs avec des données erronnées. MontreLabelErreur(); //Si tout les champs sont valides if (isNomGood && isNoCarteGood && isExpirationGood && isCSCGood) { //Crée un nouveau objet Don avec la valeur des champs et le mode de paiement (le type de carte détecté). Don don = new Don(txtProprietaire.Text, valeurDon, modePaiement); //Si l'utilisateur n'est pas connecté à un compte, fait juste insérer le don dans la base de données avec le service. if (String.IsNullOrWhiteSpace(App.MembreCourant.NomUtilisateur)) donService.Insert(don); else //Sinon appel la méthode qui peut associer le compte membre avec son don. donService.Insert(App.MembreCourant, don); //Méthode qui vide tout les champs de données. VideChamps(); //Affiche la fenêtre de reçu du don qui viend d'être envoyé. (new FenetreRecuDon(don)).ShowDialog(); } else //Si au moins un champ n'est pas valide, joue un beep d'erreur de microsoft. SystemSounds.Beep.Play(); } }
public ActionResult Delete(int id, Don don) { ds.Delete(ds.Get(e => e.DonId == id)); ds.Commit(); return(RedirectToAction("Index")); }
private void ProcessVerificationResponse(string verificationResponse) { if (verificationResponse.Equals("VERIFIED")) { MessageBox.Show(verificationResponse); //Verifier si ce donateur est deja dans notre BD bool donateurExistant = false; Donateur donateur = new Donateur(); foreach (Donateur d in Singleton.Instance.db.Donateurs) { //Si donateur trouvé, le récupérer if (d.emailDonateur == Request.Form["payer_email"]) { donateur = d; donateurExistant = true; break; } } //Si donateur pas trouvé, l'ajouter à la BD if (donateurExistant == false) { donateur.nomDonateur = Request.Form["last_name"]; donateur.prenomDonateur = Request.Form["first_name"]; donateur.adresseDonateur = Request.Form["address_street"]; donateur.villeDonateur = Request.Form["address_city"]; donateur.provinceDonateur = Request.Form["address_state"]; donateur.cpDonateur = Request.Form["address_zip"]; donateur.emailDonateur = Request.Form["payer_email"]; try { Singleton.Instance.db.Donateurs.Add(donateur); Singleton.Instance.db.SaveChanges(); } catch (Exception e) { Console.WriteLine(e.Message); } } string id = Request.Form["item_name"]; //Ajouter le Don a partir du Donateur. MessageBox.Show(id); int idLevee = Int32.Parse(id); string idTransactionId = Request.Form["txn_id"]; string montant = Request.Form["mc_gross"]; double montantDouble = Double.Parse(montant); Don don = new Don(); don.dateDon = DateTime.Today; don.montantDon = montantDouble; don.idDonateur = donateur.idDonateur; don.idLeveeFonds = idLevee; don.numTransaction = idTransactionId; try { Singleton.Instance.db.Dons.Add(don); Singleton.Instance.db.SaveChanges(); //Updater le montant obtenu dans la Levee de Fonds et le Projet LeveeFond levee = Singleton.Instance.db.LeveeFonds.Find(idLevee); levee.montantObtenu += montantDouble; levee.Projet.totalFondsCollectes += montantDouble; try { Singleton.Instance.db.SaveChanges(); } catch (Exception e) { Console.WriteLine(e.Message); } } catch (Exception e) { Console.WriteLine(e.Message); } } else if (verificationResponse.Equals("INVALID")) { //Log for manual investigation } else { //Log error } }