def facebook_authorized(resp): if resp is None: return 'Access denied: reason=%s error=%s' % ( request.args['error_reason'], request.args['error_description'] ) # get user and token session['oauth_token'] = (resp['access_token'], '') me = facebook.get('/me') u = User.query.filter_by(fbid=me.data['id']).first() group_alias = request.args.get('group_alias') # see if user is new user_is_new = False if not u: pton_info = get_pton_info(me) if True or pton_info: # TODO this is a temporary hack b/c for some reason it doesn't always work... FIXME u = User.create_pton_student(me, pton_info) user_is_new = True else: return "Access denied. If you're a Princeton student, \ connect your Princeton email to Facebook." # set session variables session['user_id'] = u.id session['user_first_name'] = u.first_name session['user_last_name'] = u.last_name session['logged_in'] = True # import user events Event.import_user_facebook_events(user, session['oauth_token'][0]) if user_is_new: # here we show the prompt if not group_alias: return redirect(url_for("index")) else: return redirect(url_for("index", group_alias=group_alias)) else: if not group_alias: return redirect(url_for("index")) else: return redirect(url_for("index", group_alias=group_alias))