/// <summary> /// Constructeur Don sans DateTime. /// Lorsqu'on envoie un Don, le temps est mit sur le côté serveur. /// </summary> /// <param name="nom"></param> /// <param name="montant"></param> /// <param name="modePaiement">Type de carte de crédit</param> public Don(string nom, double montant, ModePaiement modePaiement) : this() { NomAuteur = nom; Montant = montant; ModePaiementTransaction = modePaiement; }
public Transaction(string nom, double montant, ModePaiement modePaiement) : this() { NomAuteur = nom; Montant = montant; ModePaiementTransaction = modePaiement; }
/// <summary> /// Constructeur Don avec DateTime /// Lorsqu'on reçois un Don de la base de données, nous pouvons setter le DateTime avec le temps du Don /// tel qu'enregistré dans la BD. /// </summary> /// <param name="nom"></param> /// <param name="montant"></param> /// <param name="modePaiement">Type de carte de crédit</param> /// <param name="dateHeure"></param> public Don(string nom, double montant, ModePaiement modePaiement, DateTime dateHeure) : this(nom, montant, modePaiement) { DateHeureTransaction = dateHeure; }
private void ValidationNoCarte() { // http://www.regular-expressions.info/creditcard.html Regex regexMasterCard = new Regex("^5[1-5][0-9]{14}$"); Regex regexVisa = new Regex("^4[0-9]{12}(?:[0-9]{3})?$"); Regex regexAmex = new Regex("^3[47][0-9]{13}$"); string txtNo = txtNoCarte.Text; bool isMastercard = regexMasterCard.IsMatch(txtNo); bool isVisa = regexVisa.IsMatch(txtNo); bool isAmex = regexAmex.IsMatch(txtNo); imgAmex.IsEnabled = isAmex; imgVisa.IsEnabled = isVisa; imgMasterCard.IsEnabled = isMastercard; if (isAmex) { modePaiement = ModePaiement.Amex; } else if (isVisa) { modePaiement = ModePaiement.Visa; } else if (isMastercard) { modePaiement = ModePaiement.MasterCard; } if (isMastercard || isVisa || isAmex) { isNoCarteGood = true; lblErreurNoCarte.Visibility = Visibility.Hidden; } else { isNoCarteGood = false; } }
/// <summary> /// Méthode pour valider le champ du numéro de carte de crédit /// </summary> private void ValidationNoCarte() { //Utilise les trois regex connues pour reconnaitre le type de carte entre MasterCard, Visa et American Express. // http://www.regular-expressions.info/creditcard.html Regex regexMasterCard = new Regex("^5[1-5][0-9]{14}$"); Regex regexVisa = new Regex("^4[0-9]{12}(?:[0-9]{3})?$"); Regex regexAmex = new Regex("^3[47][0-9]{13}$"); string txtNo = txtNoCarte.Text; //Passe à travers les trois regex pour essayer de trouver un match. bool isMastercard = regexMasterCard.IsMatch(txtNo); bool isVisa = regexVisa.IsMatch(txtNo); bool isAmex = regexAmex.IsMatch(txtNo); //Désactive les images de carte de crédit selon le match trouvé. Pour faire ressortir le type de carte détecté. imgAmex.IsEnabled = isAmex; imgVisa.IsEnabled = isVisa; imgMasterCard.IsEnabled = isMastercard; //Met la valeur de modePaiement selon le type de carte détecté avec notre classe singleton ModePaiement. if (isAmex) { modePaiement = ModePaiement.Amex; } else if (isVisa) { modePaiement = ModePaiement.Visa; } else if (isMastercard) { modePaiement = ModePaiement.MasterCard; } //Le type est détecté, donc on cache le label d'erreur associé au champ. if (isMastercard || isVisa || isAmex) { isNoCarteGood = true; lblErreurNoCarte.Visibility = Visibility.Hidden; } //Type non détecté. else { isNoCarteGood = false; } }