def flattr_podcast(request, podcast): """ Flattrs a podcast, records an event and redirects to the podcast """ user = request.user site = RequestSite(request) now = datetime.utcnow() # do flattring via the tasks queue, but wait for the result task = flattr_thing.delay(user.pk, podcast.get_id(), site.domain, request.is_secure(), 'Podcast') success, msg = task.get() if success: messages.success(request, _("Flattr\'d")) else: messages.error(request, msg) return HttpResponseRedirect(get_podcast_link_target(podcast))
def flattr_episode(request, episode): """ Flattrs an episode, records an event and redirects to the episode """ user = request.user site = RequestSite(request) # Flattr via the tasks queue, but wait for the result task = flattr_thing.delay(user.pk, episode._id, site.domain, request.is_secure(), 'Episode') success, msg = task.get() if success: messages.success(request, _("Flattr\'d")) else: messages.error(request, msg) podcast = episode.podcast return HttpResponseRedirect(get_episode_link_target(episode, podcast))
def flattr_podcast(request, podcast): """ Flattrs a podcast, records an event and redirects to the podcast """ user = request.user site = RequestSite(request) # do flattring via the tasks queue, but wait for the result task = flattr_thing.delay(user, podcast.get_id(), site.domain, request.is_secure(), 'Podcast') success, msg = task.get() if success: action = SubscriptionAction() action.action = 'flattr' state = podcast_state_for_user_podcast(request.user, podcast) add_subscription_action(state, action) messages.success(request, _("Flattr\'d")) else: messages.error(request, msg) return HttpResponseRedirect(get_podcast_link_target(podcast))
def flattr_episode(request, episode): """ Flattrs an episode, records an event and redirects to the episode """ user = request.user site = RequestSite(request) # Flattr via the tasks queue, but wait for the result task = flattr_thing.delay(user, episode._id, site.domain, request.is_secure(), 'Episode') success, msg = task.get() if success: action = EpisodeAction() action.action = 'flattr' action.upload_timestamp = get_timestamp(datetime.utcnow()) state = episode_state_for_user_episode(request.user, episode) add_episode_actions(state, [action]) messages.success(request, _("Flattr\'d")) else: messages.error(request, msg) podcast = podcast_by_id(episode.podcast) return HttpResponseRedirect(get_episode_link_target(episode, podcast))