CreditCardDetails.cs 2.2 KB

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