From c957f3383b5275bf1aca7af15334fc0a6c718449 Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Tue, 6 Jan 2015 23:32:23 +0000 Subject: [PATCH] allow editing of legacy disclosures which don't have required fields (set required=False). Commit ready for merge. - Legacy-Id: 8845 --- ietf/ipr/forms.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/ietf/ipr/forms.py b/ietf/ipr/forms.py index 59f3e2e7c..c210b5b3e 100644 --- a/ietf/ipr/forms.py +++ b/ietf/ipr/forms.py @@ -172,10 +172,11 @@ class IprDisclosureFormBase(forms.ModelForm): super(IprDisclosureFormBase, self).clean() cleaned_data = self.cleaned_data - # if same_as_above not checked require submitted - if not self.cleaned_data.get('same_as_ii_above'): - if not ( self.cleaned_data.get('submitter_name') and self.cleaned_data.get('submitter_email') ): - raise forms.ValidationError('Submitter information must be provided in section VII') + if not self.instance.pk: + # when entering a new disclosure, if same_as_above not checked require submitted + if not self.cleaned_data.get('same_as_ii_above'): + if not ( self.cleaned_data.get('submitter_name') and self.cleaned_data.get('submitter_email') ): + raise forms.ValidationError('Submitter information must be provided in section VII') return cleaned_data @@ -189,9 +190,15 @@ class HolderIprDisclosureForm(IprDisclosureFormBase): def __init__(self, *args, **kwargs): super(HolderIprDisclosureForm, self).__init__(*args, **kwargs) - if not self.instance.pk: + if self.instance.pk: + # editing existing disclosure + self.fields['patent_info'].required = False + self.fields['holder_contact_name'].required = False + self.fields['holder_contact_email'].required = False + else: + # entering new disclosure self.fields['licensing'].queryset = IprLicenseTypeName.objects.exclude(slug='none-selected') - + def clean(self): super(HolderIprDisclosureForm, self).clean() cleaned_data = self.cleaned_data