Skip to content
Snippets Groups Projects
Commit 814e1e3c authored by Piotr Gawron's avatar Piotr Gawron
Browse files

common functionality extracted to separate class

parent 858fbb7b
No related branches found
No related tags found
1 merge request!117Resolve "extend worker class"
......@@ -2,19 +2,14 @@ from django import forms
from django.forms import ModelForm
from web.forms.forms import DATETIMEPICKER_DATE_ATTRS
from web.models import ContactAttempt, Worker
class ContactAttemptAddForm(ModelForm):
class ContactAttemptForm(ModelForm):
datetime_when = forms.DateTimeField(label='When? (YYYY-MM-DD HH:MM)',
widget=forms.DateTimeInput(DATETIMEPICKER_DATE_ATTRS)
)
class Meta:
model = ContactAttempt
fields = '__all__'
def __init__(self, *args, **kwargs):
user = kwargs.pop('user', None)
if user is None:
......@@ -22,6 +17,15 @@ class ContactAttemptAddForm(ModelForm):
self.user = Worker.get_by_user(user)
if self.user is None:
raise TypeError("Worker not defined for: " + user.username)
super(ContactAttemptForm, self).__init__(*args, **kwargs)
class ContactAttemptAddForm(ContactAttemptForm):
class Meta:
model = ContactAttempt
fields = '__all__'
def __init__(self, *args, **kwargs):
subject = kwargs.pop('subject', None)
super(ContactAttemptAddForm, self).__init__(*args, **kwargs)
self.fields['subject'].initial = subject.id
......@@ -29,21 +33,11 @@ class ContactAttemptAddForm(ModelForm):
self.fields['worker'].initial = self.user
class ContactAttemptEditForm(ModelForm):
datetime_when = forms.DateTimeField(label='When? (YYYY-MM-DD HH:MM)',
widget=forms.DateTimeInput(DATETIMEPICKER_DATE_ATTRS)
)
class ContactAttemptEditForm(ContactAttemptForm):
class Meta:
model = ContactAttempt
fields = '__all__'
def __init__(self, *args, **kwargs):
user = kwargs.pop('user', None)
if user is None:
raise TypeError("User not defined")
self.user = Worker.get_by_user(user)
if self.user is None:
raise TypeError("Worker not defined for: " + user.username)
super(ContactAttemptEditForm, self).__init__(*args, **kwargs)
self.fields['subject'].disabled = True
\ No newline at end of file
self.fields['subject'].disabled = True
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment