various updates and changes, move admin widgets into different seperate dialogs

This commit is contained in:
WorldTeacher
2024-08-08 14:40:38 +02:00
parent ee8862a220
commit fba35cdf25
32 changed files with 2175 additions and 2594 deletions

View File

@@ -12,7 +12,6 @@ def csv_to_list(path: str) -> list[str]:
reader = csv.reader(csvfile, delimiter=";", quotechar="|") reader = csv.reader(csvfile, delimiter=";", quotechar="|")
ret = [] ret = []
for row in reader: for row in reader:
print(row)
ret.append(row[0].replace('"', "")) ret.append(row[0].replace('"', ""))
return ret return ret
@@ -20,4 +19,4 @@ def csv_to_list(path: str) -> list[str]:
if __name__ == "__main__": if __name__ == "__main__":
text = csv_to_list("C:/Users/aky547/Desktop/semap/71.csv") text = csv_to_list("C:/Users/aky547/Desktop/semap/71.csv")
# remove linebreaks # remove linebreaks
print(text) # print(text)

View File

@@ -21,7 +21,7 @@ class ApparatData:
def get_prof_details(self) -> dict: def get_prof_details(self) -> dict:
return { return {
"prof_title": self.prof_title, "title": self.prof_title,
"profname": self.profname, "profname": self.profname,
"prof_mail": self.prof_mail, "prof_mail": self.prof_mail,
"prof_tel": self.prof_tel, "prof_tel": self.prof_tel,
@@ -62,7 +62,7 @@ class BookData:
else: else:
pattern = r"(\w+)='([^']*)'" pattern = r"(\w+)='([^']*)'"
data_dict = dict(re.findall(pattern, data)) data_dict = dict(re.findall(pattern, data))
print(data_dict) # print(data_dict)
for key, value in data_dict.items(): for key, value in data_dict.items():
setattr(self, key, value) setattr(self, key, value)
return self return self

View File

@@ -35,26 +35,31 @@ class BookGrabber(QThread):
self.logger.log_info(f"Working on {len(self.data)} entries") self.logger.log_info(f"Working on {len(self.data)} entries")
self.tstate = (self.app_id, self.prof_id, self.mode, self.data) self.tstate = (self.app_id, self.prof_id, self.mode, self.data)
self.logger.log_debug("State: " + str(self.tstate)) self.logger.log_debug("State: " + str(self.tstate))
print(self.tstate) # print(self.tstate)
def run(self): def run(self):
self.db = Database() self.db = Database()
item = 0 item = 0
iterdata = self.data iterdata = self.data
print(iterdata) # print(iterdata)
if self.prof_id is None:
self.prof_id = self.db.getProfNameByApparat(self.app_id)
for entry in iterdata: for entry in iterdata:
print(entry) # print(entry)
signature = str(entry) signature = str(entry)
self.logger.log_info("Processing entry: " + signature) self.logger.log_info("Processing entry: " + signature)
webdata = WebRequest(self.appnr).get_ppn(entry).get_data() webdata = WebRequest(self.appnr).get_ppn(entry).get_data()
if webdata == "error": if webdata == "error":
continue continue
bd = BibTextTransformer(self.mode).get_data(webdata).return_data() bd = BibTextTransformer(self.mode).get_data(webdata).return_data()
bd.signature = entry bd.signature = entry
transformer = ( transformer = (
BibTextTransformer("RDS").get_data(webdata).return_data("rds_data") BibTextTransformer("RDS").get_data(webdata).return_data("rds_data")
) )
if bd is None:
continue
# confirm lock is acquired # confirm lock is acquired
self.db.addBookToDatabase(bd, self.app_id, self.prof_id) self.db.addBookToDatabase(bd, self.app_id, self.prof_id)
# get latest book id # get latest book id
@@ -62,13 +67,13 @@ class BookGrabber(QThread):
self.logger.log_info("Added book to database") self.logger.log_info("Added book to database")
state = 0 state = 0
for result in transformer.RDS_DATA: for result in transformer.RDS_DATA:
print(result.RDS_LOCATION) # print(result.RDS_LOCATION)
if str(self.app_id) in result.RDS_LOCATION: if str(self.app_id) in result.RDS_LOCATION:
state = 1 state = 1
break break
self.logger.log_info(f"State of {signature}: {state}") self.logger.log_info(f"State of {signature}: {state}")
print("updating availability of " + str(self.book_id) + " to " + str(state)) # print("updating availability of " + str(self.book_id) + " to " + str(state))
try: try:
self.db.setAvailability(self.book_id, state) self.db.setAvailability(self.book_id, state)
except sqlite3.OperationalError as e: except sqlite3.OperationalError as e:
@@ -100,7 +105,7 @@ class BookGrabber(QThread):
# self.mode = mode # self.mode = mode
# self.book_id = None # self.book_id = None
# self.state = (self.app_id, self.prof_id, self.mode, self.data) # self.state = (self.app_id, self.prof_id, self.mode, self.data)
# print(self.state) # # print(self.state)
# self.logger.log_info("state: " + str(self.state)) # self.logger.log_info("state: " + str(self.state))
# # time.sleep(2) # # time.sleep(2)
@@ -116,9 +121,9 @@ class BookGrabber(QThread):
# self.db = Database() # self.db = Database()
# item = 0 # item = 0
# iterdata = self.data # iterdata = self.data
# print(iterdata) # # print(iterdata)
# for entry in iterdata: # for entry in iterdata:
# print(entry) # # print(entry)
# signature = str(entry) # signature = str(entry)
# self.logger.log_info("Processing entry: " + signature) # self.logger.log_info("Processing entry: " + signature)
@@ -135,7 +140,7 @@ class BookGrabber(QThread):
# self.book_id = self.db.getLastBookId() # self.book_id = self.db.getLastBookId()
# self.logger.log_info("Added book to database") # self.logger.log_info("Added book to database")
# state = 0 # state = 0
# print(len(rds.items)) # # print(len(rds.items))
# for rds_item in rds.items: # for rds_item in rds.items:
# sign = rds_item.superlocation # sign = rds_item.superlocation
# loc = rds_item.location # loc = rds_item.location
@@ -146,7 +151,7 @@ class BookGrabber(QThread):
# break # break
# self.logger.log_info(f"State of {signature}: {state}") # self.logger.log_info(f"State of {signature}: {state}")
# print( # # print(
# "updating availability of " # "updating availability of "
# + str(self.book_id) # + str(self.book_id)
# + " to " # + " to "

View File

@@ -23,8 +23,8 @@ class AutoAdder(QThread):
self.app_id = app_id self.app_id = app_id
self.prof_id = prof_id self.prof_id = prof_id
print("Launched AutoAdder") # print("Launched AutoAdder")
print(self.data, self.app_id, self.prof_id) # print(self.data, self.app_id, self.prof_id)
def run(self): def run(self):
self.db = Database() self.db = Database()
@@ -41,11 +41,11 @@ class AutoAdder(QThread):
# qsleep # qsleep
item += 1 item += 1
self.progress.emit(item) self.progress.emit(item)
print(item, len(self.data)) # print(item, len(self.data))
time.sleep(1) time.sleep(1)
except Exception as e: except Exception as e:
print(e) # print(e)
self.logger.log_exception( self.logger.log_exception(
f"The query failed with message {e} for signature {entry}" f"The query failed with message {e} for signature {entry}"
) )

View File

@@ -52,7 +52,7 @@ class AvailChecker(QThread):
for item in rds.items: for item in rds.items:
sign = item.superlocation sign = item.superlocation
loc = item.location loc = item.location
# print(item.location) # # print(item.location)
if self.appnumber in sign or self.appnumber in loc: if self.appnumber in sign or self.appnumber in loc:
state = 1 state = 1
break break
@@ -61,7 +61,7 @@ class AvailChecker(QThread):
book_id = book["id"] book_id = book["id"]
break break
self.logger.log_info(f"State of {link}: " + str(state)) self.logger.log_info(f"State of {link}: " + str(state))
print("Updating availability of " + str(book_id) + " to " + str(state)) # print("Updating availability of " + str(book_id) + " to " + str(state))
self.db.setAvailability(book_id, state) self.db.setAvailability(book_id, state)
count += 1 count += 1
self.updateProgress.emit(count, len(self.links)) self.updateProgress.emit(count, len(self.links))

View File

@@ -184,7 +184,7 @@ class ZoteroController:
book = bib.return_data() book = bib.return_data()
return book return book
# print(zot.item_template("bookSection")) # # print(zot.item_template("bookSection"))
def createBook(self, isbn): def createBook(self, isbn):
book = self.__get_data(isbn) book = self.__get_data(isbn)
@@ -207,7 +207,7 @@ class ZoteroController:
def createItem(self, item): def createItem(self, item):
resp = self.zot.create_items([item]) resp = self.zot.create_items([item])
if "successful" in resp.keys(): if "successful" in resp.keys():
print(resp["successful"]["0"]["key"]) # print(resp["successful"]["0"]["key"])
return resp["successful"]["0"]["key"] return resp["successful"]["0"]["key"]
else: else:
return None return None
@@ -217,7 +217,7 @@ class ZoteroController:
for item in items: for item in items:
if item["key"] == key: if item["key"] == key:
self.zot.delete_item(item) self.zot.delete_item(item)
print(item) # print(item)
break break
def createHGSection(self, book: Book, data: dict): def createHGSection(self, book: Book, data: dict):
@@ -238,7 +238,7 @@ class ZoteroController:
] ]
chapter.creators += authors chapter.creators += authors
print(chapter.to_dict()) # print(chapter.to_dict())
return self.createItem(chapter.to_dict()) return self.createItem(chapter.to_dict())
pass pass
@@ -254,7 +254,7 @@ class ZoteroController:
# chapter.creators # chapter.creators
def createJournalArticle(self, journal, article): def createJournalArticle(self, journal, article):
print(type(article)) # print(type(article))
journalarticle = JournalArticle() journalarticle = JournalArticle()
journalarticle.assign(journal) journalarticle.assign(journal)
journalarticle.itemType = "journalArticle" journalarticle.itemType = "journalArticle"
@@ -270,7 +270,7 @@ class ZoteroController:
journalarticle.issue = article["issue"] journalarticle.issue = article["issue"]
journalarticle.url = article["isbn"] journalarticle.url = article["isbn"]
print(journalarticle.to_dict()) # print(journalarticle.to_dict())
return self.createItem(journalarticle.to_dict()) return self.createItem(journalarticle.to_dict())
@@ -316,16 +316,16 @@ if __name__ == "__main__":
# if isinstance(publishers, str): # if isinstance(publishers, str):
# publishers = [publishers] # publishers = [publishers]
# for publisher in publishers: # for publisher in publishers:
# print(publisher) # # print(publisher)
# creator = Creator().from_string(publisher) # creator = Creator().from_string(publisher)
# creator.creatorType = "editor" # creator.creatorType = "editor"
# authors.append(creator.__dict__) # authors.append(creator.__dict__)
# chapter.creators = authors # chapter.creators = authors
# chapter.publisher = book.publisher # chapter.publisher = book.publisher
# print(chapter.to_dict()) # # print(chapter.to_dict())
# createBookSection(chapter.to_dict()) # createBookSection(chapter.to_dict())
# get_citation("9ZXH8DDE") # get_citation("9ZXH8DDE")
# # print() # # # print()
# print(get_books()) # # print(get_books())
# print(zot.item_creator_types("bookSection")) # # print(zot.item_creator_types("bookSection"))

View File

@@ -133,10 +133,8 @@ class ARRAYData:
return data return data
except Exception: except Exception:
# print(f"ARRAYData.transform failed, {source}, {search}") # # print(f"ARRAYData.transform failed, {source}, {search}")
logger.log_exception( logger.log_exception(f"ARRAYData.transform failed, no string {search}")
f"ARRAYData.transform failed, no string {search}, {source}, {search}"
)
return "" return ""
def _get_list_entry(source: str, search: str, entry: str) -> str: def _get_list_entry(source: str, search: str, entry: str) -> str:
@@ -218,9 +216,20 @@ class ARRAYData:
else: else:
pass pass
return ";".join(authors) return ";".join(authors)
def _get_title(data):
titledata = None
title = ""
if "[ti_long]" in data:
titledata = data.split("[ti_long]")[1].split(")\n")[0].strip()
title = titledata.split("=>")[1].strip().split("/")[0].strip()
if "[ti_long_f]" in data:
titledata = data.split("[ti_long_f]")[1].split(")\n")[0].strip()
title = titledata.split("=>")[1].strip().split("/")[0].strip()
return title
return BookData( return BookData(
ppn=_get_line(data, "[kid]"), ppn=_get_line(data, "[kid]"),
title=_get_line(data, "[ti_long]").split("/")[0].strip(), title=_get_title(data).strip(),
author=_get_author(data), author=_get_author(data),
edition=_get_list_entry(data, "[ausgabe]", "[0]").replace(",", ""), edition=_get_list_entry(data, "[ausgabe]", "[0]").replace(",", ""),
link=f"https://rds.ibs-bw.de/phfreiburg/link?kid={_get_line(data,'[kid]')}", link=f"https://rds.ibs-bw.de/phfreiburg/link?kid={_get_line(data,'[kid]')}",
@@ -403,7 +412,6 @@ class DictToTable:
setattr(self, key, None) setattr(self, key, None)
def transform(self, data: dict): def transform(self, data: dict):
print(data)
mode = data["mode"] mode = data["mode"]
self.reset() self.reset()
if mode == "book": if mode == "book":
@@ -465,4 +473,4 @@ if __name__ == "__main__":
ret = RDSData().transform(data) ret = RDSData().transform(data)
data = ret.return_data("rds_availability") data = ret.return_data("rds_availability")
print(data) # print(data)

View File

@@ -230,7 +230,7 @@ class Ui_MainWindow(object):
self.dokument_list.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff) self.dokument_list.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.dokument_list.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents) self.dokument_list.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents)
self.dokument_list.setDragEnabled(True) self.dokument_list.setDragEnabled(True)
self.dokument_list.setDragDropMode(QtWidgets.QAbstractItemView.DragDropMode.DropOnly) self.dokument_list.setDragDropMode(QtWidgets.QAbstractItemView.DragDropMode.DragOnly)
self.dokument_list.setDefaultDropAction(QtCore.Qt.DropAction.LinkAction) self.dokument_list.setDefaultDropAction(QtCore.Qt.DropAction.LinkAction)
self.dokument_list.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.SingleSelection) self.dokument_list.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.SingleSelection)
self.dokument_list.setObjectName("dokument_list") self.dokument_list.setObjectName("dokument_list")
@@ -590,535 +590,28 @@ class Ui_MainWindow(object):
self.search_statistics = QtWidgets.QWidget() self.search_statistics = QtWidgets.QWidget()
self.search_statistics.setObjectName("search_statistics") self.search_statistics.setObjectName("search_statistics")
self.tabWidget.addTab(self.search_statistics, "") self.tabWidget.addTab(self.search_statistics, "")
self.elsa = QtWidgets.QWidget() self.elsatab = QtWidgets.QWidget()
self.elsa.setObjectName("elsa") self.elsatab.setObjectName("elsatab")
self.create_frame_elsa = QtWidgets.QFrame(parent=self.elsa) self.tabWidget.addTab(self.elsatab, "")
self.create_frame_elsa.setEnabled(True)
self.create_frame_elsa.setGeometry(QtCore.QRect(20, 200, 1231, 201))
self.create_frame_elsa.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.create_frame_elsa.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
self.create_frame_elsa.setObjectName("create_frame_elsa")
self.elsa_save = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.elsa_save.setGeometry(QtCore.QRect(10, 160, 75, 24))
self.elsa_save.setObjectName("elsa_save")
self.dokument_list_elsa = QtWidgets.QTableWidget(parent=self.create_frame_elsa)
self.dokument_list_elsa.setGeometry(QtCore.QRect(720, 10, 321, 181))
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(False)
font.setKerning(False)
self.dokument_list_elsa.setFont(font)
self.dokument_list_elsa.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.dokument_list_elsa.setAcceptDrops(True)
self.dokument_list_elsa.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.dokument_list_elsa.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustToContents)
self.dokument_list_elsa.setDragEnabled(True)
self.dokument_list_elsa.setDragDropMode(QtWidgets.QAbstractItemView.DragDropMode.DropOnly)
self.dokument_list_elsa.setDefaultDropAction(QtCore.Qt.DropAction.LinkAction)
self.dokument_list_elsa.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.SingleSelection)
self.dokument_list_elsa.setObjectName("dokument_list_elsa")
self.dokument_list_elsa.setColumnCount(4)
self.dokument_list_elsa.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(8)
item.setFont(font)
self.dokument_list_elsa.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(8)
item.setFont(font)
self.dokument_list_elsa.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(8)
item.setFont(font)
self.dokument_list_elsa.setHorizontalHeaderItem(2, item)
item = QtWidgets.QTableWidgetItem()
self.dokument_list_elsa.setHorizontalHeaderItem(3, item)
self.dokument_list_elsa.horizontalHeader().setDefaultSectionSize(107)
self.dokument_list_elsa.horizontalHeader().setMinimumSectionSize(41)
self.dokument_list_elsa.verticalHeader().setDefaultSectionSize(30)
self.check_file_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.check_file_elsa.setEnabled(True)
self.check_file_elsa.setGeometry(QtCore.QRect(1060, 120, 131, 51))
font = QtGui.QFont()
font.setPointSize(9)
font.setBold(False)
self.check_file_elsa.setFont(font)
self.check_file_elsa.setObjectName("check_file_elsa")
self.btn_open_document_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.btn_open_document_elsa.setGeometry(QtCore.QRect(1060, 80, 131, 25))
font = QtGui.QFont()
font.setPointSize(9)
font.setBold(False)
self.btn_open_document_elsa.setFont(font)
self.btn_open_document_elsa.setObjectName("btn_open_document_elsa")
self.btn_add_document_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.btn_add_document_elsa.setGeometry(QtCore.QRect(1060, 40, 131, 25))
font = QtGui.QFont()
font.setPointSize(9)
font.setBold(False)
self.btn_add_document_elsa.setFont(font)
self.btn_add_document_elsa.setObjectName("btn_add_document_elsa")
self.gridLayoutWidget_6 = QtWidgets.QWidget(parent=self.create_frame_elsa)
self.gridLayoutWidget_6.setGeometry(QtCore.QRect(10, 10, 411, 121))
self.gridLayoutWidget_6.setObjectName("gridLayoutWidget_6")
self.gridLayout_7 = QtWidgets.QGridLayout(self.gridLayoutWidget_6)
self.gridLayout_7.setSizeConstraint(QtWidgets.QLayout.SizeConstraint.SetFixedSize)
self.gridLayout_7.setContentsMargins(0, 0, 0, 0)
self.gridLayout_7.setObjectName("gridLayout_7")
self.elsa_date_today = QtWidgets.QPushButton(parent=self.gridLayoutWidget_6)
self.elsa_date_today.setText("")
self.elsa_date_today.setFlat(True)
self.elsa_date_today.setObjectName("elsa_date_today")
self.gridLayout_7.addWidget(self.elsa_date_today, 1, 2, 1, 1)
self.label_29 = QtWidgets.QLabel(parent=self.gridLayoutWidget_6)
self.label_29.setObjectName("label_29")
self.gridLayout_7.addWidget(self.label_29, 2, 0, 1, 1)
spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.gridLayout_7.addItem(spacerItem7, 3, 0, 1, 1)
self.elsa_date = QtWidgets.QLineEdit(parent=self.gridLayoutWidget_6)
self.elsa_date.setClearButtonEnabled(True)
self.elsa_date.setObjectName("elsa_date")
self.gridLayout_7.addWidget(self.elsa_date, 1, 1, 1, 1)
self.active_semester = QtWidgets.QPushButton(parent=self.gridLayoutWidget_6)
self.active_semester.setEnabled(True)
self.active_semester.setText("")
self.active_semester.setIconSize(QtCore.QSize(20, 16))
self.active_semester.setFlat(True)
self.active_semester.setObjectName("active_semester")
self.gridLayout_7.addWidget(self.active_semester, 2, 2, 1, 1)
self.label_27 = QtWidgets.QLabel(parent=self.gridLayoutWidget_6)
self.label_27.setObjectName("label_27")
self.gridLayout_7.addWidget(self.label_27, 0, 0, 1, 1)
self.elsa_prof = QtWidgets.QComboBox(parent=self.gridLayoutWidget_6)
self.elsa_prof.setEditable(True)
self.elsa_prof.setObjectName("elsa_prof")
self.gridLayout_7.addWidget(self.elsa_prof, 0, 1, 1, 1)
self.label_28 = QtWidgets.QLabel(parent=self.gridLayoutWidget_6)
self.label_28.setObjectName("label_28")
self.gridLayout_7.addWidget(self.label_28, 1, 0, 1, 1)
self.elsa_semester = QtWidgets.QLineEdit(parent=self.gridLayoutWidget_6)
self.elsa_semester.setClearButtonEnabled(True)
self.elsa_semester.setObjectName("elsa_semester")
self.gridLayout_7.addWidget(self.elsa_semester, 2, 1, 1, 1)
self.elsa_update = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.elsa_update.setGeometry(QtCore.QRect(100, 160, 75, 24))
self.elsa_update.setObjectName("elsa_update")
self.table_elsa_list = QtWidgets.QTableWidget(parent=self.elsa)
self.table_elsa_list.setGeometry(QtCore.QRect(20, 430, 771, 281))
self.table_elsa_list.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.table_elsa_list.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
self.table_elsa_list.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
self.table_elsa_list.setObjectName("table_elsa_list")
self.table_elsa_list.setColumnCount(12)
self.table_elsa_list.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(2, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(3, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(4, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(5, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(6, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(7, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(8, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(9, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(10, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(11, item)
self.table_elsa_list.horizontalHeader().setVisible(True)
self.table_elsa_list.horizontalHeader().setDefaultSectionSize(64)
self.table_elsa_list.horizontalHeader().setStretchLastSection(False)
self.table_elsa_list.verticalHeader().setVisible(True)
self.elsa_statistic_frame = QtWidgets.QFrame(parent=self.elsa)
self.elsa_statistic_frame.setGeometry(QtCore.QRect(800, 410, 451, 321))
self.elsa_statistic_frame.setObjectName("elsa_statistic_frame")
self.elsa_statistics = QtWidgets.QTabWidget(parent=self.elsa_statistic_frame)
self.elsa_statistics.setGeometry(QtCore.QRect(0, 0, 451, 301))
self.elsa_statistics.setObjectName("elsa_statistics")
self.tab_9 = QtWidgets.QWidget()
self.tab_9.setObjectName("tab_9")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.tab_9)
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.elsa_statistics_table = QtWidgets.QTableWidget(parent=self.tab_9)
self.elsa_statistics_table.setFocusPolicy(QtCore.Qt.FocusPolicy.WheelFocus)
self.elsa_statistics_table.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.elsa_statistics_table.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
self.elsa_statistics_table.setTextElideMode(QtCore.Qt.TextElideMode.ElideRight)
self.elsa_statistics_table.setObjectName("elsa_statistics_table")
self.elsa_statistics_table.setColumnCount(2)
self.elsa_statistics_table.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.elsa_statistics_table.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_statistics_table.setHorizontalHeaderItem(1, item)
self.elsa_statistics_table.horizontalHeader().setDefaultSectionSize(220)
self.elsa_statistics_table.horizontalHeader().setSortIndicatorShown(True)
self.horizontalLayout_3.addWidget(self.elsa_statistics_table)
self.elsa_statistics.addTab(self.tab_9, "")
self.elsa_cancel_create = QtWidgets.QPushButton(parent=self.elsa)
self.elsa_cancel_create.setEnabled(False)
self.elsa_cancel_create.setGeometry(QtCore.QRect(30, 90, 91, 24))
self.elsa_cancel_create.setObjectName("elsa_cancel_create")
self.elsa_add_new = QtWidgets.QPushButton(parent=self.elsa)
self.elsa_add_new.setGeometry(QtCore.QRect(30, 50, 91, 24))
self.elsa_add_new.setObjectName("elsa_add_new")
self.elsa_table = QtWidgets.QTableWidget(parent=self.elsa)
self.elsa_table.setGeometry(QtCore.QRect(140, 10, 1111, 181))
self.elsa_table.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.elsa_table.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
self.elsa_table.setObjectName("elsa_table")
self.elsa_table.setColumnCount(3)
self.elsa_table.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(2, item)
self.elsa_table.horizontalHeader().setCascadingSectionResizes(False)
self.elsa_table.horizontalHeader().setDefaultSectionSize(370)
self.quote_entry = QtWidgets.QPushButton(parent=self.elsa)
self.quote_entry.setGeometry(QtCore.QRect(20, 400, 121, 24))
self.quote_entry.setObjectName("quote_entry")
self.tabWidget.addTab(self.elsa, "")
self.admin = QtWidgets.QWidget() self.admin = QtWidgets.QWidget()
self.admin.setObjectName("admin") self.admin.setObjectName("admin")
self.label_21 = QtWidgets.QLabel(parent=self.admin) self.label_21 = QtWidgets.QLabel(parent=self.admin)
self.label_21.setGeometry(QtCore.QRect(10, 30, 47, 22)) self.label_21.setGeometry(QtCore.QRect(10, 30, 47, 22))
self.label_21.setObjectName("label_21") self.label_21.setObjectName("label_21")
self.select_action_box = QtWidgets.QComboBox(parent=self.admin) self.select_action_box = QtWidgets.QComboBox(parent=self.admin)
self.select_action_box.setGeometry(QtCore.QRect(70, 30, 181, 22)) self.select_action_box.setGeometry(QtCore.QRect(60, 30, 181, 22))
self.select_action_box.setObjectName("select_action_box") self.select_action_box.setObjectName("select_action_box")
self.select_action_box.addItem("") self.select_action_box.addItem("")
self.select_action_box.addItem("") self.select_action_box.addItem("")
self.select_action_box.addItem("") self.select_action_box.addItem("")
self.select_action_box.addItem("") self.admin_action = QtWidgets.QGroupBox(parent=self.admin)
self.deleteUserBox = QtWidgets.QGroupBox(parent=self.admin) self.admin_action.setGeometry(QtCore.QRect(10, 70, 570, 291))
self.deleteUserBox.setGeometry(QtCore.QRect(10, 60, 370, 92))
font = QtGui.QFont()
font.setBold(True)
self.deleteUserBox.setFont(font)
self.deleteUserBox.setObjectName("deleteUserBox")
self.gridLayout_9 = QtWidgets.QGridLayout(self.deleteUserBox)
self.gridLayout_9.setObjectName("gridLayout_9")
self.gridLayout_8 = QtWidgets.QGridLayout()
self.gridLayout_8.setObjectName("gridLayout_8")
self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
self.horizontalLayout_8.setObjectName("horizontalLayout_8")
spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_8.addItem(spacerItem8)
self.btn_delete_user = QtWidgets.QPushButton(parent=self.deleteUserBox)
font = QtGui.QFont() font = QtGui.QFont()
font.setBold(False) font.setBold(False)
self.btn_delete_user.setFont(font) self.admin_action.setFont(font)
self.btn_delete_user.setObjectName("btn_delete_user") self.admin_action.setFlat(True)
self.horizontalLayout_8.addWidget(self.btn_delete_user) self.admin_action.setCheckable(False)
spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) self.admin_action.setObjectName("admin_action")
self.horizontalLayout_8.addItem(spacerItem9)
self.gridLayout_8.addLayout(self.horizontalLayout_8, 1, 1, 1, 1)
self.label_34 = QtWidgets.QLabel(parent=self.deleteUserBox)
font = QtGui.QFont()
font.setBold(False)
self.label_34.setFont(font)
self.label_34.setObjectName("label_34")
self.gridLayout_8.addWidget(self.label_34, 0, 0, 1, 1)
self.user_delete_frame_user_select = QtWidgets.QComboBox(parent=self.deleteUserBox)
font = QtGui.QFont()
font.setBold(False)
self.user_delete_frame_user_select.setFont(font)
self.user_delete_frame_user_select.setObjectName("user_delete_frame_user_select")
self.gridLayout_8.addWidget(self.user_delete_frame_user_select, 0, 1, 1, 1)
self.user_delete_confirm = QtWidgets.QRadioButton(parent=self.deleteUserBox)
font = QtGui.QFont()
font.setBold(False)
self.user_delete_confirm.setFont(font)
self.user_delete_confirm.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
self.user_delete_confirm.setObjectName("user_delete_confirm")
self.gridLayout_8.addWidget(self.user_delete_confirm, 1, 0, 1, 1)
spacerItem10 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.gridLayout_8.addItem(spacerItem10, 0, 2, 1, 1)
self.user_delete_err_message = QtWidgets.QLabel(parent=self.deleteUserBox)
self.user_delete_err_message.setText("")
self.user_delete_err_message.setObjectName("user_delete_err_message")
self.gridLayout_8.addWidget(self.user_delete_err_message, 1, 2, 1, 1)
self.gridLayout_9.addLayout(self.gridLayout_8, 0, 0, 1, 1)
self.userCreateBox = QtWidgets.QGroupBox(parent=self.admin)
self.userCreateBox.setGeometry(QtCore.QRect(10, 60, 385, 90))
font = QtGui.QFont()
font.setBold(True)
self.userCreateBox.setFont(font)
self.userCreateBox.setObjectName("userCreateBox")
self.gridLayout_10 = QtWidgets.QGridLayout(self.userCreateBox)
self.gridLayout_10.setObjectName("gridLayout_10")
self.gridLayout_5 = QtWidgets.QGridLayout()
self.gridLayout_5.setObjectName("gridLayout_5")
self.label_22 = QtWidgets.QLabel(parent=self.userCreateBox)
font = QtGui.QFont()
font.setBold(False)
self.label_22.setFont(font)
self.label_22.setObjectName("label_22")
self.gridLayout_5.addWidget(self.label_22, 0, 0, 1, 1)
self.user_create_frame_username = QtWidgets.QLineEdit(parent=self.userCreateBox)
self.user_create_frame_username.setMaximumSize(QtCore.QSize(150, 16777215))
font = QtGui.QFont()
font.setBold(False)
self.user_create_frame_username.setFont(font)
self.user_create_frame_username.setObjectName("user_create_frame_username")
self.gridLayout_5.addWidget(self.user_create_frame_username, 0, 1, 1, 1)
self.label_24 = QtWidgets.QLabel(parent=self.userCreateBox)
font = QtGui.QFont()
font.setBold(False)
self.label_24.setFont(font)
self.label_24.setObjectName("label_24")
self.gridLayout_5.addWidget(self.label_24, 0, 2, 1, 1)
self.label_23 = QtWidgets.QLabel(parent=self.userCreateBox)
font = QtGui.QFont()
font.setBold(False)
self.label_23.setFont(font)
self.label_23.setObjectName("label_23")
self.gridLayout_5.addWidget(self.label_23, 1, 0, 1, 1)
spacerItem11 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.gridLayout_5.addItem(spacerItem11, 0, 4, 1, 1)
self.user_frame_userrole = QtWidgets.QComboBox(parent=self.userCreateBox)
font = QtGui.QFont()
font.setBold(False)
self.user_frame_userrole.setFont(font)
self.user_frame_userrole.setEditable(True)
self.user_frame_userrole.setObjectName("user_frame_userrole")
self.gridLayout_5.addWidget(self.user_frame_userrole, 0, 3, 1, 1)
self.user_create_frame_password = QtWidgets.QLineEdit(parent=self.userCreateBox)
self.user_create_frame_password.setMaximumSize(QtCore.QSize(150, 16777215))
font = QtGui.QFont()
font.setBold(False)
self.user_create_frame_password.setFont(font)
self.user_create_frame_password.setObjectName("user_create_frame_password")
self.gridLayout_5.addWidget(self.user_create_frame_password, 1, 1, 1, 1)
self.user_frame_addUser = QtWidgets.QPushButton(parent=self.userCreateBox)
font = QtGui.QFont()
font.setBold(False)
self.user_frame_addUser.setFont(font)
self.user_frame_addUser.setObjectName("user_frame_addUser")
self.gridLayout_5.addWidget(self.user_frame_addUser, 1, 3, 1, 1)
self.user_frame_err_message = QtWidgets.QLabel(parent=self.userCreateBox)
self.user_frame_err_message.setText("")
self.user_frame_err_message.setObjectName("user_frame_err_message")
self.gridLayout_5.addWidget(self.user_frame_err_message, 1, 4, 1, 1)
self.gridLayout_10.addLayout(self.gridLayout_5, 0, 0, 1, 1)
self.userChangeDataBox = QtWidgets.QGroupBox(parent=self.admin)
self.userChangeDataBox.setGeometry(QtCore.QRect(10, 60, 404, 90))
font = QtGui.QFont()
font.setBold(True)
self.userChangeDataBox.setFont(font)
self.userChangeDataBox.setObjectName("userChangeDataBox")
self.gridLayout_13 = QtWidgets.QGridLayout(self.userChangeDataBox)
self.gridLayout_13.setObjectName("gridLayout_13")
self.gridLayout_11 = QtWidgets.QGridLayout()
self.gridLayout_11.setObjectName("gridLayout_11")
self.user_edit_frame_role_select = QtWidgets.QComboBox(parent=self.userChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.user_edit_frame_role_select.setFont(font)
self.user_edit_frame_role_select.setObjectName("user_edit_frame_role_select")
self.gridLayout_11.addWidget(self.user_edit_frame_role_select, 0, 3, 1, 1)
self.label_38 = QtWidgets.QLabel(parent=self.userChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_38.setFont(font)
self.label_38.setObjectName("label_38")
self.gridLayout_11.addWidget(self.label_38, 0, 0, 1, 1)
self.user_edit_frame_user_select = QtWidgets.QComboBox(parent=self.userChangeDataBox)
self.user_edit_frame_user_select.setMaximumSize(QtCore.QSize(150, 16777215))
font = QtGui.QFont()
font.setBold(False)
self.user_edit_frame_user_select.setFont(font)
self.user_edit_frame_user_select.setObjectName("user_edit_frame_user_select")
self.gridLayout_11.addWidget(self.user_edit_frame_user_select, 0, 1, 1, 1)
self.update_user = QtWidgets.QPushButton(parent=self.userChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.update_user.setFont(font)
self.update_user.setObjectName("update_user")
self.gridLayout_11.addWidget(self.update_user, 1, 3, 1, 1)
self.label_40 = QtWidgets.QLabel(parent=self.userChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_40.setFont(font)
self.label_40.setObjectName("label_40")
self.gridLayout_11.addWidget(self.label_40, 0, 2, 1, 1)
self.label_39 = QtWidgets.QLabel(parent=self.userChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_39.setFont(font)
self.label_39.setObjectName("label_39")
self.gridLayout_11.addWidget(self.label_39, 1, 0, 1, 1)
self.user_edit_frame_new_password = QtWidgets.QLineEdit(parent=self.userChangeDataBox)
self.user_edit_frame_new_password.setMaximumSize(QtCore.QSize(150, 16777215))
font = QtGui.QFont()
font.setBold(False)
self.user_edit_frame_new_password.setFont(font)
self.user_edit_frame_new_password.setObjectName("user_edit_frame_new_password")
self.gridLayout_11.addWidget(self.user_edit_frame_new_password, 1, 1, 1, 1)
spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.gridLayout_11.addItem(spacerItem12, 0, 4, 1, 1)
self.gridLayout_13.addLayout(self.gridLayout_11, 0, 0, 1, 1)
self.profChangeDataBox = QtWidgets.QGroupBox(parent=self.admin)
self.profChangeDataBox.setGeometry(QtCore.QRect(10, 60, 566, 234))
font = QtGui.QFont()
font.setBold(True)
self.profChangeDataBox.setFont(font)
self.profChangeDataBox.setObjectName("profChangeDataBox")
self.gridLayout_14 = QtWidgets.QGridLayout(self.profChangeDataBox)
self.gridLayout_14.setObjectName("gridLayout_14")
self.gridLayout_12 = QtWidgets.QGridLayout()
self.gridLayout_12.setObjectName("gridLayout_12")
self.formLayout_2 = QtWidgets.QFormLayout()
self.formLayout_2.setObjectName("formLayout_2")
self.label_43 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_43.setFont(font)
self.label_43.setObjectName("label_43")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_43)
self.edit_faculty_member_new_title = QtWidgets.QComboBox(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.edit_faculty_member_new_title.setFont(font)
self.edit_faculty_member_new_title.setEditable(True)
self.edit_faculty_member_new_title.setObjectName("edit_faculty_member_new_title")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.edit_faculty_member_new_title)
self.label_44 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_44.setFont(font)
self.label_44.setObjectName("label_44")
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_44)
self.edit_faculty_member_new_surname = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.edit_faculty_member_new_surname.setFont(font)
self.edit_faculty_member_new_surname.setObjectName("edit_faculty_member_new_surname")
self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.edit_faculty_member_new_surname)
self.label_45 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_45.setFont(font)
self.label_45.setObjectName("label_45")
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_45)
self.user_faculty_member_new_name = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.user_faculty_member_new_name.setFont(font)
self.user_faculty_member_new_name.setObjectName("user_faculty_member_new_name")
self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.user_faculty_member_new_name)
self.gridLayout_12.addLayout(self.formLayout_2, 2, 2, 1, 1)
self.formLayout_4 = QtWidgets.QFormLayout()
self.formLayout_4.setObjectName("formLayout_4")
self.edit_faculty_member_title = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.edit_faculty_member_title.setFont(font)
self.edit_faculty_member_title.setFocusPolicy(QtCore.Qt.FocusPolicy.TabFocus)
self.edit_faculty_member_title.setReadOnly(True)
self.edit_faculty_member_title.setObjectName("edit_faculty_member_title")
self.formLayout_4.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.edit_faculty_member_title)
self.edit_faculty_member_select_member = QtWidgets.QComboBox(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.edit_faculty_member_select_member.setFont(font)
self.edit_faculty_member_select_member.setObjectName("edit_faculty_member_select_member")
self.formLayout_4.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.edit_faculty_member_select_member)
self.label_46 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_46.setFont(font)
self.label_46.setObjectName("label_46")
self.formLayout_4.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_46)
self.faculty_member_old_telnr = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.faculty_member_old_telnr.setFont(font)
self.faculty_member_old_telnr.setFocusPolicy(QtCore.Qt.FocusPolicy.ClickFocus)
self.faculty_member_old_telnr.setReadOnly(True)
self.faculty_member_old_telnr.setObjectName("faculty_member_old_telnr")
self.formLayout_4.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.faculty_member_old_telnr)
self.label_49 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_49.setFont(font)
self.label_49.setObjectName("label_49")
self.formLayout_4.setWidget(2, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_49)
self.faculty_member_oldmail = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.faculty_member_oldmail.setFont(font)
self.faculty_member_oldmail.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.faculty_member_oldmail.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone)
self.faculty_member_oldmail.setReadOnly(True)
self.faculty_member_oldmail.setObjectName("faculty_member_oldmail")
self.formLayout_4.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.faculty_member_oldmail)
self.gridLayout_12.addLayout(self.formLayout_4, 0, 2, 1, 1)
self.formLayout_5 = QtWidgets.QFormLayout()
self.formLayout_5.setObjectName("formLayout_5")
self.label_47 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_47.setFont(font)
self.label_47.setObjectName("label_47")
self.formLayout_5.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_47)
self.label_48 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_48.setFont(font)
self.label_48.setObjectName("label_48")
self.formLayout_5.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_48)
self.user_faculty_member_new_mail = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.user_faculty_member_new_mail.setFont(font)
self.user_faculty_member_new_mail.setObjectName("user_faculty_member_new_mail")
self.formLayout_5.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.user_faculty_member_new_mail)
self.user_faculty_member_new_telnr = QtWidgets.QLineEdit(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.user_faculty_member_new_telnr.setFont(font)
self.user_faculty_member_new_telnr.setObjectName("user_faculty_member_new_telnr")
self.formLayout_5.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.user_faculty_member_new_telnr)
self.gridLayout_12.addLayout(self.formLayout_5, 2, 4, 1, 1)
self.label_41 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_41.setFont(font)
self.label_41.setObjectName("label_41")
self.gridLayout_12.addWidget(self.label_41, 0, 0, 1, 1)
self.update_faculty_member = QtWidgets.QPushButton(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.update_faculty_member.setFont(font)
self.update_faculty_member.setObjectName("update_faculty_member")
self.gridLayout_12.addWidget(self.update_faculty_member, 3, 4, 1, 1)
self.label_42 = QtWidgets.QLabel(parent=self.profChangeDataBox)
font = QtGui.QFont()
font.setBold(False)
self.label_42.setFont(font)
self.label_42.setObjectName("label_42")
self.gridLayout_12.addWidget(self.label_42, 2, 0, 1, 1)
self.gridLayout_14.addLayout(self.gridLayout_12, 0, 0, 1, 1)
self.tabWidget.addTab(self.admin, "") self.tabWidget.addTab(self.admin, "")
self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1) self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
self.horizontalLayout.addLayout(self.gridLayout) self.horizontalLayout.addLayout(self.gridLayout)
@@ -1287,22 +780,6 @@ class Ui_MainWindow(object):
self.label_4.setBuddy(self.drpdwn_prof_name) self.label_4.setBuddy(self.drpdwn_prof_name)
self.label_5.setBuddy(self.app_name) self.label_5.setBuddy(self.app_name)
self.label_6.setBuddy(self.sem_year) self.label_6.setBuddy(self.sem_year)
self.label_29.setBuddy(self.elsa_semester)
self.label_27.setBuddy(self.elsa_prof)
self.label_28.setBuddy(self.elsa_date)
self.label_34.setBuddy(self.user_delete_frame_user_select)
self.label_22.setBuddy(self.user_create_frame_username)
self.label_24.setBuddy(self.user_frame_userrole)
self.label_23.setBuddy(self.user_create_frame_password)
self.label_38.setBuddy(self.user_edit_frame_user_select)
self.label_40.setBuddy(self.user_edit_frame_role_select)
self.label_39.setBuddy(self.user_edit_frame_new_password)
self.label_43.setBuddy(self.edit_faculty_member_new_title)
self.label_44.setBuddy(self.edit_faculty_member_new_surname)
self.label_45.setBuddy(self.user_faculty_member_new_name)
self.label_46.setBuddy(self.faculty_member_old_telnr)
self.label_47.setBuddy(self.user_faculty_member_new_mail)
self.label_48.setBuddy(self.user_faculty_member_new_telnr)
self.retranslateUi(MainWindow) self.retranslateUi(MainWindow)
self.tabWidget.setCurrentIndex(0) self.tabWidget.setCurrentIndex(0)
@@ -1312,9 +789,9 @@ class Ui_MainWindow(object):
MainWindow.setTabOrder(self.prof_mail, self.prof_tel_nr) MainWindow.setTabOrder(self.prof_mail, self.prof_tel_nr)
MainWindow.setTabOrder(self.prof_tel_nr, self.app_name) MainWindow.setTabOrder(self.prof_tel_nr, self.app_name)
MainWindow.setTabOrder(self.app_name, self.app_fach) MainWindow.setTabOrder(self.app_name, self.app_fach)
MainWindow.setTabOrder(self.app_fach, self.sem_winter) MainWindow.setTabOrder(self.app_fach, self.sem_sommer)
MainWindow.setTabOrder(self.sem_winter, self.sem_sommer) MainWindow.setTabOrder(self.sem_sommer, self.sem_winter)
MainWindow.setTabOrder(self.sem_sommer, self.sem_year) MainWindow.setTabOrder(self.sem_winter, self.sem_year)
MainWindow.setTabOrder(self.sem_year, self.check_eternal_app) MainWindow.setTabOrder(self.sem_year, self.check_eternal_app)
MainWindow.setTabOrder(self.check_eternal_app, self.btn_add_document) MainWindow.setTabOrder(self.check_eternal_app, self.btn_add_document)
MainWindow.setTabOrder(self.btn_add_document, self.btn_open_document) MainWindow.setTabOrder(self.btn_add_document, self.btn_open_document)
@@ -1322,48 +799,12 @@ class Ui_MainWindow(object):
MainWindow.setTabOrder(self.check_file, self.check_send_mail) MainWindow.setTabOrder(self.check_file, self.check_send_mail)
MainWindow.setTabOrder(self.check_send_mail, self.btn_apparat_save) MainWindow.setTabOrder(self.check_send_mail, self.btn_apparat_save)
MainWindow.setTabOrder(self.btn_apparat_save, self.btn_apparat_apply) MainWindow.setTabOrder(self.btn_apparat_save, self.btn_apparat_apply)
MainWindow.setTabOrder(self.btn_apparat_apply, self.user_faculty_member_new_name) MainWindow.setTabOrder(self.btn_apparat_apply, self.btn_copy_adis_command)
MainWindow.setTabOrder(self.user_faculty_member_new_name, self.user_faculty_member_new_mail)
MainWindow.setTabOrder(self.user_faculty_member_new_mail, self.user_faculty_member_new_telnr)
MainWindow.setTabOrder(self.user_faculty_member_new_telnr, self.update_faculty_member)
MainWindow.setTabOrder(self.update_faculty_member, self.btn_copy_adis_command)
MainWindow.setTabOrder(self.btn_copy_adis_command, self.chkbx_show_del_media) MainWindow.setTabOrder(self.btn_copy_adis_command, self.chkbx_show_del_media)
MainWindow.setTabOrder(self.chkbx_show_del_media, self.btn_reserve) MainWindow.setTabOrder(self.chkbx_show_del_media, self.btn_reserve)
MainWindow.setTabOrder(self.btn_reserve, self.edit_faculty_member_select_member) MainWindow.setTabOrder(self.btn_reserve, self.select_action_box)
MainWindow.setTabOrder(self.edit_faculty_member_select_member, self.user_frame_addUser) MainWindow.setTabOrder(self.select_action_box, self.prof_id_adis)
MainWindow.setTabOrder(self.user_frame_addUser, self.user_edit_frame_user_select)
MainWindow.setTabOrder(self.user_edit_frame_user_select, self.select_action_box)
MainWindow.setTabOrder(self.select_action_box, self.user_edit_frame_new_password)
MainWindow.setTabOrder(self.user_edit_frame_new_password, self.user_frame_userrole)
MainWindow.setTabOrder(self.user_frame_userrole, self.user_delete_frame_user_select)
MainWindow.setTabOrder(self.user_delete_frame_user_select, self.user_edit_frame_role_select)
MainWindow.setTabOrder(self.user_edit_frame_role_select, self.prof_id_adis)
MainWindow.setTabOrder(self.prof_id_adis, self.apparat_id_adis) MainWindow.setTabOrder(self.prof_id_adis, self.apparat_id_adis)
MainWindow.setTabOrder(self.apparat_id_adis, self.user_create_frame_username)
MainWindow.setTabOrder(self.user_create_frame_username, self.user_delete_confirm)
MainWindow.setTabOrder(self.user_delete_confirm, self.btn_delete_user)
MainWindow.setTabOrder(self.btn_delete_user, self.update_user)
MainWindow.setTabOrder(self.update_user, self.user_create_frame_password)
MainWindow.setTabOrder(self.user_create_frame_password, self.edit_faculty_member_title)
MainWindow.setTabOrder(self.edit_faculty_member_title, self.elsa_save)
MainWindow.setTabOrder(self.elsa_save, self.check_file_elsa)
MainWindow.setTabOrder(self.check_file_elsa, self.btn_open_document_elsa)
MainWindow.setTabOrder(self.btn_open_document_elsa, self.btn_add_document_elsa)
MainWindow.setTabOrder(self.btn_add_document_elsa, self.elsa_date_today)
MainWindow.setTabOrder(self.elsa_date_today, self.elsa_date)
MainWindow.setTabOrder(self.elsa_date, self.active_semester)
MainWindow.setTabOrder(self.active_semester, self.elsa_prof)
MainWindow.setTabOrder(self.elsa_prof, self.elsa_semester)
MainWindow.setTabOrder(self.elsa_semester, self.table_elsa_list)
MainWindow.setTabOrder(self.table_elsa_list, self.elsa_statistics)
MainWindow.setTabOrder(self.elsa_statistics, self.elsa_statistics_table)
MainWindow.setTabOrder(self.elsa_statistics_table, self.elsa_cancel_create)
MainWindow.setTabOrder(self.elsa_cancel_create, self.elsa_add_new)
MainWindow.setTabOrder(self.elsa_add_new, self.elsa_table)
MainWindow.setTabOrder(self.elsa_table, self.edit_faculty_member_new_surname)
MainWindow.setTabOrder(self.edit_faculty_member_new_surname, self.edit_faculty_member_new_title)
MainWindow.setTabOrder(self.edit_faculty_member_new_title, self.elsa_update)
MainWindow.setTabOrder(self.elsa_update, self.quote_entry)
def retranslateUi(self, MainWindow): def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate _translate = QtCore.QCoreApplication.translate
@@ -1453,94 +894,12 @@ class Ui_MainWindow(object):
self.add_medium.setText(_translate("MainWindow", "Medien hinzufügen")) self.add_medium.setText(_translate("MainWindow", "Medien hinzufügen"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.createApparat), _translate("MainWindow", "Anlegen")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.createApparat), _translate("MainWindow", "Anlegen"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.search_statistics), _translate("MainWindow", "Suchen / Statistik")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.search_statistics), _translate("MainWindow", "Suchen / Statistik"))
self.elsa_save.setText(_translate("MainWindow", "Speichern")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.elsatab), _translate("MainWindow", "ELSA"))
item = self.dokument_list_elsa.horizontalHeaderItem(0)
item.setText(_translate("MainWindow", "Dokumentname"))
item = self.dokument_list_elsa.horizontalHeaderItem(1)
item.setText(_translate("MainWindow", "Dateityp"))
item = self.dokument_list_elsa.horizontalHeaderItem(2)
item.setText(_translate("MainWindow", "Neu?"))
item = self.dokument_list_elsa.horizontalHeaderItem(3)
item.setText(_translate("MainWindow", "path"))
self.check_file_elsa.setToolTip(_translate("MainWindow", "Abhängig von der Anzahl der Medien kann die Suche sehr lange dauern"))
self.check_file_elsa.setText(_translate("MainWindow", "Medien aus Dokument\n"
" hinzufügen"))
self.btn_open_document_elsa.setText(_translate("MainWindow", "Dokument öffnen"))
self.btn_add_document_elsa.setText(_translate("MainWindow", "Dokument hinzufügen"))
self.label_29.setText(_translate("MainWindow", "Semester"))
self.label_27.setText(_translate("MainWindow", "Professor"))
self.elsa_prof.setPlaceholderText(_translate("MainWindow", "Vollständiger Name"))
self.label_28.setText(_translate("MainWindow", "Auftragsdatum"))
self.elsa_update.setText(_translate("MainWindow", "Aktualisieren"))
item = self.table_elsa_list.horizontalHeaderItem(0)
item.setText(_translate("MainWindow", "Autor(en) des Werks"))
item = self.table_elsa_list.horizontalHeaderItem(1)
item.setText(_translate("MainWindow", "Autor(en) des Beitrags"))
item = self.table_elsa_list.horizontalHeaderItem(2)
item.setText(_translate("MainWindow", "Jahr"))
item = self.table_elsa_list.horizontalHeaderItem(3)
item.setText(_translate("MainWindow", "Heft"))
item = self.table_elsa_list.horizontalHeaderItem(4)
item.setText(_translate("MainWindow", "Auflage"))
item = self.table_elsa_list.horizontalHeaderItem(5)
item.setText(_translate("MainWindow", "Titel des Werkes"))
item = self.table_elsa_list.horizontalHeaderItem(6)
item.setText(_translate("MainWindow", "Beitragstitel"))
item = self.table_elsa_list.horizontalHeaderItem(7)
item.setText(_translate("MainWindow", "Seiten"))
item = self.table_elsa_list.horizontalHeaderItem(8)
item.setText(_translate("MainWindow", "Ort"))
item = self.table_elsa_list.horizontalHeaderItem(9)
item.setText(_translate("MainWindow", "Verlag"))
item = self.table_elsa_list.horizontalHeaderItem(10)
item.setText(_translate("MainWindow", "Signatur"))
item = self.table_elsa_list.horizontalHeaderItem(11)
item.setText(_translate("MainWindow", "Art"))
item = self.elsa_statistics_table.horizontalHeaderItem(0)
item.setText(_translate("MainWindow", "Semester"))
item = self.elsa_statistics_table.horizontalHeaderItem(1)
item.setText(_translate("MainWindow", "Zugang"))
self.elsa_statistics.setTabText(self.elsa_statistics.indexOf(self.tab_9), _translate("MainWindow", "Tabelle"))
self.elsa_cancel_create.setText(_translate("MainWindow", "Abbrechen"))
self.elsa_add_new.setText(_translate("MainWindow", "Neuer Auftrag"))
item = self.elsa_table.horizontalHeaderItem(0)
item.setText(_translate("MainWindow", "Professor"))
item = self.elsa_table.horizontalHeaderItem(1)
item.setText(_translate("MainWindow", "Datum"))
item = self.elsa_table.horizontalHeaderItem(2)
item.setText(_translate("MainWindow", "Semester"))
self.quote_entry.setText(_translate("MainWindow", "Eintrag zitieren"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.elsa), _translate("MainWindow", "ELSA"))
self.label_21.setText(_translate("MainWindow", "Aktion:")) self.label_21.setText(_translate("MainWindow", "Aktion:"))
self.select_action_box.setItemText(0, _translate("MainWindow", "Nutzer anlegen")) self.select_action_box.setItemText(0, _translate("MainWindow", "Nutzer anlegen"))
self.select_action_box.setItemText(1, _translate("MainWindow", "Nutzer löschen")) self.select_action_box.setItemText(1, _translate("MainWindow", "Nutzer bearbeiten"))
self.select_action_box.setItemText(2, _translate("MainWindow", "Nutzer aktualisieren")) self.select_action_box.setItemText(2, _translate("MainWindow", "Lehrperson bearbeiten"))
self.select_action_box.setItemText(3, _translate("MainWindow", "Lehrperson bearbeiten")) self.admin_action.setTitle(_translate("MainWindow", "GroupBox"))
self.deleteUserBox.setTitle(_translate("MainWindow", "Nutzer löschen"))
self.btn_delete_user.setText(_translate("MainWindow", "Nutzer löschen"))
self.label_34.setText(_translate("MainWindow", "Nutzername"))
self.user_delete_confirm.setText(_translate("MainWindow", "Wirklich löschen?"))
self.userCreateBox.setTitle(_translate("MainWindow", "Nutzer anlegen"))
self.label_22.setText(_translate("MainWindow", "Nutzername"))
self.label_24.setText(_translate("MainWindow", "Rolle"))
self.label_23.setText(_translate("MainWindow", "Passwort"))
self.user_frame_addUser.setText(_translate("MainWindow", "Anlegen"))
self.userChangeDataBox.setTitle(_translate("MainWindow", "Nutzerdaten anpassen"))
self.label_38.setText(_translate("MainWindow", "Nutzername"))
self.update_user.setText(_translate("MainWindow", "Aktualisieren"))
self.label_40.setText(_translate("MainWindow", "Rolle"))
self.label_39.setText(_translate("MainWindow", "Neues Passwort"))
self.profChangeDataBox.setTitle(_translate("MainWindow", "Lehrperson bearbeiten"))
self.label_43.setText(_translate("MainWindow", "Titel"))
self.label_44.setText(_translate("MainWindow", "Vorname"))
self.label_45.setText(_translate("MainWindow", "Nachname"))
self.label_46.setText(_translate("MainWindow", "Telefonnummer"))
self.label_49.setText(_translate("MainWindow", "Mail"))
self.label_47.setText(_translate("MainWindow", "Mail"))
self.label_48.setText(_translate("MainWindow", "Telefon"))
self.label_41.setText(_translate("MainWindow", "Alte Angaben"))
self.update_faculty_member.setText(_translate("MainWindow", "Aktualisieren"))
self.label_42.setText(_translate("MainWindow", "Neue Angaben"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.admin), _translate("MainWindow", "Admin")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.admin), _translate("MainWindow", "Admin"))
self.groupBox_2.setTitle(_translate("MainWindow", "Software")) self.groupBox_2.setTitle(_translate("MainWindow", "Software"))
self.appdata_check.setText(_translate("MainWindow", "Apparatsdaten eingegeben")) self.appdata_check.setText(_translate("MainWindow", "Apparatsdaten eingegeben"))

View File

@@ -13,6 +13,9 @@ class Ui_Dialog(object):
def setupUi(self, Dialog): def setupUi(self, Dialog):
Dialog.setObjectName("Dialog") Dialog.setObjectName("Dialog")
Dialog.resize(218, 190) Dialog.resize(218, 190)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap(":/icons/resources/1f510.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
Dialog.setWindowIcon(icon)
self.label = QtWidgets.QLabel(parent=Dialog) self.label = QtWidgets.QLabel(parent=Dialog)
self.label.setGeometry(QtCore.QRect(20, 40, 71, 21)) self.label.setGeometry(QtCore.QRect(20, 40, 71, 21))
self.label.setObjectName("label") self.label.setObjectName("label")

View File

@@ -13,6 +13,9 @@ class Ui_eMailPreview(object):
def setupUi(self, eMailPreview): def setupUi(self, eMailPreview):
eMailPreview.setObjectName("eMailPreview") eMailPreview.setObjectName("eMailPreview")
eMailPreview.resize(700, 668) eMailPreview.resize(700, 668)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("c:\\Users\\aky547\\GitHub\\SemesterapparatsManager\\src\\ui\\dialogs\\dialog_sources\\../../../../../../icons/email.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
eMailPreview.setWindowIcon(icon)
self.gridLayout_2 = QtWidgets.QGridLayout(eMailPreview) self.gridLayout_2 = QtWidgets.QGridLayout(eMailPreview)
self.gridLayout_2.setObjectName("gridLayout_2") self.gridLayout_2.setObjectName("gridLayout_2")
self.gridLayout = QtWidgets.QGridLayout() self.gridLayout = QtWidgets.QGridLayout()
@@ -64,20 +67,11 @@ class Ui_eMailPreview(object):
self.gender_non = QtWidgets.QRadioButton(parent=eMailPreview) self.gender_non = QtWidgets.QRadioButton(parent=eMailPreview)
self.gender_non.setObjectName("gender_non") self.gender_non.setObjectName("gender_non")
self.horizontalLayout_3.addWidget(self.gender_non) self.horizontalLayout_3.addWidget(self.gender_non)
spacerItem = QtWidgets.QSpacerItem( spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
40,
20,
QtWidgets.QSizePolicy.Policy.Expanding,
QtWidgets.QSizePolicy.Policy.Minimum,
)
self.horizontalLayout_3.addItem(spacerItem) self.horizontalLayout_3.addItem(spacerItem)
self.gridLayout.addLayout(self.horizontalLayout_3, 4, 2, 1, 1) self.gridLayout.addLayout(self.horizontalLayout_3, 4, 2, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=eMailPreview) self.label_3 = QtWidgets.QLabel(parent=eMailPreview)
self.label_3.setAlignment( self.label_3.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignTop)
QtCore.Qt.AlignmentFlag.AlignLeading
| QtCore.Qt.AlignmentFlag.AlignLeft
| QtCore.Qt.AlignmentFlag.AlignTop
)
self.label_3.setObjectName("label_3") self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 5, 0, 1, 1) self.gridLayout.addWidget(self.label_3, 5, 0, 1, 1)
self.label = QtWidgets.QLabel(parent=eMailPreview) self.label = QtWidgets.QLabel(parent=eMailPreview)
@@ -85,12 +79,7 @@ class Ui_eMailPreview(object):
self.gridLayout.addWidget(self.label, 1, 0, 1, 1) self.gridLayout.addWidget(self.label, 1, 0, 1, 1)
self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.horizontalLayout_2.setObjectName("horizontalLayout_2")
spacerItem1 = QtWidgets.QSpacerItem( spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
40,
20,
QtWidgets.QSizePolicy.Policy.Expanding,
QtWidgets.QSizePolicy.Policy.Minimum,
)
self.horizontalLayout_2.addItem(spacerItem1) self.horizontalLayout_2.addItem(spacerItem1)
self.btn_okay = QtWidgets.QPushButton(parent=eMailPreview) self.btn_okay = QtWidgets.QPushButton(parent=eMailPreview)
self.btn_okay.setStatusTip("") self.btn_okay.setStatusTip("")
@@ -98,9 +87,7 @@ class Ui_eMailPreview(object):
self.horizontalLayout_2.addWidget(self.btn_okay) self.horizontalLayout_2.addWidget(self.btn_okay)
self.buttonBox = QtWidgets.QDialogButtonBox(parent=eMailPreview) self.buttonBox = QtWidgets.QDialogButtonBox(parent=eMailPreview)
self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal) self.buttonBox.setOrientation(QtCore.Qt.Orientation.Horizontal)
self.buttonBox.setStandardButtons( self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.StandardButton.Cancel)
QtWidgets.QDialogButtonBox.StandardButton.Cancel
)
self.buttonBox.setCenterButtons(True) self.buttonBox.setCenterButtons(True)
self.buttonBox.setObjectName("buttonBox") self.buttonBox.setObjectName("buttonBox")
self.horizontalLayout_2.addWidget(self.buttonBox) self.horizontalLayout_2.addWidget(self.buttonBox)

View File

@@ -13,6 +13,9 @@ class Ui_Dialog(object):
def setupUi(self, Dialog): def setupUi(self, Dialog):
Dialog.setObjectName("Dialog") Dialog.setObjectName("Dialog")
Dialog.resize(620, 481) Dialog.resize(620, 481)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap(":/icons/resources/2795.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
Dialog.setWindowIcon(icon)
self.label = QtWidgets.QLabel(parent=Dialog) self.label = QtWidgets.QLabel(parent=Dialog)
self.label.setGeometry(QtCore.QRect(20, 10, 47, 21)) self.label.setGeometry(QtCore.QRect(20, 10, 47, 21))
self.label.setObjectName("label") self.label.setObjectName("label")

View File

@@ -39,7 +39,7 @@ class MailTemplateDialog(QtWidgets.QDialog, NewMailTemplateDesignerDialog):
).clicked.connect(self.closeNow) ).clicked.connect(self.closeNow)
def save_template(self): def save_template(self):
print("save triggered") # print("save triggered")
# create a dialog to ask for the name of the template # create a dialog to ask for the name of the template
dialog = QtWidgets.QInputDialog() dialog = QtWidgets.QInputDialog()
dialog.setInputMode(QtWidgets.QInputDialog.InputMode.TextInput) dialog.setInputMode(QtWidgets.QInputDialog.InputMode.TextInput)
@@ -128,8 +128,8 @@ Content-Transfer-Encoding: 8bit
self.close() self.close()
def updateDescription(self): def updateDescription(self):
print("update triggered") # print("update triggered")
print(self.placeholder_list.currentText()) # print(self.placeholder_list.currentText())
placeholders = { placeholders = {
"anrede": "Die Anrede beinhaltet sowohl Person als auch Sehr geehrte/r; dargestellt als: {greeting}", "anrede": "Die Anrede beinhaltet sowohl Person als auch Sehr geehrte/r; dargestellt als: {greeting}",
"apparatsfach": "Das Fach, in welchem der Apparat angelegt wurde; dargestellt als: {AppSubject}", "apparatsfach": "Das Fach, in welchem der Apparat angelegt wurde; dargestellt als: {AppSubject}",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -34,7 +34,7 @@ class MessageCalendar(QtWidgets.QCalendarWidget):
# remove all drawn circles # remove all drawn circles
for message in messages: for message in messages:
print(message) # print(message)
# Convert the date string to a QDate object # Convert the date string to a QDate object
date = QDate.fromString(message["remind_at"], "yyyy-MM-dd") date = QDate.fromString(message["remind_at"], "yyyy-MM-dd")
# Store the message for the date # Store the message for the date

View File

@@ -5,3 +5,7 @@ from .graph import DataGraph
from .calendar_entry import CalendarEntry from .calendar_entry import CalendarEntry
from .MessageCalendar import MessageCalendar from .MessageCalendar import MessageCalendar
from .searchPage import SearchStatisticPage from .searchPage import SearchStatisticPage
from .elsa_main import ElsaDialog
from .admin_create_user import UserCreate
from .admin_edit_user import EditUser
from .admin_edit_prof import EditProf

View File

@@ -0,0 +1,38 @@
from PyQt6 import QtWidgets, QtCore, QtGui
from PyQt6.QtCore import pyqtSignal
from .widget_sources.Ui_admin_create_user import Ui_Dialog
from src.backend import AdminCommands, Database
class UserCreate(QtWidgets.QDialog, Ui_Dialog):
admin_action_changed = pyqtSignal()
def __init__(self):
super(UserCreate, self).__init__()
self.setupUi(self)
self.user_frame_addUser.clicked.connect(self.add_user)
#Variables
self.db = Database()
def add_user(self):
username = self.user_create_frame_username.text()
password = self.user_create_frame_password.text()
role = self.user_frame_userrole.currentText()
if self.db.checkUsername(username):
return
userdata = AdminCommands().create_password(password)
self.db.createUser(
user=username,
password=f"{userdata[1]}{userdata[0]}",
salt=userdata[1],
role=role,
)
self.user_create_frame_username.clear()
self.user_create_frame_password.clear()
self.user_frame_userrole.setCurrentText("")
self.admin_action_changed.emit()
def launch():
app = QtWidgets.QApplication([])
window = UserCreate()
window.show()
app.exec()

View File

@@ -0,0 +1,118 @@
from .widget_sources.Ui_admin_edit_prof import Ui_Dialog#
from PyQt6 import QtWidgets, QtCore
from PyQt6.QtCore import pyqtSignal
from icecream import ic
from src.backend import Database
class EditProf(QtWidgets.QDialog, Ui_Dialog):
def __init__(self):
super(EditProf, self).__init__()
self.setupUi(self)
#Variables
self.db = Database()
self.edit_faculty_member_select_member.currentTextChanged.connect(
self.edit_faculty_member_set_data
)
self.update_faculty_member.clicked.connect(self.edit_faculty_member_action)
self.gather_data()
def gather_data(self):
self.add_faculty_member_data()
def add_faculty_member_data(self):
faculty_members = self.db.getFacultyMembers()
names = [f"{member[5]}" for member in faculty_members]
self.edit_faculty_member_select_member.clear()
self.edit_faculty_member_select_member.addItems(names)
self.edit_faculty_member_select_member.addItem("")
self.edit_faculty_member_select_member.setCurrentText("")
def edit_faculty_member_set_data(self):
# get the selected member
name = self.edit_faculty_member_select_member.currentText()
fullname = name.replace(",", "")
# print(fullname, name)
# get the data for the selected member
data = self.db.getProfByName(fullname)
# set the data
# print(data)
if data is None:
self.edit_faculty_member_title.setText("")
self.faculty_member_old_telnr.setText("")
self.faculty_member_oldmail.setText("")
self.edit_faculty_member_title.setText("")
else:
# title = data[1]
# if title is None:
# title = ""
# self.edit_faculty_member_title.setText(title)
self.faculty_member_old_telnr.setText(data[6])
self.faculty_member_oldmail.setText(data[5])
(
self.edit_faculty_member_title.setText(data[1])
if data[1] is not None
else self.edit_faculty_member_title.setText("")
)
def edit_faculty_member_action(self):
def __gen_fullname(fname, lname, data):
if fname == "" and lname == "":
return data[3]
if fname == "" and lname != "":
return f"{lname} {data[1]}"
if fname != "" and lname == "":
return f"{data[2]} {fname}"
if fname != "" and lname != "":
return f"{lname} {fname}"
# get the data and use new value if it is not none and does not mach the old value
if self.edit_faculty_member_select_member.currentText() == "":
return
olddata = self.db.getFacultyMember(
self.edit_faculty_member_select_member.currentText()
)
ic(olddata)
data = olddata
oldlname = data[2]
oldfname = data[1]
# take data except first and last entry
titel = (
self.edit_faculty_member_new_title.text()()
if self.edit_faculty_member_new_title.text() != ""
else None
)
fname = (
self.edit_faculty_member_new_surname.text()
if self.edit_faculty_member_new_surname.text() != ""
else self.edit_faculty_member_select_member.currentText()
.split(" ")[1]
.strip()
)
lname = (
self.user_faculty_member_new_name.text()
if self.user_faculty_member_new_name.text() != ""
else self.edit_faculty_member_select_member.currentText()
.split(" ")[0]
.strip()
)
fullname = __gen_fullname(fname, lname, data)
telnr = self.user_faculty_member_new_telnr.text()
mail = self.user_faculty_member_new_mail.text()
new_data = {
"titel": titel,
"fname": fname,
"lname": lname,
"fullname": fullname,
"mail": mail,
"telnr": telnr,
}
new_data = {key: value for key, value in new_data.items() if value != ""}
self.db.updateFacultyMember(data=new_data, oldlname=oldlname, oldfname=oldfname)
self.add_faculty_member_data()
self.edit_faculty_member_new_title.setText("")
self.edit_faculty_member_new_surname.clear()
self.user_faculty_member_new_name.clear()
self.user_faculty_member_new_telnr.clear()
self.user_faculty_member_new_mail.clear()

View File

@@ -0,0 +1,53 @@
from .widget_sources.Ui_admin_edit_user import Ui_Dialog
from PyQt6 import QtWidgets, QtCore
from PyQt6.QtCore import pyqtSignal
from icecream import ic
from src.backend import Database
from src.backend import AdminCommands
class EditUser(QtWidgets.QDialog, Ui_Dialog):
def __init__(self):
super(EditUser, self).__init__()
self.setupUi(self)
self.btn_delete_user.clicked.connect(self.delete_user)
self.update_user.clicked.connect(self.update_user_data)
#Variables
self.db = Database()
def update_user_data(self):
username = self.user_delete_frame_user_select.currentText()
password = (
self.user_edit_frame_new_password.text()
if self.user_edit_frame_new_password.text() != ""
else None
)
role = (
self.user_edit_frame_role_select.currentText()
if self.user_edit_frame_role_select.currentText() != ""
else None
)
userdata = AdminCommands().create_password(password)
data = {
"password": f"{userdata[1]}{userdata[0]}",
"salt": userdata[1],
"role": role,
}
data = {key: value for key, value in data.items() if value is not None}
# print(data)
self.db.updateUser(username=username, data=data)
self.user_delete_frame_user_select.setCurrentText("")
self.user_edit_frame_new_password.clear()
self.user_edit_frame_role_select.setCurrentText("")
def delete_user(self):
if self.user_delete_confirm.isChecked():
username = self.user_delete_frame_user_select.currentText()
self.db.deleteUser(username)
self.user_delete_frame_user_select.removeItem(
self.user_delete_frame_user_select.currentIndex()
)
self.user_delete_confirm.setChecked(False)
else:
pass

View File

@@ -38,12 +38,12 @@ class CalendarEntry(QtWidgets.QDialog, Ui_Dialog):
def delete_message(self): def delete_message(self):
value = self.spin_select_message.value() value = self.spin_select_message.value()
print(value) # print(value)
if value > 0: if value > 0:
value = value - 1 value = value - 1
message = self.messages[value] message = self.messages[value]
id = self.__get_id(message) id = self.__get_id(message)
print("id", id) # print("id", id)
# del self.messages[value - 1] # del self.messages[value - 1]
self.spin_select_message.setMaximum(len(self.messages)) self.spin_select_message.setMaximum(len(self.messages))
self.message_box.clear() self.message_box.clear()

357
src/ui/widgets/elsa_main.py Normal file
View File

@@ -0,0 +1,357 @@
import os
from natsort import natsorted
from icecream import ic
from .widget_sources.Ui_elsa_maindialog import Ui_Dialog
from PyQt6 import QtCore, QtWidgets, QtGui
from PyQt6.QtCore import QDate
from src import Icon
from src.backend import recreateElsaFile, generateSemesterByDate, Database
from src.logic import elsa_word_to_csv, MyLogger
from src.ui.dialogs import ElsaAddEntry
from src.ui.widgets import FilePicker
from src.ui.widgets import DataGraph
class ElsaDialog(QtWidgets.QDialog, Ui_Dialog):
def __init__(self):
super().__init__()
self.setupUi(self)
self.table_elsa_list.setContextMenuPolicy(
QtCore.Qt.ContextMenuPolicy.CustomContextMenu
)
self.table_elsa_list.customContextMenuRequested.connect(self.elsa_context_menu)
# elsa buttons
Icon("semester", self.active_semester)
Icon("today", self.elsa_date_today)
self.create_frame_elsa.setEnabled(False)
self.elsa_add_new.clicked.connect(self.add_new_elsa)
self.elsa_cancel_create.clicked.connect(self.cancel_elsa_creation)
self.elsa_save.clicked.connect(self.save_elsa)
self.elsa_date_today.clicked.connect(self.generateTodayDateElsa)
self.active_semester.clicked.connect(self.addSemester)
self.elsa_update.clicked.connect(self.update_elsa)
self.elsa_table.doubleClicked.connect(self.open_elsa)
self.btn_add_document_elsa.clicked.connect(self.addDokumentElsa)
self.check_file_elsa.clicked.connect(self.parseDokumentElsa)
self.btn_open_document_elsa.clicked.connect(self.openDocumentElsa)
self.quote_entry.clicked.connect(self.elsa_table_entry)
self.quote_entry.setEnabled(False)
##Variables
self.logger = MyLogger("ElsaDialog")
self.db = Database()
self.graph_data = {"x": [generateSemesterByDate()], "y": [0]}
self.loadFrame()
# self.show()
def elsa_context_menu(self, position):
menu = QtWidgets.QMenu()
# TODO: add functions
pass
def elsa_table_entry(self):
data = ElsaAddEntry()
selected_row = self.table_elsa_list.currentRow()
signature = self.table_elsa_list.item(selected_row, 10).text()
mediatype = self.table_elsa_list.item(selected_row, 11).text()
data.searchIdent.setText(signature)
if mediatype == "Zeitschriftenaufsätze":
data.btn_zs.click()
elif mediatype == "Herausgeberwerke":
data.btn_hg.click()
elif mediatype == "Monographie":
data.btn_mono.click()
data.exec()
def add_new_elsa(self):
self.create_frame_elsa.setEnabled(True)
self.elsa_cancel_create.setEnabled(True)
self.dokument_list_elsa.setRowCount(0)
profs = self.db.getProfs()
for prof in profs:
self.elsa_prof.addItem(f"{prof[3]}, {prof[2]}")
self.elsa_prof.setCurrentText("")
self.elsa_date.setText("")
self.elsa_semester.setText("")
self.elsa_save.setEnabled(True)
self.elsa_update.setEnabled(False)
semester = generateSemesterByDate()
if semester in self.graph_data["x"]:
position = self.graph_data["x"]
def cancel_elsa_creation(self):
self.create_frame_elsa.setEnabled(False)
self.elsa_cancel_create.setEnabled(False)
self.elsa_prof.setCurrentText("")
self.elsa_date.setText("")
self.elsa_semester.setText("")
self.dokument_list_elsa.setRowCount(0)
self.table_elsa_list.setRowCount(0)
self.quote_entry.setEnabled(False)
self.elsa_save.setEnabled(False)
self.elsa_update.setEnabled(False)
def generateTodayDateElsa(self):
self.elsa_date.setText(QDate.currentDate().toString("dd.MM.yyyy"))
def addSemester(self):
self.elsa_semester.setText(generateSemesterByDate())
def update_elsa(self):
prof = self.elsa_prof.currentText()
date = self.elsa_date.text()
semester = self.elsa_semester.text()
elsa_id = self.db.getElsaId(prof, semester, date)
if elsa_id is None:
return
self.db.updateElsaApparat(elsa_id, prof, semester, date)
self.elsa_update.setEnabled(False)
self.cancel_elsa_creation()
def save_elsa(self):
if (
self.elsa_prof.currentText() == ""
or self.elsa_semester.text() == ""
or self.elsa_date.text() == ""
):
# warning message
self.confirm_popup("Bitte füllen Sie alle Felder aus", title="Fehler")
return
prof = self.elsa_prof.currentText()
semester = self.elsa_semester.text()
date = self.elsa_date.text()
self.db.createElsaApparat(date, prof, semester)
self.cancel_elsa_creation()
self.refresh_elsa_table()
self.elsa_prof.clear()
self.elsa_prof.addItem(prof)
self.quote_entry.setEnabled(False)
def refresh_elsa_table(self):
self.elsa_table.setRowCount(0)
elsa_apparats = self.db.getElsaApparats()
for apparat in elsa_apparats:
self.insert_elsa_into_table(apparat)
def insert_elsa_into_table(self, apparat):
self.elsa_table.insertRow(0)
date = apparat[1]
semester = apparat[2]
prof = apparat[3]
self.elsa_table.setItem(0, 0, QtWidgets.QTableWidgetItem(prof))
self.elsa_table.setItem(0, 1, QtWidgets.QTableWidgetItem(date))
self.elsa_table.setItem(0, 2, QtWidgets.QTableWidgetItem(semester))
return (semester, 1)
def open_elsa(self):
prof = self.elsa_table.item(self.elsa_table.currentRow(), 0).text()
date = self.elsa_table.item(self.elsa_table.currentRow(), 1).text()
semester = self.elsa_table.item(self.elsa_table.currentRow(), 2).text()
self.elsa_update.setEnabled(True)
self.elsa_save.setEnabled(False)
if self.elsa_prof.currentText() == prof and date == self.elsa_date.text():
self.logger.log_info("Same prof, stopping")
return
self.create_frame_elsa.setEnabled(True)
self.dokument_list_elsa.setRowCount(0)
self.table_elsa_list.setRowCount(0)
self.elsa_cancel_create.setEnabled(True)
# get elsa apparats, iterate over them and find the one where all matches
elsa_apparats = self.db.getElsaApparats()
elsa_id = None
for apparat in elsa_apparats:
if apparat[1] == date and apparat[2] == semester and apparat[3] == prof:
elsa_id = apparat[0]
# print(elsa_id)
break
self.elsa_date.setText(date)
self.elsa_semester.setText(semester)
self.elsa_prof.setCurrentText(prof)
if elsa_id is None:
return
documents = self.db.getElsaFiles(elsa_id)
for document in documents:
# print(document)
self.dokument_list_elsa.insertRow(0)
self.dokument_list_elsa.setItem(
0, 0, QtWidgets.QTableWidgetItem(document[0])
)
self.dokument_list_elsa.setItem(
0, 1, QtWidgets.QTableWidgetItem(document[1])
)
self.dokument_list_elsa.setItem(0, 2, QtWidgets.QTableWidgetItem(""))
self.dokument_list_elsa.setItem(
0, 3, QtWidgets.QTableWidgetItem("Database")
)
scans = self.db.getElsaMedia(elsa_id)
if scans == []:
self.create_frame_elsa.setEnabled(True)
# print(scans)
# remove all rows from the table
for scan in scans:
# print("Inserting row")
# print(scan["type"])
self.setElsaRow(scan)
self.quote_entry.setEnabled(True)
# self.cancel_elsa_creation()
def setElsaRow(self, scan):
self.table_elsa_list.insertRow(0)
self.table_elsa_list.setItem(
0, 0, QtWidgets.QTableWidgetItem(scan["work_author"])
)
self.table_elsa_list.setItem(
0, 1, QtWidgets.QTableWidgetItem(scan["section_author"])
)
self.table_elsa_list.setItem(0, 2, QtWidgets.QTableWidgetItem(scan["year"]))
self.table_elsa_list.setItem(0, 3, QtWidgets.QTableWidgetItem(scan["issue"]))
self.table_elsa_list.setItem(0, 4, QtWidgets.QTableWidgetItem(scan["edition"]))
self.table_elsa_list.setItem(
0, 5, QtWidgets.QTableWidgetItem(scan["work_title"])
)
self.table_elsa_list.setItem(
0, 6, QtWidgets.QTableWidgetItem(scan["chapter_title"])
)
self.table_elsa_list.setItem(0, 7, QtWidgets.QTableWidgetItem(scan["pages"]))
self.table_elsa_list.setItem(0, 8, QtWidgets.QTableWidgetItem(scan["location"]))
self.table_elsa_list.setItem(
0, 9, QtWidgets.QTableWidgetItem(scan["publisher"])
)
self.table_elsa_list.setItem(
0, 10, QtWidgets.QTableWidgetItem(scan["signature"])
)
self.table_elsa_list.setItem(0, 11, QtWidgets.QTableWidgetItem(scan["type"]))
def addDokumentElsa(self):
# print("Add document")
picker = FilePicker()
files = picker.pick_files()
datalist = []
for file in files:
data = {}
# print(file)
filename = file.split("/")[-1]
filetype = filename.split(".")[-1]
self.dokument_list_elsa.insertRow(0)
self.dokument_list_elsa.setItem(0, 0, QtWidgets.QTableWidgetItem(filename))
self.dokument_list_elsa.setItem(0, 1, QtWidgets.QTableWidgetItem(filetype))
self.dokument_list_elsa.setItem(0, 2, QtWidgets.QTableWidgetItem("*"))
self.dokument_list_elsa.setItem(0, 3, QtWidgets.QTableWidgetItem(file))
# set tooltip of row 3 to the file path for each row
self.dokument_list_elsa.item(0, 3).setToolTip(file)
data["name"] = filename
data["path"] = file
data["type"] = filetype
datalist.append(data)
elsa_id = self.db.getElsaId(
self.elsa_prof.currentText(),
self.elsa_semester.text(),
self.elsa_date.text(),
)
# print(elsa_id)
if elsa_id is None:
# create elsa
self.db.createElsaApparat(
self.elsa_date.text(),
self.elsa_prof.currentText(),
self.elsa_semester.text(),
)
elsa_id = self.db.getElsaId(
self.elsa_prof.currentText(),
self.elsa_semester.text(),
self.elsa_date.text(),
)
self.db.insertElsaFile(datalist, elsa_id)
self.elsa_save.setEnabled(False)
self.refresh_elsa_table()
def parseDokumentElsa(self):
if self.dokument_list_elsa.rowCount() == 0:
return
else:
# get the file path of the selected file based on it's row
row = self.dokument_list_elsa.currentRow()
file = self.dokument_list_elsa.item(row, 3).text()
# print(file)
if file == "Database":
filename = self.dokument_list_elsa.item(row, 0).text()
filetype = self.dokument_list_elsa.item(row, 1).text()
file = recreateElsaFile(
filename=filename, filetype=filetype, open=False
)
# print(file)
data, doctype = elsa_word_to_csv(file)
elsa_id = self.db.getElsaId(
self.elsa_prof.currentText(),
self.elsa_semester.text(),
self.elsa_date.text(),
)
for row in data:
self.setElsaRow(row)
self.db.addElsaMedia(row, elsa_id)
self.quote_entry.setEnabled(True)
def openDocumentElsa(self):
# open the selected document
row = self.dokument_list_elsa.currentRow()
location = self.dokument_list_elsa.item(row, 3).text()
filetype = self.dokument_list_elsa.item(row, 1).text()
filename = self.dokument_list_elsa.item(row, 0).text()
if location == "Database":
recreateElsaFile(filename, filetype, open=True)
else:
os.system(f"{filename}")
def loadFrame(self):
self.elsa_cancel_create.click()
try:
self.elsa_statistics.removeTab(1)
except:
self.logger.log_debug("No tab to remove")
self.elsa_table.setRowCount(0)
elsa_apparats = self.db.getElsaApparats()
elsa_apparats = natsorted(elsa_apparats, key=lambda x: x[2], reverse=True)
# x = semester, y = number of apparats
for apparat in elsa_apparats:
# print(apparat)
data = self.insert_elsa_into_table(apparat)
semester = data[0]
number = data[1]
if semester not in self.graph_data["x"]:
self.graph_data["x"].append(semester)
self.graph_data["y"].append(number)
else:
index = self.graph_data["x"].index(semester)
self.graph_data["y"][index] += number
generateMissing = True if len(self.graph_data["x"]) > 1 else False
graph = DataGraph(
"ELSA Apparate pro Semester",
self.graph_data,
generateMissing,
"Anzahl der Apparate",
)
ic(self.graph_data)
self.elsa_statistics_table.setRowCount(0)
for i in range(len(self.graph_data["x"])):
self.elsa_statistics_table.insertRow(0)
self.elsa_statistics_table.setItem(
0, 0, QtWidgets.QTableWidgetItem(self.graph_data["x"][i])
)
self.elsa_statistics_table.setItem(
0, 1, QtWidgets.QTableWidgetItem(str(self.graph_data["y"][i]))
)
self.elsa_statistics.addTab(graph, "Graph")
def launch():
app = QtWidgets.QApplication([])
window = ElsaDialog()
window.show()
app.exec()

View File

@@ -33,4 +33,4 @@ if __name__ == "__main__":
app = QApplication(sys.argv) app = QApplication(sys.argv)
picker = FilePicker() picker = FilePicker()
files = picker.pick_files() files = picker.pick_files()
print(files) # print(files)

View File

@@ -98,7 +98,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
self.book_search_result.setItem( self.book_search_result.setItem(
0, 1, QtWidgets.QTableWidgetItem(book[0].signature) 0, 1, QtWidgets.QTableWidgetItem(book[0].signature)
) )
print(book[1]) # print(book[1])
self.book_search_result.setItem( self.book_search_result.setItem(
0, 0,
2, 2,
@@ -140,7 +140,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
self.btn_notify_for_deletion.setEnabled(False) self.btn_notify_for_deletion.setEnabled(False)
def setStatisticTableSize(self): def setStatisticTableSize(self):
# print(self.statistics_table.size(), self.statistics_table.rowCount()) # # print(self.statistics_table.size(), self.statistics_table.rowCount())
size = self.statistics_table.size() size = self.statistics_table.size()
h = size.height() h = size.height()
w = size.width() w = size.width()
@@ -252,7 +252,7 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
selected_apparats.append(self.tableWidget.item(i, 2).text()) selected_apparats.append(self.tableWidget.item(i, 2).text())
selected_apparat_rows.append(i) selected_apparat_rows.append(i)
# delete all selected apparats # delete all selected apparats
# print(selected_apparats) # # print(selected_apparats)
self.logger.log_info(f"Deleting apparats: {selected_apparats}") self.logger.log_info(f"Deleting apparats: {selected_apparats}")
for apparat in selected_apparats: for apparat in selected_apparats:
self.db.deleteApparat(apparat, generateSemesterByDate()) self.db.deleteApparat(apparat, generateSemesterByDate())
@@ -442,13 +442,13 @@ class SearchStatisticPage(QtWidgets.QDialog, Ui_Dialog):
"Dieser Semesterapparat kann nicht gelöscht werden, da er bereits gelöscht wurde" "Dieser Semesterapparat kann nicht gelöscht werden, da er bereits gelöscht wurde"
) )
elif parent_depth == 2: elif parent_depth == 2:
print("depth", parent_depth) # print("depth", parent_depth)
# apparat selected case - open the apparat in the frame # apparat selected case - open the apparat in the frame
self.apparat_open.emit(apparat) self.apparat_open.emit(apparat)
return return
def emit_signal(self, *args): def emit_signal(self, *args):
print("emit_signal", *args) # print("emit_signal", *args)
self.apparat_open.emit(args[1]) self.apparat_open.emit(args[1])

View File

@@ -0,0 +1,55 @@
# 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.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
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(400, 70)
self.gridLayout = QtWidgets.QGridLayout(Dialog)
self.gridLayout.setHorizontalSpacing(10)
self.gridLayout.setVerticalSpacing(6)
self.gridLayout.setObjectName("gridLayout")
self.label = QtWidgets.QLabel(parent=Dialog)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.user_create_frame_password = QtWidgets.QLineEdit(parent=Dialog)
self.user_create_frame_password.setObjectName("user_create_frame_password")
self.gridLayout.addWidget(self.user_create_frame_password, 1, 1, 1, 1)
self.user_frame_addUser = QtWidgets.QPushButton(parent=Dialog)
self.user_frame_addUser.setObjectName("user_frame_addUser")
self.gridLayout.addWidget(self.user_frame_addUser, 1, 3, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=Dialog)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 2, 1, 1)
self.user_create_frame_username = QtWidgets.QLineEdit(parent=Dialog)
self.user_create_frame_username.setObjectName("user_create_frame_username")
self.gridLayout.addWidget(self.user_create_frame_username, 0, 1, 1, 1)
self.user_frame_userrole = QtWidgets.QComboBox(parent=Dialog)
self.user_frame_userrole.setEditable(True)
self.user_frame_userrole.setObjectName("user_frame_userrole")
self.gridLayout.addWidget(self.user_frame_userrole, 0, 3, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=Dialog)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.retranslateUi(Dialog)
QtCore.QMetaObject.connectSlotsByName(Dialog)
Dialog.setTabOrder(self.user_create_frame_username, self.user_frame_userrole)
Dialog.setTabOrder(self.user_frame_userrole, self.user_create_frame_password)
Dialog.setTabOrder(self.user_create_frame_password, self.user_frame_addUser)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.label.setText(_translate("Dialog", "Nutzername"))
self.user_frame_addUser.setText(_translate("Dialog", "Anlegen"))
self.label_3.setText(_translate("Dialog", "Rolle"))
self.label_2.setText(_translate("Dialog", "Passwort"))

View File

@@ -0,0 +1,8 @@
# Form implementation generated from reading ui file 'c:\Users\aky547\GitHub\SemesterapparatsManager\src\ui\widgets\widget_sources\admin_create_user.ui.iytYFY'
#
# Created by: PyQt6 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.

View File

@@ -0,0 +1,139 @@
# 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.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
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.setWindowModality(QtCore.Qt.WindowModality.ApplicationModal)
Dialog.resize(540, 281)
self.gridLayout = QtWidgets.QGridLayout(Dialog)
self.gridLayout.setObjectName("gridLayout")
self.label = QtWidgets.QLabel(parent=Dialog)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.gridLayout_2 = QtWidgets.QGridLayout()
self.gridLayout_2.setObjectName("gridLayout_2")
self.faculty_member_old_telnr = QtWidgets.QLineEdit(parent=Dialog)
self.faculty_member_old_telnr.setReadOnly(True)
self.faculty_member_old_telnr.setObjectName("faculty_member_old_telnr")
self.gridLayout_2.addWidget(self.faculty_member_old_telnr, 1, 1, 1, 1)
self.edit_faculty_member_title = QtWidgets.QLineEdit(parent=Dialog)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.edit_faculty_member_title.sizePolicy().hasHeightForWidth())
self.edit_faculty_member_title.setSizePolicy(sizePolicy)
self.edit_faculty_member_title.setReadOnly(True)
self.edit_faculty_member_title.setObjectName("edit_faculty_member_title")
self.gridLayout_2.addWidget(self.edit_faculty_member_title, 0, 0, 1, 1)
self.label_4 = QtWidgets.QLabel(parent=Dialog)
self.label_4.setObjectName("label_4")
self.gridLayout_2.addWidget(self.label_4, 2, 0, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=Dialog)
self.label_3.setObjectName("label_3")
self.gridLayout_2.addWidget(self.label_3, 1, 0, 1, 1)
self.edit_faculty_member_select_member = QtWidgets.QComboBox(parent=Dialog)
self.edit_faculty_member_select_member.setObjectName("edit_faculty_member_select_member")
self.gridLayout_2.addWidget(self.edit_faculty_member_select_member, 0, 1, 1, 1)
self.faculty_member_oldmail = QtWidgets.QLineEdit(parent=Dialog)
self.faculty_member_oldmail.setReadOnly(True)
self.faculty_member_oldmail.setObjectName("faculty_member_oldmail")
self.gridLayout_2.addWidget(self.faculty_member_oldmail, 2, 1, 1, 1)
self.gridLayout_2.setColumnStretch(0, 1)
self.gridLayout.addLayout(self.gridLayout_2, 0, 2, 1, 1)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.delete_faculty_member = QtWidgets.QPushButton(parent=Dialog)
self.delete_faculty_member.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.delete_faculty_member.setObjectName("delete_faculty_member")
self.horizontalLayout.addWidget(self.delete_faculty_member)
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout.addItem(spacerItem)
self.update_faculty_member = QtWidgets.QPushButton(parent=Dialog)
self.update_faculty_member.setFocusPolicy(QtCore.Qt.FocusPolicy.NoFocus)
self.update_faculty_member.setObjectName("update_faculty_member")
self.horizontalLayout.addWidget(self.update_faculty_member)
self.gridLayout.addLayout(self.horizontalLayout, 3, 2, 1, 1)
self.line = QtWidgets.QFrame(parent=Dialog)
self.line.setFrameShape(QtWidgets.QFrame.Shape.HLine)
self.line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
self.line.setObjectName("line")
self.gridLayout.addWidget(self.line, 1, 2, 1, 1)
self.line_2 = QtWidgets.QFrame(parent=Dialog)
self.line_2.setLineWidth(1)
self.line_2.setFrameShape(QtWidgets.QFrame.Shape.HLine)
self.line_2.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
self.line_2.setObjectName("line_2")
self.gridLayout.addWidget(self.line_2, 1, 0, 1, 1)
self.gridLayout_3 = QtWidgets.QGridLayout()
self.gridLayout_3.setObjectName("gridLayout_3")
self.label_9 = QtWidgets.QLabel(parent=Dialog)
self.label_9.setObjectName("label_9")
self.gridLayout_3.addWidget(self.label_9, 4, 0, 1, 1)
self.edit_faculty_member_new_title = QtWidgets.QLineEdit(parent=Dialog)
self.edit_faculty_member_new_title.setObjectName("edit_faculty_member_new_title")
self.gridLayout_3.addWidget(self.edit_faculty_member_new_title, 0, 1, 1, 1)
self.user_faculty_member_new_telnr = QtWidgets.QLineEdit(parent=Dialog)
self.user_faculty_member_new_telnr.setObjectName("user_faculty_member_new_telnr")
self.gridLayout_3.addWidget(self.user_faculty_member_new_telnr, 3, 1, 1, 1)
self.label_8 = QtWidgets.QLabel(parent=Dialog)
self.label_8.setObjectName("label_8")
self.gridLayout_3.addWidget(self.label_8, 3, 0, 1, 1)
self.label_7 = QtWidgets.QLabel(parent=Dialog)
self.label_7.setObjectName("label_7")
self.gridLayout_3.addWidget(self.label_7, 2, 0, 1, 1)
self.user_faculty_member_new_mail = QtWidgets.QLineEdit(parent=Dialog)
self.user_faculty_member_new_mail.setObjectName("user_faculty_member_new_mail")
self.gridLayout_3.addWidget(self.user_faculty_member_new_mail, 4, 1, 1, 1)
self.user_faculty_member_new_name = QtWidgets.QLineEdit(parent=Dialog)
self.user_faculty_member_new_name.setObjectName("user_faculty_member_new_name")
self.gridLayout_3.addWidget(self.user_faculty_member_new_name, 2, 1, 1, 1)
self.edit_faculty_member_new_surname = QtWidgets.QLineEdit(parent=Dialog)
self.edit_faculty_member_new_surname.setObjectName("edit_faculty_member_new_surname")
self.gridLayout_3.addWidget(self.edit_faculty_member_new_surname, 1, 1, 1, 1)
self.label_5 = QtWidgets.QLabel(parent=Dialog)
self.label_5.setObjectName("label_5")
self.gridLayout_3.addWidget(self.label_5, 0, 0, 1, 1)
self.label_6 = QtWidgets.QLabel(parent=Dialog)
self.label_6.setObjectName("label_6")
self.gridLayout_3.addWidget(self.label_6, 1, 0, 1, 1)
self.gridLayout.addLayout(self.gridLayout_3, 2, 2, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=Dialog)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
self.line_3 = QtWidgets.QFrame(parent=Dialog)
self.line_3.setFrameShape(QtWidgets.QFrame.Shape.VLine)
self.line_3.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
self.line_3.setObjectName("line_3")
self.gridLayout.addWidget(self.line_3, 0, 1, 1, 1)
self.line_4 = QtWidgets.QFrame(parent=Dialog)
self.line_4.setFrameShape(QtWidgets.QFrame.Shape.VLine)
self.line_4.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
self.line_4.setObjectName("line_4")
self.gridLayout.addWidget(self.line_4, 2, 1, 1, 1)
self.retranslateUi(Dialog)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.label.setText(_translate("Dialog", "Alte Angaben"))
self.label_4.setText(_translate("Dialog", "Mail"))
self.label_3.setText(_translate("Dialog", "Telefonnummer"))
self.delete_faculty_member.setText(_translate("Dialog", "Löschen"))
self.update_faculty_member.setText(_translate("Dialog", "Aktualisieren"))
self.label_9.setText(_translate("Dialog", "Mail"))
self.label_8.setText(_translate("Dialog", "Telefonnummer"))
self.label_7.setText(_translate("Dialog", "Nachname"))
self.label_5.setText(_translate("Dialog", "Titel"))
self.label_6.setText(_translate("Dialog", "Vorname"))
self.label_2.setText(_translate("Dialog", "Neue Angaben"))

View File

@@ -0,0 +1,60 @@
# 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.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
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(382, 100)
self.gridLayout = QtWidgets.QGridLayout(Dialog)
self.gridLayout.setObjectName("gridLayout")
self.label_3 = QtWidgets.QLabel(parent=Dialog)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 2, 1, 1)
self.user_edit_frame_role_select = QtWidgets.QComboBox(parent=Dialog)
self.user_edit_frame_role_select.setObjectName("user_edit_frame_role_select")
self.gridLayout.addWidget(self.user_edit_frame_role_select, 0, 3, 1, 1)
self.label = QtWidgets.QLabel(parent=Dialog)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.user_edit_frame_new_password = QtWidgets.QLineEdit(parent=Dialog)
self.user_edit_frame_new_password.setObjectName("user_edit_frame_new_password")
self.gridLayout.addWidget(self.user_edit_frame_new_password, 1, 1, 1, 1)
self.user_delete_frame_user_select = QtWidgets.QComboBox(parent=Dialog)
self.user_delete_frame_user_select.setObjectName("user_delete_frame_user_select")
self.gridLayout.addWidget(self.user_delete_frame_user_select, 0, 1, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=Dialog)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.user_delete_confirm = QtWidgets.QCheckBox(parent=Dialog)
self.user_delete_confirm.setObjectName("user_delete_confirm")
self.horizontalLayout.addWidget(self.user_delete_confirm)
self.btn_delete_user = QtWidgets.QPushButton(parent=Dialog)
self.btn_delete_user.setObjectName("btn_delete_user")
self.horizontalLayout.addWidget(self.btn_delete_user)
self.gridLayout.addLayout(self.horizontalLayout, 2, 1, 1, 1)
self.update_user = QtWidgets.QPushButton(parent=Dialog)
self.update_user.setObjectName("update_user")
self.gridLayout.addWidget(self.update_user, 2, 3, 1, 1)
self.retranslateUi(Dialog)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.label_3.setText(_translate("Dialog", "Rolle"))
self.label.setText(_translate("Dialog", "Nutzername"))
self.label_2.setText(_translate("Dialog", "Passwort"))
self.user_delete_confirm.setText(_translate("Dialog", "Löschen?"))
self.btn_delete_user.setText(_translate("Dialog", "Löschen"))
self.update_user.setText(_translate("Dialog", " Aktualisieren "))

View File

@@ -0,0 +1,259 @@
# 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.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
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(1237, 848)
self.verticalLayout = QtWidgets.QVBoxLayout(Dialog)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.verticalLayout_2 = QtWidgets.QVBoxLayout()
self.verticalLayout_2.setObjectName("verticalLayout_2")
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.verticalLayout_2.addItem(spacerItem)
self.elsa_add_new = QtWidgets.QPushButton(parent=Dialog)
self.elsa_add_new.setObjectName("elsa_add_new")
self.verticalLayout_2.addWidget(self.elsa_add_new)
self.elsa_cancel_create = QtWidgets.QPushButton(parent=Dialog)
self.elsa_cancel_create.setEnabled(False)
self.elsa_cancel_create.setObjectName("elsa_cancel_create")
self.verticalLayout_2.addWidget(self.elsa_cancel_create)
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.verticalLayout_2.addItem(spacerItem1)
self.horizontalLayout.addLayout(self.verticalLayout_2)
self.elsa_table = QtWidgets.QTableWidget(parent=Dialog)
self.elsa_table.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.elsa_table.setObjectName("elsa_table")
self.elsa_table.setColumnCount(3)
self.elsa_table.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_table.setHorizontalHeaderItem(2, item)
self.elsa_table.horizontalHeader().setDefaultSectionSize(374)
self.horizontalLayout.addWidget(self.elsa_table)
self.verticalLayout.addLayout(self.horizontalLayout)
self.create_frame_elsa = QtWidgets.QGroupBox(parent=Dialog)
self.create_frame_elsa.setFlat(False)
self.create_frame_elsa.setObjectName("create_frame_elsa")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.create_frame_elsa)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.gridLayout_2 = QtWidgets.QGridLayout()
self.gridLayout_2.setObjectName("gridLayout_2")
self.label = QtWidgets.QLabel(parent=self.create_frame_elsa)
self.label.setObjectName("label")
self.gridLayout_2.addWidget(self.label, 0, 0, 1, 1)
self.elsa_semester = QtWidgets.QLineEdit(parent=self.create_frame_elsa)
self.elsa_semester.setObjectName("elsa_semester")
self.gridLayout_2.addWidget(self.elsa_semester, 2, 1, 1, 1)
self.active_semester = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.active_semester.setText("")
self.active_semester.setAutoDefault(False)
self.active_semester.setDefault(False)
self.active_semester.setFlat(True)
self.active_semester.setObjectName("active_semester")
self.gridLayout_2.addWidget(self.active_semester, 2, 2, 1, 1)
self.elsa_date = QtWidgets.QLineEdit(parent=self.create_frame_elsa)
self.elsa_date.setObjectName("elsa_date")
self.gridLayout_2.addWidget(self.elsa_date, 1, 1, 1, 1)
spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.gridLayout_2.addItem(spacerItem2, 3, 0, 1, 1)
self.elsa_date_today = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.elsa_date_today.setText("")
self.elsa_date_today.setAutoDefault(False)
self.elsa_date_today.setDefault(False)
self.elsa_date_today.setFlat(True)
self.elsa_date_today.setObjectName("elsa_date_today")
self.gridLayout_2.addWidget(self.elsa_date_today, 1, 2, 1, 1)
self.label_3 = QtWidgets.QLabel(parent=self.create_frame_elsa)
self.label_3.setObjectName("label_3")
self.gridLayout_2.addWidget(self.label_3, 2, 0, 1, 1)
self.label_2 = QtWidgets.QLabel(parent=self.create_frame_elsa)
self.label_2.setObjectName("label_2")
self.gridLayout_2.addWidget(self.label_2, 1, 0, 1, 1)
self.elsa_prof = QtWidgets.QComboBox(parent=self.create_frame_elsa)
self.elsa_prof.setObjectName("elsa_prof")
self.gridLayout_2.addWidget(self.elsa_prof, 0, 1, 1, 1)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
self.elsa_save = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.elsa_save.setObjectName("elsa_save")
self.horizontalLayout_4.addWidget(self.elsa_save)
self.elsa_update = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.elsa_update.setObjectName("elsa_update")
self.horizontalLayout_4.addWidget(self.elsa_update)
self.gridLayout_2.addLayout(self.horizontalLayout_4, 4, 1, 1, 1)
self.horizontalLayout_2.addLayout(self.gridLayout_2)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_2.addItem(spacerItem3)
self.dokument_list_elsa = QtWidgets.QTableWidget(parent=self.create_frame_elsa)
self.dokument_list_elsa.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.dokument_list_elsa.setObjectName("dokument_list_elsa")
self.dokument_list_elsa.setColumnCount(3)
self.dokument_list_elsa.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.dokument_list_elsa.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.dokument_list_elsa.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.dokument_list_elsa.setHorizontalHeaderItem(2, item)
self.dokument_list_elsa.horizontalHeader().setDefaultSectionSize(116)
self.dokument_list_elsa.horizontalHeader().setMinimumSectionSize(43)
self.dokument_list_elsa.verticalHeader().setMinimumSectionSize(25)
self.horizontalLayout_2.addWidget(self.dokument_list_elsa)
self.verticalLayout_3 = QtWidgets.QVBoxLayout()
self.verticalLayout_3.setSpacing(10)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.btn_add_document_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.btn_add_document_elsa.setObjectName("btn_add_document_elsa")
self.verticalLayout_3.addWidget(self.btn_add_document_elsa)
self.btn_open_document_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.btn_open_document_elsa.setObjectName("btn_open_document_elsa")
self.verticalLayout_3.addWidget(self.btn_open_document_elsa)
self.check_file_elsa = QtWidgets.QPushButton(parent=self.create_frame_elsa)
self.check_file_elsa.setObjectName("check_file_elsa")
self.verticalLayout_3.addWidget(self.check_file_elsa)
spacerItem4 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.verticalLayout_3.addItem(spacerItem4)
self.horizontalLayout_2.addLayout(self.verticalLayout_3)
self.verticalLayout.addWidget(self.create_frame_elsa)
self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
self.horizontalLayout_6.setObjectName("horizontalLayout_6")
self.quote_entry = QtWidgets.QPushButton(parent=Dialog)
self.quote_entry.setObjectName("quote_entry")
self.horizontalLayout_6.addWidget(self.quote_entry)
spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.horizontalLayout_6.addItem(spacerItem5)
self.verticalLayout.addLayout(self.horizontalLayout_6)
self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
self.horizontalLayout_5.setObjectName("horizontalLayout_5")
self.table_elsa_list = QtWidgets.QTableWidget(parent=Dialog)
self.table_elsa_list.setObjectName("table_elsa_list")
self.table_elsa_list.setColumnCount(12)
self.table_elsa_list.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(2, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(3, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(4, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(5, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(6, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(7, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(8, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(9, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(10, item)
item = QtWidgets.QTableWidgetItem()
self.table_elsa_list.setHorizontalHeaderItem(11, item)
self.table_elsa_list.horizontalHeader().setDefaultSectionSize(85)
self.table_elsa_list.horizontalHeader().setMinimumSectionSize(31)
self.horizontalLayout_5.addWidget(self.table_elsa_list)
self.elsa_statistics = QtWidgets.QTabWidget(parent=Dialog)
self.elsa_statistics.setObjectName("elsa_statistics")
self.tab = QtWidgets.QWidget()
self.tab.setObjectName("tab")
self.horizontalLayout_7 = QtWidgets.QHBoxLayout(self.tab)
self.horizontalLayout_7.setObjectName("horizontalLayout_7")
self.elsa_statistics_table = QtWidgets.QTableWidget(parent=self.tab)
self.elsa_statistics_table.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.elsa_statistics_table.setTextElideMode(QtCore.Qt.TextElideMode.ElideMiddle)
self.elsa_statistics_table.setObjectName("elsa_statistics_table")
self.elsa_statistics_table.setColumnCount(2)
self.elsa_statistics_table.setRowCount(0)
item = QtWidgets.QTableWidgetItem()
self.elsa_statistics_table.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.elsa_statistics_table.setHorizontalHeaderItem(1, item)
self.elsa_statistics_table.horizontalHeader().setDefaultSectionSize(169)
self.horizontalLayout_7.addWidget(self.elsa_statistics_table)
self.elsa_statistics.addTab(self.tab, "")
self.horizontalLayout_5.addWidget(self.elsa_statistics)
self.horizontalLayout_5.setStretch(0, 7)
self.horizontalLayout_5.setStretch(1, 3)
self.verticalLayout.addLayout(self.horizontalLayout_5)
self.verticalLayout.setStretch(1, 1)
self.verticalLayout.setStretch(3, 2)
self.retranslateUi(Dialog)
self.elsa_statistics.setCurrentIndex(0)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
_translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
self.elsa_add_new.setText(_translate("Dialog", "Neuer Auftrag"))
self.elsa_cancel_create.setText(_translate("Dialog", "Abbrechen"))
item = self.elsa_table.horizontalHeaderItem(0)
item.setText(_translate("Dialog", "Professor"))
item = self.elsa_table.horizontalHeaderItem(1)
item.setText(_translate("Dialog", "Datum"))
item = self.elsa_table.horizontalHeaderItem(2)
item.setText(_translate("Dialog", "Semester"))
self.create_frame_elsa.setTitle(_translate("Dialog", "Auftragsdaten"))
self.label.setText(_translate("Dialog", "Professor"))
self.label_3.setText(_translate("Dialog", "Semester"))
self.label_2.setText(_translate("Dialog", "Auftragsdatum"))
self.elsa_save.setText(_translate("Dialog", "Speichern"))
self.elsa_update.setText(_translate("Dialog", "Aktualisieren"))
item = self.dokument_list_elsa.horizontalHeaderItem(0)
item.setText(_translate("Dialog", "Dokumentname"))
item = self.dokument_list_elsa.horizontalHeaderItem(1)
item.setText(_translate("Dialog", "Dateityp"))
item = self.dokument_list_elsa.horizontalHeaderItem(2)
item.setText(_translate("Dialog", "Neu?"))
self.btn_add_document_elsa.setText(_translate("Dialog", "Dokument hinzufügen"))
self.btn_open_document_elsa.setText(_translate("Dialog", "Dokument öffnen"))
self.check_file_elsa.setText(_translate("Dialog", "Medien aus Dokument\n"
"hinzufügen"))
self.quote_entry.setText(_translate("Dialog", " Eintrag zitieren "))
item = self.table_elsa_list.horizontalHeaderItem(0)
item.setText(_translate("Dialog", "Autor(en) des Werks"))
item = self.table_elsa_list.horizontalHeaderItem(1)
item.setText(_translate("Dialog", "Autor(en) des Beitrags"))
item = self.table_elsa_list.horizontalHeaderItem(2)
item.setText(_translate("Dialog", "Jahr"))
item = self.table_elsa_list.horizontalHeaderItem(3)
item.setText(_translate("Dialog", "Heft"))
item = self.table_elsa_list.horizontalHeaderItem(4)
item.setText(_translate("Dialog", "Auflage"))
item = self.table_elsa_list.horizontalHeaderItem(5)
item.setText(_translate("Dialog", "Titel des Werks"))
item = self.table_elsa_list.horizontalHeaderItem(6)
item.setText(_translate("Dialog", "Beitragstitel"))
item = self.table_elsa_list.horizontalHeaderItem(7)
item.setText(_translate("Dialog", "Seiten"))
item = self.table_elsa_list.horizontalHeaderItem(8)
item.setText(_translate("Dialog", "Ort"))
item = self.table_elsa_list.horizontalHeaderItem(9)
item.setText(_translate("Dialog", "Verlag"))
item = self.table_elsa_list.horizontalHeaderItem(10)
item.setText(_translate("Dialog", "Signatur"))
item = self.table_elsa_list.horizontalHeaderItem(11)
item.setText(_translate("Dialog", "Art"))
item = self.elsa_statistics_table.horizontalHeaderItem(0)
item.setText(_translate("Dialog", "Semester"))
item = self.elsa_statistics_table.horizontalHeaderItem(1)
item.setText(_translate("Dialog", "Zugang"))
self.elsa_statistics.setTabText(self.elsa_statistics.indexOf(self.tab), _translate("Dialog", "Tabelle"))

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>70</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="horizontalSpacing">
<number>10</number>
</property>
<property name="verticalSpacing">
<number>6</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Nutzername</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="user_create_frame_password"/>
</item>
<item row="1" column="3">
<widget class="QPushButton" name="user_frame_addUser">
<property name="text">
<string>Anlegen</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Rolle</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="user_create_frame_username"/>
</item>
<item row="0" column="3">
<widget class="QComboBox" name="user_frame_userrole">
<property name="editable">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Passwort</string>
</property>
</widget>
</item>
</layout>
</widget>
<tabstops>
<tabstop>user_create_frame_username</tabstop>
<tabstop>user_frame_userrole</tabstop>
<tabstop>user_create_frame_password</tabstop>
<tabstop>user_frame_addUser</tabstop>
</tabstops>
<resources/>
<connections/>
</ui>

View File

@@ -0,0 +1,211 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="windowModality">
<enum>Qt::ApplicationModal</enum>
</property>
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>540</width>
<height>281</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Alte Angaben</string>
</property>
</widget>
</item>
<item row="0" column="2">
<layout class="QGridLayout" name="gridLayout_2" columnstretch="1,0">
<item row="1" column="1">
<widget class="QLineEdit" name="faculty_member_old_telnr">
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLineEdit" name="edit_faculty_member_title">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>Mail</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Telefonnummer</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="edit_faculty_member_select_member"/>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="faculty_member_oldmail">
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="3" column="2">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QPushButton" name="delete_faculty_member">
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="text">
<string>Löschen</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="update_faculty_member">
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="text">
<string>Aktualisieren</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="2">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="Line" name="line_2">
<property name="lineWidth">
<number>1</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="2" column="2">
<layout class="QGridLayout" name="gridLayout_3">
<item row="4" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
<string>Mail</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="edit_faculty_member_new_title"/>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="user_faculty_member_new_telnr"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Telefonnummer</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Nachname</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLineEdit" name="user_faculty_member_new_mail"/>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="user_faculty_member_new_name"/>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="edit_faculty_member_new_surname"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>Titel</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Vorname</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Neue Angaben</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="Line" name="line_4">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>382</width>
<height>100</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="2">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Rolle</string>
</property>
</widget>
</item>
<item row="0" column="3">
<widget class="QComboBox" name="user_edit_frame_role_select"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Nutzername</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="user_edit_frame_new_password"/>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="user_delete_frame_user_select"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Passwort</string>
</property>
</widget>
</item>
<item row="2" column="1">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QCheckBox" name="user_delete_confirm">
<property name="text">
<string>Löschen?</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="btn_delete_user">
<property name="text">
<string>Löschen</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="3">
<widget class="QPushButton" name="update_user">
<property name="text">
<string> Aktualisieren </string>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -0,0 +1,427 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1237</width>
<height>848</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout" stretch="0,1,0,2">
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<spacer name="verticalSpacer_4">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="elsa_add_new">
<property name="text">
<string>Neuer Auftrag</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="elsa_cancel_create">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Abbrechen</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<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>
</item>
<item>
<widget class="QTableWidget" name="elsa_table">
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>374</number>
</attribute>
<column>
<property name="text">
<string>Professor</string>
</property>
</column>
<column>
<property name="text">
<string>Datum</string>
</property>
</column>
<column>
<property name="text">
<string>Semester</string>
</property>
</column>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QGroupBox" name="create_frame_elsa">
<property name="title">
<string>Auftragsdaten</string>
</property>
<property name="flat">
<bool>false</bool>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Professor</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="elsa_semester"/>
</item>
<item row="2" column="2">
<widget class="QPushButton" name="active_semester">
<property name="text">
<string/>
</property>
<property name="autoDefault">
<bool>false</bool>
</property>
<property name="default">
<bool>false</bool>
</property>
<property name="flat">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="elsa_date"/>
</item>
<item row="3" column="0">
<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>
<item row="1" column="2">
<widget class="QPushButton" name="elsa_date_today">
<property name="text">
<string/>
</property>
<property name="autoDefault">
<bool>false</bool>
</property>
<property name="default">
<bool>false</bool>
</property>
<property name="flat">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Semester</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Auftragsdatum</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="elsa_prof"/>
</item>
<item row="4" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QPushButton" name="elsa_save">
<property name="text">
<string>Speichern</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="elsa_update">
<property name="text">
<string>Aktualisieren</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QTableWidget" name="dokument_list_elsa">
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<attribute name="horizontalHeaderMinimumSectionSize">
<number>43</number>
</attribute>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>116</number>
</attribute>
<attribute name="verticalHeaderMinimumSectionSize">
<number>25</number>
</attribute>
<column>
<property name="text">
<string>Dokumentname</string>
</property>
</column>
<column>
<property name="text">
<string>Dateityp</string>
</property>
</column>
<column>
<property name="text">
<string>Neu?</string>
</property>
</column>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="spacing">
<number>10</number>
</property>
<item>
<widget class="QPushButton" name="btn_add_document_elsa">
<property name="text">
<string>Dokument hinzufügen</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="btn_open_document_elsa">
<property name="text">
<string>Dokument öffnen</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="check_file_elsa">
<property name="text">
<string>Medien aus Dokument
hinzufügen</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<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>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<widget class="QPushButton" name="quote_entry">
<property name="text">
<string> Eintrag zitieren </string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_5" stretch="7,3">
<item>
<widget class="QTableWidget" name="table_elsa_list">
<attribute name="horizontalHeaderMinimumSectionSize">
<number>31</number>
</attribute>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>85</number>
</attribute>
<column>
<property name="text">
<string>Autor(en) des Werks</string>
</property>
</column>
<column>
<property name="text">
<string>Autor(en) des Beitrags</string>
</property>
</column>
<column>
<property name="text">
<string>Jahr</string>
</property>
</column>
<column>
<property name="text">
<string>Heft</string>
</property>
</column>
<column>
<property name="text">
<string>Auflage</string>
</property>
</column>
<column>
<property name="text">
<string>Titel des Werks</string>
</property>
</column>
<column>
<property name="text">
<string>Beitragstitel</string>
</property>
</column>
<column>
<property name="text">
<string>Seiten</string>
</property>
</column>
<column>
<property name="text">
<string>Ort</string>
</property>
</column>
<column>
<property name="text">
<string>Verlag</string>
</property>
</column>
<column>
<property name="text">
<string>Signatur</string>
</property>
</column>
<column>
<property name="text">
<string>Art</string>
</property>
</column>
</widget>
</item>
<item>
<widget class="QTabWidget" name="elsa_statistics">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>Tabelle</string>
</attribute>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QTableWidget" name="elsa_statistics_table">
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="textElideMode">
<enum>Qt::ElideMiddle</enum>
</property>
<attribute name="horizontalHeaderDefaultSectionSize">
<number>169</number>
</attribute>
<column>
<property name="text">
<string>Semester</string>
</property>
</column>
<column>
<property name="text">
<string>Zugang</string>
</property>
</column>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>