equal
deleted
inserted
replaced
|
1 from django import forms |
|
2 from pytask.taskapp.models import Task, WorkReport |
|
3 |
|
4 class TaskCreateForm(forms.ModelForm): |
|
5 class Meta: |
|
6 model = Task |
|
7 fields = ['title', 'desc', 'tags_field', 'pynts'] |
|
8 |
|
9 def clean_title(self): |
|
10 |
|
11 data = self.cleaned_data['title'].strip() |
|
12 |
|
13 if not data: |
|
14 raise forms.ValidationError("This field is required") |
|
15 |
|
16 try: |
|
17 Task.objects.exclude(status="DL").get(title__iexact=data) |
|
18 raise forms.ValidationError("Another task with same title exists") |
|
19 except Task.DoesNotExist: |
|
20 return data |
|
21 |
|
22 def clean_desc(self): |
|
23 |
|
24 data = self.cleaned_data['desc'].strip() |
|
25 |
|
26 if not data: |
|
27 raise forms.ValidationError("This field is required") |
|
28 |
|
29 return data |
|
30 |
|
31 class EditTaskForm(forms.ModelForm): |
|
32 class Meta: |
|
33 model = Task |
|
34 fields = ['title', 'desc', 'tags_field', 'pynts'] |
|
35 |
|
36 def clean_desc(self): |
|
37 data = self.cleaned_data['desc'].strip() |
|
38 if not data: |
|
39 raise forms.ValidationError("Enter some description for the task") |
|
40 |
|
41 return data |
|
42 |
|
43 def clean_title(self): |
|
44 data = self.cleaned_data['title'].strip() |
|
45 try: |
|
46 prev_task = Task.objects.exclude(status="DL").get(title__iexact=data) |
|
47 if prev_task.id != self.instance.id: |
|
48 raise forms.ValidationError("Another task with same title exists") |
|
49 else: |
|
50 return data |
|
51 except Task.DoesNotExist: |
|
52 return data |
|
53 |