feat(oxibadge): add settings screen for shifts, rounding and language
Check, format and test / build (push) Successful in 10m22s
Check, format and test / build (push) Successful in 10m22s
Add a settings screen (gear button on the month-confirmation screen) to configure the expected shift times, the rounding step, the interface language, and the time clock address — replacing the old onboarding-only connection flow. Settings persist to the same preferences.toml as the reader address, under a single load_settings/ save_settings command pair. The review screen's "fix shifts" action now redistributes stacked punches by nearest configured shift time instead of blind position, and a stacked cell manually cleared down to one entry no longer leaves a dangling empty input. Assisted-by: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -115,5 +115,47 @@
|
||||
"back_to_review": "Torna alla revisione",
|
||||
"round_and_export": "Arrotonda ed esporta",
|
||||
"export_anyway": "Esporta comunque"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Impostazioni",
|
||||
"device_title": "Timbratore",
|
||||
"device_desc": "Il timbratore da cui Oxibadge scarica le timbrature.",
|
||||
"device_label": "Indirizzo",
|
||||
"status_testing": "Verifica…",
|
||||
"status_ok": "Raggiungibile",
|
||||
"status_idle": "Non verificato",
|
||||
"edit_address": "Modifica indirizzo",
|
||||
"test_connection": "Testa connessione",
|
||||
"ip_label": "Indirizzo IP",
|
||||
"port_label": "Porta",
|
||||
"ip_invalid": "Formato non valido, es. 192.168.1.100",
|
||||
"cancel": "Annulla",
|
||||
"confirm": "Conferma",
|
||||
"shifts_title": "Turni previsti",
|
||||
"shifts_desc": "L'orario di lavoro standard. La pausa tra i due turni è quella usata da \"Aggiungi pausa pranzo\" nella revisione.",
|
||||
"shift_1": "1° turno",
|
||||
"shift_2": "2° turno",
|
||||
"shift_in": "Entrata",
|
||||
"shift_out": "Uscita",
|
||||
"shift_error_format": "Inserisci tutti gli orari nel formato HH:MM.",
|
||||
"shift_error_out1": "L'uscita del 1° turno deve essere dopo l'entrata.",
|
||||
"shift_error_in2": "Il 2° turno deve iniziare dopo la fine del 1°.",
|
||||
"shift_error_out2": "L'uscita del 2° turno deve essere dopo l'entrata.",
|
||||
"hours_per_day_label": "Ore previste",
|
||||
"per_day": "al giorno",
|
||||
"break_label": "Pausa",
|
||||
"round_title": "Arrotondamento orari",
|
||||
"round_desc": "Gli orari vengono arrotondati al multiplo più vicino.",
|
||||
"round_example": "Es. {from} → {to}.",
|
||||
"round_label": "Minuti",
|
||||
"minutes_short": "min",
|
||||
"round_range": "Da 1 a 60 minuti",
|
||||
"language_title": "Lingua",
|
||||
"language_desc": "La lingua dell'interfaccia di Oxibadge.",
|
||||
"save_idle": "Le modifiche vengono salvate automaticamente",
|
||||
"save_saving": "Salvataggio…",
|
||||
"save_saved": "Modifiche salvate",
|
||||
"save_invalid": "Non salvato: correggi l'errore",
|
||||
"save_failed": "Salvataggio non riuscito"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user