Refactor initialization: streamline log and config directory creation; enhance module exports in backend and UI widgets

This commit is contained in:
2025-09-03 10:42:12 +02:00
parent 0ac5051aef
commit a3b68c2b77
3 changed files with 20 additions and 14 deletions

View File

@@ -8,25 +8,24 @@ from appdirs import AppDirs
from config import Config from config import Config
app = AppDirs("SemesterApparatsManager", "SAM") app = AppDirs("SemesterApparatsManager", "SAM")
LOG_DIR = app.user_log_dir LOG_DIR: str = app.user_log_dir # type: ignore
CONFIG_DIR = app.user_config_dir CONFIG_DIR: str = app.user_config_dir # type: ignore
if not os.path.exists(LOG_DIR): if not os.path.exists(LOG_DIR): # type: ignore
os.makedirs(LOG_DIR) os.makedirs(LOG_DIR) # type: ignore
if not os.path.exists(CONFIG_DIR): if not os.path.exists(CONFIG_DIR): # type: ignore
os.makedirs(CONFIG_DIR) os.makedirs(CONFIG_DIR) # type: ignore
settings = Config(f"{CONFIG_DIR}/config.yaml") settings = Config(f"{CONFIG_DIR}/config.yaml")
DATABASE_DIR = ( DATABASE_DIR = ( # type: ignore
app.user_config_dir if settings.database.path is None else settings.database.path app.user_config_dir if settings.database.path is None else settings.database.path # type: ignore
) )
if not os.path.exists(DATABASE_DIR): if not os.path.exists(DATABASE_DIR): # type: ignore
os.makedirs(DATABASE_DIR) os.makedirs(DATABASE_DIR) # type: ignore
first_launch = settings.exists first_launch = settings.exists
if not os.path.exists(settings.database.temp.expanduser()): if not os.path.exists(settings.database.temp.expanduser()): # type: ignore
settings.database.temp.expanduser().mkdir(parents=True, exist_ok=True) settings.database.temp.expanduser().mkdir(parents=True, exist_ok=True) # type: ignore
from .utils.icon import Icon from .utils.icon import Icon
if not os.path.exists("logs"): if not os.path.exists("logs"):

View File

@@ -9,6 +9,7 @@ __all__ = [
"NewEditionCheckerThread", "NewEditionCheckerThread",
"recreateElsaFile", "recreateElsaFile",
"recreateFile", "recreateFile",
"Catalogue"
] ]
from .admin_console import AdminCommands from .admin_console import AdminCommands
@@ -20,3 +21,4 @@ from .thread_bookgrabber import BookGrabber
from .thread_neweditions import NewEditionCheckerThread from .thread_neweditions import NewEditionCheckerThread
from .threads_autoadder import AutoAdder from .threads_autoadder import AutoAdder
from .threads_availchecker import AvailChecker from .threads_availchecker import AvailChecker
from .catalogue import Catalogue

View File

@@ -11,6 +11,9 @@ __all__ = [
"EditProf", "EditProf",
"IconWidget", "IconWidget",
"NewEditionChecker", "NewEditionChecker",
"NewEditionCheckSelector",
"UpdateSignatures",
"UpdaterThread"
] ]
from .admin_create_user import UserCreate from .admin_create_user import UserCreate
@@ -23,5 +26,7 @@ from .filepicker import FilePicker
from .graph import DataQtGraph from .graph import DataQtGraph
from .iconLine import IconWidget from .iconLine import IconWidget
from .MessageCalendar import MessageCalendar from .MessageCalendar import MessageCalendar
from .new_edition_check import NewEditionChecker from .new_edition_check import NewEditionChecker, NewEditionCheckSelector
from .searchPage import SearchStatisticPage from .searchPage import SearchStatisticPage
from .signature_update import UpdateSignatures, UpdaterThread