def login_callback(): resp = feature.api.authorized_response() if resp is None: flash(feature.options["user_denied_login_message"], "error") return redirect(url_for("users.login")) with transaction(): users.current.slack_access_token = resp['access_token'] users.current.slack_team_name = resp['team_name'] users.current.slack_team_id = resp['team_id'] if 'incoming_webhook' in resp: users.current.slack_incoming_webhook_url = resp['incoming_webhook']['url'] users.current.slack_incoming_webhook_channel = resp['incoming_webhook']['channel'] return redirect(request.args.get('next') or feature.options['default_redirect'])
def login(): callback_url = url_for('.login_callback', next=request.args.get('next'), _external=True) return feature.api.authorize(callback=callback_url)