From 5bd925fa5ad56ec98cf76a867ab4aae2ce6de545 Mon Sep 17 00:00:00 2001 From: Damien De Paoli Date: Sun, 9 Apr 2023 13:21:44 +1000 Subject: [PATCH] remove circular dependencies on SetFELog --- main.py | 2 +- settings.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/main.py b/main.py index c28e3c6..2953dad 100644 --- a/main.py +++ b/main.py @@ -64,7 +64,6 @@ from files import Entry from person import Person from settings import Settings from user import PAUser -from job import SetFELog ####################################### GLOBALS ####################################### # allow jinja2 to call these python functions directly @@ -120,6 +119,7 @@ def login(): # the re matches on any special LDAP chars, we dont want someone # ldap-injecting our username, so send them back to the login page instead if request.method == 'POST' and re.search( r'[()\\*&!]', request.form['username']): + from job import SetFELog SetFELog( message=f"ERROR: Detected special LDAP chars in username: {request.form['username']}", log_level="error", persistent=True, cant_close=True ) return redirect(url_for('login')) if form.validate_on_submit(): diff --git a/settings.py b/settings.py index d28b18c..cb009f2 100644 --- a/settings.py +++ b/settings.py @@ -5,7 +5,6 @@ from sqlalchemy import Sequence from sqlalchemy.exc import SQLAlchemyError from flask_login import login_required, current_user from main import db, app, ma -from job import SetFELog # pylint: disable=no-member @@ -137,6 +136,7 @@ def settings(): def SettingsRBPath(): settings = Settings.query.first() if settings == None: + from job import SetFELog SetFELog( message="Cannot create file data with no settings / recycle bin path is missing", log_level="error", persistent=True, cant_close=False) return # path setting is an absolute path, just use it, otherwise prepend base_path first @@ -154,6 +154,7 @@ def SettingsSPath(): paths=[] settings = Settings.query.first() if settings == None: + from job import SetFELog SetFELog( message="Cannot create file data with no settings / storage path is missing", log_level="error", persistent=True, cant_close=False) return if settings.storage_path[0] == '/':