def callback_view(): if request.args.get('state') == session.get('state'): code = request.args.get('code') user = GithubUser(code=code, client_id=constants.get('GH_CLIENT_ID'), secret=constants.get('GH_SECRET')) if user.is_valid(): session['token'] = user.token org_verified = user.verify_org(constants.get('GH_ORG')) repo_verified = any([user.verify_repo(str(b.repo.id)) for b in bots.values()]) if org_verified and repo_verified: flash('You are now logged in!', 'success') session['verified'] = True else: flash('You do not satisfy the authentication requirements!', 'danger') session['verified'] = False session['org_verified'] = org_verified session['repo_verified'] = repo_verified return redirect(url_for('no_auth_view')) else: flash('Your GitHub credentials are not valid!', 'danger') session['verified'] = False if session.get('object_key'): object_key = session.pop('object_key') return redirect(url_for('go_view', object_key=object_key)) if session.get('next'): return redirect(session.pop('next')) return redirect(url_for('demo_view'))
def callback_view(): if request.args.get('state') == session.get('state'): code = request.args.get('code') user = GithubUser(code=code, client_id=constants.get('GH_CLIENT_ID'), secret=constants.get('GH_SECRET')) if user.is_valid(): session['token'] = user.token org_verified = user.verify_org(constants.get('GH_ORG')) repo_verified = any( [user.verify_repo(str(b.repo.id)) for b in bots.values()]) if org_verified and repo_verified: flash('You are now logged in!', 'success') session['verified'] = True else: flash('You do not satisfy the authentication requirements!', 'danger') session['verified'] = False session['org_verified'] = org_verified session['repo_verified'] = repo_verified return redirect(url_for('no_auth_view')) else: flash('Your GitHub credentials are not valid!', 'danger') session['verified'] = False if session.get('object_key'): object_key = session.pop('object_key') return redirect(url_for('go_view', object_key=object_key)) if session.get('next'): return redirect(session.pop('next')) return redirect(url_for('demo_view'))
def callback_view(): if request.args.get('state') == session.get('state'): code = request.args.get('code') user = GithubUser(code=code, client_id=constants.get('GH_CLIENT_ID'), secret=constants.get('GH_SECRET')) if user.is_valid(): session['token'] = user.token session['valid_paths'] = list(set(map(lambda x: x + '/', user.get_all_repo_names())).intersection(set(s3.get_all_repo_names()))) session['verified'] = True else: flash('Your GitHub credentials are not valid!', 'danger') session['verified'] = False if session.get('object_key'): object_key = session.pop('object_key') return redirect(url_for('go_view', object_key=object_key)) if session.get('next'): return redirect(session.pop('next')) return redirect(url_for('home_view'))
def leaderboard_view(): leaderboards = { r: s.all({'value.contribution': { '$exists': True }}, ('value.net_contribution', -1)) for r, s in storages.iteritems() } return render_template('leaderboard.html', \ org=constants.get('GH_ORG_NAME'), user=GithubUser(token=session.get('token')), all_langs=LANGS, \ leaderboards=leaderboards)