Files
Pinry/pinry/core/views.py
Krzysztof Klimonda 53f05dbb6d A general project refactor
Removed pins django app, and moved code to the core. Moved user related
code out of core to the users app.
2013-03-03 04:47:34 -08:00

35 lines
1.0 KiB
Python

from django.template.response import TemplateResponse
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
from django.views.generic import CreateView
from django_images.models import Image
from braces.views import JSONResponseMixin, LoginRequiredMixin
from .forms import ImageForm
def private(request):
return TemplateResponse(request, 'user/private.html', None)
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})