# ====================
-@require_POST
+@login_required
def like_book(request, slug):
- if not request.user.is_authenticated:
- return HttpResponseForbidden('Login required.')
book = get_object_or_404(Book, slug=slug)
+ if request.method != 'POST':
+ return redirect(book)
+
models.UserList.like(request.user, book)
if is_ajax(request):
form_class = forms.RemoveSetForm
-@require_POST
+@login_required
def unlike_book(request, slug):
- if not request.user.is_authenticated:
- return HttpResponseForbidden('Login required.')
book = get_object_or_404(Book, slug=slug)
+ if request.method != 'POST':
+ return redirect(book)
+
models.UserList.unlike(request.user, book)
if is_ajax(request):
@login_required
def my_shelf(request):
template_name = 'social/my_shelf.html'
+ favs = request.user.userlist_set.filter(favorites=True)
+ others = request.user.userlist_set.filter(favorites=False)
ulists = list(request.user.userlist_set.all())
suggest = [t for t in ulists if t.name]
return render(request, template_name, {
- 'tags': ulists,
- 'books': Book.objects_filter(userlistitem__list__user=request.user),
- 'suggest': suggest,
+ 'favs': favs,
+ 'others': others,
+ #'books': Book.objects.filter(userlistitem__list__user=request.user),
})