choices.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. from utilities.choices import ChoiceSet
  2. #
  3. # CustomFields
  4. #
  5. class CustomFieldTypeChoices(ChoiceSet):
  6. TYPE_TEXT = 'text'
  7. TYPE_INTEGER = 'integer'
  8. TYPE_BOOLEAN = 'boolean'
  9. TYPE_DATE = 'date'
  10. TYPE_URL = 'url'
  11. TYPE_SELECT = 'select'
  12. CHOICES = (
  13. (TYPE_TEXT, 'Text'),
  14. (TYPE_INTEGER, 'Integer'),
  15. (TYPE_BOOLEAN, 'Boolean (true/false)'),
  16. (TYPE_DATE, 'Date'),
  17. (TYPE_URL, 'URL'),
  18. (TYPE_SELECT, 'Selection'),
  19. )
  20. LEGACY_MAP = {
  21. TYPE_TEXT: 100,
  22. TYPE_INTEGER: 200,
  23. TYPE_BOOLEAN: 300,
  24. TYPE_DATE: 400,
  25. TYPE_URL: 500,
  26. TYPE_SELECT: 600,
  27. }
  28. class CustomFieldFilterLogicChoices(ChoiceSet):
  29. FILTER_DISABLED = 'disabled'
  30. FILTER_LOOSE = 'loose'
  31. FILTER_EXACT = 'exact'
  32. CHOICES = (
  33. (FILTER_DISABLED, 'Disabled'),
  34. (FILTER_LOOSE, 'Loose'),
  35. (FILTER_EXACT, 'Exact'),
  36. )
  37. LEGACY_MAP = {
  38. FILTER_DISABLED: 0,
  39. FILTER_LOOSE: 1,
  40. FILTER_EXACT: 2,
  41. }
  42. #
  43. # CustomLinks
  44. #
  45. class CustomLinkButtonClassChoices(ChoiceSet):
  46. CLASS_DEFAULT = 'default'
  47. CLASS_PRIMARY = 'primary'
  48. CLASS_SUCCESS = 'success'
  49. CLASS_INFO = 'info'
  50. CLASS_WARNING = 'warning'
  51. CLASS_DANGER = 'danger'
  52. CLASS_LINK = 'link'
  53. CHOICES = (
  54. (CLASS_DEFAULT, 'Default'),
  55. (CLASS_PRIMARY, 'Primary (blue)'),
  56. (CLASS_SUCCESS, 'Success (green)'),
  57. (CLASS_INFO, 'Info (aqua)'),
  58. (CLASS_WARNING, 'Warning (orange)'),
  59. (CLASS_DANGER, 'Danger (red)'),
  60. (CLASS_LINK, 'None (link)'),
  61. )
  62. #
  63. # ObjectChanges
  64. #
  65. class ObjectChangeActionChoices(ChoiceSet):
  66. ACTION_CREATE = 'create'
  67. ACTION_UPDATE = 'update'
  68. ACTION_DELETE = 'delete'
  69. CHOICES = (
  70. (ACTION_CREATE, 'Created'),
  71. (ACTION_UPDATE, 'Updated'),
  72. (ACTION_DELETE, 'Deleted'),
  73. )
  74. LEGACY_MAP = {
  75. ACTION_CREATE: 1,
  76. ACTION_UPDATE: 2,
  77. ACTION_DELETE: 3,
  78. }
  79. #
  80. # ExportTemplates
  81. #
  82. class TemplateLanguageChoices(ChoiceSet):
  83. LANGUAGE_DJANGO = 'django'
  84. LANGUAGE_JINJA2 = 'jinja2'
  85. CHOICES = (
  86. (LANGUAGE_DJANGO, 'Django'),
  87. (LANGUAGE_JINJA2, 'Jinja2'),
  88. )
  89. LEGACY_MAP = {
  90. LANGUAGE_DJANGO: 10,
  91. LANGUAGE_JINJA2: 20,
  92. }
  93. #
  94. # Webhooks
  95. #
  96. class WebhookHttpMethodChoices(ChoiceSet):
  97. METHOD_GET = 'GET'
  98. METHOD_POST = 'POST'
  99. METHOD_PUT = 'PUT'
  100. METHOD_PATCH = 'PATCH'
  101. METHOD_DELETE = 'DELETE'
  102. CHOICES = (
  103. (METHOD_GET, 'GET'),
  104. (METHOD_POST, 'POST'),
  105. (METHOD_PUT, 'PUT'),
  106. (METHOD_PATCH, 'PATCH'),
  107. (METHOD_DELETE, 'DELETE'),
  108. )