fix(dates): use local 'today' for date-input defaults instead of the UTC date

11 form defaults across 6 files used new Date().toISOString().split('T')[0] (the UTC date), which lands on yesterday during the post-midnight Prague window (UTC+1/+2). Added todayLocalStr() (local YYYY-MM-DD) in formatters and replaced them. Future-date expressions (e.g. invoice due_date +14d) left untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
BOHA
2026-06-06 02:38:58 +02:00
parent 94a9fb8b5a
commit 1f05ef6a55
7 changed files with 30 additions and 17 deletions

View File

@@ -17,7 +17,7 @@ import Forbidden from "../components/Forbidden";
import apiFetch from "../utils/api";
import { jsonQuery } from "../lib/apiAdapter";
import { useApiMutation } from "../lib/queries/mutations";
import { czechPlural } from "../utils/formatters";
import { czechPlural, todayLocalStr } from "../utils/formatters";
const API_BASE = "/api/admin";
@@ -140,8 +140,8 @@ export default function Attendance() {
const [isLeaveModalOpen, setIsLeaveModalOpen] = useState(false);
const [leaveForm, setLeaveForm] = useState({
leave_type: "vacation",
date_from: new Date().toISOString().split("T")[0],
date_to: new Date().toISOString().split("T")[0],
date_from: todayLocalStr(),
date_to: todayLocalStr(),
notes: "",
});
const [requestSubmitting, setRequestSubmitting] = useState(false);
@@ -334,8 +334,8 @@ export default function Attendance() {
alert.success(result?.message || "Žádost odeslána");
setLeaveForm({
leave_type: "vacation",
date_from: new Date().toISOString().split("T")[0],
date_to: new Date().toISOString().split("T")[0],
date_from: todayLocalStr(),
date_to: todayLocalStr(),
notes: "",
});
} catch (e) {