Requirements #156
open( MS-3) Notifications: Holiday List
Description
New Year's Day: January 1st.
Martin Luther King, Jr. Day: The third Monday in January.
Washington's Birthday (Presidents' Day): The third Monday in February.
Memorial Day: The last Monday in May.
Juneteenth National Independence Day: June 19th.
Independence Day: July 4th.
Labor Day: The first Monday in September.
Columbus Day: The second Monday in October.
Veterans Day: November 11th.
Thanksgiving Day: The fourth Thursday in November.
Christmas Day: December 25th.
Updated by Redmine Admin 5 months ago
- Subject changed from Holiday List to Notifications: Holiday List
- Status changed from New to In Progress
Updated by RishiKesh Tuniki 2 months ago
- Status changed from In Progress to Resolved
Updated by Juan Mancera 2 months ago
Holiday Requirements:
-
How do we program holidays that do not fall on the same date each year. An example is Thanksgiving. It is a different date each year. It is the fourth Thursday of November each year.
-
Holidays should not be hardcoded. DentPal Corp Creates and Pushes to Customer just like Custom Template Functionality as an example. Customer can modify as needed.
-
Date Range not Working - Button enables but cannot disable. CheckBox Stays Unchecked
See Demo Video --->>> https://drive.google.com/file/d/12sMj4xK0l_YGgtNJYhUBKbMBrc8spy2M/view?usp=drive_link
Updated by Juan Mancera about 1 month ago
- Status changed from Resolved to In Progress
Updated by Redmine Admin 28 days ago
- Project changed from 3 to DentPal Miletone-3
- Subject changed from Notifications: Holiday List to ( MS-3) Notifications: Holiday List
- Test Phase set to Unit Test
Updated by Juan Mancera 12 days ago
- Status changed from In Progress to Feedback
- Priority changed from Normal to High
- Test Phase changed from Unit Test to UAT ( User Acceptance Test)
- Severity changed from Medium to High
I hope this helps make this more clear. This is the best attempt at trying to bridge Communication with Computer Science.
"DentPal Holiday Rules (No Hardcoding)
- Core requirement
All holidays must be created/edited in UI and stored as data. No holiday names, dates, or logic may be hard-coded.
- Holiday rule types (must support all)
Each Holiday must be one of these rule types:
Fixed Date (Yearly): same month/day every year (e.g., 07/04).
Fixed Date Range (Yearly): same start/end month/day every year (e.g., 12/24–12/26).
Nth Weekday of Month (Yearly): e.g., 4th Thursday of November (Thanksgiving), 3rd Monday of January.
Last Weekday of Month (Yearly): e.g., last Monday of May.
Relative to Another Holiday (Yearly): base holiday + offset days (e.g., “Day after Thanksgiving”, “Good Friday = Easter - 2”).
One-Time Date: single non-recurring closure (e.g., weather closure).
One-Time Date Range: non-recurring multi-day closure.
- Observed holiday handling (optional per holiday)
For yearly holidays, support an Observed Policy (UI-selectable):
None (exact date only)
If on Saturday → observe Monday or Friday
If on Sunday → observe Monday or Friday
Nearest weekday (Fri/Mon)
(Observed date is treated as the holiday for automation purposes.)
- Duration + hours (must support)
Each holiday can be either:
All-day, or
Partial-day (start time → end time), including cross-midnight support.
- Scope (must support)
Holidays must be assignable at:
Customer default (template) and
Clinic override (add/remove/modify per clinic)
Clinic evaluation uses the clinic’s timezone.
- What holidays control (minimum)
Holidays must be usable by automation rules to:
Pause or reschedule outbound messages (reminders/campaigns)
Enable “office closed” messaging behavior (optional templates)"