diff --git a/hypha/apply/activity/templates/messages/email/ready_for_contracting.html b/hypha/apply/activity/templates/messages/email/ready_for_contracting.html index 7045777fbd0c47e32ccd3e30034b19603ec6eb78..1627d56cc4fe9fa9007888879b1fc487439b3186 100644 --- a/hypha/apply/activity/templates/messages/email/ready_for_contracting.html +++ b/hypha/apply/activity/templates/messages/email/ready_for_contracting.html @@ -8,7 +8,7 @@ {% trans "Title" %}: {{ source.title }} {% trans "Link" %}: {{ request.scheme }}://{{ request.get_host }}{% url 'apply:projects:detail' pk=source.pk %} -{% trans "Project Approval Form" %}: {{ request.scheme }}://{{ request.get_host }}{% url 'apply:projects:approval' pk=source.pk %} +{% trans "Project Form" %}: {{ request.scheme }}://{{ request.get_host }}{% url 'apply:projects:approval' pk=source.pk %} {% trans "Original Submission" %}: {{ request.scheme }}://{{ request.get_host }}{% url 'apply:submissions:simplified' pk=source.submission.pk %} {% blocktrans with lead=source.lead email=source.lead.email %}Please contact {{ lead }} - {{ email }} if you have any questions.{% endblocktrans %} diff --git a/hypha/apply/funds/admin_forms.py b/hypha/apply/funds/admin_forms.py index 807b1c82164a70b8555a0c8c780c6ea397e31be0..f52e3317200540be2748ed5a2cd9d3574e8a608d 100644 --- a/hypha/apply/funds/admin_forms.py +++ b/hypha/apply/funds/admin_forms.py @@ -103,7 +103,7 @@ class WorkflowFormAdminForm(WagtailAdminPageForm): if forms.is_valid(): valid_forms = [form for form in forms if not form.cleaned_data["DELETE"]] if settings.PROJECTS_ENABLED and not valid_forms: - self.add_error(None, _("Please provide Project Approval Form.")) + self.add_error(None, _("Please provide Project Form.")) class RoundBasePageAdminForm(WagtailAdminPageForm): diff --git a/hypha/apply/funds/migrations/0119_rename_applicationbaseprojectapprovalform_applicationbaseprojectform_and_more.py b/hypha/apply/funds/migrations/0119_rename_applicationbaseprojectapprovalform_applicationbaseprojectform_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..9333fe117ce5d6f90c6a898a484d3aff645cfd32 --- /dev/null +++ b/hypha/apply/funds/migrations/0119_rename_applicationbaseprojectapprovalform_applicationbaseprojectform_and_more.py @@ -0,0 +1,24 @@ +# Generated by Django 4.2.11 on 2024-05-07 11:43 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ( + "application_projects", + "0083_rename_projectapprovalform_projectform_and_more", + ), + ("funds", "0118_labbaseprojectreportform_and_more"), + ] + + operations = [ + migrations.RenameModel( + old_name="ApplicationBaseProjectApprovalForm", + new_name="ApplicationBaseProjectForm", + ), + migrations.RenameModel( + old_name="LabBaseProjectApprovalForm", + new_name="LabBaseProjectForm", + ), + ] diff --git a/hypha/apply/funds/models/forms.py b/hypha/apply/funds/models/forms.py index 92a5f9e7f35f8fd6f3b19373033fd94afa390423..a0d8c36b5b1b367bdb373a5b596f0046d1d2bd38 100644 --- a/hypha/apply/funds/models/forms.py +++ b/hypha/apply/funds/models/forms.py @@ -191,12 +191,12 @@ class LabBaseDeterminationForm(AbstractRelatedDeterminationForm): lab = ParentalKey("LabBase", related_name="determination_forms") -class AbstractRelatedProjectApprovalForm(Orderable): +class AbstractRelatedProjectForm(Orderable): class Meta(Orderable.Meta): abstract = True form = models.ForeignKey( - "application_projects.ProjectApprovalForm", on_delete=models.PROTECT + "application_projects.ProjectForm", on_delete=models.PROTECT ) @property @@ -255,7 +255,7 @@ class AbstractRelatedProjectSOWForm(Orderable): return self.form.name -class ApplicationBaseProjectApprovalForm(AbstractRelatedProjectApprovalForm): +class ApplicationBaseProjectForm(AbstractRelatedProjectForm): application = ParentalKey("ApplicationBase", related_name="approval_forms") @@ -263,7 +263,7 @@ class ApplicationBaseProjectSOWForm(AbstractRelatedProjectSOWForm): application = ParentalKey("ApplicationBase", related_name="sow_forms") -class LabBaseProjectApprovalForm(AbstractRelatedProjectApprovalForm): +class LabBaseProjectForm(AbstractRelatedProjectForm): lab = ParentalKey("LabBase", related_name="approval_forms") diff --git a/hypha/apply/funds/models/utils.py b/hypha/apply/funds/models/utils.py index ac643869c7febe2254c0bac61136c5121f4ae8e3..66f577d3012d81bd045e6bc2e165e158eb2cc799 100644 --- a/hypha/apply/funds/models/utils.py +++ b/hypha/apply/funds/models/utils.py @@ -149,7 +149,7 @@ class WorkflowStreamForm(WorkflowHelpers, AbstractStreamForm): # type: ignore if settings.PROJECTS_ENABLED: content_panels += [ - InlinePanel("approval_forms", label=_("Project Approval Form"), max_num=1), + InlinePanel("approval_forms", label=_("Project Form"), max_num=1), InlinePanel("sow_forms", label=_("Project SOW Form"), max_num=1), # The models technically allow for multiple Report forms but to start we permit only one in the UIs. InlinePanel("report_forms", label=_("Project Report Form"), max_num=1), diff --git a/hypha/apply/funds/templates/funds/includes/create_project_form.html b/hypha/apply/funds/templates/funds/includes/create_project_form.html index 3153da4fba8cfc9379444be01f06b06ae08637f1..bf38180fea9a0d918df13996659a051060515f77 100644 --- a/hypha/apply/funds/templates/funds/includes/create_project_form.html +++ b/hypha/apply/funds/templates/funds/includes/create_project_form.html @@ -5,5 +5,5 @@ <p>{% trans "A lead is required to create a project, select the lead below." %}</p> {% trans "Confirm" as confirm %} - {% include 'funds/includes/delegated_form_base.html' with form=project_form value=confirm %} + {% include 'funds/includes/delegated_form_base.html' with form=project_create_form value=confirm %} </div> diff --git a/hypha/apply/funds/tests/test_admin_form.py b/hypha/apply/funds/tests/test_admin_form.py index f484492c777dd9ea9052ab8cd00af550d8913fce..d3fd198cd7138de7987c4b4b10a0e2b1e7f3b8cb 100644 --- a/hypha/apply/funds/tests/test_admin_form.py +++ b/hypha/apply/funds/tests/test_admin_form.py @@ -4,7 +4,7 @@ from django.test import TestCase, override_settings from hypha.apply.determinations.tests.factories import DeterminationFormFactory from hypha.apply.funds.models import FundType from hypha.apply.projects.tests.factories import ( - ProjectApprovalFormFactory, + ProjectFormFactory, ProjectReportFormFactory, ProjectSOWFormFactory, ) @@ -94,7 +94,7 @@ def form_data( num_project_approval_form, False, same=same_forms, - factory=ProjectApprovalFormFactory, + factory=ProjectFormFactory, ) project_sow_form_data = formset_base( "sow_forms", diff --git a/hypha/apply/funds/tests/test_views.py b/hypha/apply/funds/tests/test_views.py index d5ac5d778d4782d8782dd4a72063cb325e7c4117..a97caa68cbd5ad8753d75296325fb2a00b1d4670 100644 --- a/hypha/apply/funds/tests/test_views.py +++ b/hypha/apply/funds/tests/test_views.py @@ -272,7 +272,7 @@ class TestStaffSubmissionView(BaseSubmissionViewTestCase): self.post_page( self.submission, { - "form-submitted-project_form": "", + "form-submitted-project_create_form": "", "project_lead": self.user.id, "submission": self.submission.id, }, diff --git a/hypha/apply/funds/views.py b/hypha/apply/funds/views.py index 3bb6fa42a00d39e4a7e6ce3f50174fc967f956ab..429e7cfe7afd3abed4487c20acc6a48e64a549c4 100644 --- a/hypha/apply/funds/views.py +++ b/hypha/apply/funds/views.py @@ -57,7 +57,7 @@ from hypha.apply.determinations.views import ( BatchDeterminationCreateView, DeterminationCreateOrUpdateView, ) -from hypha.apply.projects.forms import CreateProjectForm +from hypha.apply.projects.forms import ProjectCreateForm from hypha.apply.projects.models import Project from hypha.apply.review.models import Review from hypha.apply.stream_forms.blocks import GroupToggleBlock @@ -777,8 +777,8 @@ class ProgressSubmissionView(DelegatedViewMixin, UpdateView): @method_decorator(staff_required, name="dispatch") class CreateProjectView(DelegatedViewMixin, CreateView): - context_name = "project_form" - form_class = CreateProjectForm + context_name = "project_create_form" + form_class = ProjectCreateForm model = Project def dispatch(self, request, *args, **kwargs): diff --git a/hypha/apply/projects/admin.py b/hypha/apply/projects/admin.py index 0a46204ae3ba456ff28ca12d1ab5847eb5ee3935..76b26d16b3265bb90d8ad31731e52a7dbd71431a 100644 --- a/hypha/apply/projects/admin.py +++ b/hypha/apply/projects/admin.py @@ -4,17 +4,17 @@ from hypha.apply.utils.admin import ListRelatedMixin from hypha.core.wagtail.admin import SettingModelAdmin from .admin_views import ( - CreateProjectApprovalFormView, + CreateProjectFormView, CreateProjectReportFormView, CreateProjectSOWFormView, - EditProjectApprovalFormView, + EditProjectFormView, EditProjectReportFormView, EditProjectSOWFormView, ) from .models import ( ContractDocumentCategory, DocumentCategory, - ProjectApprovalForm, + ProjectForm, ProjectReportForm, ProjectSettings, ProjectSOWForm, @@ -40,20 +40,20 @@ class ContractDocumentCategoryAdmin(ModelAdmin): ) -class ProjectApprovalFormAdmin(ListRelatedMixin, ModelAdmin): - model = ProjectApprovalForm - menu_label = "Approval Forms" +class ProjectFormAdmin(ListRelatedMixin, ModelAdmin): + model = ProjectForm + menu_label = "Project Forms" menu_icon = "form" list_display = ( "name", "used_by", ) - create_view_class = CreateProjectApprovalFormView - edit_view_class = EditProjectApprovalFormView + create_view_class = CreateProjectFormView + edit_view_class = EditProjectFormView related_models = [ - ("applicationbaseprojectapprovalform", "application"), - ("labbaseprojectapprovalform", "lab"), + ("applicationbaseprojectform", "application"), + ("labbaseprojectform", "lab"), ] @@ -105,7 +105,7 @@ class ProjectAdminGroup(ModelAdminGroup): items = ( ContractDocumentCategoryAdmin, DocumentCategoryAdmin, - ProjectApprovalFormAdmin, + ProjectFormAdmin, ProjectReportFormAdmin, ProjectSOWFormAdmin, VendorFormSettingsAdmin, diff --git a/hypha/apply/projects/admin_views.py b/hypha/apply/projects/admin_views.py index 4bdaa7a802f664c4778440cd2181ae886eb4f80a..675dd79e8655bce4376a3a15133496a9a0d3e3bd 100644 --- a/hypha/apply/projects/admin_views.py +++ b/hypha/apply/projects/admin_views.py @@ -3,29 +3,29 @@ from wagtail.contrib.modeladmin.views import CreateView, EditView from hypha.apply.utils.blocks import show_admin_form_error_messages -class CreateProjectApprovalFormView(CreateView): +class CreateProjectFormView(CreateView): def form_invalid(self, form): show_admin_form_error_messages(self.request, form) return self.render_to_response(self.get_context_data(form=form)) -class EditProjectApprovalFormView(EditView): +class EditProjectFormView(EditView): def form_invalid(self, form): show_admin_form_error_messages(self.request, form) return self.render_to_response(self.get_context_data(form=form)) -class CreateProjectSOWFormView(CreateProjectApprovalFormView): +class CreateProjectSOWFormView(CreateProjectFormView): pass -class EditProjectSOWFormView(EditProjectApprovalFormView): +class EditProjectSOWFormView(EditProjectFormView): pass -class CreateProjectReportFormView(CreateProjectApprovalFormView): +class CreateProjectReportFormView(CreateProjectFormView): pass -class EditProjectReportFormView(EditProjectApprovalFormView): +class EditProjectReportFormView(EditProjectFormView): pass diff --git a/hypha/apply/projects/forms/__init__.py b/hypha/apply/projects/forms/__init__.py index 3405b79303cadb3ee0b91062671453cb262f49bf..9b75edf69d4fed280d27270d65480fb0eb9bc6df 100644 --- a/hypha/apply/projects/forms/__init__.py +++ b/hypha/apply/projects/forms/__init__.py @@ -11,8 +11,8 @@ from .project import ( AssignApproversForm, ChangePAFStatusForm, ChangeProjectStatusForm, - CreateProjectForm, - ProjectApprovalForm, + ProjectCreateForm, + ProjectForm, ProjectSOWForm, RemoveContractDocumentForm, RemoveDocumentForm, @@ -43,8 +43,8 @@ __all__ = [ "BatchUpdateInvoiceStatusForm", "ChangePAFStatusForm", "ChangeProjectStatusForm", - "CreateProjectForm", - "ProjectApprovalForm", + "ProjectCreateForm", + "ProjectForm", "ProjectSOWForm", "RemoveDocumentForm", "RemoveContractDocumentForm", diff --git a/hypha/apply/projects/forms/project.py b/hypha/apply/projects/forms/project.py index b92d2d3b2d022aa806778437bce13f4177bacd86..55551654eeed55b02d10906a1b51d6b9285a4d75 100644 --- a/hypha/apply/projects/forms/project.py +++ b/hypha/apply/projects/forms/project.py @@ -75,7 +75,7 @@ class ApproveContractForm(forms.Form): return self.instance -class CreateProjectForm(forms.Form): +class ProjectCreateForm(forms.Form): submission = forms.ModelChoiceField( queryset=ApplicationSubmission.objects.filter(project__isnull=True), widget=forms.HiddenInput(), @@ -114,7 +114,7 @@ class MixedMetaClass(type(StreamBaseForm), type(forms.ModelForm)): pass -class ProjectApprovalForm(StreamBaseForm, forms.ModelForm, metaclass=MixedMetaClass): +class ProjectForm(StreamBaseForm, forms.ModelForm, metaclass=MixedMetaClass): class Meta: fields = [ "title", diff --git a/hypha/apply/projects/forms/report.py b/hypha/apply/projects/forms/report.py index f63ad8b910a9376b9ca89f26a0ad82b2243b1ea6..6577c5863cc134c76159e1cccaf7142a6f2f844c 100644 --- a/hypha/apply/projects/forms/report.py +++ b/hypha/apply/projects/forms/report.py @@ -55,7 +55,7 @@ class ReportEditForm(StreamBaseForm, forms.ModelForm, metaclass=MixedMetaClass): # We need to save the fields first, not attempt to save form_data on first save, then update the form_data next. # Otherwise, we don't get access to the generator method "question_field_ids" which we use to prevent temp file # fields from getting into the saved form_data. - # Inspired by ProjectApprovalForm.save and ProjectSOWForm.save but enhanced to support multi-answer fields. + # Inspired by ProjectForm.save and ProjectSOWForm.save but enhanced to support multi-answer fields. version.form_data = { field: self.cleaned_data["form_data"][field] for field in self.cleaned_data["form_data"] diff --git a/hypha/apply/projects/migrations/0083_rename_projectapprovalform_projectform_and_more.py b/hypha/apply/projects/migrations/0083_rename_projectapprovalform_projectform_and_more.py new file mode 100644 index 0000000000000000000000000000000000000000..04bc1a6d9503a51a9dc24736c6a25d097dea6ea7 --- /dev/null +++ b/hypha/apply/projects/migrations/0083_rename_projectapprovalform_projectform_and_more.py @@ -0,0 +1,25 @@ +# Generated by Django 4.2.11 on 2024-05-07 11:43 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ("funds", "0118_labbaseprojectreportform_and_more"), + ("application_projects", "0082_projectreportform_and_more"), + ] + + operations = [ + migrations.RenameModel( + old_name="ProjectApprovalForm", + new_name="ProjectForm", + ), + migrations.AlterModelTable( + name="projectform", + table="project_form", + ), + migrations.AlterModelTable( + name="projectsowform", + table="project_sow_form", + ), + ] diff --git a/hypha/apply/projects/models/__init__.py b/hypha/apply/projects/models/__init__.py index 871444e464ef76c88903fc22334302ced6cba99f..970fd7bcfa2908c10e456a8ef03a4b39c1018ab2 100644 --- a/hypha/apply/projects/models/__init__.py +++ b/hypha/apply/projects/models/__init__.py @@ -8,7 +8,7 @@ from .project import ( PacketFile, PAFApprovals, Project, - ProjectApprovalForm, + ProjectForm, ProjectReportForm, ProjectSettings, ProjectSOWForm, @@ -18,7 +18,7 @@ from .vendor import BankInformation, DueDiligenceDocument, Vendor, VendorFormSet __all__ = [ "Project", - "ProjectApprovalForm", + "ProjectForm", "ProjectReportForm", "ProjectSOWForm", "ProjectSettings", diff --git a/hypha/apply/projects/models/project.py b/hypha/apply/projects/models/project.py index e7a162b297cebce7b1074b6725eba82136b8443c..6ffa87fcdd8ceafd919245ab953c88cfaa9e8374 100644 --- a/hypha/apply/projects/models/project.py +++ b/hypha/apply/projects/models/project.py @@ -474,12 +474,14 @@ class ProjectBaseStreamForm(BaseStreamForm, models.Model): return self.name -class ProjectApprovalForm(ProjectBaseStreamForm): - pass +class ProjectForm(ProjectBaseStreamForm): + class Meta: + db_table = "project_form" class ProjectSOWForm(ProjectBaseStreamForm): - pass + class Meta: + db_table = "project_sow_form" class ProjectReportForm(ProjectBaseStreamForm): diff --git a/hypha/apply/projects/templates/application_projects/includes/supporting_documents.html b/hypha/apply/projects/templates/application_projects/includes/supporting_documents.html index a8613421cd3c7f7675a0608e472129384c57f467..57ec81692318d500d22f8cc2281c6a0dde98f783 100644 --- a/hypha/apply/projects/templates/application_projects/includes/supporting_documents.html +++ b/hypha/apply/projects/templates/application_projects/includes/supporting_documents.html @@ -123,7 +123,7 @@ {% else %} {% heroicon_outline "check-circle" class="stroke-gray-400 me-1" aria_hidden=true %} {% endif %} - <p class="docs-block__title">{% trans "Approval Form" %}</p> + <p class="docs-block__title">{% trans "Project Form" %}</p> </div> <div class="docs-block__row-inner"> {% if editable and not user.is_applicant %} diff --git a/hypha/apply/projects/templates/application_projects/paf_export.html b/hypha/apply/projects/templates/application_projects/paf_export.html index 62b9a044a920ce2daff8058b7926910370b5b111..97a538874d29d0bcd470151683d5aab3101d185f 100644 --- a/hypha/apply/projects/templates/application_projects/paf_export.html +++ b/hypha/apply/projects/templates/application_projects/paf_export.html @@ -69,7 +69,7 @@ <!-- Project details in table format --> <tr> <td rowspan="4" align="left" class="align-left"> - <p class="title"> <b>{{ org_name|upper }}</b> PROJECT APPROVAL FORM</p> + <p class="title"> <b>{{ org_name|upper }}</b> PROJECT FORM</p> </td> <td align="right" class="align-right"> <b>{% trans "Project title" %}</b> diff --git a/hypha/apply/projects/templates/application_projects/project_approval_detail.html b/hypha/apply/projects/templates/application_projects/project_approval_detail.html index 48e563c0dedeb6300fb04e7196e95afaf52c9a51..a0bff7233307b6e3632857a719f349da282d1dcb 100644 --- a/hypha/apply/projects/templates/application_projects/project_approval_detail.html +++ b/hypha/apply/projects/templates/application_projects/project_approval_detail.html @@ -107,7 +107,7 @@ {% endif %} <div x-data="{ show: false }" class="dropdown"> <button x-on:click="show = ! show" class="button button--primary" type="button"> - {% trans 'Download Approval Form' %} + {% trans 'Download Project Form' %} </button> <div x-show="show" x-transition class="dropdown__content"> <a href="{% url 'apply:projects:download' pk=object.pk export_type='pdf' %}"> diff --git a/hypha/apply/projects/templates/application_projects/project_approval_form.html b/hypha/apply/projects/templates/application_projects/project_approval_form.html index eb659ac5409fbd6937c63217e4a101be0e061e6a..f14ac12d6d62db1d9d1837958dd524c99b807324 100644 --- a/hypha/apply/projects/templates/application_projects/project_approval_form.html +++ b/hypha/apply/projects/templates/application_projects/project_approval_form.html @@ -85,7 +85,7 @@ <div class="wrapper wrapper--light-grey-bg wrapper--form wrapper--sidebar"> <div class="wrapper--sidebar--inner"> <p> - {% trans "Approval form not configured. Please add an approval form in the" %} + {% trans "Project Form not configured. Please add an project form in the" %} <a href="{% url 'wagtailadmin_pages:edit' object.submission.page.id %}" target="_blank">{% trans "fund settings" %}</a>. </p> </div> diff --git a/hypha/apply/projects/templatetags/project_tags.py b/hypha/apply/projects/templatetags/project_tags.py index 5b1e70ed9749857f4aa9544cb43c61e677d9b386..3d91c085e8a57261f668e8b06cdb881ca389d314 100644 --- a/hypha/apply/projects/templatetags/project_tags.py +++ b/hypha/apply/projects/templatetags/project_tags.py @@ -34,7 +34,7 @@ def user_next_step_on_project(project, user, request=None): if not project.user_has_updated_details: return { "heading": _("To do"), - "text": _("Fill in the Approval Form(PAF)"), + "text": _("Fill in the Project Form"), } if project.paf_approvals.exists(): return { @@ -60,7 +60,7 @@ def user_next_step_on_project(project, user, request=None): } return { "heading": _("Waiting for"), - "text": _("Awaiting approval form to be created."), + "text": _("Awaiting project form to be created."), } elif project.status == INTERNAL_APPROVAL: if user.is_applicant: @@ -103,7 +103,7 @@ def user_next_step_on_project(project, user, request=None): if not matched_roles: return { "heading": _("Waiting for"), - "text": _("Awaiting PAF approval form to be approved"), + "text": _("Awaiting project form to be approved"), } else: matched_unapproved_approval = project.paf_approvals.filter( @@ -135,7 +135,7 @@ def user_next_step_on_project(project, user, request=None): return { "heading": _("Waiting for"), - "text": _("Awaiting project approval from assigned approvers"), + "text": _("Awaiting project from assigned approvers"), } elif project.status == CONTRACTING: if not project.contracts.exists(): diff --git a/hypha/apply/projects/tests/factories.py b/hypha/apply/projects/tests/factories.py index 8c40c41bfbeccc953cbcf8ca3c76d45472973c49..3ada9042b80e3d5bc7a363d19397e1501081f2f7 100644 --- a/hypha/apply/projects/tests/factories.py +++ b/hypha/apply/projects/tests/factories.py @@ -24,7 +24,7 @@ from ..models.project import ( PAFApprovals, PAFReviewersRole, Project, - ProjectApprovalForm, + ProjectForm, ProjectReportForm, ProjectSOWForm, ) @@ -66,9 +66,9 @@ class DocumentCategoryFactory(factory.django.DjangoModelFactory): model = DocumentCategory -class ProjectApprovalFormFactory(factory.django.DjangoModelFactory): +class ProjectFormFactory(factory.django.DjangoModelFactory): class Meta: - model = ProjectApprovalForm + model = ProjectForm name = factory.Faker("word") form_fields = FormFieldsBlockFactory @@ -82,7 +82,7 @@ class ProjectSOWFormFactory(factory.django.DjangoModelFactory): form_fields = FormFieldsBlockFactory -class ProjectApprovalFormDataFactory(FormDataFactory): +class ProjectFormDataFactory(FormDataFactory): field_factory = FormFieldsBlockFactory @@ -108,7 +108,7 @@ class ProjectFactory(factory.django.DjangoModelFactory): form_fields = FormFieldsBlockFactory form_data = factory.SubFactory( - ProjectApprovalFormDataFactory, + ProjectFormDataFactory, form_fields=factory.SelfAttribute("..form_fields"), ) diff --git a/hypha/apply/projects/tests/test_forms.py b/hypha/apply/projects/tests/test_forms.py index 1dbd999d004f5ce64eab6f237215da8cf49601d0..e7af6cfa1f4f6fd4ccaaa49b6a97935b0066e785 100644 --- a/hypha/apply/projects/tests/test_forms.py +++ b/hypha/apply/projects/tests/test_forms.py @@ -23,7 +23,7 @@ from ..forms.payment import ( ) from ..forms.project import ( ChangePAFStatusForm, - ProjectApprovalForm, + ProjectForm, StaffUploadContractForm, UploadContractForm, ) @@ -386,7 +386,7 @@ class TestChangePAFStatusForm(TestCase): self.assertEqual(form.errors, {}) -class TestProjectApprovalForm(TestCase): +class TestProjectForm(TestCase): def test_updating_fields_sets_changed_flag(self): project = ProjectFactory() @@ -404,7 +404,7 @@ class TestProjectApprovalForm(TestCase): } ) data.update(address_to_form_data()) - form = ProjectApprovalForm(instance=project, data=data) + form = ProjectForm(instance=project, data=data) self.assertTrue(form.is_valid(), form.errors.as_text()) form.save() diff --git a/hypha/apply/projects/urls.py b/hypha/apply/projects/urls.py index 88601a80cd21138aa2849c0cc01ab060e393d6e3..d6e109cef76704d06b0a400111241fec12451bfd 100644 --- a/hypha/apply/projects/urls.py +++ b/hypha/apply/projects/urls.py @@ -12,10 +12,10 @@ from .views import ( InvoiceListView, InvoicePrivateMedia, InvoiceView, - ProjectApprovalFormEditView, ProjectDetailApprovalView, ProjectDetailDownloadView, ProjectDetailView, + ProjectFormEditView, ProjectListView, ProjectPrivateMediaView, ProjectSOWDownloadView, @@ -52,7 +52,7 @@ urlpatterns = [ partial_project_activities, name="partial-activities", ), - path("edit/", ProjectApprovalFormEditView.as_view(), name="edit"), + path("edit/", ProjectFormEditView.as_view(), name="edit"), path( "documents/<int:file_pk>", ProjectPrivateMediaView.as_view(), diff --git a/hypha/apply/projects/views/__init__.py b/hypha/apply/projects/views/__init__.py index 6e93cdef31eb29ec029b59ac1e7bbd901ece8db6..d66746dda613b5426916aa08ab917ca221667234 100644 --- a/hypha/apply/projects/views/__init__.py +++ b/hypha/apply/projects/views/__init__.py @@ -15,10 +15,10 @@ from .project import ( CategoryTemplatePrivateMediaView, ContractDocumentPrivateMediaView, ContractPrivateMediaView, - ProjectApprovalFormEditView, ProjectDetailApprovalView, ProjectDetailDownloadView, ProjectDetailView, + ProjectFormEditView, ProjectListView, ProjectOverviewView, ProjectPrivateMediaView, @@ -70,7 +70,7 @@ __all__ = [ "ProjectDetailDownloadView", "ProjectSOWView", "ProjectSOWDownloadView", - "ProjectApprovalFormEditView", + "ProjectFormEditView", "ProjectListView", "ProjectOverviewView", "ReportDetailView", diff --git a/hypha/apply/projects/views/project.py b/hypha/apply/projects/views/project.py index f65848aa10690d5587c49a7e5bd6c1cb7b3e6c37..0a5aeaa5b5ed8b525faaba23429889f6bc6b4327 100644 --- a/hypha/apply/projects/views/project.py +++ b/hypha/apply/projects/views/project.py @@ -75,7 +75,7 @@ from ..forms import ( AssignApproversForm, ChangePAFStatusForm, ChangeProjectStatusForm, - ProjectApprovalForm, + ProjectForm, ProjectSOWForm, RemoveContractDocumentForm, RemoveDocumentForm, @@ -685,7 +685,7 @@ class ChangePAFStatusView(DelegatedViewMixin, UpdateView): project=self.object, approved=False ).first() if not paf_approval: - # get paf approval form for not-assigned case + # get paf project form for not-assigned case if project_settings.paf_approval_sequential: paf_approval = self.object.paf_approvals.filter(approved=False).first() else: @@ -1433,7 +1433,7 @@ class ContractDocumentPrivateMediaView(UserPassesTestMixin, PrivateMediaView): return False -# PROJECT APPROVAL FORM VIEWS +# PROJECT FORM VIEWS @method_decorator(staff_or_finance_or_contracting_required, name="dispatch") @@ -1669,7 +1669,7 @@ class ProjectDetailDownloadView(SingleObjectMixin, View): @method_decorator(staff_or_finance_or_contracting_required, name="dispatch") -class ProjectApprovalFormEditView(BaseStreamForm, UpdateView): +class ProjectFormEditView(BaseStreamForm, UpdateView): model = Project template_name = "application_projects/project_approval_form.html" # Remember to assign paf_form first and then sow_form, else get_defined_fields method may provide unexpected results @@ -1715,7 +1715,7 @@ class ProjectApprovalFormEditView(BaseStreamForm, UpdateView): def get_paf_form(self, form_class=None): if form_class is None: - form_class = self.get_form_class(ProjectApprovalForm) + form_class = self.get_form_class(ProjectForm) return form_class(**self.get_paf_form_kwargs()) def get_sow_form(self, form_class=None): diff --git a/hypha/apply/projects/views/report.py b/hypha/apply/projects/views/report.py index 71d0f475763cac5436c0c9d5db529ccd86728e26..2b5666590ad9933fc2b06740176c6a6923bd92c8 100644 --- a/hypha/apply/projects/views/report.py +++ b/hypha/apply/projects/views/report.py @@ -137,7 +137,7 @@ class ReportUpdateView(BaseStreamForm, UpdateView): # current here is a ReportVersion which should already have the data associated. if current: # The following allows existing data to populate the form. This code was inspired by (aka copied from) - # ProjectApprovalFormEditView.get_paf_form_kwargs(). + # ProjectFormEditView.get_paf_form_kwargs(). initial = current.raw_data # Is the following needed to see the file in a friendly URL? Does not appear so. But needed to not blow up. for field_id in current.file_field_ids: