def lookup_current_user(): try: user = flask.g.user return except AttributeError: pass # find user try: openid = flask.session['openid'] except KeyError: try: openid = flask.session['anonymous_openid'] except KeyError: openid = None #print 'lookup: '+str(openid) try: user = User.lookup(openid) except UserInvalidId: user = User.anonymous() flask.session.pop('openid', None) flask.session['anonymous_openid'] = user.get_id() flask.g.user = user