def create_or_login(resp): openid = resp.identity_url print 'create_or_login', resp, openid if not isinstance(openid, basestring): flash(u'Incorrect or invalid OpenID, could not sign in') return redirect(url_for('index')) flask.session['openid'] = openid try: user = User.lookup(resp.identity_url) flask.g.user = user flash(u'Welcome back, '+user.fullname()) except UserInvalidId: print request.form fullname = resp.fullname nickname = resp.nickname email = resp.email user = User.make(openid, fullname, nickname, email) flask.g.user = user flask.session.permanent = True flash(u'Thank you for signing in, '+user.fullname()) return redirect(url_for('index'))