Esempio n. 1
0
def invite_friends_for_event(request, key_id):
    from cgi import escape

    key_id = int(key_id, 10)
    event = get_object_or_404(Event, id=key_id)

    # This owuld be external link, but we want it to open inside the app.
    # event_show_url = "http://%s%s?invitation=1"%(request.META['HTTP_HOST'], event.get_facebook_url())
    event_show_url = get_facebook_app_url(event.get_facebook_url()) + '?invitation=' + str(request.facebook.uid)

    content = """<fb:name uid="%s" firstnameonly="true" shownetwork="false"/>
       wants to let you know about Art of Living event: <a href="%s">%s</a>,
       <fb:req-choice url="%s" label="Check out this event"/>
       """ % (request.facebook.uid, event_show_url, event, event_show_url)

    invitation_content = escape(content, True)
    if request.GET.has_key('next'):
        next = request.GET['next']
    else:
        next = "http://" + request.META['HTTP_HOST'] + event.get_facebook_url() + '?invitation=' + str(request.facebook.uid)

# FIXME: Why next doesnt work correctly in real life? Do I need to encode it?

    return render_to_response(request, 'invite_for_event.html',
                              {'content':invitation_content, 'event':event, 'next':escape(next), 'in_iframe' : True} )
Esempio n. 2
0
def event_show(request, key_id):
    key_id = int(key_id, 10)
    if request.user.is_authenticated():
        event = get_object_or_404(Event, id=key_id)
        fav = Favourite.all().filter('event =', event).filter('user ='******'invitation'):
        invitation = request.GET['invitation']
    else:
        invitation = 0
    extra_context = { 'is_fav' : fav,
                      'in_iframe' : True,
                      'invitation' : invitation,
                      'invitation_link' : get_facebook_app_url(request.path), }

    return object_detail(request, Event.all(), object_id=key_id, extra_context = extra_context)