ob-dj-store 0.0.20.3__tar.gz → 0.0.20.4__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 (200) hide show
  1. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/PKG-INFO +3 -2
  2. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/stores/rest/serializers/serializers.py +13 -18
  3. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/admin.py +0 -1
  4. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/admin_inlines.py +1 -0
  5. ob_dj_store-0.0.20.4/ob_dj_store/core/stores/migrations/0107_auto_20250425_2059.py +29 -0
  6. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_order.py +2 -1
  7. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_product.py +1 -1
  8. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_store.py +2 -2
  9. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store.egg-info/PKG-INFO +3 -2
  10. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store.egg-info/SOURCES.txt +1 -0
  11. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.github/dependabot.yml +0 -0
  12. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.github/workflows/docs.yml +0 -0
  13. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.github/workflows/pre-release.yml +0 -0
  14. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.github/workflows/release.yml +0 -0
  15. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.github/workflows/test-build.yml +0 -0
  16. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.gitignore +0 -0
  17. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.isort.cfg +0 -0
  18. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/.pre-commit-config.yaml +0 -0
  19. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/Dockerfile +0 -0
  20. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/MANIFEST.in +0 -0
  21. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/Makefile +0 -0
  22. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/Pipfile +0 -0
  23. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/Pipfile.lock +0 -0
  24. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/README.md +0 -0
  25. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/config/__init__.py +0 -0
  26. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/config/settings.py +0 -0
  27. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/config/urls.py +0 -0
  28. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/config/wsgi.py +0 -0
  29. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docker-compose.env +0 -0
  30. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docker-compose.yml +0 -0
  31. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/Makefile +0 -0
  32. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/make.bat +0 -0
  33. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/admin.rst +0 -0
  34. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/conf.py +0 -0
  35. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/index.rst +0 -0
  36. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/installation.rst +0 -0
  37. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/models.rst +0 -0
  38. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/docs/source/rest_endpoints.rst +0 -0
  39. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/fixtures/initial_users.yaml +0 -0
  40. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/fixtures/stores.yaml +0 -0
  41. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/manage.py +0 -0
  42. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/__init__.py +0 -0
  43. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/__init__.py +0 -0
  44. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/stores/__init__.py +0 -0
  45. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/stores/filters.py +0 -0
  46. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/stores/urls.py +0 -0
  47. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/stores/views.py +0 -0
  48. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/tap/__init__.py +0 -0
  49. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/tap/serializers.py +0 -0
  50. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/tap/urls.py +0 -0
  51. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/apis/tap/views.py +0 -0
  52. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/__init__.py +0 -0
  53. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/__init__.py +0 -0
  54. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/apps.py +0 -0
  55. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/__init__.py +0 -0
  56. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/__init__.py +0 -0
  57. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/admin.py +0 -0
  58. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/apps.py +0 -0
  59. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/managers.py +0 -0
  60. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0001_initial.py +0 -0
  61. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0002_auto_20220815_1610.py +0 -0
  62. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0003_auto_20220818_1938.py +0 -0
  63. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0004_tapcustomer.py +0 -0
  64. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0005_alter_tappayment_payment_url.py +0 -0
  65. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0006_alter_tappayment_source.py +0 -0
  66. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/0007_alter_tappayment_source.py +0 -0
  67. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/migrations/__init__.py +0 -0
  68. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/models.py +0 -0
  69. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/gateway/tap/utils.py +0 -0
  70. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/managers.py +0 -0
  71. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0001_initial.py +0 -0
  72. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0002_auto_20220422_0205.py +0 -0
  73. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0003_openinghours.py +0 -0
  74. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0004_auto_20220422_2326.py +0 -0
  75. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0005_auto_20220425_2119.py +0 -0
  76. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0005_auto_20220427_1729.py +0 -0
  77. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0006_auto_20220428_0100.py +0 -0
  78. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0007_cart_cartitem_order_orderitem.py +0 -0
  79. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0008_order_status.py +0 -0
  80. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0009_auto_20220508_2142.py +0 -0
  81. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0010_auto_20220509_1633.py +0 -0
  82. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0011_favorite.py +0 -0
  83. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0012_auto_20220514_0633.py +0 -0
  84. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0013_auto_20220518_1539.py +0 -0
  85. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0014_auto_20220519_0018.py +0 -0
  86. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0015_inventory_inventoryoperations.py +0 -0
  87. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0016_productvariant_preparation_time.py +0 -0
  88. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0017_auto_20220524_0912.py +0 -0
  89. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0018_auto_20220524_1613.py +0 -0
  90. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0019_product_is_featured.py +0 -0
  91. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0020_orderhistory.py +0 -0
  92. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0021_auto_20220531_1849.py +0 -0
  93. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0022_order_pickup_time.py +0 -0
  94. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0023_feedback_feedbackattribute_feedbackconfig.py +0 -0
  95. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0024_auto_20220609_1552.py +0 -0
  96. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0025_productvariant_is_primary.py +0 -0
  97. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0026_auto_20220630_1913.py +0 -0
  98. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0027_auto_20220713_1759.py +0 -0
  99. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0028_phonecontact.py +0 -0
  100. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0029_auto_20220726_1750.py +0 -0
  101. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0030_category_parent.py +0 -0
  102. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0031_auto_20220811_1733.py +0 -0
  103. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0032_auto_20220812_1951.py +0 -0
  104. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0033_auto_20220815_0133.py +0 -0
  105. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0034_auto_20220815_1528.py +0 -0
  106. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0035_auto_20220818_1938.py +0 -0
  107. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0036_productattribute_is_mandatory.py +0 -0
  108. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0037_auto_20220825_1736.py +0 -0
  109. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0038_cartitem_extra_infos.py +0 -0
  110. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0039_auto_20220831_1521.py +0 -0
  111. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0040_auto_20220902_1806.py +0 -0
  112. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0041_auto_20220912_1506.py +0 -0
  113. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0042_wallet_wallettransaction.py +0 -0
  114. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0043_auto_20220919_1854.py +0 -0
  115. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0044_remove_productvariant_has_inventory.py +0 -0
  116. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0045_shippingmethod_type.py +0 -0
  117. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0046_auto_20221014_1720.py +0 -0
  118. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0047_auto_20221018_1433.py +0 -0
  119. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0048_auto_20221026_1933.py +0 -0
  120. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0049_auto_20221029_1524.py +0 -0
  121. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0050_favoriteextra.py +0 -0
  122. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0051_order_car_id.py +0 -0
  123. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0052_auto_20221129_1732.py +0 -0
  124. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0053_inventory_plu.py +0 -0
  125. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0054_auto_20221230_1501.py +0 -0
  126. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0055_store_image.py +0 -0
  127. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0056_auto_20230213_2224.py +0 -0
  128. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0057_auto_20230214_1724.py +0 -0
  129. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0058_attributechoice_is_default.py +0 -0
  130. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0059_auto_20230217_2006.py +0 -0
  131. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0060_alter_orderitem_product_variant.py +0 -0
  132. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0061_auto_20230223_1435.py +0 -0
  133. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0062_auto_20230226_2005.py +0 -0
  134. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0063_alter_store_payment_methods.py +0 -0
  135. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0064_auto_20230228_1814.py +0 -0
  136. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0065_auto_20230228_1932.py +0 -0
  137. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0066_auto_20230304_1532.py +0 -0
  138. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0067_auto_20230309_2014.py +0 -0
  139. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0068_auto_20230309_2251.py +0 -0
  140. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0069_alter_cartitem_options.py +0 -0
  141. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0070_auto_20230323_1628.py +0 -0
  142. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0071_auto_20230328_1825.py +0 -0
  143. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0072_alter_order_extra_infos.py +0 -0
  144. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0073_wallettransaction_is_cashback.py +0 -0
  145. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0074_productvariant_label.py +0 -0
  146. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0075_auto_20230419_0259.py +0 -0
  147. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0076_auto_20230421_1343.py +0 -0
  148. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0077_auto_20230502_2005.py +0 -0
  149. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0078_auto_20230503_1259.py +0 -0
  150. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0079_auto_20230504_1919.py +0 -0
  151. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0080_productvariant_description.py +0 -0
  152. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0081_storeattributechoice.py +0 -0
  153. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0082_auto_20230613_1424.py +0 -0
  154. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0083_productvariant_is_special.py +0 -0
  155. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0084_payment_result.py +0 -0
  156. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0085_auto_20230726_1528.py +0 -0
  157. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0086_wallet_is_active.py +0 -0
  158. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0087_auto_20230828_2138.py +0 -0
  159. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0088_alter_paymentmethod_payment_provider.py +0 -0
  160. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0089_discount_partner_partnerauthinfo_partneremaildomain_partnerotpauth.py +0 -0
  161. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0090_auto_20231006_1356.py +0 -0
  162. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0091_auto_20231010_1740.py +0 -0
  163. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0092_auto_20231012_1339.py +0 -0
  164. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0093_auto_20231017_2033.py +0 -0
  165. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0094_countrypaymentmethod.py +0 -0
  166. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0095_auto_20231101_1531.py +0 -0
  167. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0096_discount_discount_pos_id.py +0 -0
  168. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0097_auto_20231108_1939.py +0 -0
  169. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0098_alter_discount_discount_rate.py +0 -0
  170. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0099_alter_product_name_arabic.py +0 -0
  171. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0100_remove_shippingmethod_type_arabic.py +0 -0
  172. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0101_store_is_digital.py +0 -0
  173. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0102_partner_name_arabic.py +0 -0
  174. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0103_alter_paymentmethod_payment_provider.py +0 -0
  175. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0104_wallettransaction_is_redeemed.py +0 -0
  176. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0105_store_is_open_after_midnight.py +0 -0
  177. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/0106_alter_paymentmethod_payment_provider.py +0 -0
  178. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/migrations/__init__.py +0 -0
  179. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/__init__.py +0 -0
  180. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_address.py +0 -0
  181. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_cart.py +0 -0
  182. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_favorite.py +0 -0
  183. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_feedback.py +0 -0
  184. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_inventory.py +0 -0
  185. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_partner.py +0 -0
  186. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_payment.py +0 -0
  187. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/models/_wallet.py +0 -0
  188. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/receivers.py +0 -0
  189. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/settings_validation.py +0 -0
  190. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/core/stores/utils.py +0 -0
  191. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/utils/__init__.py +0 -0
  192. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/utils/helpers.py +0 -0
  193. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/utils/model.py +0 -0
  194. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store/utils/utils.py +0 -0
  195. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store.egg-info/dependency_links.txt +0 -0
  196. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store.egg-info/requires.txt +0 -0
  197. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/ob_dj_store.egg-info/top_level.txt +0 -0
  198. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/pytest.ini +0 -0
  199. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/setup.cfg +0 -0
  200. {ob_dj_store-0.0.20.3 → ob_dj_store-0.0.20.4}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: ob-dj-store
3
- Version: 0.0.20.3
3
+ Version: 0.0.20.4
4
4
  Summary: OBytes django application for managing ecommerce stores.
5
5
  Home-page: https://www.obytes.com/
6
6
  Author: OBytes
@@ -25,6 +25,7 @@ Requires-Dist: djangorestframework-gis
25
25
  Requires-Dist: django-filter
26
26
  Requires-Dist: django-leaflet
27
27
  Requires-Dist: django-countries
28
+ Dynamic: requires-dist
28
29
 
29
30
  ## OBytes Django Store App
30
31
 
@@ -416,13 +416,9 @@ class OrderSerializer(serializers.ModelSerializer):
416
416
  logger.info(
417
417
  f"The fix for UAE stores timezone failed due to this error {e}"
418
418
  )
419
- if store.is_open_after_midnight:
420
- if to_hour < pickup_time_time < from_hour:
421
- raise serializers.ValidationError(
422
- _("Pickup time must be between store's opening hours")
423
- )
424
- elif (
425
- not op_hour.always_open
419
+ if (
420
+ op_hour.is_open_after_midnight
421
+ and not op_hour.always_open
426
422
  and pickup_time_time > to_hour
427
423
  or pickup_time_time < from_hour
428
424
  ):
@@ -1169,7 +1165,6 @@ class StoreSerializer(ArabicFieldsMixin, FavoriteMixin, serializers.ModelSeriali
1169
1165
  "image",
1170
1166
  "busy_mode",
1171
1167
  "name_arabic",
1172
- "is_open_after_midnight",
1173
1168
  )
1174
1169
  extra_kwargs = {
1175
1170
  "image": {"read_only": True, "required": False},
@@ -1183,16 +1178,16 @@ class StoreSerializer(ArabicFieldsMixin, FavoriteMixin, serializers.ModelSeriali
1183
1178
  if current_op_hour:
1184
1179
  from_hour = current_op_hour.from_hour
1185
1180
  to_hour = current_op_hour.to_hour
1186
- if current_time.tzinfo.zone != "Asia/Dubai":
1187
- if obj.currency == "AED":
1188
- try:
1189
- current_time += timedelta(hours=1)
1190
- except Exception as e:
1191
- logger.info(
1192
- f"The fix for UAE stores timezone failed due to this error {e}"
1193
- )
1194
-
1195
- if obj.is_open_after_midnight:
1181
+ # if current_time.tzinfo.zone != "Asia/Dubai":
1182
+ # if obj.currency == "AED":
1183
+ # try:
1184
+ # current_time += timedelta(hours=1)
1185
+ # except Exception as e:
1186
+ # logger.info(
1187
+ # f"The fix for UAE stores timezone failed due to this error {e}"
1188
+ # )
1189
+
1190
+ if current_op_hour.is_open_after_midnight:
1196
1191
  return True if to_hour < current_time.time() < from_hour else False
1197
1192
 
1198
1193
  if current_op_hour.always_open:
@@ -112,7 +112,6 @@ class StoreAdmin(LeafletGeoAdmin):
112
112
  "pickup_addresses",
113
113
  "image",
114
114
  "currency",
115
- "is_open_after_midnight",
116
115
  )
117
116
  },
118
117
  ),
@@ -13,6 +13,7 @@ class OpeningHoursInlineAdmin(admin.TabularInline):
13
13
  "from_hour",
14
14
  "to_hour",
15
15
  "always_open",
16
+ "is_open_after_midnight",
16
17
  ]
17
18
 
18
19
  def get_queryset(self, request):
@@ -0,0 +1,29 @@
1
+ # Generated by Django 3.2.8 on 2025-04-25 17:59
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ("stores", "0106_alter_paymentmethod_payment_provider"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.RemoveField(model_name="store", name="is_open_after_midnight",),
14
+ migrations.AddField(
15
+ model_name="openinghours",
16
+ name="is_open_after_midnight",
17
+ field=models.BooleanField(default=False),
18
+ ),
19
+ migrations.AddField(
20
+ model_name="order",
21
+ name="offer_id",
22
+ field=models.IntegerField(blank=True, default=None, null=True),
23
+ ),
24
+ migrations.AddField(
25
+ model_name="order",
26
+ name="offer_redeemed",
27
+ field=models.BooleanField(default=False),
28
+ ),
29
+ ]
@@ -90,7 +90,8 @@ class Order(DjangoModelCleanMixin, models.Model):
90
90
  # Pick up can be now or a later hour during the day. If pickup_time is not set,
91
91
  extra_infos = models.JSONField(null=True, blank=True,)
92
92
  init_data = models.JSONField(null=True, blank=True)
93
-
93
+ offer_redeemed = models.BooleanField(default=False)
94
+ offer_id = models.IntegerField(null=True, blank=True, default=None)
94
95
  # TODO: add pick_up_time maybe ?
95
96
  # audit fields
96
97
  created_at = models.DateTimeField(auto_now_add=True)
@@ -141,7 +141,7 @@ class AvailabilityHours(DjangoModelCleanMixin, models.Model):
141
141
  def clean(self) -> None:
142
142
  super().clean()
143
143
  try:
144
- if self.store.is_open_after_midnight:
144
+ if self.store.current_opening_hours.is_open_after_midnight:
145
145
  return
146
146
  except Exception as e:
147
147
  logger.info(f"OpeningHours has no store: {e}")
@@ -179,7 +179,6 @@ class Store(DjangoModelCleanMixin, models.Model):
179
179
  )
180
180
  busy_mode = models.BooleanField(default=False)
181
181
  is_digital = models.BooleanField(default=False)
182
- is_open_after_midnight = models.BooleanField(default=False)
183
182
  created_at = models.DateTimeField(auto_now_add=True)
184
183
  updated_at = models.DateTimeField(auto_now=True)
185
184
 
@@ -238,6 +237,7 @@ class OpeningHours(DjangoModelCleanMixin, models.Model):
238
237
  created_at = models.DateTimeField(auto_now_add=True)
239
238
  updated_at = models.DateTimeField(auto_now=True)
240
239
  always_open = models.BooleanField(default=False)
240
+ is_open_after_midnight = models.BooleanField(default=False)
241
241
 
242
242
  class Meta:
243
243
  ordering = ("weekday", "from_hour")
@@ -252,7 +252,7 @@ class OpeningHours(DjangoModelCleanMixin, models.Model):
252
252
  def clean(self) -> None:
253
253
  super().clean()
254
254
  try:
255
- if self.store.is_open_after_midnight:
255
+ if self.store:
256
256
  return
257
257
  except Exception as e:
258
258
  logger.info(f"OpeningHours has no store: {e}")
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: ob-dj-store
3
- Version: 0.0.20.3
3
+ Version: 0.0.20.4
4
4
  Summary: OBytes django application for managing ecommerce stores.
5
5
  Home-page: https://www.obytes.com/
6
6
  Author: OBytes
@@ -25,6 +25,7 @@ Requires-Dist: djangorestframework-gis
25
25
  Requires-Dist: django-filter
26
26
  Requires-Dist: django-leaflet
27
27
  Requires-Dist: django-countries
28
+ Dynamic: requires-dist
28
29
 
29
30
  ## OBytes Django Store App
30
31
 
@@ -179,6 +179,7 @@ ob_dj_store/core/stores/migrations/0103_alter_paymentmethod_payment_provider.py
179
179
  ob_dj_store/core/stores/migrations/0104_wallettransaction_is_redeemed.py
180
180
  ob_dj_store/core/stores/migrations/0105_store_is_open_after_midnight.py
181
181
  ob_dj_store/core/stores/migrations/0106_alter_paymentmethod_payment_provider.py
182
+ ob_dj_store/core/stores/migrations/0107_auto_20250425_2059.py
182
183
  ob_dj_store/core/stores/migrations/__init__.py
183
184
  ob_dj_store/core/stores/models/__init__.py
184
185
  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