def _check(request, *args, **kw): if request.user.is_authenticated() and not 'ajax' in request.GET: profile = request.user.get_profile() url = abs_reverse('edit_location') + '?' + urlencode({'next':make_absolute_url(request.path_info)}) if not profile.has_location(): messages.add_message(request, messages.WARNING, _("Your location is not set. Change it <a href='%s'>here</a>.") % url) elif profile.location_changed(request.geo): messages.add_message(request, messages.INFO, _("Your location may be inaccurate. Check <a href='%s'>settings</a>.") % url) return view(request, *args, **kw)
def canvas( self, request, user_id=None, oauth_token=None, **kwargs ): parent = super( FBAppEvent, self ).canvas( request, user_id, oauth_token, **kwargs ) participant = self.get_participant() if participant.state >= ContestParticipation.STATE_QUIZ: self.api = graph.API( oauth_token ) ret = self.process_requests( request, user_id ) if ret: return ret return http.HttpResponseRedirect( abs_reverse( event_viral, args=[self.object.slug]) ) return parent
def fb_begin(request, redirect_uri = None): params = dict( client_id = settings.FACEBOOK_CONNECT_KEY, redirect_uri=redirect_uri or abs_reverse(fb_auth_cb), state=request.META.get('QUERY_STRING', ''), scope=settings.FACEBOOK_PERMS, ) if request.is_mobile: params['display'] = 'touch' return HttpResponseRedirect('https://graph.facebook.com/oauth/authorize?' + urlencode(params))
def fb_begin(request, redirect_uri=None): params = dict( client_id=settings.FACEBOOK_CONNECT_KEY, redirect_uri=redirect_uri or abs_reverse(fb_auth_cb), state=request.META.get('QUERY_STRING', ''), scope=settings.FACEBOOK_PERMS, ) if request.is_mobile: params['display'] = 'touch' return HttpResponseRedirect('https://graph.facebook.com/oauth/authorize?' + urlencode(params))
def assign_facebook(request): if request.GET.get('error'): err = dict(error=request.GET.get('error')) return HttpResponseRedirect( reverse('associations') + '?' + urlencode(err)) cookie = get_facebook_cookie(request) if cookie: uid = cookie['user_id'] access_token = get_access_token(cookie['code'], settings.FACEBOOK_CONNECT_KEY, settings.FACEBOOK_CONNECT_SECRET) user_details = API().get("/%s" % uid) logger.info(user_details) elif 'code' in request.GET: query_string = request.GET.get('state', '') access_token = get_access_token( request.GET.get('code'), settings.FACEBOOK_CONNECT_KEY, settings.FACEBOOK_CONNECT_SECRET, settings.FULL_DOMAIN + reverse(assign_facebook)) user_details = facebook_user_details(access_token) uid = user_details['uid'] else: return fb_begin(request, redirect_uri=abs_reverse(assign_facebook)) try: assoc = FBAssociation.objects.get(user=request.user) err = dict(error=_("%s already has fb association") % request.user) return HttpResponseRedirect( reverse('associations') + '?' + urlencode(err)) except FBAssociation.DoesNotExist: pass try: assoc = FBAssociation.objects.get(fb_uid=uid) msg = _( "This %(service)s service account is already associated with user %(user)s" ) % dict(service='facebook', user=assoc.user) err = dict(error=msg.encode('utf-8')) return HttpResponseRedirect( reverse('associations') + '?' + urlencode(err)) except FBAssociation.DoesNotExist: pass assoc = FBAssociation.objects.create( user=request.user, fb_uid=uid, fb_user=FBUser.create_or_update(user_details), is_new=False, access_token=access_token, is_from_facebook=False) return HttpResponseRedirect(reverse('associations') + '?associated')
def _check(request, *args, **kw): if request.user.is_authenticated() and not 'ajax' in request.GET: profile = request.user.get_profile() url = abs_reverse('edit_location') + '?' + urlencode( {'next': make_absolute_url(request.path_info)}) if not profile.has_location(): messages.add_message( request, messages.WARNING, _("Your location is not set. Change it <a href='%s'>here</a>." ) % url) elif profile.location_changed(request.geo): messages.add_message( request, messages.INFO, _("Your location may be inaccurate. Check <a href='%s'>settings</a>." ) % url) return view(request, *args, **kw)
def _sync_with_fb(cls, id): assoc = cls.objects.select_related().get(id=id) assoc.sync_with_fb() if assoc.fb_user_id: from film20.notification.models import send from film20.core.urlresolvers import reverse as abs_reverse friends = User.objs.active().facebook_friends(assoc.fb_user_id) send(friends, "friends_joined", { 'user': assoc.user, 'fb_user': assoc.fb_user, 'network': 'Facebook', 'profile_url': abs_reverse('show_profile', args=[assoc.user.username]), }) for friend in friends: assoc.user.followers.follow(friend)
def tvchannel(request, id): channel = get_object_or_404(Channel, pk=id) if channel.type == Channel.TYPE_CINEMA: return HttpResponseRedirect(abs_reverse(theater, args=[id])) assert channel.type == Channel.TYPE_TV_CHANNEL channels = [channel] date = get_date(request) past = 'past' in request.GET films = get_films(date, channels, request.user, past=past, without_unmatched=True) ctx = dict( channel=channel, date=date, days=get_available_showtime_dates(request), films=films, ) return render(request, "showtimes/single_channel.html", ctx)
def assign_facebook(request): if request.GET.get('error'): err = dict(error=request.GET.get('error')) return HttpResponseRedirect(reverse('associations') + '?' + urlencode(err)) cookie = get_facebook_cookie(request) if cookie: uid = cookie['user_id'] access_token = get_access_token(cookie['code'], settings.FACEBOOK_CONNECT_KEY, settings.FACEBOOK_CONNECT_SECRET) user_details = API().get("/%s" % uid) logger.info(user_details) elif 'code' in request.GET: query_string = request.GET.get('state', '') access_token = get_access_token( request.GET.get('code'), settings.FACEBOOK_CONNECT_KEY, settings.FACEBOOK_CONNECT_SECRET, settings.FULL_DOMAIN + reverse(assign_facebook)) user_details = facebook_user_details(access_token) uid = user_details['uid'] else: return fb_begin(request, redirect_uri=abs_reverse(assign_facebook)) try: assoc = FBAssociation.objects.get(user=request.user) err = dict(error=_("%s already has fb association") % request.user) return HttpResponseRedirect(reverse('associations') + '?' + urlencode(err)) except FBAssociation.DoesNotExist: pass try: assoc = FBAssociation.objects.get(fb_uid=uid) msg=_("This %(service)s service account is already associated with user %(user)s") % dict(service='facebook', user=assoc.user) err = dict(error=msg.encode('utf-8')) return HttpResponseRedirect(reverse('associations') + '?' + urlencode(err)) except FBAssociation.DoesNotExist: pass assoc = FBAssociation.objects.create( user=request.user, fb_uid=uid, fb_user=FBUser.create_or_update(user_details), is_new=False, access_token=access_token, is_from_facebook=False ) return HttpResponseRedirect(reverse('associations') + '?associated')
def _sync_with_fb(cls, id): assoc = cls.objects.select_related().get(id=id) assoc.sync_with_fb() if assoc.fb_user_id: from film20.notification.models import send from film20.core.urlresolvers import reverse as abs_reverse friends = User.objs.active().facebook_friends(assoc.fb_user_id) send( friends, "friends_joined", { 'user': assoc.user, 'fb_user': assoc.fb_user, 'network': 'Facebook', 'profile_url': abs_reverse('show_profile', args=[assoc.user.username]), }) for friend in friends: assoc.user.followers.follow(friend)
def get_absolute_url(self): return abs_reverse('show_festival', args=(self.permalink, ))
def get_absolute_url(self): return abs_reverse('show_festival', args=(self.permalink,))
def get_absolute_url(self): return abs_reverse('showtimes_screening', args=[self.id])
def get_absolute_url( self ): return abs_reverse( fbapp )
def film_absolute_url(self): film_view = self.is_tv_series and 'show_series' or 'show_film' return abs_reverse(film_view, args=[self.film_permalink])
def get_absolute_url( self ): return abs_reverse( event, args=[self.get_object().slug ] )
def on_end_questions( self ): super( EventQuiz, self ).on_end_questions() return http.HttpResponseRedirect( abs_reverse( event_viral, args=[self.get_contest().slug]) )
try: self.api.delete('/%s_%s' % (id, user_id)) except HTTPError, e: pass if req and str(req['to']['id']) == str(user_id): request_name = req.get('data') if request_name == 'ticket_contest': request.session['invite_request'] = req elif request_name == 'invite': signup = True if signup: return http.HttpResponse(""" <script>top.location.href="%s"</script> """ % abs_reverse('fb_begin')) fbapp = never_cache(FBApp.as_view()) class ResultsView(DetailView): model = Contest template_name = 'fbapp/results.html' def get_object(self): if not 'pk' in self.kwargs: obj = Contest.objects.filter(state=Contest.STATE_CLOSED) obj = obj and obj[0] if not obj: raise http.Http404 return obj return super(ResultsView, self).get_object()