migrate from PyQt6 to PySide6, remove unneeded dependencies
This commit is contained in:
@@ -33,7 +33,6 @@ class Database:
|
||||
name: str
|
||||
path: str | Path
|
||||
temp: str | Path
|
||||
|
||||
def getattr(self, name: str):
|
||||
return getattr(self, name)
|
||||
|
||||
@@ -224,6 +223,9 @@ class Config:
|
||||
def set_zotero_attr(self, name: str, value: Any):
|
||||
OmegaConf.update(self._config, f"zotero.{name}", value)
|
||||
|
||||
def set_openai_attr(self, name: str, value: Any):
|
||||
OmegaConf.update(self._config, f"openAI.{name}", value)
|
||||
|
||||
def set_icon_attr(self, name: str, value: Any):
|
||||
OmegaConf.update(self._config, f"icons.{name}", value)
|
||||
|
||||
|
||||
@@ -21,8 +21,7 @@ dependencies = [
|
||||
"openai>=1.79.0",
|
||||
"pandas>=2.2.3",
|
||||
"playwright>=1.49.1",
|
||||
"pyqt6>=6.8.0",
|
||||
"pyqtgraph>=0.13.7",
|
||||
"pyside6>=6.9.1",
|
||||
"python-docx>=1.1.2",
|
||||
"pyzotero>=1.6.4",
|
||||
"ratelimit>=2.2.1",
|
||||
@@ -60,4 +59,4 @@ post_commit_hooks = []
|
||||
[[tool.bumpversion.files]]
|
||||
filename = "src/__init__.py"
|
||||
[[tool.bumpversion.files]]
|
||||
filename = ".version"
|
||||
filename = ".version"
|
||||
|
||||
@@ -44,6 +44,19 @@ class AdminCommands:
|
||||
hashed_password = self.hash_password("admin")
|
||||
self.db.createUser("admin", salt + hashed_password, "admin", salt)
|
||||
|
||||
def create_user(self, username: str, password: str, role: str = "user"):
|
||||
"""Create a new user in the database.
|
||||
|
||||
Args:
|
||||
username (str): the username of the user to be created.
|
||||
password (str): the password of the user to be created.
|
||||
role (str, optional): the role of the user to be created. Defaults to "user".
|
||||
"""
|
||||
hashed_password, salt = self.create_password(password)
|
||||
self.db.createUser(
|
||||
user=username, password=salt + hashed_password, role=role, salt=salt
|
||||
)
|
||||
|
||||
def hash_password(self, password: str) -> str:
|
||||
"""Hash a password using SHA256.
|
||||
|
||||
|
||||
@@ -74,6 +74,7 @@ class Database:
|
||||
os.makedirs(path)
|
||||
if self.get_db_contents() == []:
|
||||
log.critical("Database does not exist, creating tables")
|
||||
log.critical(f"Path: {path}")
|
||||
self.create_tables()
|
||||
self.insertSubjects()
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6.QtCore import QThread
|
||||
from PySide6.QtCore import QThread
|
||||
from src.utils.documentation import run_mkdocs
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from PyQt6.QtCore import QThread
|
||||
from PyQt6.QtCore import pyqtSignal as Signal
|
||||
from PySide6.QtCore import QThread
|
||||
from PySide6.QtCore import Signal
|
||||
from src.backend import Database
|
||||
|
||||
from src.logic.webrequest import BibTextTransformer, WebRequest
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import time
|
||||
|
||||
# from icecream import ic
|
||||
from PyQt6.QtCore import QThread
|
||||
from PyQt6.QtCore import pyqtSignal as Signal
|
||||
from PySide6.QtCore import QThread
|
||||
from PySide6.QtCore import Signal as Signal
|
||||
|
||||
from src.backend import Database
|
||||
import loguru
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import time
|
||||
|
||||
# from icecream import ic
|
||||
from PyQt6.QtCore import QThread
|
||||
from PyQt6.QtCore import pyqtSignal as Signal
|
||||
from PySide6.QtCore import QThread
|
||||
from PySide6.QtCore import Signal as Signal
|
||||
|
||||
from src.backend.database import Database
|
||||
from src import LOG_DIR
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\edit_bookdata.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from src.logic.dataclass import BookData
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\fileparser.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from src.logic.webrequest import BibTextTransformer, WebRequest
|
||||
|
||||
@@ -61,7 +61,7 @@ class Ui_Dialog(object):
|
||||
self.listWidget.setObjectName("listWidget")
|
||||
self.signatures = []
|
||||
self.returned = []
|
||||
# self.data_gathering_complete = QtCore.pyqtSignal()
|
||||
# self.data_gathering_complete = QtCore.Signal()
|
||||
self.retranslateUi(Dialog)
|
||||
QtCore.QMetaObject.connectSlotsByName(Dialog)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Form implementation generated from reading ui file '/home/alexander/GitHub/Semesterapparate/ui/dialogs/login.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.5.3
|
||||
# Created by: PySide6 UI code generator 6.5.3
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
import hashlib
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
from src.backend.database import Database
|
||||
from src.backend.admin_console import AdminCommands
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
import subprocess
|
||||
import tempfile
|
||||
import os
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\medianadder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\new_subject.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\parsed_titles.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from src.logic.log import MyLogger
|
||||
from src.logic.threads import AutoAdder
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\reminder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\Semesterapparate\ui\dialogs\settings.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from omegaconf import OmegaConf
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
config = OmegaConf.load("config.yaml")
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
from .dialog_sources.Ui_about import Ui_about
|
||||
from PyQt6 import QtWidgets
|
||||
from PyQt6.QtCore import PYQT_VERSION_STR
|
||||
from PySide6 import QtWidgets
|
||||
import PySide6
|
||||
from src import Icon, __version__, __author__
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ class About(QtWidgets.QDialog, Ui_about):
|
||||
data = {
|
||||
"Version": __version__,
|
||||
"Author": __author__,
|
||||
"PyQt6 Version": PYQT_VERSION_STR,
|
||||
"PySide6 Version": PySide6.__version__,
|
||||
"License": "MIT License",
|
||||
"Icons": """Google Material Design Icons (https://fonts.google.com/icons)
|
||||
StableDiffusion (logo)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
from .dialog_sources.Ui_apparat_extend import Ui_Dialog
|
||||
from src import Icon
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src.logic.dataclass import BookData
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .dialog_sources.Ui_confirm_extend import Ui_extend_confirm
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
|
||||
class ConfirmExtend(QtWidgets.QDialog, Ui_extend_confirm):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\confirm_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_extend_confirm(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\about.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_about(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\app_status.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore
|
||||
from PySide6 import QtCore
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\apparat_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\confirm_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_extend_confirm(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\edit_bookdata.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_add_table_entry.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generate_citation.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generator_confirm.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\login.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_eMailPreview(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\medianadder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\newMailTemplateDesigner.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\parsed_titles.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\reminder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.6.1
|
||||
# Created by: PySide6 UI code generator 6.6.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Erinnerung(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\settings.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\about.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_about(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\app_status.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\apparat_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\confirm_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_extend_confirm(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\documentprint.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\edit_bookdata.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_add_table_entry.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generate_citation.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\elsa_generator_confirm.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\login.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_eMailPreview(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\medianadder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\newMailTemplateDesigner.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\parsed_titles.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\reminder.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Erinnerung(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\dialog_sources\settings.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .dialog_sources.documentprint_ui import Ui_Dialog
|
||||
from PyQt6 import QtWidgets, QtCore
|
||||
from PySide6 import QtWidgets, QtCore
|
||||
from src import Icon
|
||||
|
||||
from src.utils.richtext import SemapSchilder, SemesterDocument
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from .dialog_sources.Ui_elsa_add_table_entry import Ui_Dialog
|
||||
from src.logic.webrequest import WebRequest, BibTextTransformer
|
||||
from src import Icon
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
from src.transformers.transformers import DictToTable
|
||||
from src.logic.zotero import ZoteroController
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .dialog_sources.Ui_elsa_generate_citation import Ui_Dialog
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
|
||||
class ElsaCitation(QtWidgets.QDialog, Ui_Dialog):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .dialog_sources.Ui_elsa_generator_confirm import Ui_Dialog
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
|
||||
class ElsaGenConfirm(QtWidgets.QDialog, Ui_Dialog):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'ui/dialogs/extend_apparat.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Frame(object):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src.logic.webrequest import BibTextTransformer, WebRequest
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ import hashlib
|
||||
import sys
|
||||
|
||||
import loguru
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
from src import LOG_DIR, Icon
|
||||
from src.backend.admin_console import AdminCommands
|
||||
@@ -88,14 +88,14 @@ class LoginDialog(Ui_Dialog):
|
||||
else:
|
||||
# Credentials are invalid, display a warning
|
||||
if username == "" or password == "":
|
||||
logger.warning("Invalid username or password. Login failed.")
|
||||
log.warning("Invalid username or password. Login failed.")
|
||||
warning_dialog = QtWidgets.QMessageBox()
|
||||
warning_dialog.setIcon(QtWidgets.QMessageBox.Icon.Warning)
|
||||
warning_dialog.setText("Please enter a username and password.")
|
||||
warning_dialog.setWindowTitle("Login Failed")
|
||||
warning_dialog.exec()
|
||||
else:
|
||||
logger.warning("Invalid username or password. Login failed.")
|
||||
log.warning("Invalid username or password. Login failed.")
|
||||
warning_dialog = QtWidgets.QMessageBox()
|
||||
warning_dialog.setIcon(QtWidgets.QMessageBox.Icon.Warning)
|
||||
warning_dialog.setText(
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src import Icon, settings as config
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import os
|
||||
|
||||
from PyQt6 import QtGui, QtWidgets, QtCore
|
||||
from PySide6 import QtGui, QtWidgets, QtCore
|
||||
|
||||
from src import Icon
|
||||
|
||||
@@ -22,7 +22,7 @@ logger.add(sys.stdout)
|
||||
|
||||
|
||||
class MailTemplateDialog(QtWidgets.QDialog, NewMailTemplateDesignerDialog):
|
||||
updateSignal = QtCore.pyqtSignal()
|
||||
updateSignal = QtCore.Signal()
|
||||
|
||||
def __init__(self, parent=None) -> None:
|
||||
super().__init__(parent)
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'ui\dialogs\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\mail_preview.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_eMailPreview(object):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
from .dialog_sources.medianadder_ui import Ui_Dialog
|
||||
from src import Icon
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src.backend import AutoAdder
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\dialogs\parsed_titles.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Form(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'ui\dialogs\confirm_extend.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.3.1
|
||||
# Created by: PySide6 UI code generator 6.3.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src import Icon
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from .dialog_sources.reminder_ui import Ui_Erinnerung as Ui_Dialog
|
||||
from src import Icon
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from src import Icon, settings
|
||||
from .dialog_sources.settings_ui import Ui_Dialog as _settings
|
||||
from src.ui.widgets.iconLine import IconWidget
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
|
||||
class ValidatorButton(QtWidgets.QToolButton):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\semesterapparat_ui.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\sounds\semesterapparat_ui.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
|
||||
@@ -11,9 +11,9 @@ from typing import Any, Union
|
||||
|
||||
import loguru
|
||||
from natsort import natsorted
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PyQt6.QtCore import QThread
|
||||
from PyQt6.QtGui import QRegularExpressionValidator
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6.QtCore import QThread
|
||||
from PySide6.QtGui import QRegularExpressionValidator
|
||||
|
||||
from src import LOG_DIR, Icon
|
||||
from src.backend import AvailChecker, BookGrabber, Database, DocumentationThread
|
||||
|
||||
@@ -3,9 +3,9 @@ from typing import Any
|
||||
|
||||
import darkdetect
|
||||
import loguru
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PyQt6.QtCore import QDate
|
||||
from PyQt6.QtGui import QColor, QPen
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
from PySide6.QtCore import QDate
|
||||
from PySide6.QtGui import QColor, QPen
|
||||
|
||||
from src import LOG_DIR
|
||||
from src.backend import Database
|
||||
|
||||
@@ -16,7 +16,7 @@ __all__ = [
|
||||
|
||||
from .collapse import StatusWidget
|
||||
from .filepicker import FilePicker
|
||||
from .graph import DataGraph
|
||||
from .graph import DataQtGraph
|
||||
from .calendar_entry import CalendarEntry
|
||||
from .MessageCalendar import MessageCalendar
|
||||
from .searchPage import SearchStatisticPage
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
from PyQt6 import QtWidgets
|
||||
from PyQt6.QtCore import pyqtSignal
|
||||
from PySide6 import QtWidgets
|
||||
from PySide6.QtCore import Signal
|
||||
from .widget_sources.admin_create_user_ui import Ui_Dialog
|
||||
from src.backend import AdminCommands, Database
|
||||
|
||||
|
||||
class UserCreate(QtWidgets.QDialog, Ui_Dialog):
|
||||
admin_action_changed = pyqtSignal()
|
||||
admin_action_changed = Signal()
|
||||
|
||||
def __init__(self):
|
||||
super(UserCreate, self).__init__()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .widget_sources.admin_edit_prof_ui import Ui_Dialog #
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
from src.logic import Prof
|
||||
from src.backend import Database
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .widget_sources.admin_edit_user_ui import Ui_Dialog
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
from src.backend import Database
|
||||
from src.backend import AdminCommands
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
from .widget_sources.admin_query_ui import Ui_Form
|
||||
|
||||
from PyQt6 import QtWidgets, QtCore
|
||||
from PySide6 import QtWidgets, QtCore
|
||||
from src import Icon
|
||||
from src.backend import Database
|
||||
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
from .widget_sources.calendar_entry_ui import Ui_Dialog
|
||||
from PyQt6 import QtWidgets
|
||||
from PyQt6.QtCore import pyqtSignal
|
||||
from PySide6 import QtWidgets
|
||||
from PySide6.QtCore import Signal
|
||||
from src.backend.database import Database
|
||||
from src import Icon
|
||||
|
||||
|
||||
class CalendarEntry(QtWidgets.QDialog, Ui_Dialog):
|
||||
deleteSignal = pyqtSignal(
|
||||
int
|
||||
) # when emit, send the id of the message to be deleted
|
||||
repaintSignal = pyqtSignal(str)
|
||||
deleteSignal = Signal(int) # when emit, send the id of the message to be deleted
|
||||
repaintSignal = Signal(str)
|
||||
|
||||
def __init__(self, parent=None, messages=None, date=None):
|
||||
super().__init__(parent)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# import pysignal pyslot
|
||||
from PyQt6.QtCore import pyqtSignal as Signal
|
||||
from PyQt6.QtWidgets import (
|
||||
from PySide6.QtCore import Signal as Signal
|
||||
from PySide6.QtWidgets import (
|
||||
QApplication,
|
||||
QTreeWidget,
|
||||
QTreeWidgetItem,
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import os
|
||||
from .widget_sources.elsa_maindialog_ui import Ui_Dialog
|
||||
from PyQt6 import QtCore, QtWidgets, QtGui
|
||||
from PyQt6.QtGui import QRegularExpressionValidator
|
||||
from PyQt6.QtCore import QDate
|
||||
from PySide6 import QtCore, QtWidgets, QtGui
|
||||
from PySide6.QtGui import QRegularExpressionValidator
|
||||
from PySide6.QtCore import QDate
|
||||
from src import Icon
|
||||
from src.backend import Semester, Database
|
||||
from src.logic import elsa_word_to_csv, Prof
|
||||
from src.ui.dialogs import ElsaAddEntry, popus_confirm
|
||||
from src.ui.widgets import FilePicker, DataGraph
|
||||
from src.ui.widgets import FilePicker, DataQtGraph
|
||||
from src.backend import recreateElsaFile
|
||||
import loguru
|
||||
import sys
|
||||
@@ -463,10 +463,12 @@ class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
|
||||
self.graph_data["x"].pop(0)
|
||||
self.graph_data["y"].pop(0)
|
||||
# generateMissing = True if len(self.graph_data["x"]) > 2 else False
|
||||
graph = DataGraph(
|
||||
graph = DataQtGraph(
|
||||
title="ELSA Apparate pro Semester",
|
||||
data=self.graph_data,
|
||||
label="Anzahl der Apparate",
|
||||
generateMissing=False,
|
||||
y_label="Anzahl der Apparate",
|
||||
x_rotation=0,
|
||||
)
|
||||
log.debug(self.graph_data)
|
||||
self.elsa_statistics_table.setRowCount(0)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import sys
|
||||
|
||||
from PyQt6.QtCore import QSettings
|
||||
from PyQt6.QtWidgets import QApplication, QFileDialog
|
||||
from PySide6.QtCore import QSettings
|
||||
from PySide6.QtWidgets import QApplication, QFileDialog
|
||||
|
||||
|
||||
class FilePicker:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from .widget_sources.icon_widget_ui import Ui_Dialog
|
||||
from PyQt6 import QtWidgets
|
||||
from PySide6 import QtWidgets
|
||||
|
||||
import sys
|
||||
from loguru import logger as log
|
||||
|
||||
@@ -2,14 +2,14 @@ import sys
|
||||
|
||||
import loguru
|
||||
from natsort import natsorted
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PyQt6.QtCore import pyqtSignal
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6.QtCore import Signal
|
||||
|
||||
from src import LOG_DIR
|
||||
from src.backend import Database, Semester
|
||||
from src.logic import Prof, custom_sort, sort_semesters_list
|
||||
from src.ui.dialogs import ApparatExtendDialog, Mail_Dialog, ReminderDialog
|
||||
from src.ui.widgets import DataGraph, StatusWidget
|
||||
from src.ui.widgets import DataQtGraph, StatusWidget
|
||||
|
||||
from .widget_sources.search_statistic_page_ui import Ui_Dialog
|
||||
|
||||
@@ -26,10 +26,10 @@ class MyComboBox(QtWidgets.QComboBox):
|
||||
|
||||
|
||||
class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
apparat_open = pyqtSignal(str)
|
||||
reloadSignal = pyqtSignal()
|
||||
refreshSignal = pyqtSignal()
|
||||
updateCalendar = pyqtSignal(int, list)
|
||||
apparat_open = Signal(str)
|
||||
reloadSignal = Signal()
|
||||
refreshSignal = Signal()
|
||||
updateCalendar = Signal(int, list)
|
||||
|
||||
def __init__(self):
|
||||
log.info("SearchStatisticPage started")
|
||||
@@ -310,7 +310,12 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
|
||||
"x": [i[0] for i in data],
|
||||
"y": {"Erstellt": [i[1] for i in data], "Gelöscht": [i[2] for i in data]},
|
||||
}
|
||||
graph = DataGraph(title="Erstellte und gelöschte Apparate", data=graph_data)
|
||||
graph = DataQtGraph(
|
||||
title="Erstellte und gelöschte Apparate",
|
||||
data=graph_data,
|
||||
generateMissing=False,
|
||||
y_label="Anzahl der Apparate",
|
||||
)
|
||||
|
||||
# place the graph into tabWidget_3
|
||||
self.tabWidget_3.addTab(graph, "Graph")
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
from .widget_sources.welcome_wizard_ui import Ui_Wizard
|
||||
from PyQt6 import QtWidgets, QtCore, QtGui
|
||||
from PySide6 import QtWidgets, QtCore, QtGui
|
||||
from src import settings
|
||||
from src.backend import AdminCommands
|
||||
from appdirs import AppDirs
|
||||
|
||||
appdirs = AppDirs("SemesterApparatsManager", "SAM")
|
||||
|
||||
class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
|
||||
def __init__(self, parent=None):
|
||||
@@ -8,21 +12,146 @@ class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
|
||||
self.setupUi(self)
|
||||
self.btn_database.clicked.connect(self.open_database_settings)
|
||||
self.btn_temp.clicked.connect(self.open_temp_settings)
|
||||
self.btn_test.clicked.connect(self.test_login_data)
|
||||
self.btn_create.clicked.connect(self.create_sam_user)
|
||||
# mail password field
|
||||
self.settings_mail_password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)
|
||||
# allow user to toggle password visibility
|
||||
self.settings_mail_password.setContextMenuPolicy(
|
||||
QtCore.Qt.ContextMenuPolicy.CustomContextMenu
|
||||
)
|
||||
self.settings_mail_password.customContextMenuRequested.connect(
|
||||
self.toggle_password_visibility
|
||||
)
|
||||
# if button for next page is clicked, run function to store settings
|
||||
self.button(QtWidgets.QWizard.WizardButton.FinishButton).clicked.connect(
|
||||
self.store_settings
|
||||
)
|
||||
self.settings_mail_use_user_name.toggled.connect(self.set_check_text)
|
||||
# set initial values for checkbox, database
|
||||
self.set_check_text(self.settings_mail_use_user_name.isChecked())
|
||||
self.settings_database.setText(
|
||||
str(settings.database.path) or str(appdirs.user_data_dir)
|
||||
)
|
||||
|
||||
self.settings_temp.setText(
|
||||
str(settings.database.temp) or str(appdirs.user_cache_dir)
|
||||
)
|
||||
|
||||
def test_login_data(self):
|
||||
sam_users = AdminCommands().list_users()
|
||||
sam_users = [user[2] for user in sam_users]
|
||||
if not sam_users:
|
||||
QtWidgets.QMessageBox.critical(
|
||||
self,
|
||||
"Error",
|
||||
"No SAM users found. Please create a SAM user first.",
|
||||
)
|
||||
return
|
||||
username = self.sam_username.text()
|
||||
if username in sam_users:
|
||||
QtWidgets.QMessageBox.information(
|
||||
self,
|
||||
"Error",
|
||||
f"User '{username}' exists in SAM.",
|
||||
)
|
||||
|
||||
def create_sam_user(self):
|
||||
"""Create a SAM user in the database."""
|
||||
admin = AdminCommands()
|
||||
if not admin.create_user(self.sam_username.text(), self.sam_password.text()):
|
||||
QtWidgets.QMessageBox.critical(
|
||||
self,
|
||||
"Error",
|
||||
"Failed to create SAM user",
|
||||
)
|
||||
else:
|
||||
QtWidgets.QMessageBox.information(
|
||||
self,
|
||||
"Success",
|
||||
"SAM user created successfully",
|
||||
)
|
||||
|
||||
def set_check_text(self, checked):
|
||||
"""Set the text of the checkbox based on its state."""
|
||||
if checked:
|
||||
self.settings_mail_use_user_name.setText("Nutzername wird verwendet")
|
||||
else:
|
||||
self.settings_mail_use_user_name.setText("Nutzername wird nicht verwendet")
|
||||
|
||||
def toggle_password_visibility(self, pos):
|
||||
"""Toggle the visibility of the password field."""
|
||||
if (
|
||||
self.settings_mail_password.echoMode()
|
||||
== QtWidgets.QLineEdit.EchoMode.Password
|
||||
):
|
||||
self.settings_mail_password.setEchoMode(QtWidgets.QLineEdit.EchoMode.Normal)
|
||||
else:
|
||||
self.settings_mail_password.setEchoMode(
|
||||
QtWidgets.QLineEdit.EchoMode.Password
|
||||
)
|
||||
|
||||
def store_settings(self):
|
||||
# database page
|
||||
db_path = self.settings_database.text()
|
||||
temp_path = self.settings_temp.text()
|
||||
db_name = self.settings_database_name.text()
|
||||
|
||||
# mail page
|
||||
smtp_server = self.settings_mail_smtp_server.text()
|
||||
smtp_port = self.settings_mail_smtp_port.text()
|
||||
mail_sender = self.settings_mail_address.text()
|
||||
mail_user_name = self.settings_mail_user_name.text()
|
||||
mail_password = self.settings_mail_password.text()
|
||||
mail_printer_mail = self.settings_mail_printer.text()
|
||||
mail_signature = self.settings_mail_signature.toPlainText()
|
||||
use_user_name = self.settings_mail_use_user_name.isChecked()
|
||||
|
||||
# zotero page
|
||||
zotero__api_key = self.settings_zotero_api_key.text()
|
||||
zotero_user_id = self.settings_zotero_library_id.text()
|
||||
zotero_library_type = self.settings_zotero_library_type.text()
|
||||
|
||||
# openai page
|
||||
openai_api_key = self.settings_openai_api_key.text()
|
||||
openai_model = self.settings_openai_model.currentText()
|
||||
|
||||
# store settings in config
|
||||
settings.set_database_attr("path", db_path)
|
||||
settings.set_database_attr("name", db_name)
|
||||
settings.set_database_attr("temp", temp_path)
|
||||
settings.set_mail_attr("smtp_server", smtp_server)
|
||||
settings.set_mail_attr("port", smtp_port)
|
||||
settings.set_mail_attr("sender", mail_sender)
|
||||
settings.set_mail_attr("user_name", mail_user_name)
|
||||
settings.set_mail_attr("password", mail_password)
|
||||
settings.set_mail_attr("printer_mail", mail_printer_mail)
|
||||
settings.set_mail_attr("signature", mail_signature)
|
||||
settings.set_mail_attr("use_user_name", use_user_name)
|
||||
settings.set_zotero_attr("api_key", zotero__api_key)
|
||||
settings.set_zotero_attr("library_id", zotero_user_id)
|
||||
settings.set_zotero_attr("library_type", zotero_library_type)
|
||||
settings.set_openai_attr("api_key", openai_api_key)
|
||||
settings.set_openai_attr("model", openai_model)
|
||||
# save settings to file
|
||||
print("Saving settings...")
|
||||
print(settings)
|
||||
settings.save()
|
||||
|
||||
def open_database_settings(self):
|
||||
#open filepicker dialog to select database file folder
|
||||
file_dialog = QtWidgets.QFileDialog(self, "Select Database File")
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.ExistingFile)
|
||||
file_dialog.setNameFilter("Database Files (*.db *.sqlite *.sqlite3)")
|
||||
file_dialog.setFileMode(QtWidgets.QFileDialog.FileMode.Directory)
|
||||
file_dialog.setViewMode(QtWidgets.QFileDialog.ViewMode.List)
|
||||
file_dialog.setDirectory(settings.database.path) # Set initial directory if needed
|
||||
file_dialog.setOption(QtWidgets.QFileDialog.Option.DontUseNativeDialog, True)
|
||||
file_dialog.setWindowFlags(file_dialog.windowFlags() | QtCore.Qt.WindowType.WindowStaysOnTopHint)
|
||||
# set start dir to appdir.user_data_dir
|
||||
file_dialog.setDirectory(str(appdirs.user_data_dir))
|
||||
if file_dialog.exec():
|
||||
selected_files = file_dialog.selectedFiles()
|
||||
if selected_files:
|
||||
# Do something with the selected database file
|
||||
print("Selected database file:", selected_files[0])
|
||||
db_path = selected_files[0]
|
||||
self.settings_database.setText(db_path)
|
||||
|
||||
def open_temp_settings(self):
|
||||
#open filepicker dialog to select temporary directory
|
||||
@@ -34,8 +163,8 @@ class WelcomeWizard(QtWidgets.QWizard, Ui_Wizard):
|
||||
selected_dirs = dir_dialog.selectedFiles()
|
||||
if selected_dirs:
|
||||
# Do something with the selected temporary directory
|
||||
print("Selected temporary directory:", selected_dirs[0])
|
||||
|
||||
temp_path = selected_dirs[0]
|
||||
self.settings_temp.setText(temp_path)
|
||||
|
||||
def launch_wizard():
|
||||
"""Launch the welcome wizard."""
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\admin_create_user.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\admin_edit_prof.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\admin_edit_user.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\calendar_entry.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\elsa_maindialog.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\icon_widget.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\search_statistic_page.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<enum>Qt::PlainText</enum>
|
||||
</property>
|
||||
<property name="currentId">
|
||||
<number>0</number>
|
||||
<number>5</number>
|
||||
</property>
|
||||
<widget class="QWizardPage" name="wizardPage1">
|
||||
<property name="title">
|
||||
@@ -41,6 +41,9 @@
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
@@ -64,7 +67,7 @@ li.checked::marker { content: "\2612"; }
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- eMail</p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- Zotero Integration</p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- KI Integration</p>
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p></body></html></string>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Anschließend kann ein Nutzeraccount für SAM erstellt werden</p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -81,17 +84,43 @@ li.checked::marker { content: "\2612"; }
|
||||
<string notr="true">1</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="settings_temp">
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>C:\Users\[Nutzer]\AppData\Local\SAM\SemesterApparatsManager\Cache</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Datenbank</string>
|
||||
<string>Datenbankpfad</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="settings_database">
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="placeholderText">
|
||||
<string>semesterapparate.db</string>
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="text">
|
||||
<string>Temporäre Daten</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -102,24 +131,24 @@ li.checked::marker { content: "\2612"; }
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<item row="2" column="2">
|
||||
<widget class="QToolButton" name="btn_temp">
|
||||
<property name="text">
|
||||
<string>Temporäre Daten</string>
|
||||
<string>...</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="text">
|
||||
<string>Datenbankname</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="settings_temp">
|
||||
<widget class="QLineEdit" name="settings_database_name">
|
||||
<property name="placeholderText">
|
||||
<string>C:\Users\[Nutzer]\AppData\Local\SAM\SemesterApparatsManager\Cache</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QToolButton" name="btn_temp">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
<string>semesterapparate.db</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -144,16 +173,41 @@ li.checked::marker { content: "\2612"; }
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit"/>
|
||||
<widget class="QLineEdit" name="settings_mail_smtp_server">
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit_2"/>
|
||||
<widget class="QLineEdit" name="settings_mail_smtp_port">
|
||||
<property name="inputMethodHints">
|
||||
<set>Qt::ImhDigitsOnly</set>
|
||||
</property>
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit_3"/>
|
||||
<widget class="QLineEdit" name="settings_mail_user_name">
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit_4"/>
|
||||
<widget class="QLineEdit" name="settings_mail_password">
|
||||
<property name="toolTip">
|
||||
<string>Rechtsklick, um passwort anzuzeigen</string>
|
||||
</property>
|
||||
<property name="statusTip">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="label_4">
|
||||
@@ -184,7 +238,11 @@ li.checked::marker { content: "\2612"; }
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="1">
|
||||
<widget class="QLineEdit" name="settings_mail_"/>
|
||||
<widget class="QLineEdit" name="settings_mail_printer">
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QLabel" name="label_8">
|
||||
@@ -202,7 +260,7 @@ für SMTP</string>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<widget class="QTextEdit" name="textEdit_2"/>
|
||||
<widget class="QTextEdit" name="settings_mail_signature"/>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="label_10">
|
||||
@@ -219,7 +277,11 @@ für SMTP</string>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit_5"/>
|
||||
<widget class="QLineEdit" name="settings_mail_address">
|
||||
<property name="clearButtonEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
@@ -282,7 +344,7 @@ für SMTP</string>
|
||||
</attribute>
|
||||
<layout class="QFormLayout" name="formLayout_3">
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="lineEdit_6"/>
|
||||
<widget class="QLineEdit" name="settings_openai_api_key"/>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_14">
|
||||
@@ -299,9 +361,9 @@ für SMTP</string>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QComboBox" name="comboBox">
|
||||
<widget class="QComboBox" name="settings_openai_model">
|
||||
<property name="currentText">
|
||||
<string>gpt-4o-mini</string>
|
||||
<string>gpt3.5-turbo</string>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
@@ -342,7 +404,94 @@ für SMTP</string>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWizardPage" name="wizardPage6">
|
||||
<property name="title">
|
||||
<string>SAM Nutzer</string>
|
||||
</property>
|
||||
<property name="subTitle">
|
||||
<string>Hier kann ein Nutzer für SAM erstellt werden</string>
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="text">
|
||||
<string>Nutzername</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLineEdit" name="sam_username"/>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_18">
|
||||
<property name="text">
|
||||
<string>Passwort</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="sam_password"/>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QPushButton" name="btn_test">
|
||||
<property name="text">
|
||||
<string>Prüfen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="btn_create">
|
||||
<property name="text">
|
||||
<string>Anlegen</string>
|
||||
</property>
|
||||
<property name="default">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>settings_database</tabstop>
|
||||
<tabstop>btn_database</tabstop>
|
||||
<tabstop>settings_database_name</tabstop>
|
||||
<tabstop>settings_temp</tabstop>
|
||||
<tabstop>btn_temp</tabstop>
|
||||
<tabstop>settings_mail_smtp_server</tabstop>
|
||||
<tabstop>settings_mail_smtp_port</tabstop>
|
||||
<tabstop>settings_mail_address</tabstop>
|
||||
<tabstop>settings_mail_user_name</tabstop>
|
||||
<tabstop>settings_mail_password</tabstop>
|
||||
<tabstop>settings_mail_signature</tabstop>
|
||||
<tabstop>settings_mail_printer</tabstop>
|
||||
<tabstop>settings_mail_use_user_name</tabstop>
|
||||
<tabstop>settings_zotero_api_key</tabstop>
|
||||
<tabstop>settings_zotero_library_id</tabstop>
|
||||
<tabstop>settings_zotero_library_type</tabstop>
|
||||
<tabstop>settings_openai_api_key</tabstop>
|
||||
<tabstop>settings_openai_model</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\welcome_wizard.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.9.0
|
||||
# Created by: PySide6 UI code generator 6.9.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Wizard(object):
|
||||
@@ -16,7 +16,7 @@ class Ui_Wizard(object):
|
||||
Wizard.setSizeGripEnabled(False)
|
||||
Wizard.setWizardStyle(QtWidgets.QWizard.WizardStyle.ClassicStyle)
|
||||
Wizard.setSubTitleFormat(QtCore.Qt.TextFormat.PlainText)
|
||||
Wizard.setCurrentId(0)
|
||||
Wizard.setCurrentId(5)
|
||||
self.wizardPage1 = QtWidgets.QWizardPage()
|
||||
self.wizardPage1.setSubTitle("")
|
||||
self.wizardPage1.setObjectName("wizardPage1")
|
||||
@@ -24,6 +24,7 @@ class Ui_Wizard(object):
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.textEdit = QtWidgets.QTextEdit(parent=self.wizardPage1)
|
||||
self.textEdit.setEnabled(False)
|
||||
self.textEdit.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.textEdit.setLineWidth(0)
|
||||
self.textEdit.setAutoFormatting(QtWidgets.QTextEdit.AutoFormattingFlag.AutoAll)
|
||||
self.textEdit.setReadOnly(True)
|
||||
@@ -34,24 +35,35 @@ class Ui_Wizard(object):
|
||||
self.wizardPage2.setObjectName("wizardPage2")
|
||||
self.gridLayout = QtWidgets.QGridLayout(self.wizardPage2)
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.settings_temp = QtWidgets.QLineEdit(parent=self.wizardPage2)
|
||||
self.settings_temp.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.settings_temp.setReadOnly(True)
|
||||
self.settings_temp.setObjectName("settings_temp")
|
||||
self.gridLayout.addWidget(self.settings_temp, 2, 1, 1, 1)
|
||||
self.label = QtWidgets.QLabel(parent=self.wizardPage2)
|
||||
self.label.setObjectName("label")
|
||||
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
|
||||
self.settings_database = QtWidgets.QLineEdit(parent=self.wizardPage2)
|
||||
self.settings_database.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
|
||||
self.settings_database.setReadOnly(True)
|
||||
self.settings_database.setPlaceholderText("")
|
||||
self.settings_database.setObjectName("settings_database")
|
||||
self.gridLayout.addWidget(self.settings_database, 0, 1, 1, 1)
|
||||
self.label_2 = QtWidgets.QLabel(parent=self.wizardPage2)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
|
||||
self.btn_database = QtWidgets.QToolButton(parent=self.wizardPage2)
|
||||
self.btn_database.setObjectName("btn_database")
|
||||
self.gridLayout.addWidget(self.btn_database, 0, 2, 1, 1)
|
||||
self.label_2 = QtWidgets.QLabel(parent=self.wizardPage2)
|
||||
self.label_2.setObjectName("label_2")
|
||||
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
|
||||
self.settings_temp = QtWidgets.QLineEdit(parent=self.wizardPage2)
|
||||
self.settings_temp.setObjectName("settings_temp")
|
||||
self.gridLayout.addWidget(self.settings_temp, 1, 1, 1, 1)
|
||||
self.btn_temp = QtWidgets.QToolButton(parent=self.wizardPage2)
|
||||
self.btn_temp.setObjectName("btn_temp")
|
||||
self.gridLayout.addWidget(self.btn_temp, 1, 2, 1, 1)
|
||||
self.gridLayout.addWidget(self.btn_temp, 2, 2, 1, 1)
|
||||
self.label_16 = QtWidgets.QLabel(parent=self.wizardPage2)
|
||||
self.label_16.setObjectName("label_16")
|
||||
self.gridLayout.addWidget(self.label_16, 1, 0, 1, 1)
|
||||
self.settings_database_name = QtWidgets.QLineEdit(parent=self.wizardPage2)
|
||||
self.settings_database_name.setObjectName("settings_database_name")
|
||||
self.gridLayout.addWidget(self.settings_database_name, 1, 1, 1, 1)
|
||||
Wizard.addPage(self.wizardPage2)
|
||||
self.wizardPage3 = QtWidgets.QWizardPage()
|
||||
self.wizardPage3.setObjectName("wizardPage3")
|
||||
@@ -60,18 +72,34 @@ class Ui_Wizard(object):
|
||||
self.label_3 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_3.setObjectName("label_3")
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_3)
|
||||
self.lineEdit = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.lineEdit.setObjectName("lineEdit")
|
||||
self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit)
|
||||
self.lineEdit_2 = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.lineEdit_2.setObjectName("lineEdit_2")
|
||||
self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_2)
|
||||
self.lineEdit_3 = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.lineEdit_3.setObjectName("lineEdit_3")
|
||||
self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_3)
|
||||
self.lineEdit_4 = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.lineEdit_4.setObjectName("lineEdit_4")
|
||||
self.formLayout.setWidget(4, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_4)
|
||||
self.settings_mail_smtp_server = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_smtp_server.setClearButtonEnabled(True)
|
||||
self.settings_mail_smtp_server.setObjectName("settings_mail_smtp_server")
|
||||
self.formLayout.setWidget(
|
||||
0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_smtp_server
|
||||
)
|
||||
self.settings_mail_smtp_port = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_smtp_port.setInputMethodHints(
|
||||
QtCore.Qt.InputMethodHint.ImhDigitsOnly
|
||||
)
|
||||
self.settings_mail_smtp_port.setClearButtonEnabled(True)
|
||||
self.settings_mail_smtp_port.setObjectName("settings_mail_smtp_port")
|
||||
self.formLayout.setWidget(
|
||||
1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_smtp_port
|
||||
)
|
||||
self.settings_mail_user_name = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_user_name.setClearButtonEnabled(True)
|
||||
self.settings_mail_user_name.setObjectName("settings_mail_user_name")
|
||||
self.formLayout.setWidget(
|
||||
3, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_user_name
|
||||
)
|
||||
self.settings_mail_password = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_password.setStatusTip("")
|
||||
self.settings_mail_password.setWhatsThis("")
|
||||
self.settings_mail_password.setObjectName("settings_mail_password")
|
||||
self.formLayout.setWidget(
|
||||
4, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_password
|
||||
)
|
||||
self.label_4 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_4.setObjectName("label_4")
|
||||
self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_4)
|
||||
@@ -84,27 +112,35 @@ class Ui_Wizard(object):
|
||||
self.settings_mail_use_user_name = QtWidgets.QCheckBox(parent=self.wizardPage3)
|
||||
self.settings_mail_use_user_name.setObjectName("settings_mail_use_user_name")
|
||||
self.formLayout.setWidget(8, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_use_user_name)
|
||||
self.settings_mail_ = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_.setObjectName("settings_mail_")
|
||||
self.formLayout.setWidget(7, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_)
|
||||
self.settings_mail_printer = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_printer.setClearButtonEnabled(True)
|
||||
self.settings_mail_printer.setObjectName("settings_mail_printer")
|
||||
self.formLayout.setWidget(
|
||||
7, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_printer
|
||||
)
|
||||
self.label_8 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_8.setObjectName("label_8")
|
||||
self.formLayout.setWidget(7, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_8)
|
||||
self.label_9 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_9.setObjectName("label_9")
|
||||
self.formLayout.setWidget(8, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_9)
|
||||
self.textEdit_2 = QtWidgets.QTextEdit(parent=self.wizardPage3)
|
||||
self.textEdit_2.setObjectName("textEdit_2")
|
||||
self.formLayout.setWidget(5, QtWidgets.QFormLayout.ItemRole.FieldRole, self.textEdit_2)
|
||||
self.settings_mail_signature = QtWidgets.QTextEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_signature.setObjectName("settings_mail_signature")
|
||||
self.formLayout.setWidget(
|
||||
5, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_signature
|
||||
)
|
||||
self.label_10 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_10.setObjectName("label_10")
|
||||
self.formLayout.setWidget(5, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_10)
|
||||
self.label_7 = QtWidgets.QLabel(parent=self.wizardPage3)
|
||||
self.label_7.setObjectName("label_7")
|
||||
self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_7)
|
||||
self.lineEdit_5 = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.lineEdit_5.setObjectName("lineEdit_5")
|
||||
self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_5)
|
||||
self.settings_mail_address = QtWidgets.QLineEdit(parent=self.wizardPage3)
|
||||
self.settings_mail_address.setClearButtonEnabled(True)
|
||||
self.settings_mail_address.setObjectName("settings_mail_address")
|
||||
self.formLayout.setWidget(
|
||||
2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_mail_address
|
||||
)
|
||||
Wizard.addPage(self.wizardPage3)
|
||||
self.wizardPage4 = QtWidgets.QWizardPage()
|
||||
self.wizardPage4.setObjectName("wizardPage4")
|
||||
@@ -133,59 +169,151 @@ class Ui_Wizard(object):
|
||||
self.wizardPage5.setObjectName("wizardPage5")
|
||||
self.formLayout_3 = QtWidgets.QFormLayout(self.wizardPage5)
|
||||
self.formLayout_3.setObjectName("formLayout_3")
|
||||
self.lineEdit_6 = QtWidgets.QLineEdit(parent=self.wizardPage5)
|
||||
self.lineEdit_6.setObjectName("lineEdit_6")
|
||||
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_6)
|
||||
self.settings_openai_api_key = QtWidgets.QLineEdit(parent=self.wizardPage5)
|
||||
self.settings_openai_api_key.setObjectName("settings_openai_api_key")
|
||||
self.formLayout_3.setWidget(
|
||||
0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_openai_api_key
|
||||
)
|
||||
self.label_14 = QtWidgets.QLabel(parent=self.wizardPage5)
|
||||
self.label_14.setObjectName("label_14")
|
||||
self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_14)
|
||||
self.label_15 = QtWidgets.QLabel(parent=self.wizardPage5)
|
||||
self.label_15.setObjectName("label_15")
|
||||
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_15)
|
||||
self.comboBox = QtWidgets.QComboBox(parent=self.wizardPage5)
|
||||
self.comboBox.setObjectName("comboBox")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.comboBox.addItem("")
|
||||
self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.comboBox)
|
||||
self.settings_openai_model = QtWidgets.QComboBox(parent=self.wizardPage5)
|
||||
self.settings_openai_model.setObjectName("settings_openai_model")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.settings_openai_model.addItem("")
|
||||
self.formLayout_3.setWidget(
|
||||
1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.settings_openai_model
|
||||
)
|
||||
Wizard.addPage(self.wizardPage5)
|
||||
self.wizardPage6 = QtWidgets.QWizardPage()
|
||||
self.wizardPage6.setObjectName("wizardPage6")
|
||||
self.formLayout_4 = QtWidgets.QFormLayout(self.wizardPage6)
|
||||
self.formLayout_4.setObjectName("formLayout_4")
|
||||
self.label_17 = QtWidgets.QLabel(parent=self.wizardPage6)
|
||||
self.label_17.setObjectName("label_17")
|
||||
self.formLayout_4.setWidget(
|
||||
0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_17
|
||||
)
|
||||
self.sam_username = QtWidgets.QLineEdit(parent=self.wizardPage6)
|
||||
self.sam_username.setObjectName("sam_username")
|
||||
self.formLayout_4.setWidget(
|
||||
0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.sam_username
|
||||
)
|
||||
self.label_18 = QtWidgets.QLabel(parent=self.wizardPage6)
|
||||
self.label_18.setObjectName("label_18")
|
||||
self.formLayout_4.setWidget(
|
||||
1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_18
|
||||
)
|
||||
self.sam_password = QtWidgets.QLineEdit(parent=self.wizardPage6)
|
||||
self.sam_password.setObjectName("sam_password")
|
||||
self.formLayout_4.setWidget(
|
||||
1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.sam_password
|
||||
)
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.btn_test = QtWidgets.QPushButton(parent=self.wizardPage6)
|
||||
self.btn_test.setObjectName("btn_test")
|
||||
self.horizontalLayout.addWidget(self.btn_test)
|
||||
self.btn_create = QtWidgets.QPushButton(parent=self.wizardPage6)
|
||||
self.btn_create.setDefault(True)
|
||||
self.btn_create.setFlat(False)
|
||||
self.btn_create.setObjectName("btn_create")
|
||||
self.horizontalLayout.addWidget(self.btn_create)
|
||||
self.formLayout_4.setLayout(
|
||||
2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.horizontalLayout
|
||||
)
|
||||
spacerItem = QtWidgets.QSpacerItem(
|
||||
20,
|
||||
40,
|
||||
QtWidgets.QSizePolicy.Policy.Minimum,
|
||||
QtWidgets.QSizePolicy.Policy.Expanding,
|
||||
)
|
||||
self.formLayout_4.setItem(
|
||||
3, QtWidgets.QFormLayout.ItemRole.FieldRole, spacerItem
|
||||
)
|
||||
Wizard.addPage(self.wizardPage6)
|
||||
|
||||
self.retranslateUi(Wizard)
|
||||
QtCore.QMetaObject.connectSlotsByName(Wizard)
|
||||
Wizard.setTabOrder(self.settings_database, self.btn_database)
|
||||
Wizard.setTabOrder(self.btn_database, self.settings_database_name)
|
||||
Wizard.setTabOrder(self.settings_database_name, self.settings_temp)
|
||||
Wizard.setTabOrder(self.settings_temp, self.btn_temp)
|
||||
Wizard.setTabOrder(self.btn_temp, self.settings_mail_smtp_server)
|
||||
Wizard.setTabOrder(self.settings_mail_smtp_server, self.settings_mail_smtp_port)
|
||||
Wizard.setTabOrder(self.settings_mail_smtp_port, self.settings_mail_address)
|
||||
Wizard.setTabOrder(self.settings_mail_address, self.settings_mail_user_name)
|
||||
Wizard.setTabOrder(self.settings_mail_user_name, self.settings_mail_password)
|
||||
Wizard.setTabOrder(self.settings_mail_password, self.settings_mail_signature)
|
||||
Wizard.setTabOrder(self.settings_mail_signature, self.settings_mail_printer)
|
||||
Wizard.setTabOrder(self.settings_mail_printer, self.settings_mail_use_user_name)
|
||||
Wizard.setTabOrder(
|
||||
self.settings_mail_use_user_name, self.settings_zotero_api_key
|
||||
)
|
||||
Wizard.setTabOrder(
|
||||
self.settings_zotero_api_key, self.settings_zotero_library_id
|
||||
)
|
||||
Wizard.setTabOrder(
|
||||
self.settings_zotero_library_id, self.settings_zotero_library_type
|
||||
)
|
||||
Wizard.setTabOrder(
|
||||
self.settings_zotero_library_type, self.settings_openai_api_key
|
||||
)
|
||||
Wizard.setTabOrder(self.settings_openai_api_key, self.settings_openai_model)
|
||||
|
||||
def retranslateUi(self, Wizard):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
Wizard.setWindowTitle(_translate("Wizard", "Wizard"))
|
||||
self.wizardPage1.setTitle(_translate("Wizard", "Willkommen"))
|
||||
self.textEdit.setHtml(_translate("Wizard", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"hr { height: 1px; border-width: 0; }\n"
|
||||
"li.unchecked::marker { content: \"\\2610\"; }\n"
|
||||
"li.checked::marker { content: \"\\2612\"; }\n"
|
||||
"</style></head><body style=\" font-family:\'Segoe UI\'; font-size:9pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Es wurde erkannt, dass der SemesterApparatsManager (SAM) zum ersten Mal gestartet wurde. In den Folgenden Seiten werden die grundlegenden Einstellungen festgelegt, anschließend wird SAM geöffnet. Folgende Einstellungen werden über diesen Wizard festgelegt:</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- Datenbank</p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- eMail</p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- Zotero Integration</p>\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">- KI Integration</p>\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
|
||||
self.textEdit.setHtml(
|
||||
_translate(
|
||||
"Wizard",
|
||||
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">\n'
|
||||
'<html><head><meta name="qrichtext" content="1" /><meta charset="utf-8" /><style type="text/css">\n'
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"hr { height: 1px; border-width: 0; }\n"
|
||||
'li.unchecked::marker { content: "\\2610"; }\n'
|
||||
'li.checked::marker { content: "\\2612"; }\n'
|
||||
"</style></head><body style=\" font-family:'Segoe UI'; font-size:9pt; font-weight:400; font-style:normal;\">\n"
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Es wurde erkannt, dass der SemesterApparatsManager (SAM) zum ersten Mal gestartet wurde. In den Folgenden Seiten werden die grundlegenden Einstellungen festgelegt, anschließend wird SAM geöffnet. Folgende Einstellungen werden über diesen Wizard festgelegt:</p>\n'
|
||||
'<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>\n'
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- Datenbank</p>\n'
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- eMail</p>\n'
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- Zotero Integration</p>\n'
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">- KI Integration</p>\n'
|
||||
'<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Anschließend kann ein Nutzeraccount für SAM erstellt werden</p></body></html>',
|
||||
)
|
||||
)
|
||||
self.wizardPage2.setTitle(_translate("Wizard", "Datenbank"))
|
||||
self.wizardPage2.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die Datenbank und temporären Dateien festgelegt. Über den [...] Knopf können die Datenbank und der Speicherort für die temporären Daten festgelegt werden"))
|
||||
self.label.setText(_translate("Wizard", "Datenbank"))
|
||||
self.settings_database.setPlaceholderText(_translate("Wizard", "semesterapparate.db"))
|
||||
self.btn_database.setText(_translate("Wizard", "..."))
|
||||
self.label_2.setText(_translate("Wizard", "Temporäre Daten"))
|
||||
self.wizardPage2.setSubTitle(
|
||||
_translate(
|
||||
"Wizard",
|
||||
"Hier werden die Einstellungen für die Datenbank und temporären Dateien festgelegt. Über den [...] Knopf können die Datenbank und der Speicherort für die temporären Daten festgelegt werden",
|
||||
)
|
||||
)
|
||||
self.settings_temp.setPlaceholderText(_translate("Wizard", "C:\\Users\\[Nutzer]\\AppData\\Local\\SAM\\SemesterApparatsManager\\Cache"))
|
||||
self.label.setText(_translate("Wizard", "Datenbankpfad"))
|
||||
self.label_2.setText(_translate("Wizard", "Temporäre Daten"))
|
||||
self.btn_database.setText(_translate("Wizard", "..."))
|
||||
self.btn_temp.setText(_translate("Wizard", "..."))
|
||||
self.label_16.setText(_translate("Wizard", "Datenbankname"))
|
||||
self.settings_database_name.setPlaceholderText(
|
||||
_translate("Wizard", "semesterapparate.db")
|
||||
)
|
||||
self.wizardPage3.setTitle(_translate("Wizard", "Mail"))
|
||||
self.wizardPage3.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die Mailverbindung eingegeben"))
|
||||
self.label_3.setText(_translate("Wizard", "SMTP Server"))
|
||||
self.settings_mail_password.setToolTip(
|
||||
_translate("Wizard", "Rechtsklick, um passwort anzuzeigen")
|
||||
)
|
||||
self.label_4.setText(_translate("Wizard", "Nutzername"))
|
||||
self.label_5.setText(_translate("Wizard", "SMTP Port"))
|
||||
self.label_6.setText(_translate("Wizard", "Passwort"))
|
||||
@@ -205,11 +333,19 @@ class Ui_Wizard(object):
|
||||
self.wizardPage5.setSubTitle(_translate("Wizard", "Hier werden die Einstellungen für die KI Integration eingestellt."))
|
||||
self.label_14.setText(_translate("Wizard", "API Key"))
|
||||
self.label_15.setText(_translate("Wizard", "ChatGPT Modell"))
|
||||
self.comboBox.setCurrentText(_translate("Wizard", "gpt-4o-mini"))
|
||||
self.comboBox.setItemText(0, _translate("Wizard", "gpt3.5-turbo"))
|
||||
self.comboBox.setItemText(1, _translate("Wizard", "gpt-4"))
|
||||
self.comboBox.setItemText(2, _translate("Wizard", "gpt-4o"))
|
||||
self.comboBox.setItemText(3, _translate("Wizard", "gpt-4o-mini"))
|
||||
self.comboBox.setItemText(4, _translate("Wizard", "gpt-4.1"))
|
||||
self.comboBox.setItemText(5, _translate("Wizard", "gpt-4.1-mini"))
|
||||
self.comboBox.setItemText(6, _translate("Wizard", "gpt-4.1-nano"))
|
||||
self.settings_openai_model.setCurrentText(_translate("Wizard", "gpt3.5-turbo"))
|
||||
self.settings_openai_model.setItemText(0, _translate("Wizard", "gpt3.5-turbo"))
|
||||
self.settings_openai_model.setItemText(1, _translate("Wizard", "gpt-4"))
|
||||
self.settings_openai_model.setItemText(2, _translate("Wizard", "gpt-4o"))
|
||||
self.settings_openai_model.setItemText(3, _translate("Wizard", "gpt-4o-mini"))
|
||||
self.settings_openai_model.setItemText(4, _translate("Wizard", "gpt-4.1"))
|
||||
self.settings_openai_model.setItemText(5, _translate("Wizard", "gpt-4.1-mini"))
|
||||
self.settings_openai_model.setItemText(6, _translate("Wizard", "gpt-4.1-nano"))
|
||||
self.wizardPage6.setTitle(_translate("Wizard", "SAM Nutzer"))
|
||||
self.wizardPage6.setSubTitle(
|
||||
_translate("Wizard", "Hier kann ein Nutzer für SAM erstellt werden")
|
||||
)
|
||||
self.label_17.setText(_translate("Wizard", "Nutzername"))
|
||||
self.label_18.setText(_translate("Wizard", "Passwort"))
|
||||
self.btn_test.setText(_translate("Wizard", "Prüfen"))
|
||||
self.btn_create.setText(_translate("Wizard", "Anlegen"))
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\utils\docs.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.7.1
|
||||
# Created by: PySide6 UI code generator 6.7.1
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtWidgets
|
||||
from PySide6 import QtCore, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\utils\docs.ui'
|
||||
#
|
||||
# Created by: PyQt6 UI code generator 6.8.0
|
||||
# Created by: PySide6 UI code generator 6.8.0
|
||||
#
|
||||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
|
||||
# run again. Do not edit this file unless you know what you are doing.
|
||||
|
||||
|
||||
from PyQt6 import QtCore, QtGui, QtWidgets
|
||||
from PySide6 import QtCore, QtGui, QtWidgets
|
||||
|
||||
|
||||
class Ui_Dialog(object):
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
# from PyQt6 import Webview
|
||||
from PyQt6.QtWidgets import QApplication, QMainWindow, QTabWidget
|
||||
# from PySide6 import Webview
|
||||
from PySide6.QtWidgets import QApplication, QMainWindow, QTabWidget
|
||||
|
||||
documentation_path = "docs"
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import darkdetect
|
||||
from PyQt6 import QtGui
|
||||
from PySide6 import QtGui
|
||||
import re
|
||||
from src import settings
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user