|
1
|
1 |
from django.contrib.auth import authenticate, login, logout |
|
|
2 |
from django.core.urlresolvers import reverse |
|
|
3 |
from django.http import HttpResponse, HttpResponseRedirect |
|
|
4 |
from django.shortcuts import render, get_object_or_404 |
|
|
5 |
from django.views.decorators.csrf import csrf_exempt |
|
|
6 |
from django.views.generic import TemplateView, View |
|
|
7 |
from rest_framework.renderers import TemplateHTMLRenderer |
|
|
8 |
|
|
|
9 |
from renkanmanager.models import Renkan |
|
|
10 |
from renkanmanager.serializers import RenkanSerializer |
|
|
11 |
from renkanmanager.api.views import RenkanDetail |
|
|
12 |
|
|
|
13 |
class ListRenkansView(View): |
|
|
14 |
template_name = "renkan_list.html" |
|
|
15 |
|
|
|
16 |
def get(self, request): |
|
|
17 |
renkans = Renkan.objects.filter(creator=request.user) |
|
|
18 |
return render(request, self.template_name, {'renkans': renkans}) |
|
|
19 |
|
|
|
20 |
def post(self, request): |
|
|
21 |
create_data = { |
|
|
22 |
"title" : request.POST.get("title", "Untitled Renkan") |
|
|
23 |
} |
|
|
24 |
|
|
|
25 |
serializer = RenkanSerializer(data=create_data) |
|
|
26 |
if serializer.is_valid(): |
|
|
27 |
serializer.save(creator=request.user) |
|
|
28 |
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) |
|
|
29 |
|
|
|
30 |
class NewRenkanView(View): |
|
|
31 |
|
|
|
32 |
def get(self, request): |
|
|
33 |
create_data = { |
|
|
34 |
"title" : "Untitled Renkan" |
|
|
35 |
} |
|
|
36 |
serializer = RenkanSerializer(data=create_data) |
|
|
37 |
if serializer.is_valid(): |
|
|
38 |
new_renkan = serializer.save(creator=request.user) |
|
|
39 |
return HttpResponseRedirect(reverse("front_edit_renkan", kwargs={"renkan_guid": new_renkan.renkan_guid})) |
|
|
40 |
|
|
|
41 |
|
|
|
42 |
class ViewRenkanView(TemplateView): |
|
|
43 |
template_name = "renkan_view.html" |
|
|
44 |
|
|
|
45 |
|
|
|
46 |
class EditRenkanView(TemplateView): |
|
|
47 |
template_name = "renkan_edit.html" |
|
|
48 |
|
|
|
49 |
|
|
|
50 |
class DeleteRenkanView(View): |
|
|
51 |
def get(self, request, renkan_guid): |
|
|
52 |
request.method = "DELETE" |
|
|
53 |
delete_response = RenkanDetail.as_view()(request, renkan_guid) |
|
|
54 |
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) |
|
|
55 |
|