1 from django
.core
.urlresolvers
import reverse
2 from django
.http
import HttpResponseRedirect
3 from django
.contrib
import messages
4 from django
.utils
.translation
import ugettext
as _
5 from django
.contrib
.auth
.decorators
import login_required
6 from django
.shortcuts
import render
7 from django
.contrib
.sites
.models
import RequestSite
8 from django
.views
.decorators
.vary
import vary_on_cookie
9 from django
.views
.decorators
.cache
import never_cache
, cache_control
11 from mygpo
.suggestions
.tasks
import update_suggestions
12 from mygpo
.db
.couchdb
.user
import (suggestions_for_user
,
13 blacklist_suggested_podcast
)
18 def blacklist(request
, blacklisted_podcast
):
20 suggestion
= suggestions_for_user(user
)
21 blacklist_suggested_podcast(suggestion
, blacklisted_podcast
.get_id())
22 update_suggestions
.delay(user
)
23 return HttpResponseRedirect(reverse('suggestions'))
28 def rate_suggestions(request
):
29 rating_val
= int(request
.GET
.get('rate', None))
31 suggestion
= suggestions_for_user(request
.user
)
32 suggestion
.rate(rating_val
, request
.user
.profile
.uuid
.hex)
35 messages
.success(request
, _('Thanks for rating!'))
37 return HttpResponseRedirect(reverse('suggestions'))
40 @cache_control(private
=True)
42 def suggestions(request
):
43 suggestion_obj
= suggestions_for_user(request
.user
)
44 suggestions
= suggestion_obj
.get_podcasts()
45 current_site
= RequestSite(request
)
46 return render(request
, 'suggestions.html', {
47 'entries': suggestions
,