admin/lib/reviewWindow.ts
alisaza e1eaf5eff5 feat: initial ghabilee-admin backoffice app
Extract admin dashboard from ghabilee-frontend2 into a dedicated Next.js
app for backoffice.ghabilee.ir (no SEO indexing / Clarity).
2026-09-05 13:12:59 +03:30

30 lines
838 B
TypeScript

/**
* Guest create window: now <= endsAt + 1 calendar month
* (mirrors trg_reviews_require_confirmed_booking).
*/
export const isWithinReviewWindow = (endsAt: string | Date, now: Date = new Date()): boolean => {
const end = new Date(endsAt)
if (Number.isNaN(end.getTime())) return false
const deadline = new Date(end)
deadline.setMonth(deadline.getMonth() + 1)
return now.getTime() <= deadline.getTime()
}
/**
* Host reply window: now <= endsAt + 2 calendar months
* (mirrors trg_reviews_host_reply_guard).
*/
export const isWithinHostReplyWindow = (endsAt: string | Date, now: Date = new Date()): boolean => {
const end = new Date(endsAt)
if (Number.isNaN(end.getTime())) return false
const deadline = new Date(end)
deadline.setMonth(deadline.getMonth() + 2)
return now.getTime() <= deadline.getTime()
}