django-forms-workflows 0.37.0__tar.gz → 0.37.2__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_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/CHANGELOG.md +10 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/PKG-INFO +1 -1
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/views.py +35 -15
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/pyproject.toml +1 -1
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/LICENSE +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/README.md +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/admin.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/api_urls.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/api_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/apps.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/conditions.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/context_processors.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/data_sources/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/data_sources/base.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/data_sources/database_source.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/data_sources/ldap_source.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/data_sources/user_source.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/diff_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/email_backends/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/email_backends/gmail_api.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/form_builder_urls.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/form_builder_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/forms.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/api_handler.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/base.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/database_handler.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/email_handler.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/executor.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/file_handler.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/handlers/ldap_handler.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/ldap_backend.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/create_default_templates.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/pull_forms.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/push_forms.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/seed_farm_demo.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/seed_pcn_form.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/seed_prefill_sources.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/sync_ldap_profiles.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/sync_ldap_users.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/management/commands/test_db_connection.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0001_initial.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0002_prefillsource_alter_formfield_prefill_source_and_more.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0003_postsubmissionaction.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0004_formtemplate.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0005_advanced_conditional_logic.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0006_workflowdefinition_visual_workflow_data_and_more.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0007_add_userprofile_ldap_enhancements.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0008_add_file_workflow_models.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0009_add_formfield_readonly.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0010_add_prefillsource_template_fields.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0011_postsubmissionaction_email_body_template_and_more.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0012_add_approval_step_fields.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0013_add_database_query_key.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0014_add_form_category.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0015_add_workflowstage_staged_approvals.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0016_add_pdf_generation.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0017_add_notification_batching.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0018_add_form_category_parent.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0019_add_ldap_group_profile.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0020_add_bulk_export_field.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0021_alter_pendingnotification_scheduled_for_and_more.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0022_add_bulk_pdf_export.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0023_add_performance_indexes.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0024_add_allow_resubmit.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0025_workflowstage_approve_label.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0026_alter_formfield_width.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0027_formsubmission_form_data_gin.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0028_workflowstagegroupconfig.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0029_formfield_workflow_stage_fk_drop_groupconfig.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0030_formfield_phone_type.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0031_sub_workflows.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0032_approved_pending_detached_sub_workflow.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0033_add_reject_parent_to_subworkflowdefinition.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0034_add_notificationlog.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0035_migrate_prefill_source_strings.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0036_add_workflowstage_auto_created.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0037_migrate_flat_workflows_to_staged.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0038_remove_legacy_prefill_source_and_approval_step.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0039_update_help_text.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0040_migrate_deprecated_features.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0041_remove_deprecated_fields.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0042_add_sub_workflow_section_label.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0043_fix_form_data_decimal_encoding.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0044_remove_subworkflowinstance_label.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0045_stageapprovalgroup_workflow_name_label.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0046_workflow_definition_one_to_many.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0047_add_hide_approval_history.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0048_workflowdefinition_trigger_conditions_and_more.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0049_formfield_multifile_type.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0050_workflowdefinition_collapse_parallel_stages.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0051_formdefinition_is_listed.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0052_dynamic_assignee_and_form_field_notifications.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0053_stageformfieldnotification_static_emails.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0054_rename_approved_pending_to_pending_approval.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0055_add_send_back.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0056_calculated_formula_spreadsheet.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0057_add_currency_field_type.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0058_rename_assignee_email_field_add_lookup_type.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0059_add_multiselect_list_field_type.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0060_alter_workflowstage_assignee_lookup_type_helptext.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0061_add_country_us_state_field_types.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0062_add_batch_import_to_formdefinition.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0063_formdefinition_api_enabled_apitoken.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/0064_add_reviewer_groups.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/migrations/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/models.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/signals.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sso_backends.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sso_urls.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sso_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/static/django_forms_workflows/api/swagger-ui-bundle.js +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/static/django_forms_workflows/api/swagger-ui.css +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/static/django_forms_workflows/js/form-builder.js +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/static/django_forms_workflows/js/form-enhancements.js +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/static/django_forms_workflows/js/workflow-builder.js +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sync_api.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sync_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/tasks.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/_sync_diff.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/diff_forms.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/form_builder.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/formdef_change_form.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/formdefinition/change_list.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/sync_import.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/sync_pull.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/sync_push.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/admin/django_forms_workflows/workflow_builder.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/_category_node.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/api/docs.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/approval_inbox.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/approve.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/base.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/batch_import_result.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/completed_approvals.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/form_categories.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/form_list.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/form_submit.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/my_submissions.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/reassign_task.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/resubmit_confirm.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/sso/login.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/sub_workflow_detail.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/submission_bulk_pdf.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/submission_detail.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/submission_pdf.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/django_forms_workflows/withdraw_confirm.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/approval_notification.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/approval_reminder.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/approval_request.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/email_styles.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/escalation_notification.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/notification_digest.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/rejection_notification.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/emails/submission_notification.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templates/registration/login.html +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templatetags/__init__.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/templatetags/forms_workflows_tags.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/urls.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/utils.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/workflow_builder_views.py +0 -0
- {django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/workflow_engine.py +0 -0
|
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.37.2] - 2026-03-26
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
- **Pending approvals now appear in Approval History** — `completed_approvals` and `completed_approvals_ajax` previously only matched `ApprovalTask` rows with status `approved` or `rejected`, so a submission still awaiting action (task status `pending`) was visible on the Pending tab but invisible on the History tab when filtered to "pending approval". The task-status filter now includes `"pending"`, making the two tabs consistent for approvers.
|
|
14
|
+
|
|
15
|
+
## [0.37.1] - 2026-03-26
|
|
16
|
+
|
|
17
|
+
### Fixed
|
|
18
|
+
- **`reviewer_groups` now visible in Approval History** — `completed_approvals` and `completed_approvals_ajax` previously built their base queryset exclusively from `ApprovalTask` records, so reviewer-group members were never shown any submissions (a form with zero approval steps produces no `ApprovalTask` rows). Both views now union the task-based results with all non-draft submissions for forms the user can review, matching the behaviour of My Submissions.
|
|
19
|
+
|
|
10
20
|
## [0.37.0] - 2026-03-26
|
|
11
21
|
|
|
12
22
|
### Added
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/views.py
RENAMED
|
@@ -1483,27 +1483,37 @@ def completed_approvals(request):
|
|
|
1483
1483
|
Accepts an optional ``?category=<slug>`` query parameter and an optional
|
|
1484
1484
|
``?form=<slug>`` query parameter for narrowing the list.
|
|
1485
1485
|
"""
|
|
1486
|
+
_history_statuses = ["approved", "pending_approval", "rejected", "withdrawn"]
|
|
1486
1487
|
if request.user.is_superuser:
|
|
1487
|
-
base_submissions = FormSubmission.objects.filter(
|
|
1488
|
-
status__in=["approved", "pending_approval", "rejected", "withdrawn"]
|
|
1489
|
-
)
|
|
1488
|
+
base_submissions = FormSubmission.objects.filter(status__in=_history_statuses)
|
|
1490
1489
|
else:
|
|
1491
1490
|
user_groups = request.user.groups.all()
|
|
1492
|
-
#
|
|
1493
|
-
#
|
|
1494
|
-
#
|
|
1495
|
-
# Both conditions (assigned + action taken) must apply to the SAME task
|
|
1496
|
-
# row, so we use a single filter() call with compound Q expressions.
|
|
1491
|
+
# Include any submission the user has an ApprovalTask for — pending,
|
|
1492
|
+
# approved, or rejected — so that submissions they can see on the
|
|
1493
|
+
# Pending tab also appear here when filtered to "pending_approval".
|
|
1497
1494
|
completed_task_sub_ids = (
|
|
1498
1495
|
ApprovalTask.objects.filter(
|
|
1499
1496
|
models.Q(assigned_to=request.user)
|
|
1500
1497
|
| models.Q(assigned_group__in=user_groups),
|
|
1501
|
-
status__in=["approved", "rejected"],
|
|
1498
|
+
status__in=["pending", "approved", "rejected"],
|
|
1502
1499
|
)
|
|
1503
1500
|
.values_list("submission_id", flat=True)
|
|
1504
1501
|
.distinct()
|
|
1505
1502
|
)
|
|
1506
|
-
|
|
1503
|
+
# Reviewer-group members see all non-draft submissions for forms they
|
|
1504
|
+
# review, including those with zero approval steps (no ApprovalTasks).
|
|
1505
|
+
reviewer_form_ids = (
|
|
1506
|
+
FormDefinition.objects.filter(reviewer_groups__in=user_groups)
|
|
1507
|
+
.values_list("id", flat=True)
|
|
1508
|
+
.distinct()
|
|
1509
|
+
)
|
|
1510
|
+
base_submissions = FormSubmission.objects.filter(
|
|
1511
|
+
models.Q(id__in=completed_task_sub_ids)
|
|
1512
|
+
| models.Q(
|
|
1513
|
+
form_definition__in=reviewer_form_ids,
|
|
1514
|
+
status__in=_history_statuses,
|
|
1515
|
+
)
|
|
1516
|
+
).distinct()
|
|
1507
1517
|
|
|
1508
1518
|
# --- Category counts (for the filter bar) ---
|
|
1509
1519
|
raw_counts = (
|
|
@@ -2908,22 +2918,32 @@ def completed_approvals_ajax(request):
|
|
|
2908
2918
|
status_filter = params.get("status", "").strip()
|
|
2909
2919
|
|
|
2910
2920
|
# --- Base queryset (mirrors permission logic of completed_approvals view) ---
|
|
2921
|
+
_history_statuses = ["approved", "pending_approval", "rejected", "withdrawn"]
|
|
2911
2922
|
if request.user.is_superuser:
|
|
2912
|
-
qs = FormSubmission.objects.filter(
|
|
2913
|
-
status__in=["approved", "pending_approval", "rejected", "withdrawn"]
|
|
2914
|
-
)
|
|
2923
|
+
qs = FormSubmission.objects.filter(status__in=_history_statuses)
|
|
2915
2924
|
else:
|
|
2916
2925
|
user_groups = request.user.groups.all()
|
|
2917
2926
|
sub_ids = (
|
|
2918
2927
|
ApprovalTask.objects.filter(
|
|
2919
2928
|
models.Q(assigned_to=request.user)
|
|
2920
2929
|
| models.Q(assigned_group__in=user_groups),
|
|
2921
|
-
status__in=["approved", "rejected"],
|
|
2930
|
+
status__in=["pending", "approved", "rejected"],
|
|
2922
2931
|
)
|
|
2923
2932
|
.values_list("submission_id", flat=True)
|
|
2924
2933
|
.distinct()
|
|
2925
2934
|
)
|
|
2926
|
-
|
|
2935
|
+
reviewer_form_ids = (
|
|
2936
|
+
FormDefinition.objects.filter(reviewer_groups__in=user_groups)
|
|
2937
|
+
.values_list("id", flat=True)
|
|
2938
|
+
.distinct()
|
|
2939
|
+
)
|
|
2940
|
+
qs = FormSubmission.objects.filter(
|
|
2941
|
+
models.Q(id__in=sub_ids)
|
|
2942
|
+
| models.Q(
|
|
2943
|
+
form_definition__in=reviewer_form_ids,
|
|
2944
|
+
status__in=_history_statuses,
|
|
2945
|
+
)
|
|
2946
|
+
).distinct()
|
|
2927
2947
|
|
|
2928
2948
|
records_total = qs.count()
|
|
2929
2949
|
|
|
File without changes
|
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/__init__.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/admin.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/api_urls.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/api_views.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/apps.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/conditions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/diff_views.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/forms.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
|
|
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
|
|
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_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/models.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/signals.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sso_urls.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sso_views.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sync_api.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/sync_views.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/tasks.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
|
|
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_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/urls.py
RENAMED
|
File without changes
|
{django_forms_workflows-0.37.0 → django_forms_workflows-0.37.2}/django_forms_workflows/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|