diff --git a/client/src/components/Files/FileManager.tsx b/client/src/components/Files/FileManager.tsx
index 8a4117bc..b8b7de2d 100644
--- a/client/src/components/Files/FileManager.tsx
+++ b/client/src/components/Files/FileManager.tsx
@@ -651,12 +651,15 @@ export default function FileManager({ files = [], onUpload, onDelete, onUpdate,
{day.title || t('dayplan.dayN', { n: day.day_number })}
- {day.date && (
- {day.date}
- )}
+ {(() => {
+ const badge = day.date || (day.title ? t('dayplan.dayN', { n: day.day_number }) : null)
+ return badge ? (
+ {badge}
+ ) : null
+ })()}
{dayPlaces.map(placeBtn)}
diff --git a/client/src/components/Planner/DayDetailPanel.tsx b/client/src/components/Planner/DayDetailPanel.tsx
index 02a799f9..528c3c4d 100644
--- a/client/src/components/Planner/DayDetailPanel.tsx
+++ b/client/src/components/Planner/DayDetailPanel.tsx
@@ -463,7 +463,9 @@ export default function DayDetailPanel({ day, days, places, categories = [], tri
options={days.map((d, i) => ({
value: d.id,
label: d.title || t('planner.dayN', { n: i + 1 }),
- badge: d.date ? new Date(d.date + 'T00:00:00Z').toLocaleDateString(locale, { day: 'numeric', month: 'short', timeZone: 'UTC' }) : undefined,
+ badge: d.date
+ ? new Date(d.date + 'T00:00:00Z').toLocaleDateString(locale, { day: 'numeric', month: 'short', timeZone: 'UTC' })
+ : (d.title ? t('planner.dayN', { n: i + 1 }) : undefined),
}))}
size="sm"
/>
@@ -476,7 +478,9 @@ export default function DayDetailPanel({ day, days, places, categories = [], tri
options={days.map((d, i) => ({
value: d.id,
label: d.title || t('planner.dayN', { n: i + 1 }),
- badge: d.date ? new Date(d.date + 'T00:00:00Z').toLocaleDateString(locale, { day: 'numeric', month: 'short', timeZone: 'UTC' }) : undefined,
+ badge: d.date
+ ? new Date(d.date + 'T00:00:00Z').toLocaleDateString(locale, { day: 'numeric', month: 'short', timeZone: 'UTC' })
+ : (d.title ? t('planner.dayN', { n: i + 1 }) : undefined),
}))}
size="sm"
/>
diff --git a/client/src/components/Planner/ReservationModal.tsx b/client/src/components/Planner/ReservationModal.tsx
index 38889374..d0a41448 100644
--- a/client/src/components/Planner/ReservationModal.tsx
+++ b/client/src/components/Planner/ReservationModal.tsx
@@ -439,11 +439,15 @@ export function ReservationModal({ isOpen, onClose, onSave, reservation, days, p
value={form.hotel_start_day}
onChange={value => set('hotel_start_day', value)}
placeholder={t('reservations.meta.selectDay')}
- options={days.map(d => ({
- value: d.id,
- label: d.title || t('dayplan.dayN', { n: d.day_number }),
- badge: d.date ? (formatDate(d.date, locale) ?? undefined) : undefined,
- }))}
+ options={days.map(d => {
+ const dateBadge = d.date ? (formatDate(d.date, locale) ?? undefined) : undefined
+ const dayBadge = d.title ? t('dayplan.dayN', { n: d.day_number }) : undefined
+ return {
+ value: d.id,
+ label: d.title || t('dayplan.dayN', { n: d.day_number }),
+ badge: dateBadge ?? dayBadge,
+ }
+ })}
size="sm"
/>
@@ -453,11 +457,15 @@ export function ReservationModal({ isOpen, onClose, onSave, reservation, days, p
value={form.hotel_end_day}
onChange={value => set('hotel_end_day', value)}
placeholder={t('reservations.meta.selectDay')}
- options={days.map(d => ({
- value: d.id,
- label: d.title || t('dayplan.dayN', { n: d.day_number }),
- badge: d.date ? (formatDate(d.date, locale) ?? undefined) : undefined,
- }))}
+ options={days.map(d => {
+ const dateBadge = d.date ? (formatDate(d.date, locale) ?? undefined) : undefined
+ const dayBadge = d.title ? t('dayplan.dayN', { n: d.day_number }) : undefined
+ return {
+ value: d.id,
+ label: d.title || t('dayplan.dayN', { n: d.day_number }),
+ badge: dateBadge ?? dayBadge,
+ }
+ })}
size="sm"
/>
diff --git a/client/src/components/Planner/TransportModal.tsx b/client/src/components/Planner/TransportModal.tsx
index 8bff7762..c04d6003 100644
--- a/client/src/components/Planner/TransportModal.tsx
+++ b/client/src/components/Planner/TransportModal.tsx
@@ -220,11 +220,15 @@ export function TransportModal({ isOpen, onClose, onSave, reservation, days, sel
const dayOptions = [
{ value: '', label: '—' },
- ...days.map(d => ({
- value: d.id,
- label: d.title || t('dayplan.dayN', { n: d.day_number }),
- badge: d.date ? (formatDate(d.date, locale) ?? undefined) : undefined,
- })),
+ ...days.map(d => {
+ const dateBadge = d.date ? (formatDate(d.date, locale) ?? undefined) : undefined
+ const dayBadge = d.title ? t('dayplan.dayN', { n: d.day_number }) : undefined
+ return {
+ value: d.id,
+ label: d.title || t('dayplan.dayN', { n: d.day_number }),
+ badge: dateBadge ?? dayBadge,
+ }
+ }),
]
return (