django-pfx 1.7.3.dev12__tar.gz → 1.7.3.dev14__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.
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/PKG-INFO +1 -1
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/django_pfx.egg-info/PKG-INFO +1 -1
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/django_pfx.egg-info/SOURCES.txt +2 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/middleware/__init__.py +3 -0
- django_pfx-1.7.3.dev14/pfx/pfxcore/middleware/ws_cookie_authentication_middleware.py +45 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/__init__.py +1 -0
- django_pfx-1.7.3.dev14/tests/tests/test_user_websocket.py +79 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/.gitignore +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/.gitlab-ci.yml +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/.pre-commit-config.yaml +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/LICENSE +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/MANIFEST.in +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/README.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/django_pfx.egg-info/dependency_links.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/django_pfx.egg-info/requires.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/django_pfx.egg-info/top_level.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/Makefile +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/conf.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/index.rst +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/api.views.rst +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/authentication.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/decorator.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/generate_openapi.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/getting_started.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/internationalisation.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/model.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/pfx_views.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/profiling.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/settings.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/doc/source/testing.md +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/img/pfx.png +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/img/pfx.svg +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/make_messages +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/manage.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/apps.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/email_backend/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/email_backend/q_mailjet_email_backend.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/exceptions.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/mailjet/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/mailjet/mailjet.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/mailjet/message_result.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/0002_alter_email_headers.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/0003_alter_email_options.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/models/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/models/email.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/providers/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/providers/email_django_q_executor.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/shortcuts.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/tasks.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/templates/emails/base_template.html +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/templates/emails/base_template.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/templates/emails/base_template_subject.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/views/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/views/email_rest_view.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/apidoc/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/apidoc/parameters.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/apidoc/schema.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/apidoc/tags.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/apps.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/decorator/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/decorator/rest.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/default_settings.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/exceptions.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/decimal_field.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/media_field.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/minutes_duration_field.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/rich_text_field.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/http/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/http/json_response.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/profile.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/middleware/authentication.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/middleware/locale.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/middleware/profiling.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/middleware/request_too_big_middleware.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/0003_delete_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/0004_alter_loginban_failed_counter_and_more.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/operations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/operations/permissions.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/abstract_pfx_base_user.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/attachment_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/cache_mixins.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/login_ban.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/mfa_user_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/not_null_fields.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/ordered_model_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/pfx_models.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/pfx_user.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/serializers/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/serializers/json.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/settings.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/shortcuts.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/sms/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/sms/backends/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/sms/backends/base.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/sms/backends/console.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/storage/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/storage/exceptions.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/storage/local_storage.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/storage/s3_storage.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/otp_code_email.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/otp_code_subject.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/test.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/authentication_views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/fields.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/filters_views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/locale_views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/media_rest_view_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/ordered_rest_view_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/date_format.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/groups.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_count.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_items.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_order.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_search.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/rest_views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/settings/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/settings/dev.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/apps.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/migrations/0002_alter_userjob_options_alter_userjob_auto_queued_and_more.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/models/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/models/user_job.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/models/user_job_attachment.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/providers/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/providers/user_job_django_q_executor.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/providers/user_job_websocket_channel_provider.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/tasks.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/views/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/views/user_job_attachment_view.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/views/user_job_view.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/views/user_websocket_consumer.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pyproject.toml +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/requirements.txt +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/serve-doc +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/setup.cfg +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/setup.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/apps.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/channel_group_send_calls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0002_alter_book_cover.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0003_book_local_file.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0004_mfausermixin_fields.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0005_mfausermixin_fields_fix.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0006_rename_otp_enabled_user_mfa_authenticator_enabled_and_more.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/0007_attachment.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/models.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/ci.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/common.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/dev.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/settings/dev_default.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/basic_api_errors.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/basic_api_test.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_api_doc.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_api_doc_search.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_body_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_cache.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_client.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_emails_email_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_emails_email_model.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_emails_q_mailjet_email_backend.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_emails_send_email_message.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_choices.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_date.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_decimal.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_minutes_duration.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_one2many.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_rich_text.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_fields_time.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_filters.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_locale_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_ordered_rest_view_mixin.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_perm_tests.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_permissions.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_perms_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_post_migrate_groups_update.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_profiling_middleware.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_settings.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_shortcuts.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_timezone_middleware.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_tools.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_user_job_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_user_job_messages.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_user_job_model.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_user_queryset.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_view_decorators.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/tests/test_view_fields.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests/views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/ci.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/common.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/dev.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/tests/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/tests/test_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_base_user/views.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/models.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/ci.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/common.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/dev.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/tests/__init__.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/tests/test_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/urls.py +0 -0
- {django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/tests_custom_user/views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-pfx
|
|
3
|
-
Version: 1.7.3.
|
|
3
|
+
Version: 1.7.3.dev14
|
|
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.4
|
|
2
2
|
Name: django-pfx
|
|
3
|
-
Version: 1.7.3.
|
|
3
|
+
Version: 1.7.3.dev14
|
|
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
|
|
@@ -89,6 +89,7 @@ pfx/pfxcore/middleware/authentication.py
|
|
|
89
89
|
pfx/pfxcore/middleware/locale.py
|
|
90
90
|
pfx/pfxcore/middleware/profiling.py
|
|
91
91
|
pfx/pfxcore/middleware/request_too_big_middleware.py
|
|
92
|
+
pfx/pfxcore/middleware/ws_cookie_authentication_middleware.py
|
|
92
93
|
pfx/pfxcore/migrations/0001_initial.py
|
|
93
94
|
pfx/pfxcore/migrations/0002_pfxpermissionsuser.py
|
|
94
95
|
pfx/pfxcore/migrations/0003_delete_pfxpermissionsuser.py
|
|
@@ -227,6 +228,7 @@ tests/tests/test_user_job_api.py
|
|
|
227
228
|
tests/tests/test_user_job_messages.py
|
|
228
229
|
tests/tests/test_user_job_model.py
|
|
229
230
|
tests/tests/test_user_queryset.py
|
|
231
|
+
tests/tests/test_user_websocket.py
|
|
230
232
|
tests/tests/test_view_decorators.py
|
|
231
233
|
tests/tests/test_view_fields.py
|
|
232
234
|
tests_base_user/__init__.py
|
|
@@ -5,3 +5,6 @@ from .authentication import (
|
|
|
5
5
|
from .locale import LocaleMiddleware
|
|
6
6
|
from .profiling import ProfilingDatabaseRouter, ProfilingMiddleware
|
|
7
7
|
from .request_too_big_middleware import RequestTooBigMiddleware
|
|
8
|
+
from .ws_cookie_authentication_middleware import (
|
|
9
|
+
WSCookieAuthenticationMiddleware,
|
|
10
|
+
)
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
|
|
3
|
+
from django.contrib.auth import get_user_model
|
|
4
|
+
from django.contrib.auth.models import AnonymousUser
|
|
5
|
+
from django.http import parse_cookie
|
|
6
|
+
|
|
7
|
+
from channels.db import database_sync_to_async
|
|
8
|
+
from channels.middleware import BaseMiddleware
|
|
9
|
+
|
|
10
|
+
from pfx.pfxcore.exceptions import APIError
|
|
11
|
+
from pfx.pfxcore.http import JsonResponse
|
|
12
|
+
from pfx.pfxcore.middleware.authentication import JWTTokenDecodeMixin
|
|
13
|
+
|
|
14
|
+
logger = logging.getLogger(__name__)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class WSCookieAuthenticationMiddleware(JWTTokenDecodeMixin, BaseMiddleware):
|
|
18
|
+
async def __call__(self, scope, receive, send):
|
|
19
|
+
scope = dict(scope)
|
|
20
|
+
if "headers" not in scope:
|
|
21
|
+
raise ValueError("No headers")
|
|
22
|
+
# Go through headers to find the cookie one
|
|
23
|
+
for name, value in scope.get("headers", []):
|
|
24
|
+
if name == b"cookie":
|
|
25
|
+
cookies = parse_cookie(value.decode("utf-8"))
|
|
26
|
+
break
|
|
27
|
+
else:
|
|
28
|
+
# No cookie header found - add an empty default.
|
|
29
|
+
cookies = {}
|
|
30
|
+
# Return inner application
|
|
31
|
+
key = cookies.get('token')
|
|
32
|
+
if key:
|
|
33
|
+
try:
|
|
34
|
+
user, __, __ = await database_sync_to_async(
|
|
35
|
+
self.decode_jwt)(key)
|
|
36
|
+
except get_user_model().DoesNotExist:
|
|
37
|
+
return JsonResponse(
|
|
38
|
+
{'message': 'Authentication error'}, status=401)
|
|
39
|
+
except APIError as e:
|
|
40
|
+
return e.response
|
|
41
|
+
elif not scope.get('user'):
|
|
42
|
+
user = AnonymousUser()
|
|
43
|
+
|
|
44
|
+
scope['user'] = user
|
|
45
|
+
return await super().__call__(scope, receive, send)
|
|
@@ -33,5 +33,6 @@ from .test_user_job_api import TestUserJobApi
|
|
|
33
33
|
from .test_user_job_messages import TestUserJobMessages
|
|
34
34
|
from .test_user_job_model import TestUserJobModel
|
|
35
35
|
from .test_user_queryset import TestUserQuerySet
|
|
36
|
+
from .test_user_websocket import TestUserWebsocket
|
|
36
37
|
from .test_view_decorators import ViewDecoratorTest
|
|
37
38
|
from .test_view_fields import ViewFieldTest
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import json
|
|
2
|
+
import logging
|
|
3
|
+
|
|
4
|
+
from django.test import TransactionTestCase
|
|
5
|
+
|
|
6
|
+
from asgiref.sync import sync_to_async
|
|
7
|
+
from channels.routing import URLRouter
|
|
8
|
+
from channels.testing import WebsocketCommunicator
|
|
9
|
+
|
|
10
|
+
from pfx.pfxcore.middleware import WSCookieAuthenticationMiddleware
|
|
11
|
+
from pfx.pfxcore.test import APIClient, TestAssertMixin
|
|
12
|
+
from pfx.userjobs.urls import websocket_urlpatterns
|
|
13
|
+
from tests.models import User
|
|
14
|
+
|
|
15
|
+
logger = logging.getLogger(__name__)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def WebsocketMiddlewareStack(inner):
|
|
19
|
+
return WSCookieAuthenticationMiddleware(inner)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class TestUserWebsocket(TestAssertMixin, TransactionTestCase):
|
|
23
|
+
async def asyncSetUp(self):
|
|
24
|
+
"""Ensure parent setUp is called for async tests"""
|
|
25
|
+
await sync_to_async(super().setUp)()
|
|
26
|
+
|
|
27
|
+
async def async_setup(self):
|
|
28
|
+
@sync_to_async
|
|
29
|
+
def setup_all():
|
|
30
|
+
User.objects.create_user(
|
|
31
|
+
username='user',
|
|
32
|
+
email="user@example.com",
|
|
33
|
+
password='test',
|
|
34
|
+
first_name="Test",
|
|
35
|
+
last_name="User",
|
|
36
|
+
is_superuser=False)
|
|
37
|
+
client = APIClient(with_cookie=True, default_locale='en')
|
|
38
|
+
client.login(username='user')
|
|
39
|
+
return client
|
|
40
|
+
return await setup_all()
|
|
41
|
+
|
|
42
|
+
@staticmethod
|
|
43
|
+
def get_websocket_communicator(headers=[]):
|
|
44
|
+
headers.append((b"host", b"localhost:8000"))
|
|
45
|
+
return WebsocketCommunicator(
|
|
46
|
+
WebsocketMiddlewareStack(URLRouter(websocket_urlpatterns)),
|
|
47
|
+
'ws/user', headers)
|
|
48
|
+
|
|
49
|
+
async def test_websocket(self):
|
|
50
|
+
client = await self.async_setup()
|
|
51
|
+
headers = [(
|
|
52
|
+
b'cookie',
|
|
53
|
+
client.cookies.output(header='', sep='; ').encode())]
|
|
54
|
+
|
|
55
|
+
communicator = self.get_websocket_communicator(headers)
|
|
56
|
+
connected, sub_protocol = await communicator.connect()
|
|
57
|
+
self.assertTrue(connected)
|
|
58
|
+
# Test sending message
|
|
59
|
+
await communicator.send_json_to(
|
|
60
|
+
dict(type='send_event',
|
|
61
|
+
message='123 updated')
|
|
62
|
+
)
|
|
63
|
+
response = await communicator.receive_from()
|
|
64
|
+
res = json.loads(response)
|
|
65
|
+
self.assertEqual(
|
|
66
|
+
res['message'], '123 updated')
|
|
67
|
+
|
|
68
|
+
# Close
|
|
69
|
+
await communicator.disconnect()
|
|
70
|
+
|
|
71
|
+
async def test_anonymous(self):
|
|
72
|
+
await self.async_setup()
|
|
73
|
+
headers = []
|
|
74
|
+
|
|
75
|
+
communicator = self.get_websocket_communicator(headers)
|
|
76
|
+
connected, sub_protocol = await communicator.connect()
|
|
77
|
+
|
|
78
|
+
self.assertFalse(connected)
|
|
79
|
+
self.assertEqual(sub_protocol, 4001)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/0002_alter_email_headers.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/migrations/0003_alter_email_options.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/providers/email_django_q_executor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/templates/emails/base_template.html
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/emails/templates/emails/base_template.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/fields/minutes_duration_field.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/__init__.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/makeapidoc.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/management/commands/profile.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/operations/__init__.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/migrations/operations/permissions.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/abstract_pfx_base_user.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/models/user_filtered_queryset_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/media_rest_view_mixin.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/ordered_rest_view_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/date_format.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_count.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_items.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_order.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/list_search.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/media_redirect.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_fields.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_filters.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/meta_orders.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_limit.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_offset.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page_size.py
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/pfxcore/views/parameters/subset_page_subset.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/locale/fr/LC_MESSAGES/django.mo
RENAMED
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/locale/fr/LC_MESSAGES/django.po
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/models/user_job_attachment.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.3.dev12 → django_pfx-1.7.3.dev14}/pfx/userjobs/views/user_job_attachment_view.py
RENAMED
|
File without changes
|
|
File without changes
|