django-pfx 1.7.6.dev45__tar.gz → 1.7.6.dev47__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.6.dev45 → django_pfx-1.7.6.dev47}/PKG-INFO +1 -1
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/PKG-INFO +1 -1
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/scm_version.json +2 -2
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/models/email.py +1 -1
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/shortcuts.py +9 -5
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_q_mailjet_email_backend.py +12 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_send_email_message.py +15 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/.gitignore +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/.gitlab-ci.yml +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/.pre-commit-config.yaml +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/LICENSE +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/MANIFEST.in +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/README.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/SOURCES.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/dependency_links.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/requires.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/scm_file_list.json +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/django_pfx.egg-info/top_level.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/Makefile +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/conf.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/index.rst +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/api.views.rst +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/authentication.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/decorator.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/generate_openapi.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/getting_started.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/internationalisation.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/model.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/pfx_views.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/profiling.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/settings.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/testing.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/doc/source/user_jobs.md +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/img/pfx.png +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/img/pfx.svg +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/make_messages +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/manage.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/apps.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/email_backend/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/email_backend/memory_email_backend.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/email_backend/q_mailjet_email_backend.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/exceptions.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/mailjet/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/mailjet/mailjet.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/mailjet/message_result.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0002_alter_email_headers.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0003_alter_email_options.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0004_alter_email_mail_from.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0005_lowercase_verbose_names.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0006_alter_email_attachments.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/models/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/providers/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/providers/email_django_q_executor.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/tasks.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/templates/emails/base_template.html +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/templates/emails/base_template.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/templates/emails/base_template_subject.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/test.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/views/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/views/email_rest_view.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/apidoc/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/apidoc/parameters.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/apidoc/schema.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/apidoc/tags.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/apps.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/decorator/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/decorator/rest.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/default_settings.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/exceptions.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/decimal_field.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/media_field.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/minutes_duration_field.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/rich_text_field.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/http/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/http/json_response.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/commands/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/commands/profile.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/authenticator.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/base.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/email.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/legacy.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/mfa/sms.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/authentication.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/locale.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/profiling.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/request_too_big_middleware.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/middleware/ws_cookie_authentication_middleware.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0003_delete_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0004_alter_loginban_failed_counter_and_more.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0005_mfadevice_mfadevice_mfa_device_unique_backend.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0006_alter_pfxuser_managers.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0007_alter_pfxuser_options.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0008_lowercase_verbose_names.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/operations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/operations/permissions.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/abstract_pfx_base_user.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/attachment_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/cache_mixins.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/login_ban.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/mfa_device.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/mfa_user_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/not_null_fields.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/ordered_model_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/pfx_models.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/pfx_user.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/serializers/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/serializers/json.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/settings.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/shortcuts.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/sms/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/sms/backends/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/sms/backends/base.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/sms/backends/console.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/sms/backends/memory.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/storage/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/storage/exceptions.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/storage/local_storage.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/storage/s3_storage.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/otp_code_email.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/otp_code_subject.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/test.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/version_check.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/authentication_views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/fields.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/filters_views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/locale_views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/media_rest_view_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/mfa_authentication_views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/ordered_rest_view_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/date_format.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/groups.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_count.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_items.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_order.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_search.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/rest_views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/xml_test_runner.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/apps.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0002_alter_userjob_options_alter_userjob_auto_queued_and_more.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0003_clean_scheduled_tasks.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0004_userjob_summary_url.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0005_swappable_user_job.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0006_lowercase_verbose_names.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/models/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/models/user_job.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/models/user_job_attachment.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/providers/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/providers/user_job_django_q_executor.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/providers/user_job_websocket_channel_provider.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/tasks.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/views/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/views/user_job_attachment_view.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/views/user_job_view.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/views/user_websocket_consumer.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pyproject.toml +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/requirements.txt +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/serve-doc +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/setup.cfg +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/setup.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/apps.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/channel_group_send_calls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/mfa_urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/models.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/ci.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/common.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/settings/dev_default.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/basic_api_errors.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/basic_api_test.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/mfa_test_utils.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/parallel_scenarios.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_api_doc.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_api_doc_search.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_body_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_cache.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_client.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_email_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_email_model.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_test_tools.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_choices.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_date.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_decimal.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_help_text.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_media_local.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_media_s3.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_minutes_duration.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_one2many.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_rich_text.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_fields_time.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_filters.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_locale_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_mfa_legacy.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_mfa_login_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_mfa_setup_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_ordered_rest_view_mixin.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_perm_tests.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_permissions.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_perms_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_post_migrate_groups_update.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_profiling_middleware.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_settings.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_shortcuts.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_table_file_helpers.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_test_runner.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_timezone_middleware.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_tools.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_user_job_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_user_job_messages.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_user_job_model.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_user_queryset.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_user_websocket.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_verbose_names.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_version_check.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_view_decorators.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_view_fields.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_ws_cookie_middleware.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/ci.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/common.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/tests/test_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_base_user/views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/models.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/ci.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/common.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/tests/test_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user/views.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/migrations/0002_lowercase_verbose_names.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/models.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/providers.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/scope.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/ci.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/common.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/settings/dev_default.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/tests/test_user_job.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_custom_user_job/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/migrations/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/models.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/ci.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/common.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/dev.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/settings/dev_default.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/tests/__init__.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/tests/test_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/urls.py +0 -0
- {django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests_user_email_login/views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-pfx
|
|
3
|
-
Version: 1.7.6.
|
|
3
|
+
Version: 1.7.6.dev47
|
|
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.6.
|
|
3
|
+
Version: 1.7.6.dev47
|
|
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
|
|
@@ -54,7 +54,7 @@ def default_base_template_context():
|
|
|
54
54
|
def send_email_message(
|
|
55
55
|
to, template, data=None, from_email=None, attachments=None,
|
|
56
56
|
attachment_file_name=None, reply_to=None, headers=None,
|
|
57
|
-
post_process_html=None, post_process_txt=None):
|
|
57
|
+
post_process_html=None, post_process_txt=None, cc=None, bcc=None):
|
|
58
58
|
base_template_factory = import_string(getattr(
|
|
59
59
|
settings, 'PFX_EMAILS_BASE_TEMPLATE_FACTORY',
|
|
60
60
|
'pfx.emails.shortcuts.default_base_template_context'))
|
|
@@ -73,10 +73,12 @@ def send_email_message(
|
|
|
73
73
|
return obj.email() if callable(obj.email) else obj.email
|
|
74
74
|
raise RuntimeError(f"Invalid recipient: {obj}")
|
|
75
75
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
def get_emails(objs):
|
|
77
|
+
if isinstance(objs, (list, set, tuple)):
|
|
78
|
+
return [get_email(o) for o in objs]
|
|
79
|
+
return [get_email(objs)]
|
|
80
|
+
|
|
81
|
+
to_email = get_emails(to)
|
|
80
82
|
|
|
81
83
|
base_prefix = getattr(settings, 'PFX_EMAIL_BASE_PREFIX', 'base_template')
|
|
82
84
|
|
|
@@ -99,6 +101,8 @@ def send_email_message(
|
|
|
99
101
|
body=text_body,
|
|
100
102
|
from_email=from_email or default_mail_from_rfc(),
|
|
101
103
|
to=to_email,
|
|
104
|
+
cc=cc and get_emails(cc),
|
|
105
|
+
bcc=bcc and get_emails(bcc),
|
|
102
106
|
reply_to=reply_to,
|
|
103
107
|
headers=headers or {}
|
|
104
108
|
)
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_q_mailjet_email_backend.py
RENAMED
|
@@ -159,6 +159,18 @@ class TestEmailsQMailjetEmailBackend(TestAssertMixin, TestCase):
|
|
|
159
159
|
self.assertEqual(
|
|
160
160
|
mail.headers["Reply-To"], 'default.reply.to@example.com')
|
|
161
161
|
|
|
162
|
+
def test_send_email_message_cc_bcc(self):
|
|
163
|
+
from django.core.mail import EmailMessage
|
|
164
|
+
email = EmailMessage(
|
|
165
|
+
subject='This is a test email', body='This is the mail content.',
|
|
166
|
+
from_email='from@example.com', to=['to@example.com'],
|
|
167
|
+
cc=['"John Doe" <cc@example.com>'], bcc=['bcc@example.com'])
|
|
168
|
+
email.send()
|
|
169
|
+
mail = Email.objects.get(subject='This is a test email')
|
|
170
|
+
self.assertEqual(
|
|
171
|
+
mail.mail_cc, [{'Name': 'John Doe', 'Email': 'cc@example.com'}])
|
|
172
|
+
self.assertEqual(mail.mail_bcc, [{'Email': 'bcc@example.com'}])
|
|
173
|
+
|
|
162
174
|
def test_send_email_message_reply_to(self):
|
|
163
175
|
from django.core.mail import EmailMessage
|
|
164
176
|
data = {
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/tests/tests/test_emails_send_email_message.py
RENAMED
|
@@ -52,6 +52,21 @@ class TestEmailsSendEmailMessage(TestAssertMixin, TestCase):
|
|
|
52
52
|
self.assertEqual(mail.outbox[0].attachments, [
|
|
53
53
|
('test.txt', 'A test file content.', 'text/plain')])
|
|
54
54
|
|
|
55
|
+
def test_send_email_message_cc_bcc(self):
|
|
56
|
+
"""Copies take the same formats as the recipients."""
|
|
57
|
+
user = User.objects.create_user(
|
|
58
|
+
username='jdoe', email='jdoe@example.org',
|
|
59
|
+
first_name='John', last_name='Doe')
|
|
60
|
+
send_email_message(
|
|
61
|
+
'test@example.org', 'base_template',
|
|
62
|
+
data={'subject': "Test message"},
|
|
63
|
+
cc=user, bcc=['bcc1@example.org', 'bcc2@example.org'])
|
|
64
|
+
|
|
65
|
+
m = mail.outbox[0]
|
|
66
|
+
self.assertEqual(m.to, ['test@example.org'])
|
|
67
|
+
self.assertEqual(m.cc, [user.get_email_rfc()])
|
|
68
|
+
self.assertEqual(m.bcc, ['bcc1@example.org', 'bcc2@example.org'])
|
|
69
|
+
|
|
55
70
|
def test_send_email_message_in_memory_attachment(self):
|
|
56
71
|
att = "test.txt", b"A test file content.", "text/plain"
|
|
57
72
|
|
|
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.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/email_backend/memory_email_backend.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/locale/fr/LC_MESSAGES/django.mo
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/locale/fr/LC_MESSAGES/django.po
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0002_alter_email_headers.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/migrations/0003_alter_email_options.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.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/providers/email_django_q_executor.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/emails/templates/emails/base_template.html
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/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
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/fields/minutes_duration_field.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/commands/__init__.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/management/commands/makeapidoc.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/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
|
|
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.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.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
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/operations/__init__.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/migrations/operations/permissions.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/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
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/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
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/media_rest_view_mixin.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/mfa_authentication_views.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/ordered_rest_view_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/date_format.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_count.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_items.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_order.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/list_search.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/media_redirect.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_fields.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_filters.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/meta_orders.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_limit.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_offset.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_page.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/pfxcore/views/parameters/subset_page_size.py
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/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
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/locale/fr/LC_MESSAGES/django.mo
RENAMED
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/locale/fr/LC_MESSAGES/django.po
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.6.dev45 → django_pfx-1.7.6.dev47}/pfx/userjobs/migrations/0005_swappable_user_job.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|