diff options
author | nishanth | 2010-03-04 19:08:47 +0530 |
---|---|---|
committer | nishanth | 2010-03-04 19:08:47 +0530 |
commit | 41ba7417291d681d76621ceecfc9e5191c46c009 (patch) | |
tree | 169beb2dd5c750e0d5cd766e1d39040c922b345e | |
parent | f1d2f36818c7033aaff55767a9413d654f68a4c8 (diff) | |
download | pytask-41ba7417291d681d76621ceecfc9e5191c46c009.tar.gz pytask-41ba7417291d681d76621ceecfc9e5191c46c009.tar.bz2 pytask-41ba7417291d681d76621ceecfc9e5191c46c009.zip |
ditchaxed the claims model.
-rw-r--r-- | taskapp/admin.py | 3 | ||||
-rw-r--r-- | taskapp/events/task.py | 8 | ||||
-rw-r--r-- | taskapp/forms/task.py | 15 | ||||
-rw-r--r-- | taskapp/models.py | 7 | ||||
-rw-r--r-- | taskapp/views/task.py | 15 | ||||
-rw-r--r-- | templates/task/claim.html | 11 |
6 files changed, 31 insertions, 28 deletions
diff --git a/taskapp/admin.py b/taskapp/admin.py index 719c87e..d7d10d2 100644 --- a/taskapp/admin.py +++ b/taskapp/admin.py @@ -1,10 +1,9 @@ from django.contrib import admin -from pytask.taskapp.models import Profile, Task, Comment, Claim, Notification, Request +from pytask.taskapp.models import Profile, Task, Comment, Notification, Request admin.site.register(Profile) admin.site.register(Task) admin.site.register(Comment) -admin.site.register(Claim) admin.site.register(Notification) admin.site.register(Request) diff --git a/taskapp/events/task.py b/taskapp/events/task.py index 5fb896c..ff5556f 100644 --- a/taskapp/events/task.py +++ b/taskapp/events/task.py @@ -1,5 +1,5 @@ from datetime import datetime -from pytask.taskapp.models import Profile, Task, Comment, Claim, Map +from pytask.taskapp.models import Profile, Task, Comment, Map from pytask.taskapp.utilities.task import getTask from pytask.taskapp.utilities.request import create_request from pytask.taskapp.utilities.helper import get_key @@ -141,12 +141,6 @@ def addClaim(task, message, user): task.claimed_users.add(user) task.save() - claim = Claim() - claim.message = message - claim.task = task - claim.user = user - claim.creation_datetime = datetime.now() - claim.save() pending_reqs = user.request_sent_to.filter(is_replied=False, is_valid=True, role="MT", task=task).all() for req in pending_reqs: diff --git a/taskapp/forms/task.py b/taskapp/forms/task.py index 5ed21e5..fe949aa 100644 --- a/taskapp/forms/task.py +++ b/taskapp/forms/task.py @@ -1,5 +1,5 @@ from django import forms -from pytask.taskapp.models import Task, Claim +from pytask.taskapp.models import Task class TaskCreateForm(forms.ModelForm): class Meta: @@ -53,10 +53,15 @@ def AddMentorForm(choices,instance=None): form = myform(instance) if instance else myform() return form -class ClaimTaskForm(forms.ModelForm): - class Meta: - model = Claim - fields = ['message'] +class ClaimTaskForm(forms.Form): + message = forms.CharField(label="Proposal") + + def clean_message(self): + data = self.cleaned_data['message'].strip() + if not data: + raise forms.ValidationError('Enter something as a proposal') + return data + def ChoiceForm(choices, instance=None): """ return a form object with appropriate choices """ diff --git a/taskapp/models.py b/taskapp/models.py index e4607c8..d5ad48e 100644 --- a/taskapp/models.py +++ b/taskapp/models.py @@ -127,13 +127,6 @@ class Comment(models.Model): def __unicode__(self): return unicode(self.task.title) -class Claim(models.Model): - - task = models.ForeignKey('Task') - user = models.ForeignKey(User) - message = models.TextField() - creation_datetime = models.DateTimeField() - class Request(models.Model): sent_to = models.ManyToManyField(User, related_name = "%(class)s_sent_to", blank = False) diff --git a/taskapp/views/task.py b/taskapp/views/task.py index 4f8b6c4..8a0c1cc 100644 --- a/taskapp/views/task.py +++ b/taskapp/views/task.py @@ -3,9 +3,9 @@ from datetime import datetime from django.http import HttpResponse, Http404 from django.shortcuts import render_to_response, redirect -from pytask.taskapp.models import User, Task, Comment, Claim, Request, Notification +from pytask.taskapp.models import User, Task, Comment, Request, Notification from pytask.taskapp.utilities.task import getTask -from pytask.taskapp.forms.task import TaskCreateForm, AddMentorForm, AddTaskForm, ChoiceForm, AssignCreditForm, RemoveUserForm, EditTaskForm +from pytask.taskapp.forms.task import TaskCreateForm, AddMentorForm, AddTaskForm, ChoiceForm, AssignCreditForm, RemoveUserForm, EditTaskForm, ClaimTaskForm from pytask.taskapp.events.task import createTask, reqMentor, publishTask, addSubTask, addDep, addClaim, assignTask, updateTask, removeTask, removeUser, assignCredits, completeTask, closeTask, addMentor, deleteTask from pytask.taskapp.views.user import show_msg from pytask.taskapp.utilities.user import get_user @@ -342,7 +342,7 @@ def claim_task(request, tid): user = get_user(request.user) if request.user.is_authenticated() else request.user task = getTask(tid) - #claims = Claim.objects.filter(task=task) + #claims = task.notifications_task.filter(role="CL",sent_to=task.created_by) # this is what the next line should be when i re sync the db claims = Notification.objects.filter(task=task, sent_to=task.created_by, role="CL") @@ -368,13 +368,16 @@ def claim_task(request, tid): 'errors':errors} if not is_guest: + form = ClaimTaskForm() + context['form'] = form if request.method == "POST": - claim_proposal = request.POST['message'] - if claim_proposal: + form = ClaimTaskForm(request.POST) + context['form'] = form + if form.is_valid(): + claim_proposal = form.cleaned_data['message'] addClaim(task, claim_proposal, user) return redirect(claim_url) else: - errors.append('Please fill up proposal in the field below') return render_to_response('task/claim.html', context) else: return render_to_response('task/claim.html', context) diff --git a/templates/task/claim.html b/templates/task/claim.html index d069bb6..d4858d4 100644 --- a/templates/task/claim.html +++ b/templates/task/claim.html @@ -26,6 +26,7 @@ <a href="/task/assign/tid={{task.id}}">Select a user to assign the work.</a><sup><a href="/about/assigntask/" target="_blank">learn more</a></sup> {% endif %} {% if user_can_claim %} + <!-- {% if errors %} {% for error in errors %} {{error}}<br /> @@ -37,7 +38,15 @@ <form action="" method="post"> <textarea name="message"></textarea><br /> <input type="submit" value="Submit Claim"><br /> - Please note that you can claim only once and so write your proposal carefully.<br /> + </form> + --> + <hr /> + <form action="" method="post"> + {{form.as_p}} + <input type="submit" value="Submit Claim"><br /> + Please note that you can claim only once and so write your proposal carefully.<br /> + </form> {% endif %} + {% endblock %} |