fix 500s on login pages

This commit is contained in:
codl 2022-03-04 13:28:38 +01:00
parent 917202de1d
commit 82a72bfd32
1 changed files with 12 additions and 12 deletions

View File

@ -205,15 +205,15 @@ def mastodon_login_step1(instance=None):
instance_url=instance_url, _external=True) instance_url=instance_url, _external=True)
try: try:
app = libforget.mastodon.get_or_create_app( mastoapp = libforget.mastodon.get_or_create_app(
instance_url, instance_url,
callback, callback,
url_for('index', _external=True)) url_for('index', _external=True))
db.session.merge(app) db.session.merge(mastoapp)
db.session.commit() db.session.commit()
return redirect(libforget.mastodon.login_url(app, callback)) return redirect(libforget.mastodon.login_url(mastoapp, callback))
except Exception: except Exception:
if sentry: if sentry:
@ -224,14 +224,14 @@ def mastodon_login_step1(instance=None):
@app.route('/login/mastodon/callback/<instance_url>') @app.route('/login/mastodon/callback/<instance_url>')
def mastodon_login_step2(instance_url): def mastodon_login_step2(instance_url):
code = request.args.get('code', None) code = request.args.get('code', None)
app = MastodonApp.query.get(instance_url) mastoapp = MastodonApp.query.get(instance_url)
if not code or not app: if not code or not mastoapp:
return redirect(url_for('mastodon_login_step1', error=True)) return redirect(url_for('mastodon_login_step1', error=True))
callback = url_for('mastodon_login_step2', callback = url_for('mastodon_login_step2',
instance_url=instance_url, _external=True) instance_url=instance_url, _external=True)
token = libforget.mastodon.receive_code(code, app, callback) token = libforget.mastodon.receive_code(code, mastoapp, callback)
account = token.account account = token.account
session = login(account.id) session = login(account.id)
@ -269,16 +269,16 @@ def misskey_login(instance=None):
try: try:
session = make_session() session = make_session()
app = libforget.misskey.get_or_create_app( mkapp = libforget.misskey.get_or_create_app(
instance_url, instance_url,
callback, callback,
url_for('index', _external=True), url_for('index', _external=True),
session) session)
db.session.merge(app) db.session.merge(mkapp)
db.session.commit() db.session.commit()
return redirect(libforget.misskey.login_url(app, callback, session)) return redirect(libforget.misskey.login_url(mkapp, callback, session))
except Exception: except Exception:
if sentry: if sentry:
@ -290,11 +290,11 @@ def misskey_login(instance=None):
def misskey_callback(instance_url): def misskey_callback(instance_url):
# legacy auth and miauth use different parameter names # legacy auth and miauth use different parameter names
token = request.args.get('token', None) or request.args.get('session', None) token = request.args.get('token', None) or request.args.get('session', None)
app = MisskeyApp.query.get(instance_url) mkapp = MisskeyApp.query.get(instance_url)
if not token or not app: if not token or not mkapp:
return redirect(url_for('misskey_login', error=True)) return redirect(url_for('misskey_login', error=True))
token = libforget.misskey.receive_token(token, app) token = libforget.misskey.receive_token(token, mkapp)
account = token.account account = token.account
session = login(account.id) session = login(account.id)