Files
Pinry/pinry/core/views.py

35 lines
1.0 KiB
Python
Raw Normal View History

2012-04-26 03:44:16 +00:00
from django.template.response import TemplateResponse
from django.http import HttpResponseRedirect
2012-04-26 03:44:16 +00:00
from django.core.urlresolvers import reverse
from django.views.generic import CreateView
from django_images.models import Image
2012-04-26 03:44:16 +00:00
from braces.views import JSONResponseMixin, LoginRequiredMixin
from .forms import ImageForm
2012-04-26 03:44:16 +00:00
2012-08-01 21:30:18 +00:00
def private(request):
return TemplateResponse(request, 'user/private.html', None)
2012-08-01 21:30:18 +00:00
class CreateImage(JSONResponseMixin, LoginRequiredMixin, CreateView):
template_name = None # JavaScript-only view
model = Image
form_class = ImageForm
def get(self, request, *args, **kwargs):
if not request.is_ajax():
return HttpResponseRedirect(reverse('core:recent-pins'))
super(CreateImage, self).get(request, *args, **kwargs)
def form_valid(self, form):
image = form.save()
return self.render_json_response({
'success': {
'id': image.id
}
})
def form_invalid(self, form):
return self.render_json_response({'error': form.errors})