From 17afc1f2b1423a90dd70edb35a9ceabd355a7232 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Thu, 9 Feb 2017 17:58:30 +0100 Subject: [PATCH] editing subject doesn't allow to modify screening number --- smash/web/forms.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/smash/web/forms.py b/smash/web/forms.py index d989cf65..bc046b76 100644 --- a/smash/web/forms.py +++ b/smash/web/forms.py @@ -40,6 +40,19 @@ class SubjectEditForm(ModelForm): widget=forms.SelectDateWidget(years=YEAR_CHOICES) ) + def __init__(self, *args, **kwargs): + super(SubjectEditForm, self).__init__(*args, **kwargs) + instance = getattr(self, 'instance', None) + if instance and instance.id: + self.fields['screening_number'].widget.attrs['readonly'] = True + + def clean_foo_field(self): + instance = getattr(self, 'instance', None) + if instance and instance.id: + return instance.screening_number + else: + return self.cleaned_data['screening_number'] + class Meta: model = Subject fields = '__all__' -- GitLab