Stylinganpassungen
This commit is contained in:
parent
b02cc1cbe9
commit
f0a8ea20b1
23
lib/admin.py
23
lib/admin.py
@ -6,6 +6,7 @@ from dateutil.easter import *
|
|||||||
|
|
||||||
from nicegui import ui, app, events
|
from nicegui import ui, app, events
|
||||||
from nicegui.html import button
|
from nicegui.html import button
|
||||||
|
from nicegui.events import KeyEventArguments
|
||||||
|
|
||||||
from lib.users import *
|
from lib.users import *
|
||||||
from lib.definitions 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.button("Ja", on_click=execute_deletion)
|
||||||
ui.space()
|
ui.space()
|
||||||
ui.button("Nein", on_click=dialog.close)
|
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()
|
dialog.open()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
for i in list(user_absent):
|
for i in list(user_absent):
|
||||||
if int(i) == day:
|
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:
|
if archive_status:
|
||||||
absence_button.disable()
|
absence_button.disable()
|
||||||
except:
|
except:
|
||||||
@ -319,7 +329,7 @@ Dies kann nicht rückgängig gemacht werden!''')
|
|||||||
with ui.card().classes('bg-inherit'):
|
with ui.card().classes('bg-inherit'):
|
||||||
with ui.row():
|
with ui.row():
|
||||||
for j in temp_pair:
|
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:
|
if archive_status:
|
||||||
timestamp_button.disable()
|
timestamp_button.disable()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@ -569,7 +579,7 @@ Dies kann nicht rückgängig gemacht werden!''')
|
|||||||
dialog.open()
|
dialog.open()
|
||||||
dialog.move(calendar_card)
|
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:
|
with ui.menu() as menu:
|
||||||
menu_item = ui.menu_item("Zeiteintrag hinzufügen", lambda day=day: add_entry(day))
|
menu_item = ui.menu_item("Zeiteintrag hinzufügen", lambda day=day: add_entry(day))
|
||||||
if archive_status:
|
if archive_status:
|
||||||
@ -1187,6 +1197,13 @@ Dies kann nicht rückgängig gemacht werden!''')
|
|||||||
with ui.row():
|
with ui.row():
|
||||||
ui.button("Löschen", on_click=delete_entry)
|
ui.button("Löschen", on_click=delete_entry)
|
||||||
ui.button("Abbrechen", on_click=dialog.close)
|
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:
|
else:
|
||||||
ui.markdown("Es gibt nur einen Eintrag. Dieser kann nicht gelöscht werden.")
|
ui.markdown("Es gibt nur einen Eintrag. Dieser kann nicht gelöscht werden.")
|
||||||
ui.button("OK", on_click=dialog.close)
|
ui.button("OK", on_click=dialog.close)
|
||||||
|
@ -49,13 +49,17 @@ def homepage():
|
|||||||
|
|
||||||
def update_timer():
|
def update_timer():
|
||||||
additional_time = 0
|
additional_time = 0
|
||||||
if time_toggle.value == "total":
|
if time_toggle.value:
|
||||||
additional_time = yesterdays_overtime()
|
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:
|
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]))
|
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:
|
else:
|
||||||
time_in_total = additional_time + time_so_far
|
time_in_total = additional_time + time_so_far
|
||||||
working_hours.set_content(convert_seconds_to_hours(time_in_total))
|
working_hours.set_content(convert_seconds_to_hours(time_in_total))
|
||||||
|
|
||||||
with ui.grid(columns='1fr 1fr'):
|
with ui.grid(columns='1fr 1fr'):
|
||||||
if current_user.stamp_status() == status_in:
|
if current_user.stamp_status() == status_in:
|
||||||
bg_color = 'green'
|
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}')
|
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')
|
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')
|
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 = ui.timer(1.0, update_timer)
|
||||||
working_timer.active = False
|
working_timer.active = False
|
||||||
|
@ -119,4 +119,3 @@ def login_is_valid(user = -1):
|
|||||||
return False
|
return False
|
||||||
except:
|
except:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
"touchscreen": true,
|
"touchscreen": true,
|
||||||
"times_on_touchscreen": true,
|
"times_on_touchscreen": true,
|
||||||
"photos_on_touchscreen": true,
|
"photos_on_touchscreen": true,
|
||||||
"picture_height": "100",
|
"picture_height": "200",
|
||||||
"button_height": "120",
|
"button_height": "300",
|
||||||
"user_notes": true,
|
"user_notes": true,
|
||||||
"vacation_application": true,
|
"vacation_application": true,
|
||||||
"backup_folder": "/home/alexander/Dokumente/Python/Zeiterfassung/backup",
|
"backup_folder": "/home/alexander/Dokumente/Python/Zeiterfassung/backup",
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 854 KiB After Width: | Height: | Size: 46 KiB |
@ -49,7 +49,10 @@ def main():
|
|||||||
|
|
||||||
# Styling:
|
# Styling:
|
||||||
ui.button.default_classes('normal-case')
|
ui.button.default_classes('normal-case')
|
||||||
|
ui.button.default_props('rounded')
|
||||||
ui.tab.default_classes('normal-case')
|
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)
|
ui.run(favicon="favicon.svg", port=port, storage_secret=secret, language='de-DE', show_welcome_message=False)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user