コード例 #1
0
ファイル: auth.py プロジェクト: MihaiTabara/nbsap
def login():
    # if already logged in, go back to were came from
    if flask.g.user is not None:
        return flask.redirect(oid.get_next_url())

    return flask.render_template('login.html', next=oid.get_next_url(),
                                 error=oid.fetch_error())
コード例 #2
0
ファイル: auth.py プロジェクト: MihaiTabara/nbsap
def create_or_login(resp):
    flask.session['openid'] = resp.identity_url
    user = User.query.filter_by(openid=resp.identity_url).first()

    if user is not None:
        flask.flash(_(u'Successfully signed in.'), "success")
        flask.g.user = user
        return flask.redirect(oid.get_next_url())

    return flask.redirect(flask.url_for('auth.add_new_user',
                          next=oid.get_next_url(), name=resp.fullname or
                          resp.nickname, email=resp.email))
コード例 #3
0
ファイル: auth.py プロジェクト: MihaiTabara/nbsap
def add_new_user():
    if flask.g.user is not None or 'openid' not in flask.session:
        return flask.redirect(oid.get_next_url())

    try:
        name = flask.request.args.getlist('name')[0]
    except IndexError:
        name = None
    try:
        email = flask.request.args.getlist('email')[0]
    except IndexError:
        email = None

    flask.flash(_('Newcomer admin. Welcome!'), "success")
    db_session.add(User(name, email, flask.session['openid']))
    db_session.commit()

    return flask.redirect(oid.get_next_url())
コード例 #4
0
ファイル: auth.py プロジェクト: MihaiTabara/nbsap
def logout():
    flask.session.pop('openid', None)
    flask.flash(_(u'Successfully signed out.'), "success")
    return flask.redirect(oid.get_next_url())
コード例 #5
0
ファイル: auth.py プロジェクト: MihaiTabara/nbsap
def yahoo_login():
    if flask.g.user is not None:
        return flask.redirect(oid.get_next_url())

    return oid.try_login(COMMON_PROVIDERS['yahoo'], ask_for=['email',
                         'fullname', 'nickname'])