From 3bb2a81c5aeddc617b4a8061d0e99d1de9e98326 Mon Sep 17 00:00:00 2001 From: n9k Date: Thu, 23 Jun 2022 02:53:38 +0000 Subject: [PATCH] Bypass initial chat captcha if solved access captcha --- anonstream/helpers/user.py | 6 ++++-- anonstream/routes/core.py | 2 +- anonstream/routes/wrappers.py | 6 ++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/anonstream/helpers/user.py b/anonstream/helpers/user.py index 41b1023..b4d8346 100644 --- a/anonstream/helpers/user.py +++ b/anonstream/helpers/user.py @@ -22,7 +22,9 @@ def generate_token_hash_and_tag(token): return token_hash, tag -def generate_user(timestamp, token, broadcaster, presence): +def generate_user( + timestamp, token, broadcaster, verified=False, presence=Presence.NOTWATCHING, +): colour = generate_colour( seed='name\0' + token, bg=CONFIG['CHAT_BACKGROUND_COLOUR'], @@ -34,7 +36,7 @@ def generate_user(timestamp, token, broadcaster, presence): 'token_hash': token_hash, 'tag': tag, 'broadcaster': broadcaster, - 'verified': broadcaster, + 'verified': verified or broadcaster, 'websockets': {}, 'name': None, 'color': colour_to_color(colour), diff --git a/anonstream/routes/core.py b/anonstream/routes/core.py index 69f0b15..59e153a 100644 --- a/anonstream/routes/core.py +++ b/anonstream/routes/core.py @@ -112,7 +112,7 @@ async def access(timestamp, user_or_token): failure_id = add_failure('Captcha has expired') case Answer.OK: failure_id = None - user = generate_and_add_user(timestamp, token) + user = generate_and_add_user(timestamp, token, verified=True) if failure_id is not None: url = url_for('home', token=token, failure=failure_id) raise abort(redirect(url, 303)) diff --git a/anonstream/routes/wrappers.py b/anonstream/routes/wrappers.py index 339489b..3bcc606 100644 --- a/anonstream/routes/wrappers.py +++ b/anonstream/routes/wrappers.py @@ -72,13 +72,15 @@ def auth_required(f): return response return wrapper -def generate_and_add_user(timestamp, token=None, broadcaster=False): +def generate_and_add_user( + timestamp, token=None, broadcaster=False, verified=False, +): token = token or generate_token() user = generate_user( timestamp=timestamp, token=token, broadcaster=broadcaster, - presence=Presence.NOTWATCHING, + verified=verified, ) USERS_BY_TOKEN[token] = user USERS_UPDATE_BUFFER.add(token)