Fix(Fortune): Incorrect time difference calculation for recent events #46
@@ -133,12 +133,14 @@ function daysDiff(eventIndex) {
|
||||
}
|
||||
const triggerDate = event.triggerDate;
|
||||
|
||||
let isCustomEvent = false;
|
||||
eventYear = year;
|
||||
if ('year' in triggerDate) {
|
||||
eventYear = validateNumber(triggerDate.year, 1, maxDate.getFullYear(), 'triggerDate.year', event);
|
||||
if (eventYear === null) {
|
||||
return -1;
|
||||
}
|
||||
isCustomEvent = true;
|
||||
}
|
||||
|
||||
if (!('month' in triggerDate)) {
|
||||
@@ -179,12 +181,17 @@ function daysDiff(eventIndex) {
|
||||
eventDate = firstTargetDay + (triggerDate.week - 1) * 7;
|
||||
}
|
||||
|
||||
if (!isCustomEvent && (month > eventMonth || (month == eventMonth && date > eventDate))) {
|
||||
eventYear += 1;
|
||||
}
|
||||
|
||||
const endDate = new Date(
|
||||
eventYear,
|
||||
eventMonth - 1,
|
||||
eventDate,
|
||||
);
|
||||
|
||||
|
||||
// calculate the difference in milliseconds and convert it to days
|
||||
const timeDiff = Math.ceil((endDate - startDate) / (1000 * 60 * 60 * 24));
|
||||
return timeDiff;
|
||||
|
||||
@@ -1,3 +1,67 @@
|
||||
{
|
||||
"special_events": []
|
||||
"special_events": [
|
||||
{
|
||||
"event": "夏至",
|
||||
"triggerDate": {
|
||||
"year": "2025",
|
||||
"month": "6",
|
||||
"date": "21"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "觀賞日出和日落",
|
||||
"l_1_desc": "享受一年最長的白天",
|
||||
"l_2_event": "",
|
||||
"l_2_desc": ""
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"event": "中秋節",
|
||||
"triggerDate": {
|
||||
"year": "2025",
|
||||
"month": "10",
|
||||
"date": "6"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "賞月",
|
||||
"l_1_desc": "與家人一同賞月,增進感情",
|
||||
"l_2_event": "吃月餅",
|
||||
"l_2_desc": "與家人朋友分享月餅的美味"
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"event": "冬至",
|
||||
"triggerDate": {
|
||||
"year": "2025",
|
||||
"month": "12",
|
||||
"date": "21"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "吃湯圓",
|
||||
"l_1_desc": "團團圓圓",
|
||||
"l_2_event": "保暖",
|
||||
"l_2_desc": "冬至到了"
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -662,26 +662,6 @@
|
||||
"r_2_desc": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"event": "冬至",
|
||||
"triggerDate": {
|
||||
"month": "12",
|
||||
"date": "22"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "吃湯圓",
|
||||
"l_1_desc": "團團圓圓",
|
||||
"l_2_event": "保暖",
|
||||
"l_2_desc": "冬至到了"
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"event": "平安夜",
|
||||
"triggerDate": {
|
||||
|
||||
@@ -1,46 +1,3 @@
|
||||
{
|
||||
"special_events": [
|
||||
{
|
||||
"event": "夏至",
|
||||
"triggerDate": {
|
||||
"year": "2025",
|
||||
"month": "6",
|
||||
"date": "21"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "觀賞日出和日落",
|
||||
"l_1_desc": "享受一年最長的白天",
|
||||
"l_2_event": "",
|
||||
"l_2_desc": ""
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"event": "中秋節",
|
||||
"triggerDate": {
|
||||
"year": "2025",
|
||||
"month": "10",
|
||||
"date": "6"
|
||||
},
|
||||
"status_index": "0",
|
||||
"goodFortunes": {
|
||||
"l_1_event": "賞月",
|
||||
"l_1_desc": "與家人一同賞月,增進感情",
|
||||
"l_2_event": "吃月餅",
|
||||
"l_2_desc": "與家人朋友分享月餅的美味"
|
||||
},
|
||||
"badFortunes": {
|
||||
"r_1_event": "",
|
||||
"r_1_desc": "",
|
||||
"r_2_event": "",
|
||||
"r_2_desc": ""
|
||||
}
|
||||
}
|
||||
]
|
||||
"special_events": []
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user