From 45633ad418827ff5a765bf2ab321f7cdf6d6b28b Mon Sep 17 00:00:00 2001 From: Jin <22962980+JYC333@users.noreply.github.com> Date: Mon, 31 Mar 2025 19:36:57 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20fix=20error=20caused=20by?= =?UTF-8?q?=20first=20day=20of=20week=20change?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/public/app/widgets/buttons/calendar.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/public/app/widgets/buttons/calendar.ts b/src/public/app/widgets/buttons/calendar.ts index 23e37297e..08ab2186b 100644 --- a/src/public/app/widgets/buttons/calendar.ts +++ b/src/public/app/widgets/buttons/calendar.ts @@ -314,8 +314,11 @@ export default class CalendarWidget extends RightDropdownButtonWidget { const nextMonthFirstDay = new Date(this.date.getFullYear(), this.date.getMonth() + 1, 1); const dates = []; + const lastDayOfUserWeek = (this.firstDayOfWeek + 6) % 7; + const daysToAdd = (lastDayOfUserWeek - lastDayOfWeek + 7) % 7; + // Get dates from next month - for (let i = 0; i < 7 - lastDayOfWeek; i++) { + for (let i = 0; i < daysToAdd; i++) { dates.push(new Date(nextMonthFirstDay.getFullYear(), nextMonthFirstDay.getMonth(), i + 1)); } @@ -371,7 +374,8 @@ export default class CalendarWidget extends RightDropdownButtonWidget { // Add dates from next month const lastDay = new Date(this.date.getFullYear(), this.date.getMonth(), 0); const lastDayOfWeek = lastDay.getDay(); - if (lastDayOfWeek !== 7) { + const lastDayOfUserWeek = (this.firstDayOfWeek + 6) % 7; + if (lastDayOfWeek !== lastDayOfUserWeek) { const dates = this.getNextMonthDays(lastDayOfWeek); const nextMonth = new Date(this.date.getFullYear(), this.date.getMonth() + 1, 1);