diff options
author | Nishanth Amuluru | 2011-01-08 22:20:41 +0530 |
---|---|---|
committer | Nishanth Amuluru | 2011-01-08 22:20:41 +0530 |
commit | 5cc7c5fafb86877b0fb7a6864429e8ed93c3024b (patch) | |
tree | 726de94379abcf088a8913322f115504291f0180 | |
parent | 0dc9f0eb9cd3c6d0860fe63a49a550ec0d2cca6b (diff) | |
download | pytask-5cc7c5fafb86877b0fb7a6864429e8ed93c3024b.tar.gz pytask-5cc7c5fafb86877b0fb7a6864429e8ed93c3024b.tar.bz2 pytask-5cc7c5fafb86877b0fb7a6864429e8ed93c3024b.zip |
Added forms for creating and editing a task
-rw-r--r-- | pytask/taskapp/forms.py | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/pytask/taskapp/forms.py b/pytask/taskapp/forms.py new file mode 100644 index 0000000..3804d2a --- /dev/null +++ b/pytask/taskapp/forms.py @@ -0,0 +1,53 @@ +from django import forms +from pytask.taskapp.models import Task, WorkReport + +class TaskCreateForm(forms.ModelForm): + class Meta: + model = Task + fields = ['title', 'desc', 'tags_field', 'pynts'] + + def clean_title(self): + + data = self.cleaned_data['title'].strip() + + if not data: + raise forms.ValidationError("This field is required") + + try: + Task.objects.exclude(status="DL").get(title__iexact=data) + raise forms.ValidationError("Another task with same title exists") + except Task.DoesNotExist: + return data + + def clean_desc(self): + + data = self.cleaned_data['desc'].strip() + + if not data: + raise forms.ValidationError("This field is required") + + return data + +class EditTaskForm(forms.ModelForm): + class Meta: + model = Task + fields = ['title', 'desc', 'tags_field', 'pynts'] + + def clean_desc(self): + data = self.cleaned_data['desc'].strip() + if not data: + raise forms.ValidationError("Enter some description for the task") + + return data + + def clean_title(self): + data = self.cleaned_data['title'].strip() + try: + prev_task = Task.objects.exclude(status="DL").get(title__iexact=data) + if prev_task.id != self.instance.id: + raise forms.ValidationError("Another task with same title exists") + else: + return data + except Task.DoesNotExist: + return data + |