Add missing Swiss cantonal public holidays - #334
Conversation
|
Thanks, but going to hold off on this one until there's an actual need. |
Hey, thanks for your response. We have customers in Switzerland who use our calendar to plan tasks and manage employee absences. As you probably know, Swiss public holidays are quite different from those in many other countries because they vary significantly by canton. The changes I proposed aim to improve support for those regional differences. While the implementation isn't perfect, it provides much better coverage than the current state. I completely understand your decision. Let's see if more users run into the same need in the future., thanks again for taking the time to review the merge request and I hope we can get these changes merged if the demand grows. |
Summary
Fills in the missing Swiss public holidays in
Switzerland.php; four previously-unmodeledholidays, corrected canton-by-canton assignments, and proper Reformed/Catholic district support
for the cantons that legally split on it. Verified against a full canton-by-canton reference table
(holiday × canton × entire-region/Catholic-district/Reformed-district).
Changes
New holidays
Näfelser Fahrt(GL) - first Thursday of April, shifted +7 days when that date is Maundy Thursday (Holy Week)Peter und Paul/ Saints Peter and Paul (TI) - June 29Bruderklausenfest/ St Nicholas of Flüe (OW) - September 25Fest der Unabhängigkeit/ Jura Independence Day (JU) - June 23Reformed/Catholic district support
Extends the existing
ch-fr/ch-fr-c/ch-fr-rconvention to the other three cantons thatsplit legally on denomination: adds
ch-ag-c/ch-ag-r,ch-gr-c/ch-gr-r,ch-so-c/ch-so-r.Per that convention, the bare canton code (
ch-ag,ch-fr,ch-gr,ch-so) now returnsentire-region holidays only - Catholic- or Reformed-district-only holidays (e.g. Corpus Christi,
Assumption Day) are scoped strictly to their
-c/-rvariant and no longer leak into the bare code.Corrected canton assignments (highlights - see diff for the full set)
Translations
Added French and Italian names for the four new holidays; removed the now-unused
"Buss- und Bettag" (non-Monday) translations (the Monday variant, used by VD, is unaffected).
Test plan
vendor/bin/pest --ci: 655 passed, 1710 assertionsvendor/bin/phpstan analyse: no errorsvendor/bin/pint --test: clean