From 97805173cbfa6359b0ab5c85acc531deb39ffa94 Mon Sep 17 00:00:00 2001 From: Son Nguyen Kim Date: Tue, 26 Jul 2022 12:38:18 +0200 Subject: [PATCH] remove envs used for proton beta link (#1189) * remove envs used for proton beta link * remove is_connect_with_proton_enabled() --- app/auth/views/login.py | 4 ++-- app/config.py | 4 ---- app/dashboard/views/enter_sudo.py | 5 +++-- app/dashboard/views/setting.py | 7 ++++--- app/internal/integrations.py | 15 +++------------ app/proton/utils.py | 15 +-------------- 6 files changed, 13 insertions(+), 37 deletions(-) diff --git a/app/auth/views/login.py b/app/auth/views/login.py index 55e4e50c..c74bf76a 100644 --- a/app/auth/views/login.py +++ b/app/auth/views/login.py @@ -5,11 +5,11 @@ from wtforms import StringField, validators from app.auth.base import auth_bp from app.auth.views.login_utils import after_login +from app.config import CONNECT_WITH_PROTON from app.events.auth_event import LoginEvent from app.extensions import limiter from app.log import LOG from app.models import User -from app.proton.utils import is_connect_with_proton_enabled from app.utils import sanitize_email, sanitize_next_url @@ -68,5 +68,5 @@ def login(): form=form, next_url=next_url, show_resend_activation=show_resend_activation, - connect_with_proton=is_connect_with_proton_enabled(), + connect_with_proton=CONNECT_WITH_PROTON, ) diff --git a/app/config.py b/app/config.py index 43e2b7a0..97e58d88 100644 --- a/app/config.py +++ b/app/config.py @@ -249,10 +249,6 @@ PROTON_VALIDATE_CERTS = "PROTON_VALIDATE_CERTS" in os.environ CONNECT_WITH_PROTON = "CONNECT_WITH_PROTON" in os.environ PROTON_EXTRA_HEADER_NAME = os.environ.get("PROTON_EXTRA_HEADER_NAME") PROTON_EXTRA_HEADER_VALUE = os.environ.get("PROTON_EXTRA_HEADER_VALUE") -CONNECT_WITH_PROTON_COOKIE_NAME = os.environ.get( - "CONNECT_WITH_PROTON_COOKIE_NAME", "enable-proton" -) -PROTON_ALLOW_INTERNAL_LINK = "PROTON_ALLOW_INTERNAL_LINK" in os.environ # in seconds AVATAR_URL_EXPIRATION = 3600 * 24 * 7 # 1h*24h/d*7d=1week diff --git a/app/dashboard/views/enter_sudo.py b/app/dashboard/views/enter_sudo.py index 6e937dcc..7246fce8 100644 --- a/app/dashboard/views/enter_sudo.py +++ b/app/dashboard/views/enter_sudo.py @@ -6,10 +6,11 @@ from flask_login import login_required, current_user from flask_wtf import FlaskForm from wtforms import PasswordField, validators +from app.config import CONNECT_WITH_PROTON from app.dashboard.base import dashboard_bp from app.log import LOG from app.models import PartnerUser -from app.proton.utils import is_connect_with_proton_enabled, get_proton_partner +from app.proton.utils import get_proton_partner from app.utils import sanitize_next_url _SUDO_GAP = 900 @@ -41,7 +42,7 @@ def enter_sudo(): else: flash("Incorrect password", "warning") - proton_enabled = is_connect_with_proton_enabled() + proton_enabled = CONNECT_WITH_PROTON if proton_enabled: # Only for users that have the account linked partner_user = PartnerUser.get_by(user_id=current_user.id) diff --git a/app/dashboard/views/setting.py b/app/dashboard/views/setting.py index 794bb269..b26c15d5 100644 --- a/app/dashboard/views/setting.py +++ b/app/dashboard/views/setting.py @@ -1,4 +1,5 @@ from io import BytesIO +from typing import Optional, Tuple import arrow from flask import ( @@ -12,7 +13,6 @@ from flask_login import login_required, current_user from flask_wtf import FlaskForm from flask_wtf.file import FileField from newrelic import agent -from typing import Optional, Tuple from wtforms import StringField, validators from wtforms.fields.html5 import EmailField @@ -21,6 +21,7 @@ from app.config import ( URL, FIRST_ALIAS_DOMAIN, ALIAS_RANDOM_SUFFIX_LENGTH, + CONNECT_WITH_PROTON, ) from app.dashboard.base import dashboard_bp from app.db import Session @@ -52,7 +53,7 @@ from app.models import ( PartnerSubscription, UnsubscribeBehaviourEnum, ) -from app.proton.utils import is_connect_with_proton_enabled, get_proton_partner +from app.proton.utils import get_proton_partner from app.utils import random_string, sanitize_email @@ -412,7 +413,7 @@ def setting(): coinbase_sub=coinbase_sub, FIRST_ALIAS_DOMAIN=FIRST_ALIAS_DOMAIN, ALIAS_RAND_SUFFIX_LENGTH=ALIAS_RANDOM_SUFFIX_LENGTH, - connect_with_proton=is_connect_with_proton_enabled(), + connect_with_proton=CONNECT_WITH_PROTON, proton_linked_account=proton_linked_account, ) diff --git a/app/internal/integrations.py b/app/internal/integrations.py index 1495195e..eae22f19 100644 --- a/app/internal/integrations.py +++ b/app/internal/integrations.py @@ -1,8 +1,7 @@ -import arrow from flask import make_response, redirect, url_for, flash from flask_login import current_user + from .base import internal_bp -from app import config @internal_bp.route("/integrations/proton") @@ -13,14 +12,6 @@ def set_enable_proton_cookie(): redirect_url = url_for("auth.login") response = make_response(redirect(redirect_url)) - if config.PROTON_ALLOW_INTERNAL_LINK: - flash("You can now connect your Proton and your SimpleLogin account", "success") - response.set_cookie( - config.CONNECT_WITH_PROTON_COOKIE_NAME, - value="true", - expires=arrow.now().shift(days=30).datetime, - secure=True if config.URL.startswith("https") else False, - httponly=True, - samesite="Lax", - ) + + flash("You can now connect your Proton and your SimpleLogin account", "success") return response diff --git a/app/proton/utils.py b/app/proton/utils.py index fea2c334..7b02e832 100644 --- a/app/proton/utils.py +++ b/app/proton/utils.py @@ -1,8 +1,5 @@ from typing import Optional -from app.config import CONNECT_WITH_PROTON, CONNECT_WITH_PROTON_COOKIE_NAME -from flask import request - from app.db import Session from app.errors import ProtonPartnerNotSetUp from app.models import Partner @@ -22,15 +19,5 @@ def get_proton_partner() -> Partner: return _PROTON_PARTNER -def is_proton_partner(partner: Partner) -> str: +def is_proton_partner(partner: Partner) -> bool: return partner.name == PROTON_PARTNER_NAME - - -def is_connect_with_proton_enabled() -> bool: - if CONNECT_WITH_PROTON: - return True - if CONNECT_WITH_PROTON_COOKIE_NAME and request.cookies.get( - CONNECT_WITH_PROTON_COOKIE_NAME - ): - return True - return False