CreditCardDetails.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. using System;
  2. using InABox.Core;
  3. namespace PRSServer.Forms.DatabaseLicense
  4. {
  5. public class CreditCardDetails : BaseObject
  6. {
  7. [TextBoxEditor]
  8. [EditorSequence(1)]
  9. public string CardNumber { get; set; }
  10. [ComboLookupEditor(typeof(CreditCardMonthGenerator))]
  11. [EditorSequence(2)]
  12. public string Month { get; set; }
  13. private class CreditCardMonthGenerator : LookupGenerator<object>
  14. {
  15. public CreditCardMonthGenerator(object[] items) : base(items)
  16. {
  17. AddValue("01", "January");
  18. AddValue("02", "February");
  19. AddValue("03", "March");
  20. AddValue("04", "April");
  21. AddValue("05", "May");
  22. AddValue("06", "June");
  23. AddValue("07", "July");
  24. AddValue("08", "August");
  25. AddValue("09", "September");
  26. AddValue("10", "October");
  27. AddValue("11", "November");
  28. AddValue("12", "December");
  29. }
  30. }
  31. [ComboLookupEditor(typeof(CreditCardYearGenerator))]
  32. [EditorSequence(3)]
  33. public string Year { get; set; }
  34. private class CreditCardYearGenerator : LookupGenerator<object>
  35. {
  36. public CreditCardYearGenerator(object[] items) : base(items)
  37. {
  38. for (var i = 0; i < 10; i++)
  39. {
  40. var year = DateTime.Today.Year + i;
  41. AddValue(year.ToString(), year.ToString());
  42. }
  43. }
  44. }
  45. [PasswordEditor]
  46. [EditorSequence(4)]
  47. public string Cvv { get; set; }
  48. [DoubleEditor(Editable = Editable.Disabled)]
  49. [EditorSequence(5)]
  50. public double Amount { get; set; }
  51. [CheckBoxEditor]
  52. [EditorSequence(6)]
  53. public bool SaveDetails { get; set; }
  54. }
  55. }