Merge branch 'frontend_pw_change'

This commit is contained in:
Alexander Malzkuhn 2025-06-04 06:26:08 +02:00
commit 2974294224

View File

@ -199,6 +199,7 @@ def homepage():
overviews = ui.tab('Übersichten')
absence = ui.tab('Urlaubsantrag')
absence.set_visibility(load_adminsettings()["vacation_application"])
pw_change = ui.tab("Passwort")
with ui.grid(columns='1fr auto 1fr').classes('w-full items-center'):
ui.space()
@ -281,6 +282,31 @@ def homepage():
ui.button("Zurückziehen", on_click=retract_va).tooltip("Hiermit wird der oben gewählte Urlaubsantrag zurückgezogen.").classes('w-full')
open_vacation_applications()
with ui.tab_panel(pw_change):
ui.label("Passwort ändern").classes('font-bold')
with ui.grid(columns='auto auto').classes('items-end'):
ui.label("Altes Passwort:")
old_pw_input = ui.input(password=True)
ui.label("Neues Passwort:")
new_pw_input = ui.input(password=True)
ui.label("Neues Passwort bestätigen:")
new_pw_confirm_input = ui.input(password=True)
def revert_pw_inputs():
old_pw_input.value = ""
new_pw_input.value = ""
new_pw_confirm_input.value = ""
def save_new_password():
if hash_password(old_pw_input.value) == current_user.password:
if new_pw_input.value == new_pw_confirm_input.value:
current_user.password = hash_password(new_pw_input.value)
current_user.write_settings()
ui.notify("Neues Passwort gespeichert")
else:
ui.notify("Passwortbestätigung stimmt nicht überein")
else:
ui.notify("Altes Passwort nicht korrekt")
ui.button("Speichern", on_click=save_new_password)
ui.button("Zurücksetzen", on_click=revert_pw_inputs)
ui.space()
else: