diff --git a/src/core/__builtins__.py b/src/core/__builtins__.py new file mode 100644 index 0000000..465c3fb --- /dev/null +++ b/src/core/__builtins__.py @@ -0,0 +1,36 @@ +# Python imports +import os +import builtins +import threading + +# Lib imports + +# Application imports +from core.utils import Logger +from core.utils import MessageHandler # Get simple message processor + + +class BuiltinsException(Exception): + ... + + +# NOTE: Threads WILL NOT die with parent's destruction. +def threaded_wrapper(fn): + def wrapper(*args, **kwargs): + threading.Thread(target=fn, args=args, kwargs=kwargs, daemon=False).start() + return wrapper + +# NOTE: Threads WILL die with parent's destruction. +def daemon_threaded_wrapper(fn): + def wrapper(*args, **kwargs): + threading.Thread(target=fn, args=args, kwargs=kwargs, daemon=True).start() + return wrapper + +# NOTE: Just reminding myself we can add to builtins two different ways... +# __builtins__.update({"event_system": Builtins()}) +builtins.app_name = ':::APP TITLE:::' +builtins.threaded = threaded_wrapper +builtins.daemon_threaded = daemon_threaded_wrapper +builtins.ROOT_FILE_PTH = os.path.dirname(os.path.realpath(__file__)) +builtins.logger = Logger().get_logger() +builtins.json_message = MessageHandler() diff --git a/src/core/__init__.py b/src/core/__init__.py index 6964aca..4ae95f1 100644 --- a/src/core/__init__.py +++ b/src/core/__init__.py @@ -1,32 +1,29 @@ # Python imports import os - # Lib imports from flask import Flask # OIDC Login path from flask_oidc import OpenIDConnect # Flask Login Path from flask_bcrypt import Bcrypt - from flask_login import current_user from flask_login import login_user from flask_login import logout_user from flask_login import LoginManager # Apoplication imports -from core.utils import Logger - - +from .__builtins__ import * app = Flask(__name__) app.config.from_object("core.config.Config") +# app.config.from_object("core.config.DevelopmentConfig") + + oidc = OpenIDConnect(app) login_manager = LoginManager(app) bcrypt = Bcrypt(app) -logger = Logger().get_logger() - def oidc_loggedin(): return oidc.user_loggedin @@ -38,12 +35,12 @@ def oidc_isAdmin(): return True return False - app.jinja_env.globals['oidc_loggedin'] = oidc_loggedin app.jinja_env.globals['oidc_isAdmin'] = oidc_isAdmin app.jinja_env.globals['TITLE'] = app.config["TITLE"] + from core.models import db from core.models import User diff --git a/src/core/config.py b/src/core/config.py index 9b928d7..6b7714d 100644 --- a/src/core/config.py +++ b/src/core/config.py @@ -10,8 +10,6 @@ from datetime import timedelta -APP_NAME = ':::APP TITLE:::' -ROOT_FILE_PTH = os.path.dirname(os.path.realpath(__file__)) # This path is submitted as the redirect URI in certain code flows. # Change localhost%3A6969 to different port accordingly or change to your domain. REDIRECT_LINK = "http%3A%2F%2Flocalhost%3A6969%2F" @@ -27,7 +25,7 @@ class FileGroups: class Config(object): - TITLE = APP_NAME + TITLE = app_name DEBUG = False TESTING = False SECRET_KEY = secrets.token_hex(32) diff --git a/src/core/routes/login_controller/flask_login.py b/src/core/routes/login_controller/flask_login.py index e3985ab..604cd55 100644 --- a/src/core/routes/login_controller/flask_login.py +++ b/src/core/routes/login_controller/flask_login.py @@ -18,12 +18,8 @@ from core import db from core import User from core import LoginForm -from core.utils import MessageHandler # Get simple message processor - -msgHandler = MessageHandler() - @app.route('/app-login', methods=['GET', 'POST']) def app_login(): if current_user.is_authenticated or app.config["LOGIN_DISABLED"]: diff --git a/src/core/routes/login_controller/flask_register.py b/src/core/routes/login_controller/flask_register.py index e0a9a5c..5b9b65b 100644 --- a/src/core/routes/login_controller/flask_register.py +++ b/src/core/routes/login_controller/flask_register.py @@ -16,13 +16,9 @@ from core import current_user from core import RegisterForm from core.models import User -from core.utils import MessageHandler # Get simple message processor -msgHandler = MessageHandler() - - @app.route('/app-register', methods=['GET', 'POST']) def app_register(): if current_user.is_authenticated or app.config["REGISTER_DISABLED"]: diff --git a/src/core/routes/login_controller/oidc_register.py b/src/core/routes/login_controller/oidc_register.py index 5fb4de3..68e29b5 100644 --- a/src/core/routes/login_controller/oidc_register.py +++ b/src/core/routes/login_controller/oidc_register.py @@ -13,11 +13,6 @@ from ... import app from ... import oidc from ... import db -from ...utils import MessageHandler # Get simple message processor - - - -msgHandler = MessageHandler() @app.route('/oidc-register', methods=['GET', 'POST']) diff --git a/src/core/routes/routes.py b/src/core/routes/routes.py index a370c26..9883028 100644 --- a/src/core/routes/routes.py +++ b/src/core/routes/routes.py @@ -8,16 +8,9 @@ from flask_login import current_user # Application imports # Get from __init__ from core import app -from core import logger from core import oidc from core import db -from core.utils import MessageHandler # Get simple message processor - - - -msgHandler = MessageHandler() - @app.route('/', methods=['GET', 'POST']) def home():