diff --git a/opentech/apply/determinations/forms.py b/opentech/apply/determinations/forms.py index f706486eeabccf24e4bae09f71fe2e06856ed85e..f8ae281c94948943ab0464fd55835fa8def009c2 100644 --- a/opentech/apply/determinations/forms.py +++ b/opentech/apply/determinations/forms.py @@ -363,6 +363,7 @@ class ConceptDeterminationForm(BaseConceptDeterminationForm, BaseNormalDetermina help_text='Select the proposal form to use for proposal stage.', ) self.fields['proposal_form'].group = 1 + self.fields.move_to_end('proposal_form', last=False) class ProposalDeterminationForm(BaseProposalDeterminationForm, BaseNormalDeterminationForm): diff --git a/opentech/apply/funds/models/submissions.py b/opentech/apply/funds/models/submissions.py index 7087194a031ba4dcc6eb190610913a81314e46e2..a932968d7d56ff5702ee9d93ae21f62c8c4f98a2 100644 --- a/opentech/apply/funds/models/submissions.py +++ b/opentech/apply/funds/models/submissions.py @@ -515,7 +515,7 @@ class ApplicationSubmission( self.id = None proposal_form = kwargs.get('proposal_form') proposal_form = int(proposal_form) if proposal_form else 0 - self.form_fields = self.get_from_parent('get_defined_fields')(target, proposal_form) + self.form_fields = self.get_from_parent('get_defined_fields')(target, form_index=proposal_form) self.live_revision = None self.draft_revision = None diff --git a/opentech/apply/funds/models/utils.py b/opentech/apply/funds/models/utils.py index 2d32775f005537adb6556d14ca10c484e44a797d..c5131399e0b82001dccd59200314786e91e029bc 100644 --- a/opentech/apply/funds/models/utils.py +++ b/opentech/apply/funds/models/utils.py @@ -83,12 +83,12 @@ class WorkflowStreamForm(WorkflowHelpers, AbstractStreamForm): # type: ignore class Meta: abstract = True - def get_defined_fields(self, stage=None, proposal_form=0): + def get_defined_fields(self, stage=None, form_index=0): if not stage: stage_num = 1 else: stage_num = self.workflow.stages.index(stage) + 1 - return self.forms.filter(stage=stage_num)[proposal_form].fields + return self.forms.filter(stage=stage_num)[form_index].fields def render_landing_page(self, request, form_submission=None, *args, **kwargs): # We only reach this page after creation of a new submission