django-pfx 1.4.dev90__tar.gz → 1.4.dev94__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 (184) hide show
  1. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/PKG-INFO +1 -1
  2. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/django_pfx.egg-info/PKG-INFO +1 -1
  3. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +5 -5
  4. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/abstract_pfx_base_user.py +26 -3
  5. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/rest_views.py +15 -2
  6. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/basic_api_test.py +1 -1
  7. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/.gitignore +0 -0
  8. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/.gitlab-ci.yml +0 -0
  9. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/.pre-commit-config.yaml +0 -0
  10. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/LICENSE +0 -0
  11. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/MANIFEST.in +0 -0
  12. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/README.md +0 -0
  13. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/django_pfx.egg-info/SOURCES.txt +0 -0
  14. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/django_pfx.egg-info/dependency_links.txt +0 -0
  15. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/django_pfx.egg-info/requires.txt +0 -0
  16. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/django_pfx.egg-info/top_level.txt +0 -0
  17. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/Makefile +0 -0
  18. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/conf.py +0 -0
  19. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/index.rst +0 -0
  20. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/api.views.rst +0 -0
  21. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/authentication.md +0 -0
  22. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/decorator.md +0 -0
  23. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/generate_openapi.md +0 -0
  24. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/getting_started.md +0 -0
  25. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/internationalisation.md +0 -0
  26. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/model.md +0 -0
  27. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/pfx_views.md +0 -0
  28. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/profiling.md +0 -0
  29. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/settings.md +0 -0
  30. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/doc/source/testing.md +0 -0
  31. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/img/pfx.png +0 -0
  32. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/img/pfx.svg +0 -0
  33. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/make_messages +0 -0
  34. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/manage.py +0 -0
  35. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/__init__.py +0 -0
  36. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/__init__.py +0 -0
  37. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/apidoc/__init__.py +0 -0
  38. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/apidoc/parameters.py +0 -0
  39. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/apidoc/schema.py +0 -0
  40. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/apidoc/tags.py +0 -0
  41. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/apps.py +0 -0
  42. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/decorator/__init__.py +0 -0
  43. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/decorator/rest.py +0 -0
  44. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/default_settings.py +0 -0
  45. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/exceptions.py +0 -0
  46. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/fields.py +0 -0
  47. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/http/__init__.py +0 -0
  48. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/http/json_response.py +0 -0
  49. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
  50. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/management/__init__.py +0 -0
  51. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/management/commands/__init__.py +0 -0
  52. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
  53. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/management/commands/profile.py +0 -0
  54. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/middleware/__init__.py +0 -0
  55. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/middleware/authentication.py +0 -0
  56. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/middleware/locale.py +0 -0
  57. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/middleware/profiling.py +0 -0
  58. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/0001_initial.py +0 -0
  59. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py +0 -0
  60. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/0003_delete_pfxpermissionsuser.py +0 -0
  61. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/__init__.py +0 -0
  62. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/operations/__init__.py +0 -0
  63. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/migrations/operations/permissions.py +0 -0
  64. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/__init__.py +0 -0
  65. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/cache_mixins.py +0 -0
  66. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/login_ban.py +0 -0
  67. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/not_null_fields.py +0 -0
  68. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/ordered_model_mixin.py +0 -0
  69. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/otp_user_mixin.py +0 -0
  70. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/pfx_models.py +0 -0
  71. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/pfx_user.py +0 -0
  72. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
  73. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/serializers/__init__.py +0 -0
  74. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/serializers/json.py +0 -0
  75. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/settings.py +0 -0
  76. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/shortcuts.py +0 -0
  77. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/storage/__init__.py +0 -0
  78. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/storage/s3_storage.py +0 -0
  79. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/otp_code_email.txt +0 -0
  80. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/otp_code_subject.txt +0 -0
  81. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
  82. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
  83. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
  84. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
  85. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/test.py +0 -0
  86. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/urls.py +0 -0
  87. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/__init__.py +0 -0
  88. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/authentication_views.py +0 -0
  89. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/fields.py +0 -0
  90. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/filters_views.py +0 -0
  91. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/locale_views.py +0 -0
  92. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/ordered_rest_view_mixin.py +0 -0
  93. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/__init__.py +0 -0
  94. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/date_format.py +0 -0
  95. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/groups.py +0 -0
  96. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/list_count.py +0 -0
  97. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/list_items.py +0 -0
  98. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
  99. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/list_order.py +0 -0
  100. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/list_search.py +0 -0
  101. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
  102. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
  103. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
  104. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
  105. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset.py +0 -0
  106. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
  107. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
  108. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
  109. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
  110. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
  111. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/settings/__init__.py +0 -0
  112. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pfx/settings/dev.py +0 -0
  113. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/pyproject.toml +0 -0
  114. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/requirements.txt +0 -0
  115. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/serve-doc +0 -0
  116. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/setup.cfg +0 -0
  117. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/setup.py +0 -0
  118. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/__init__.py +0 -0
  119. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/locale/fr/LC_MESSAGES/django.po +0 -0
  120. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/migrations/0001_initial.py +0 -0
  121. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/migrations/__init__.py +0 -0
  122. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/models.py +0 -0
  123. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/__init__.py +0 -0
  124. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/ci.py +0 -0
  125. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/common.py +0 -0
  126. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/dev.py +0 -0
  127. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/dev_custom_example.py +0 -0
  128. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/settings/dev_default.py +0 -0
  129. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/__init__.py +0 -0
  130. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/basic_api_errors.py +0 -0
  131. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_api_doc.py +0 -0
  132. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_api_doc_search.py +0 -0
  133. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_auth_api.py +0 -0
  134. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_body_mixin.py +0 -0
  135. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_cache.py +0 -0
  136. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_client.py +0 -0
  137. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_fields_choices.py +0 -0
  138. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_fields_minutes_duration.py +0 -0
  139. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_filters.py +0 -0
  140. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_locale_api.py +0 -0
  141. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_ordered_rest_view_mixin.py +0 -0
  142. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_perm_tests.py +0 -0
  143. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_permissions.py +0 -0
  144. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_perms_api.py +0 -0
  145. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_post_migrate_groups_update.py +0 -0
  146. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_profiling_middleware.py +0 -0
  147. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_settings.py +0 -0
  148. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_shortcuts.py +0 -0
  149. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_timezone_middleware.py +0 -0
  150. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_tools.py +0 -0
  151. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_user_queryset.py +0 -0
  152. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_view_decorators.py +0 -0
  153. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/tests/test_view_fields.py +0 -0
  154. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/urls.py +0 -0
  155. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests/views.py +0 -0
  156. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/__init__.py +0 -0
  157. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/migrations/0001_initial.py +0 -0
  158. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/migrations/__init__.py +0 -0
  159. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/__init__.py +0 -0
  160. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/ci.py +0 -0
  161. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/common.py +0 -0
  162. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/dev.py +0 -0
  163. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/dev_custom_example.py +0 -0
  164. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/settings/dev_default.py +0 -0
  165. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/tests/__init__.py +0 -0
  166. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/tests/test_api.py +0 -0
  167. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/tests/test_auth_api.py +0 -0
  168. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/urls.py +0 -0
  169. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_base_user/views.py +0 -0
  170. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/__init__.py +0 -0
  171. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/migrations/0001_initial.py +0 -0
  172. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/migrations/__init__.py +0 -0
  173. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/models.py +0 -0
  174. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/__init__.py +0 -0
  175. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/ci.py +0 -0
  176. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/common.py +0 -0
  177. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/dev.py +0 -0
  178. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/dev_custom_example.py +0 -0
  179. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/settings/dev_default.py +0 -0
  180. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/tests/__init__.py +0 -0
  181. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/tests/test_api.py +0 -0
  182. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/tests/test_auth_api.py +0 -0
  183. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/urls.py +0 -0
  184. {django_pfx-1.4.dev90 → django_pfx-1.4.dev94}/tests_custom_user/views.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: django-pfx
3
- Version: 1.4.dev90
3
+ Version: 1.4.dev94
4
4
  Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: django-pfx
3
- Version: 1.4.dev90
3
+ Version: 1.4.dev94
4
4
  Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -7,7 +7,7 @@ msgid ""
7
7
  msgstr ""
8
8
  "Project-Id-Version: \n"
9
9
  "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2025-02-05 08:33+0100\n"
10
+ "POT-Creation-Date: 2025-02-17 15:16+0100\n"
11
11
  "PO-Revision-Date: 2021-06-22 23:31+0200\n"
12
12
  "Last-Translator: \n"
13
13
  "Language-Team: \n"
@@ -59,11 +59,11 @@ msgstr ""
59
59
  "Format non valide, il peut s’agir d’un nombre en heures, « 1:05 », « :05 », "
60
60
  "« 1h 5m », « 1.5h » ou « 30m »."
61
61
 
62
- #: models/abstract_pfx_base_user.py:35
62
+ #: models/abstract_pfx_base_user.py:49
63
63
  msgid "user"
64
64
  msgstr ""
65
65
 
66
- #: models/abstract_pfx_base_user.py:36
66
+ #: models/abstract_pfx_base_user.py:50
67
67
  msgid "users"
68
68
  msgstr ""
69
69
 
@@ -293,11 +293,11 @@ msgstr "{model} {obj} créé."
293
293
  msgid "{model} {obj} updated."
294
294
  msgstr "{model} {obj} modifié."
295
295
 
296
- #: views/rest_views.py:1164
296
+ #: views/rest_views.py:1177
297
297
  #, python-brace-format
298
298
  msgid "{model} {obj} deleted."
299
299
  msgstr "{model} {obj} supprimé."
300
300
 
301
- #: views/rest_views.py:1263 views/rest_views.py:1303
301
+ #: views/rest_views.py:1276 views/rest_views.py:1316
302
302
  msgid "Unexpected storage error"
303
303
  msgstr "Erreur de stockage inattendue"
@@ -1,4 +1,8 @@
1
- from django.contrib.auth.models import AbstractBaseUser, AbstractUser
1
+ from django.contrib.auth.models import (
2
+ AbstractBaseUser,
3
+ AbstractUser,
4
+ PermissionsMixin,
5
+ )
2
6
  from django.utils.translation import gettext_lazy as _
3
7
 
4
8
  from .pfx_models import PFXModelMixin
@@ -10,8 +14,18 @@ class AbstractPFXBaseUser(PFXModelMixin, AbstractBaseUser):
10
14
  class Meta:
11
15
  abstract = True
12
16
 
13
- def auth_json_repr(self):
14
- return self.json_repr()
17
+ def auth_json_repr(self, **kw):
18
+ res = self.json_repr(
19
+ username=self.get_username(),
20
+ is_active=self.is_active,
21
+ **kw)
22
+ email_field = self.get_email_field_name()
23
+ if email_field != self.USERNAME_FIELD and hasattr(self, email_field):
24
+ res['email'] = getattr(self, email_field)
25
+ if isinstance(self, PermissionsMixin):
26
+ res['is_superuser'] = self.is_superuser
27
+ res['permissions'] = list(self.get_all_permissions())
28
+ return res
15
29
 
16
30
  @classmethod
17
31
  def auth_json_repr_schema(cls):
@@ -35,3 +49,12 @@ class AbstractPFXUser(AbstractUser, AbstractPFXBaseUser):
35
49
  verbose_name = _("user")
36
50
  verbose_name_plural = _("users")
37
51
  abstract = True
52
+
53
+ def auth_json_repr(self, **kw):
54
+ res = super().auth_json_repr(
55
+ first_name=self.first_name,
56
+ last_name=self.last_name,
57
+ is_staff=self.is_staff,
58
+ date_joined=self.date_joined,
59
+ **kw)
60
+ return res
@@ -379,12 +379,19 @@ class ModelResponseMixin(ModelMixin):
379
379
  :rtype: :class:`dict`
380
380
  """
381
381
  meta = {}
382
- defaults = {} if self.request.GET.keys() else dict(fields=True)
382
+ defaults = {} if self.request.GET.keys() else dict(
383
+ fields=True, model=True)
383
384
  if get_bool(self.request.GET, 'fields', defaults.get('fields')):
384
385
  meta['fields'] = cache.get_or_set(
385
386
  class_key(self.__class__, 'meta', 'fields'),
386
387
  lambda: {n: f.meta() for n, f in self.get_fields().items()},
387
388
  None)
389
+ if get_bool(self.request.GET, 'model', defaults.get('model')):
390
+ meta['model'] = {
391
+ 'app': self.model._meta.app_label,
392
+ 'name': self.model._meta.model_name,
393
+ 'object': self.model._meta.object_name,
394
+ }
388
395
  return meta
389
396
 
390
397
  @rest_api(
@@ -619,11 +626,17 @@ class ListRestViewMixin(ModelResponseMixin):
619
626
  class_key(self.__class__, 'meta', 'filters'),
620
627
  lambda: [_f.meta for _f in self.filters],
621
628
  None)
622
- if get_bool(self.request.GET, 'orders', default_all):
629
+ if get_bool(self.request.GET, 'orders'):
623
630
  meta['orders'] = cache.get_or_set(
624
631
  class_key(self.__class__, 'meta', 'orders'),
625
632
  lambda: list(self.orderable_fields(self.model)),
626
633
  None)
634
+ if get_bool(self.request.GET, 'model', default_all):
635
+ meta['model'] = {
636
+ 'app': self.model._meta.app_label,
637
+ 'name': self.model._meta.model_name,
638
+ 'object': self.model._meta.object_name,
639
+ }
627
640
  return meta
628
641
 
629
642
  @rest_api("/meta/list", method="get", parameters=[
@@ -291,7 +291,7 @@ class BasicAPITest(TestAssertMixin, TestCase):
291
291
  }
292
292
  ])
293
293
 
294
- response = self.client.get('/api/books/meta/list')
294
+ response = self.client.get('/api/books/meta/list?filters=1&orders=1')
295
295
  self.assertRC(response, 200)
296
296
 
297
297
  self.assertJE(response, 'filters.@0.items.@0', {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes