app-MAIL-temp/app/onboarding/views/account_activated.py

66 lines
1.9 KiB
Python
Raw Normal View History

from app.onboarding.base import onboarding_bp
from enum import Enum
from flask import redirect, render_template, request, url_for
from flask_login import login_required
CHROME_EXTENSION_LINK = "https://chrome.google.com/webstore/detail/simpleloginreceive-send-e/dphilobhebphkdjbpfohgikllaljmgbn"
FIREFOX_EXTENSION_LINK = "https://addons.mozilla.org/firefox/addon/simplelogin/"
EDGE_EXTENSION_LINK = "https://microsoftedge.microsoft.com/addons/detail/simpleloginreceive-sen/diacfpipniklenphgljfkmhinphjlfff"
class Browser(Enum):
Firefox = 1
Chrome = 2
Edge = 3
Other = 4
def get_browser() -> Browser:
user_agent = request.user_agent
if user_agent.platform in ["android", "iphone", "ipad']:
return Browser.Other
if user_agent.browser == "edge":
return Browser.Edge
elif user_agent.browser in ["chrome", "opera", "webkit"]:
return Browser.Chrome
elif user_agent.browser in ["mozilla", "firefox"]:
return Browser.Firefox
return Browser.Other
def is_mobile() -> bool:
return request.user_agent.platform in [
"android",
"blackberry",
"ipad",
"iphone",
"symbian",
]
@onboarding_bp.route("/account_activated", methods=["GET"])
@login_required
def account_activated():
if is_mobile():
return redirect(url_for("dashboard.index"))
browser = get_browser()
if browser == Browser.Chrome:
extension_link = CHROME_EXTENSION_LINK
browser_name = "Chrome"
elif browser == Browser.Firefox:
extension_link = FIREFOX_EXTENSION_LINK
browser_name = "Firefox"
elif browser == Browser.Edge:
extension_link = EDGE_EXTENSION_LINK
browser_name = "Edge"
else:
return redirect(url_for("dashboard.index"))
return render_template(
"onboarding/account_activated.html",
extension_link=extension_link,
browser_name=browser_name,
)