Fotohandling, Port aus den Einstellungen
This commit is contained in:
parent
ac57af88b3
commit
1484ff537e
64
admin.py
64
admin.py
@ -35,9 +35,8 @@ def page_admin():
|
||||
with ui.tabs() as tabs:
|
||||
|
||||
time_overview = ui.tab('Zeitübersichten')
|
||||
admin_user = ui.tab('Admin Benutzer')
|
||||
users = ui.tab('Benutzer')
|
||||
settings = ui.tab('Einstellungen')
|
||||
users = ui.tab('Benutzer')
|
||||
|
||||
with ((ui.tab_panels(tabs, value=time_overview))):
|
||||
|
||||
@ -444,24 +443,45 @@ Dies kann nicht rückgägig gemacht werden!''')
|
||||
button_update.move(timetable_header)
|
||||
|
||||
|
||||
with ui.tab_panel(admin_user):
|
||||
with ui.tab_panel(settings):
|
||||
with ui.card():
|
||||
ui.markdown("**Administrationsbenutzer:**")
|
||||
with ui.grid(columns=2):
|
||||
def save_admin_settings():
|
||||
output_dict = { }
|
||||
output_dict["admin_user"] = admin_user.value
|
||||
output_dict["adnin_password"] = admin_password.value
|
||||
output_dict["admin_password"] = admin_password.value
|
||||
output_dict["port"] = port.value
|
||||
output_dict["secret"] = secret
|
||||
json_dict = json.dumps(output_dict, indent=4)
|
||||
with open(f"{scriptpath}/{usersettingsfilename}", "w") as outputfile:
|
||||
outputfile.write(json_dict)
|
||||
print(old_port)
|
||||
print(int(port.value))
|
||||
if old_port != int(port.value):
|
||||
with ui.dialog() as dialog, ui.card():
|
||||
ui.markdown("Damit die Porteinstellungen wirksam werden, muss der Server neu gestartet werden.")
|
||||
ui.button("OK", on_click=lambda: dialog.close())
|
||||
dialog.open()
|
||||
ui.notify("Einstellungen gespeichert")
|
||||
|
||||
|
||||
ui.label("Benutzername des Adminstrators")
|
||||
ui.markdown("Benutzername des Adminstrators")
|
||||
admin_user = ui.input()
|
||||
admin_user.value = data["admin_user"]
|
||||
ui.label("Passwort des Adminsistrators")
|
||||
ui.markdown("Passwort des Adminsistrators")
|
||||
admin_password = ui.input(password=True)
|
||||
admin_password.value = data["admin_password"]
|
||||
|
||||
secret = data["secret"]
|
||||
|
||||
with ui.card():
|
||||
ui.markdown("**Systemeinstellungen:**")
|
||||
with ui.grid(columns=2):
|
||||
|
||||
ui.markdown("Port:")
|
||||
port = ui.input()
|
||||
old_port = data["port"]
|
||||
port.value = old_port
|
||||
ui.button("Speichern", on_click=save_admin_settings)
|
||||
|
||||
with ui.tab_panel(users):
|
||||
@ -488,6 +508,12 @@ Dies kann nicht rückgägig gemacht werden!''')
|
||||
workhours_select.value = workhour_list[0]
|
||||
workinghourscard.visible = True
|
||||
|
||||
user_photo.set_source(current_user.photofile)
|
||||
user_photo.force_reload()
|
||||
|
||||
user_photo.set_visibility(os.path.exists(current_user.photofile))
|
||||
delete_button.set_visibility(os.path.exists(current_user.photofile))
|
||||
|
||||
|
||||
except:
|
||||
pass
|
||||
@ -622,11 +648,33 @@ Dies kann nicht rückgägig gemacht werden!''')
|
||||
ui.markdown("Passwort")
|
||||
password_input = ui.input(password=True)
|
||||
|
||||
|
||||
with ui.grid(columns=2):
|
||||
ui.button("Speichern", on_click=save_user_settings)
|
||||
ui.button("Löschen", on_click=del_user)
|
||||
|
||||
with ui.card() as photocard:
|
||||
ui.markdown('**Foto**')
|
||||
current_user = user(user_selection.value)
|
||||
user_photo = ui.image(current_user.photofile)
|
||||
|
||||
def handle_upload(e: events.UploadEventArguments):
|
||||
picture = e.content.read()
|
||||
current_user = user(user_selection.value)
|
||||
with open(current_user.photofile, 'wb') as outoutfile:
|
||||
outoutfile.write(picture)
|
||||
uploader.reset()
|
||||
user_selection_changed()
|
||||
|
||||
|
||||
def del_photo():
|
||||
current_user = user(user_selection.value)
|
||||
current_user.delete_photo()
|
||||
user_selection_changed()
|
||||
|
||||
uploader = ui.upload(label="Foto hochladen", on_upload=handle_upload).props('accept=.jpg|.jpeg').classes('max-w-full')
|
||||
delete_button = ui.button("Löschen", on_click=del_photo)
|
||||
|
||||
|
||||
with ui.card() as workinghourscard:
|
||||
workhours = []
|
||||
ui.markdown("**Arbeitszeiten**")
|
||||
|
18
main.py
18
main.py
@ -5,5 +5,21 @@ from admin import *
|
||||
from login import *
|
||||
from users import *
|
||||
from touchscreen import *
|
||||
from definitions import *
|
||||
import json
|
||||
|
||||
ui.run(port=8090, storage_secret="test")
|
||||
|
||||
|
||||
def main():
|
||||
|
||||
# Einstellungen einlesen
|
||||
with open(f"{scriptpath}/settings.json") as json_file:
|
||||
data = json.load(json_file)
|
||||
|
||||
port = int(data["port"])
|
||||
secret = data["secret"]
|
||||
|
||||
ui.run(port=port, storage_secret=secret)
|
||||
|
||||
if __name__ in ("__main__", "__mp_main__"):
|
||||
main()
|
||||
|
@ -1,4 +1,6 @@
|
||||
{
|
||||
"admin_user": "admin",
|
||||
"admin_password": "123456"
|
||||
"admin_password": "123456",
|
||||
"port": "8090",
|
||||
"secret": "ftgzuhjikg,mt5jn46uzer8sfi9okrmtzjhndfierko5zltjhdgise"
|
||||
}
|
BIN
users/testuser3/photo.jpg
Normal file
BIN
users/testuser3/photo.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 854 KiB |
Loading…
x
Reference in New Issue
Block a user