diff --git a/susconecta/components/features/forms/calendar-registration-form.tsx b/susconecta/components/features/forms/calendar-registration-form.tsx index eb97fb3..ba3089c 100644 --- a/susconecta/components/features/forms/calendar-registration-form.tsx +++ b/susconecta/components/features/forms/calendar-registration-form.tsx @@ -1041,7 +1041,11 @@ export function CalendarRegistrationForm({ formData, onFormChange, createMode = const d = new Date(s.datetime); const hh = String(d.getHours()).padStart(2, '0'); const mm = String(d.getMinutes()).padStart(2, '0'); - const dateOnly = d.toISOString().split('T')[0]; + // Use local date components instead of toISOString to avoid timezone conversion + const year = d.getFullYear(); + const month = String(d.getMonth() + 1).padStart(2, '0'); + const day = String(d.getDate()).padStart(2, '0'); + const dateOnly = `${year}-${month}-${day}`; return dateOnly === date && `${hh}:${mm}` === time; } catch (e) { return false; diff --git a/susconecta/components/features/forms/doctor-registration-form.tsx b/susconecta/components/features/forms/doctor-registration-form.tsx index 2183868..cf7b95f 100644 --- a/susconecta/components/features/forms/doctor-registration-form.tsx +++ b/susconecta/components/features/forms/doctor-registration-form.tsx @@ -835,6 +835,10 @@ async function handleSubmit(ev: React.FormEvent) { selected={form.data_nascimento ?? undefined} onSelect={(date) => setField("data_nascimento", date ?? null)} initialFocus + captionLayout="dropdown" + fromYear={1900} + toYear={new Date().getFullYear()} + disabled={(date) => date > new Date()} /> diff --git a/susconecta/components/features/forms/patient-registration-form.tsx b/susconecta/components/features/forms/patient-registration-form.tsx index b3b2f21..8a5e739 100644 --- a/susconecta/components/features/forms/patient-registration-form.tsx +++ b/susconecta/components/features/forms/patient-registration-form.tsx @@ -467,6 +467,10 @@ export function PatientRegistrationForm({ selected={form.birth_date ?? undefined} onSelect={(date) => setField("birth_date", date || null)} initialFocus + captionLayout="dropdown" + fromYear={1900} + toYear={new Date().getFullYear()} + disabled={(date) => date > new Date()} /> diff --git a/susconecta/components/ui/popover.tsx b/susconecta/components/ui/popover.tsx index be6014e..a93703f 100644 --- a/susconecta/components/ui/popover.tsx +++ b/susconecta/components/ui/popover.tsx @@ -30,7 +30,7 @@ function PopoverContent({ align={align} sideOffset={sideOffset} className={cn( - "bg-white text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[9999] w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md", + "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[9999] w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md", className )} {...props}