diff options
Diffstat (limited to 'proposals/views.py')
-rw-r--r-- | proposals/views.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/proposals/views.py b/proposals/views.py new file mode 100644 index 0000000..aacba55 --- /dev/null +++ b/proposals/views.py | |||
@@ -0,0 +1,30 @@ | |||
1 | from django.shortcuts import resolve_url | ||
2 | from django.views.generic.edit import CreateView, UpdateView | ||
3 | |||
4 | from proposals.models import Proposal | ||
5 | from proposals.forms import UserProposalForm | ||
6 | |||
7 | |||
8 | class ProposalCreationForm(CreateView): | ||
9 | |||
10 | model = Proposal | ||
11 | form_class = UserProposalForm | ||
12 | |||
13 | def get_success_url(self): | ||
14 | return resolve_url("account:profile") | ||
15 | |||
16 | |||
17 | class ProposalUpdateView(UpdateView): | ||
18 | |||
19 | form_class = UserProposalForm | ||
20 | |||
21 | def get_success_url(self): | ||
22 | return resolve_url("account:profile") | ||
23 | |||
24 | def get_queryset(self): | ||
25 | return Proposal.objects.for_user(self.request.user) | ||
26 | |||
27 | def get_context_data(self, **kwargs): | ||
28 | context = super(ProposalUpdateView, self).get_context_data(**kwargs) | ||
29 | context["edit_view"] = True | ||
30 | return context | ||