ob-dj-store 0.0.17.9__tar.gz → 0.0.18.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/PKG-INFO +1 -1
  2. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/config/settings.py +4 -0
  3. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/stores/rest/serializers/serializers.py +8 -2
  4. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/admin.py +26 -1
  5. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/utils.py +2 -0
  6. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/managers.py +2 -0
  7. ob-dj-store-0.0.18.1/ob_dj_store/core/stores/migrations/0103_alter_paymentmethod_payment_provider.py +35 -0
  8. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_payment.py +2 -0
  9. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_store.py +1 -1
  10. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store.egg-info/PKG-INFO +1 -1
  11. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store.egg-info/SOURCES.txt +1 -0
  12. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.github/dependabot.yml +0 -0
  13. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.github/workflows/docs.yml +0 -0
  14. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.github/workflows/pre-release.yml +0 -0
  15. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.github/workflows/release.yml +0 -0
  16. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.github/workflows/test-build.yml +0 -0
  17. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.gitignore +0 -0
  18. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.isort.cfg +0 -0
  19. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/.pre-commit-config.yaml +0 -0
  20. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/Dockerfile +0 -0
  21. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/MANIFEST.in +0 -0
  22. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/Makefile +0 -0
  23. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/Pipfile +0 -0
  24. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/Pipfile.lock +0 -0
  25. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/README.md +0 -0
  26. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/config/__init__.py +0 -0
  27. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/config/urls.py +0 -0
  28. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/config/wsgi.py +0 -0
  29. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docker-compose.env +0 -0
  30. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docker-compose.yml +0 -0
  31. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/Makefile +0 -0
  32. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/make.bat +0 -0
  33. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/admin.rst +0 -0
  34. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/conf.py +0 -0
  35. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/index.rst +0 -0
  36. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/installation.rst +0 -0
  37. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/models.rst +0 -0
  38. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/docs/source/rest_endpoints.rst +0 -0
  39. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/fixtures/initial_users.yaml +0 -0
  40. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/fixtures/stores.yaml +0 -0
  41. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/manage.py +0 -0
  42. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/__init__.py +0 -0
  43. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/__init__.py +0 -0
  44. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/stores/__init__.py +0 -0
  45. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/stores/filters.py +0 -0
  46. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/stores/urls.py +0 -0
  47. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/stores/views.py +0 -0
  48. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/tap/__init__.py +0 -0
  49. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/tap/serializers.py +0 -0
  50. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/tap/urls.py +0 -0
  51. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/apis/tap/views.py +0 -0
  52. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/__init__.py +0 -0
  53. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/__init__.py +0 -0
  54. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/admin_inlines.py +0 -0
  55. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/apps.py +0 -0
  56. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/__init__.py +0 -0
  57. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/__init__.py +0 -0
  58. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/admin.py +0 -0
  59. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/apps.py +0 -0
  60. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/managers.py +0 -0
  61. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0001_initial.py +0 -0
  62. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0002_auto_20220815_1610.py +0 -0
  63. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0003_auto_20220818_1938.py +0 -0
  64. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0004_tapcustomer.py +0 -0
  65. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0005_alter_tappayment_payment_url.py +0 -0
  66. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0006_alter_tappayment_source.py +0 -0
  67. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/0007_alter_tappayment_source.py +0 -0
  68. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/migrations/__init__.py +0 -0
  69. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/gateway/tap/models.py +0 -0
  70. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0001_initial.py +0 -0
  71. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0002_auto_20220422_0205.py +0 -0
  72. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0003_openinghours.py +0 -0
  73. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0004_auto_20220422_2326.py +0 -0
  74. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0005_auto_20220425_2119.py +0 -0
  75. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0005_auto_20220427_1729.py +0 -0
  76. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0006_auto_20220428_0100.py +0 -0
  77. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0007_cart_cartitem_order_orderitem.py +0 -0
  78. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0008_order_status.py +0 -0
  79. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0009_auto_20220508_2142.py +0 -0
  80. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0010_auto_20220509_1633.py +0 -0
  81. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0011_favorite.py +0 -0
  82. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0012_auto_20220514_0633.py +0 -0
  83. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0013_auto_20220518_1539.py +0 -0
  84. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0014_auto_20220519_0018.py +0 -0
  85. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0015_inventory_inventoryoperations.py +0 -0
  86. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0016_productvariant_preparation_time.py +0 -0
  87. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0017_auto_20220524_0912.py +0 -0
  88. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0018_auto_20220524_1613.py +0 -0
  89. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0019_product_is_featured.py +0 -0
  90. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0020_orderhistory.py +0 -0
  91. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0021_auto_20220531_1849.py +0 -0
  92. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0022_order_pickup_time.py +0 -0
  93. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0023_feedback_feedbackattribute_feedbackconfig.py +0 -0
  94. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0024_auto_20220609_1552.py +0 -0
  95. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0025_productvariant_is_primary.py +0 -0
  96. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0026_auto_20220630_1913.py +0 -0
  97. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0027_auto_20220713_1759.py +0 -0
  98. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0028_phonecontact.py +0 -0
  99. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0029_auto_20220726_1750.py +0 -0
  100. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0030_category_parent.py +0 -0
  101. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0031_auto_20220811_1733.py +0 -0
  102. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0032_auto_20220812_1951.py +0 -0
  103. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0033_auto_20220815_0133.py +0 -0
  104. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0034_auto_20220815_1528.py +0 -0
  105. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0035_auto_20220818_1938.py +0 -0
  106. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0036_productattribute_is_mandatory.py +0 -0
  107. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0037_auto_20220825_1736.py +0 -0
  108. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0038_cartitem_extra_infos.py +0 -0
  109. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0039_auto_20220831_1521.py +0 -0
  110. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0040_auto_20220902_1806.py +0 -0
  111. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0041_auto_20220912_1506.py +0 -0
  112. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0042_wallet_wallettransaction.py +0 -0
  113. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0043_auto_20220919_1854.py +0 -0
  114. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0044_remove_productvariant_has_inventory.py +0 -0
  115. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0045_shippingmethod_type.py +0 -0
  116. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0046_auto_20221014_1720.py +0 -0
  117. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0047_auto_20221018_1433.py +0 -0
  118. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0048_auto_20221026_1933.py +0 -0
  119. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0049_auto_20221029_1524.py +0 -0
  120. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0050_favoriteextra.py +0 -0
  121. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0051_order_car_id.py +0 -0
  122. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0052_auto_20221129_1732.py +0 -0
  123. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0053_inventory_plu.py +0 -0
  124. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0054_auto_20221230_1501.py +0 -0
  125. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0055_store_image.py +0 -0
  126. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0056_auto_20230213_2224.py +0 -0
  127. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0057_auto_20230214_1724.py +0 -0
  128. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0058_attributechoice_is_default.py +0 -0
  129. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0059_auto_20230217_2006.py +0 -0
  130. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0060_alter_orderitem_product_variant.py +0 -0
  131. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0061_auto_20230223_1435.py +0 -0
  132. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0062_auto_20230226_2005.py +0 -0
  133. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0063_alter_store_payment_methods.py +0 -0
  134. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0064_auto_20230228_1814.py +0 -0
  135. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0065_auto_20230228_1932.py +0 -0
  136. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0066_auto_20230304_1532.py +0 -0
  137. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0067_auto_20230309_2014.py +0 -0
  138. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0068_auto_20230309_2251.py +0 -0
  139. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0069_alter_cartitem_options.py +0 -0
  140. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0070_auto_20230323_1628.py +0 -0
  141. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0071_auto_20230328_1825.py +0 -0
  142. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0072_alter_order_extra_infos.py +0 -0
  143. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0073_wallettransaction_is_cashback.py +0 -0
  144. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0074_productvariant_label.py +0 -0
  145. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0075_auto_20230419_0259.py +0 -0
  146. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0076_auto_20230421_1343.py +0 -0
  147. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0077_auto_20230502_2005.py +0 -0
  148. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0078_auto_20230503_1259.py +0 -0
  149. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0079_auto_20230504_1919.py +0 -0
  150. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0080_productvariant_description.py +0 -0
  151. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0081_storeattributechoice.py +0 -0
  152. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0082_auto_20230613_1424.py +0 -0
  153. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0083_productvariant_is_special.py +0 -0
  154. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0084_payment_result.py +0 -0
  155. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0085_auto_20230726_1528.py +0 -0
  156. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0086_wallet_is_active.py +0 -0
  157. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0087_auto_20230828_2138.py +0 -0
  158. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0088_alter_paymentmethod_payment_provider.py +0 -0
  159. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0089_discount_partner_partnerauthinfo_partneremaildomain_partnerotpauth.py +0 -0
  160. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0090_auto_20231006_1356.py +0 -0
  161. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0091_auto_20231010_1740.py +0 -0
  162. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0092_auto_20231012_1339.py +0 -0
  163. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0093_auto_20231017_2033.py +0 -0
  164. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0094_countrypaymentmethod.py +0 -0
  165. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0095_auto_20231101_1531.py +0 -0
  166. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0096_discount_discount_pos_id.py +0 -0
  167. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0097_auto_20231108_1939.py +0 -0
  168. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0098_alter_discount_discount_rate.py +0 -0
  169. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0099_alter_product_name_arabic.py +0 -0
  170. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0100_remove_shippingmethod_type_arabic.py +0 -0
  171. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0101_store_is_digital.py +0 -0
  172. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/0102_partner_name_arabic.py +0 -0
  173. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/migrations/__init__.py +0 -0
  174. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/__init__.py +0 -0
  175. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_address.py +0 -0
  176. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_cart.py +0 -0
  177. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_favorite.py +0 -0
  178. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_feedback.py +0 -0
  179. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_inventory.py +0 -0
  180. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_order.py +0 -0
  181. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_partner.py +0 -0
  182. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_product.py +0 -0
  183. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/models/_wallet.py +0 -0
  184. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/receivers.py +0 -0
  185. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/settings_validation.py +0 -0
  186. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/core/stores/utils.py +0 -0
  187. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/utils/__init__.py +0 -0
  188. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/utils/helpers.py +0 -0
  189. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/utils/model.py +0 -0
  190. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store/utils/utils.py +0 -0
  191. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store.egg-info/dependency_links.txt +0 -0
  192. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store.egg-info/requires.txt +0 -0
  193. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/ob_dj_store.egg-info/top_level.txt +0 -0
  194. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/pytest.ini +0 -0
  195. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/setup.cfg +0 -0
  196. {ob-dj-store-0.0.17.9 → ob-dj-store-0.0.18.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ob-dj-store
3
- Version: 0.0.17.9
3
+ Version: 0.0.18.1
4
4
  Summary: OBytes django application for managing ecommerce stores.
5
5
  Home-page: https://www.obytes.com/
6
6
  Author: OBytes
@@ -319,6 +319,8 @@ WALLET = "wallet"
319
319
  GIFT = "gift"
320
320
  APPLE_PAY = "apple_pay"
321
321
  GOOGLE_PAY = "google_pay"
322
+ MADA = "src_sa.mada"
323
+ BENEFIT = "src_bh.benefit"
322
324
 
323
325
  PAYMENT_PROVIDER_CHOICES = (
324
326
  (COD, _("cash on delivery")),
@@ -331,6 +333,8 @@ PAYMENT_PROVIDER_CHOICES = (
331
333
  (GIFT, _("Gift")),
332
334
  (APPLE_PAY, _("Apple Pay")),
333
335
  (GOOGLE_PAY, _("Google Pay")),
336
+ (MADA, _("Mada")),
337
+ (BENEFIT, _("Benefit")),
334
338
  )
335
339
  DIGITAL_PAYMENT_METHODS = [TAP_KNET, TAP_CREDIT_CARD, TAP_ALL, GOOGLE_PAY]
336
340
  DEFAULT_CURRENCY = "kwd"
@@ -480,9 +480,10 @@ class OrderSerializer(serializers.ModelSerializer):
480
480
  def perform_payment(self, amount, payment_method, order_store, orders, currency):
481
481
  from ob_dj_store.core.stores.gateway.tap.utils import TapException
482
482
 
483
+ user = self.context["request"].user
483
484
  try:
484
485
  payment = Payment.objects.create(
485
- user=self.context["request"].user,
486
+ user=user,
486
487
  amount=amount,
487
488
  method=payment_method,
488
489
  currency=currency,
@@ -493,7 +494,10 @@ class OrderSerializer(serializers.ModelSerializer):
493
494
  raise serializers.ValidationError(detail=err.messages)
494
495
  except TapException as err:
495
496
  raise serializers.ValidationError({"tap": _(str(err))})
496
- except ObjectDoesNotExist:
497
+ except ObjectDoesNotExist as err:
498
+ logger.error(
499
+ f"Payment Object not created: user:{user}, method:{payment_method}, currency:{currency}, error:{err}"
500
+ )
497
501
  tap_transaction = None
498
502
 
499
503
  return {
@@ -1527,6 +1531,8 @@ class WalletTopUpSerializer(serializers.Serializer):
1527
1531
  store_settings.TAP_ALL,
1528
1532
  store_settings.APPLE_PAY,
1529
1533
  store_settings.GOOGLE_PAY,
1534
+ store_settings.MADA,
1535
+ store_settings.BENEFIT,
1530
1536
  ]
1531
1537
  ),
1532
1538
  required=True,
@@ -3,6 +3,7 @@ from typing import Any
3
3
 
4
4
  from django import forms
5
5
  from django.contrib import admin
6
+ from django.db.models.functions import ExtractWeek
6
7
  from django.utils.translation import gettext_lazy as _
7
8
  from import_export.admin import ImportExportModelAdmin
8
9
  from leaflet.admin import LeafletGeoAdmin
@@ -300,6 +301,26 @@ class AdressAdmin(LeafletGeoAdmin):
300
301
  ]
301
302
 
302
303
 
304
+ class WeekNumberFilter(admin.SimpleListFilter):
305
+ title = _("Week Number")
306
+ parameter_name = "week_number"
307
+
308
+ def lookups(self, request, model_admin):
309
+ return (
310
+ ("1", _("Week 1")),
311
+ ("2", _("Week 2")),
312
+ ("3", _("Week 3")),
313
+ ("4", _("Week 4")),
314
+ )
315
+
316
+ def queryset(self, request, queryset):
317
+ if self.value():
318
+ queryset = queryset.annotate(week_number=ExtractWeek("created_at")).filter(
319
+ week_number=self.value()
320
+ )
321
+ return queryset
322
+
323
+
303
324
  class OrderAdmin(ImportExportModelAdmin, admin.ModelAdmin):
304
325
  list_display = [
305
326
  "id",
@@ -318,11 +339,13 @@ class OrderAdmin(ImportExportModelAdmin, admin.ModelAdmin):
318
339
  "id",
319
340
  ]
320
341
  date_hierarchy = "created_at"
342
+
321
343
  list_filter = [
322
344
  "payment_method",
323
345
  "shipping_method",
324
346
  "store",
325
347
  "status",
348
+ WeekNumberFilter, # Include the filter instance instead of the class name
326
349
  ]
327
350
 
328
351
  def get_queryset(self, request):
@@ -422,9 +445,11 @@ class WalletTransactionAdmin(ImportExportModelAdmin, admin.ModelAdmin):
422
445
  ]
423
446
  search_fields = [
424
447
  "wallet__user__email",
425
- "wallet__user__currency",
448
+ "wallet__currency",
426
449
  ]
427
450
 
451
+ autocomplete_fields = ["wallet"]
452
+
428
453
  def user(self, obj) -> typing.Text:
429
454
  return obj.wallet.user.email
430
455
 
@@ -133,6 +133,8 @@ def initiate_payment(
133
133
  settings.TAP_CREDIT_CARD,
134
134
  settings.TAP_KNET,
135
135
  settings.TAP_ALL,
136
+ settings.MADA,
137
+ settings.BENEFIT,
136
138
  ]
137
139
  if not payment_transaction and source in tap_sources:
138
140
  # TODO: How does this issue occur and is this the best way to handle it?
@@ -82,6 +82,8 @@ class PaymentManager(models.Manager):
82
82
  settings.TAP_ALL,
83
83
  settings.APPLE_PAY,
84
84
  settings.GOOGLE_PAY,
85
+ settings.MADA,
86
+ settings.BENEFIT,
85
87
  ]:
86
88
  source = gateway
87
89
  TapPayment.objects.create(
@@ -0,0 +1,35 @@
1
+ # Generated by Django 3.2.8 on 2024-01-04 14:53
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ("stores", "0102_partner_name_arabic"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.AlterField(
14
+ model_name="paymentmethod",
15
+ name="payment_provider",
16
+ field=models.CharField(
17
+ choices=[
18
+ ("cod", "cash on delivery"),
19
+ ("src_all", "TAP all payment methods"),
20
+ ("src_card", "Tap Credit Card"),
21
+ ("src_kw.knet", "Tap knet"),
22
+ ("paypal", "Paypal"),
23
+ ("stripe", "Stripe"),
24
+ ("wallet", "Wallet"),
25
+ ("gift", "Gift"),
26
+ ("apple_pay", "Apple Pay"),
27
+ ("google_pay", "Google Pay"),
28
+ ("src_sa.mada", "Mada"),
29
+ ("src_bh.benefit", "Benefit"),
30
+ ],
31
+ default="cod",
32
+ max_length=20,
33
+ ),
34
+ ),
35
+ ]
@@ -185,6 +185,8 @@ class Payment(models.Model):
185
185
  settings.TAP_CREDIT_CARD,
186
186
  settings.TAP_KNET,
187
187
  settings.TAP_ALL,
188
+ settings.MADA,
189
+ settings.BENEFIT,
188
190
  ]:
189
191
  payment_url = self.tap_payment.payment_url
190
192
  return payment_url
@@ -82,7 +82,7 @@ class PaymentMethod(models.Model):
82
82
  """
83
83
 
84
84
  payment_provider = models.CharField(
85
- max_length=12,
85
+ max_length=20,
86
86
  choices=settings.PAYMENT_PROVIDER_CHOICES,
87
87
  default="cod",
88
88
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ob-dj-store
3
- Version: 0.0.17.9
3
+ Version: 0.0.18.1
4
4
  Summary: OBytes django application for managing ecommerce stores.
5
5
  Home-page: https://www.obytes.com/
6
6
  Author: OBytes
@@ -175,6 +175,7 @@ ob_dj_store/core/stores/migrations/0099_alter_product_name_arabic.py
175
175
  ob_dj_store/core/stores/migrations/0100_remove_shippingmethod_type_arabic.py
176
176
  ob_dj_store/core/stores/migrations/0101_store_is_digital.py
177
177
  ob_dj_store/core/stores/migrations/0102_partner_name_arabic.py
178
+ ob_dj_store/core/stores/migrations/0103_alter_paymentmethod_payment_provider.py
178
179
  ob_dj_store/core/stores/migrations/__init__.py
179
180
  ob_dj_store/core/stores/models/__init__.py
180
181
  ob_dj_store/core/stores/models/_address.py
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes