X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/83559fba0846ad77721b31231d1d807a91e52157..7cc8b95ca00f23d96e631fb7425fd2e7da5feae0:/catalogue/views.py?ds=sidebyside diff --git a/catalogue/views.py b/catalogue/views.py index 8feb63c22..ad9bde747 100644 --- a/catalogue/views.py +++ b/catalogue/views.py @@ -165,37 +165,80 @@ def login(request): return HttpResponse(LazyEncoder(ensure_ascii=False).encode(response_data)) -@login_required def book_sets(request, slug): book = get_object_or_404(models.Book, slug=slug) user_sets = models.Tag.objects.filter(category='set', user=request.user) book_sets = book.tags.filter(category='set', user=request.user) + if not request.user.is_authenticated(): + return HttpResponse('
Aby zarzÄ dzaÄ swoimi póÅkami, musisz siÄ zalogowaÄ.
') + if request.method == 'POST': - form = forms.BookSetsForm(book, request.user, request.POST) + form = forms.ObjectSetsForm(book, request.user, request.POST) if form.is_valid(): book.tags = ([models.Tag.objects.get(pk=id) for id in form.cleaned_data['set_ids']] + list(book.tags.filter(~Q(category='set') | ~Q(user=request.user)))) if request.is_ajax(): - return HttpResponse('Zestawy zostaÅy zapisane
') + return HttpResponse('PóÅki zostaÅy zapisane.
') else: return HttpResponseRedirect('/') else: - form = forms.BookSetsForm(book, request.user) + form = forms.ObjectSetsForm(book, request.user) new_set_form = forms.NewSetForm() return render_to_response('catalogue/book_sets.html', locals(), context_instance=RequestContext(request)) +def fragment_sets(request, id): + fragment = get_object_or_404(models.Fragment, pk=id) + user_sets = models.Tag.objects.filter(category='set', user=request.user) + fragment_sets = fragment.tags.filter(category='set', user=request.user) + + if not request.user.is_authenticated(): + return HttpResponse('Aby zarzÄ dzaÄ swoimi póÅkami, musisz siÄ zalogowaÄ.
') + + if request.method == 'POST': + form = forms.ObjectSetsForm(fragment, request.user, request.POST) + if form.is_valid(): + fragment.tags = ([models.Tag.objects.get(pk=id) for id in form.cleaned_data['set_ids']] + + list(fragment.tags.filter(~Q(category='set') | ~Q(user=request.user)))) + if request.is_ajax(): + return HttpResponse('PóÅki zostaÅy zapisane.
') + else: + return HttpResponseRedirect('/') + else: + form = forms.ObjectSetsForm(fragment, request.user) + new_set_form = forms.NewSetForm() + + return render_to_response('catalogue/fragment_sets.html', locals(), + context_instance=RequestContext(request)) + + @login_required @require_POST def new_set(request): new_set_form = forms.NewSetForm(request.POST) if new_set_form.is_valid(): new_set = new_set_form.save(request.user) - return HttpResponse('Zestaw %s zostaÅ utworzony
' % new_set) + return HttpResponse(u'PóÅka %s zostaÅa utworzona
' % new_set) return render_to_response('catalogue/book_sets.html', locals(), context_instance=RequestContext(request)) + +@login_required +@require_POST +def delete_shelf(request, slug): + user_set = get_object_or_404(models.Tag, slug=slug, category='set', user=request.user) + user_set.delete() + return HttpResponse(u'PóÅka %s zostaÅa usuniÄta
' % user_set.name) + + +@login_required +def user_shelves(request): + shelves = models.Tag.objects.filter(category='set', user=request.user) + new_set_form = forms.NewSetForm() + return render_to_response('catalogue/user_shelves.html', locals(), + context_instance=RequestContext(request)) +