Stylinganpassungen

This commit is contained in:
Alexander Malzkuhn 2025-05-28 23:14:24 +02:00
parent b02cc1cbe9
commit f0a8ea20b1
6 changed files with 36 additions and 10 deletions

View File

@ -6,6 +6,7 @@ from dateutil.easter import *
from nicegui import ui, app, events
from nicegui.html import button
from nicegui.events import KeyEventArguments
from lib.users import *
from lib.definitions import *
@ -241,12 +242,21 @@ Dies kann nicht rückgängig gemacht werden!''')
ui.button("Ja", on_click=execute_deletion)
ui.space()
ui.button("Nein", on_click=dialog.close)
def handle_key(e: KeyEventArguments):
if e.key == 'j' or e.key == 'Enter':
execute_deletion()
if e.key == 'n' or e.key == 'Esc':
dialog.close()
keyboard = ui.keyboard(on_key=handle_key)
dialog.open()
try:
for i in list(user_absent):
if int(i) == day:
absence_button = ui.button(absence_entries[user_absent[i]]["name"], on_click=lambda i=i, day=day: delete_absence(day, absence_entries[user_absent[i]]["name"])).props(f'color={absence_entries[user_absent[i]]["color"]}')
absence_button = ui.button(absence_entries[user_absent[i]]["name"], on_click=lambda i=i, day=day: delete_absence(day, absence_entries[user_absent[i]]["name"])).props(f'color={absence_entries[user_absent[i]]["color"]} square')
if archive_status:
absence_button.disable()
except:
@ -319,7 +329,7 @@ Dies kann nicht rückgängig gemacht werden!''')
with ui.card().classes('bg-inherit'):
with ui.row():
for j in temp_pair:
timestamp_button = ui.button(datetime.datetime.fromtimestamp(int(j)).strftime('%H:%M'), on_click=lambda t_stamp=j, day=day: edit_entry(t_stamp, day))
timestamp_button = ui.button(datetime.datetime.fromtimestamp(int(j)).strftime('%H:%M'), on_click=lambda t_stamp=j, day=day: edit_entry(t_stamp, day)).props('square')
if archive_status:
timestamp_button.disable()
except Exception as e:
@ -569,7 +579,7 @@ Dies kann nicht rückgängig gemacht werden!''')
dialog.open()
dialog.move(calendar_card)
with ui.button(icon='menu') as menu_button:
with ui.button(icon='menu').props('square') as menu_button:
with ui.menu() as menu:
menu_item = ui.menu_item("Zeiteintrag hinzufügen", lambda day=day: add_entry(day))
if archive_status:
@ -1187,6 +1197,13 @@ Dies kann nicht rückgängig gemacht werden!''')
with ui.row():
ui.button("Löschen", on_click=delete_entry)
ui.button("Abbrechen", on_click=dialog.close)
def handle_key(e: KeyEventArguments):
print(e.key)
if e.key == 'j' or e.key == 'Enter':
delete_entry()
if e.key == 'n' or e.key == 'Esc':
dialog.close()
keyboard = ui.keyboard(on_key=handle_key)
else:
ui.markdown("Es gibt nur einen Eintrag. Dieser kann nicht gelöscht werden.")
ui.button("OK", on_click=dialog.close)

View File

@ -49,13 +49,17 @@ def homepage():
def update_timer():
additional_time = 0
if time_toggle.value == "total":
if time_toggle.value:
additional_time = yesterdays_overtime()
time_toggle.set_text("Gesamtzeit")
if not time_toggle.value:
time_toggle.set_text("Tageszeit")
if current_user.get_worked_time(today.year, today.month, today.day)[1] > 0:
time_in_total = additional_time + time_so_far + int((datetime.datetime.now().timestamp() - current_user.get_worked_time(today.year, today.month, today.day)[1]))
else:
time_in_total = additional_time + time_so_far
working_hours.set_content(convert_seconds_to_hours(time_in_total))
with ui.grid(columns='1fr 1fr'):
if current_user.stamp_status() == status_in:
bg_color = 'green'
@ -64,8 +68,11 @@ def homepage():
working_hours = ui.markdown(convert_seconds_to_hours(time_so_far)).classes(f'col-span-2 rounded-3xl text-center text-white text-bold text-2xl border-4 border-gray-600 bg-{bg_color}')
in_button = ui.button("Einstempeln", on_click=stamp_and_refresh).classes('bg-green')
out_button = ui.button("Ausstempeln", on_click=stamp_and_refresh).classes('bg-red')
time_toggle = ui.toggle({"day": "Tagesarbeitszeit", "total": "Gesamtzeit"}, value="day",
on_change=update_timer).classes('w-full justify-center col-span-2').tooltip("Hier lässt sich die Anzeige oben zwischen heute geleisteter Arbeitszeit und summierter Arbeitszeit umschalten.")
time_toggle = ui.switch("Tageszeit",on_change=update_timer).classes('w-full justify-center col-span-2 normal-case')
#time_toggle = ui.toggle({"day": "Tagesarbeitszeit", "total": "Gesamtzeit"}, value="day",
# on_change=update_timer).classes('w-full justify-center col-span-2 normal-case').tooltip("Hier lässt sich die Anzeige oben zwischen heute geleisteter Arbeitszeit und summierter Arbeitszeit umschalten.")
working_timer = ui.timer(1.0, update_timer)
working_timer.active = False

View File

@ -119,4 +119,3 @@ def login_is_valid(user = -1):
return False
except:
return False

View File

@ -6,8 +6,8 @@
"touchscreen": true,
"times_on_touchscreen": true,
"photos_on_touchscreen": true,
"picture_height": "100",
"button_height": "120",
"picture_height": "200",
"button_height": "300",
"user_notes": true,
"vacation_application": true,
"backup_folder": "/home/alexander/Dokumente/Python/Zeiterfassung/backup",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 854 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -49,7 +49,10 @@ def main():
# Styling:
ui.button.default_classes('normal-case')
ui.button.default_props('rounded')
ui.tab.default_classes('normal-case')
ui.toggle.default_classes('normal-case')
ui.toggle.default_props('rounded')
ui.run(favicon="favicon.svg", port=port, storage_secret=secret, language='de-DE', show_welcome_message=False)