mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-29 21:42:22 +00:00
change login flow
This commit is contained in:
@@ -73,10 +73,13 @@ def main():
|
||||
else:
|
||||
load_user_info(login_info)
|
||||
status = fetch_user_configs()
|
||||
if isinstance(status, Success):
|
||||
if status == 200:
|
||||
apply_configs()
|
||||
terminal_controller.parse_args_and_run()
|
||||
if isinstance(status, Failure):
|
||||
elif isinstance(status, Failure):
|
||||
login_prompt(welcome=False)
|
||||
else:
|
||||
console.print("\n[red]Invalid login.[/red]")
|
||||
login_prompt(welcome=False)
|
||||
|
||||
|
||||
|
||||
@@ -4,15 +4,16 @@ import json
|
||||
from typing import Union
|
||||
import jwt
|
||||
import requests
|
||||
from openbb_terminal.base_helpers import strtobool
|
||||
from openbb_terminal.core.config.paths import SETTINGS_DIRECTORY
|
||||
from openbb_terminal.rich_config import console
|
||||
from openbb_terminal import feature_flags as obbff
|
||||
from openbb_terminal.account.statics import BASE_URL, Success, Failure
|
||||
from openbb_terminal.account.statics import BASE_URL, Failure
|
||||
from openbb_terminal.account import user
|
||||
from openbb_terminal import config_terminal as cfg
|
||||
|
||||
|
||||
def fetch_user_configs() -> Union[Success, Failure]:
|
||||
def fetch_user_configs() -> Union[int, Failure]:
|
||||
try:
|
||||
response = requests.get(
|
||||
url=BASE_URL + "terminal/user",
|
||||
@@ -20,20 +21,28 @@ def fetch_user_configs() -> Union[Success, Failure]:
|
||||
)
|
||||
if response.status_code == 200:
|
||||
user.CONFIGS = json.loads(response.content)
|
||||
return Success("[green]\nFetched user configurations.[/green]")
|
||||
return Failure("[red]\nFailed to fetch configurations.[/red]")
|
||||
console.print("[green]\nFetched user configurations.[/green]")
|
||||
return response.status_code
|
||||
console.print("[red]\nFailed to fetch configurations.[/red]")
|
||||
return response.status_code
|
||||
except requests.exceptions.ConnectionError:
|
||||
return Failure("[red]\nConnection error.[/red]")
|
||||
except Exception:
|
||||
return Failure("[red]\nFailed to apply configurations.[/red]")
|
||||
return Failure("[red]\nFailed to fetch configurations.[/red]")
|
||||
|
||||
|
||||
def apply_configs():
|
||||
"""Apply configurations."""
|
||||
console.print(user.CONFIGS, style="red")
|
||||
if user.CONFIGS:
|
||||
settings = user.CONFIGS.get("features_settings", {})
|
||||
for k, v in settings.items():
|
||||
setattr(obbff, k, v)
|
||||
if hasattr(obbff, k):
|
||||
if isinstance(getattr(obbff, k), int):
|
||||
setattr(obbff, k, strtobool(v))
|
||||
else:
|
||||
console.print("string", k, type(getattr(obbff, k)))
|
||||
setattr(obbff, k, v)
|
||||
|
||||
keys = user.CONFIGS.get("features_keys", {})
|
||||
for k, v in keys.items():
|
||||
|
||||
Reference in New Issue
Block a user