1.3 KiB
1.3 KiB
PLAN 09-02: Fix — walidacja godziny wstecznej w bieżącym dniu
Problem
Atrybut min na datetime-local nie jest konsekwentnie wymuszany przez przeglądarki dla części godzinowej. Użytkownik może wybrać dzisiejszą datę z godziną wcześniejszą niż teraz. Ponadto enforceDateMin() jest wywołane raz — now się starzeje.
Rozwiązanie
- Przenieść
enforceDateMin()pozaif (!dataLoaded)— odświeżaćminprzy każdym otwarciu modala - Dodać event listener
changena inputach dat, który sprawdza czy wartość < now i jeśli tak — czyści pole + pokazuje komunikat - Analogicznie w search form — odświeżanie min przy każdym
initSearchFormrun
Taski
Task 1: Odświeżanie min przy każdym otwarciu modala + walidacja on change
Plik: assets/js/carei-reservation.js
Akcja:
- Przenieść
enforceDateMin()za blokif (!dataLoaded) - W
enforceDateMin()dodać listenerchangena dateFrom i dateTo sprawdzającyvalue < getNowLocal()→ markFieldError + clear value Done: Nie da się ustawić godziny wstecznej — pole reaguje natychmiast
Task 2: Analogiczna walidacja on change w search form
Plik: assets/js/carei-reservation.js
Akcja: Dodać listener change na searchDateFrom/searchDateTo sprawdzający past time
Done: Search form również blokuje godziny wsteczne