From f5bb5d3adc08789c3544bc778a59874c826c49bd Mon Sep 17 00:00:00 2001 From: WorldTeacher <41587052+WorldTeacher@users.noreply.github.com> Date: Mon, 16 Sep 2024 13:42:09 +0200 Subject: [PATCH] add check for new db location, fixes #2 --- src/ui/settings.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/ui/settings.py b/src/ui/settings.py index 5612877..9590287 100644 --- a/src/ui/settings.py +++ b/src/ui/settings.py @@ -3,6 +3,7 @@ from PyQt6 import QtWidgets, QtCore from src.utils import Icon from src import config from omegaconf import OmegaConf +import os class Settings(QtWidgets.QDialog, Ui_Dialog): @@ -125,6 +126,9 @@ class Settings(QtWidgets.QDialog, Ui_Dialog): report_day = self.report_day.currentIndex() report_generate = self.check_generate_report.isChecked() report_path = self.report_path.text() + if database_path != self.originalSettings.database.path : + os.makedirs(database_path, exist_ok=True) + self.restart() # overwrite the original settings self.originalSettings.institution_name = institution_name self.originalSettings.loan_duration = default_loan_duration @@ -139,6 +143,18 @@ class Settings(QtWidgets.QDialog, Ui_Dialog): config.save() self.settingschanged = True self.close() + + def restart(self): + dialog = QtWidgets.QMessageBox() + dialog.setIcon(QtWidgets.QMessageBox.Icon.Information) + dialog.setText("Neustart erforderlich") + dialog.setInformativeText( + "Das Programm muss neu gestartet werden, um die neue Datenbank zu verwenden." + ) + dialog.setStandardButtons(QtWidgets.QMessageBox.StandardButton.Ok) + dialog.setDefaultButton(QtWidgets.QMessageBox.StandardButton.Ok) + dialog.setWindowTitle("Neustart erforderlich") + dialog.exec() def DiscardSettings(self): self.loadSettings()