Calendar Refinement

This commit is contained in:
2026-03-11 13:31:49 +01:00
parent 94215fdd65
commit 6162ff595f
8 changed files with 371 additions and 49 deletions

View File

@@ -54,7 +54,12 @@
return 'luxtools.calendar.month.' + baseNs;
}
function shouldPersistCalendarMonth(calendar) {
return (calendar.getAttribute('data-luxtools-size') || 'large') === 'small';
}
function readSavedCalendarMonth(calendar) {
if (!shouldPersistCalendarMonth(calendar)) return null;
if (!window.localStorage) return null;
try {
@@ -73,6 +78,7 @@
}
function saveCalendarMonth(calendar) {
if (!shouldPersistCalendarMonth(calendar)) return;
if (!window.localStorage) return;
var year = parseInt(calendar.getAttribute('data-current-year') || '', 10);
@@ -90,6 +96,7 @@
}
function clearSavedCalendarMonth(calendar) {
if (!shouldPersistCalendarMonth(calendar)) return;
if (!window.localStorage) return;
try {
@@ -104,11 +111,15 @@
if (!ajaxUrl) return Promise.reject(new Error('Missing calendar ajax url'));
var baseNs = calendar.getAttribute('data-base-ns') || 'chronological';
var size = calendar.getAttribute('data-luxtools-size') || 'large';
var showTimes = calendar.getAttribute('data-luxtools-show-times') || '1';
var params = new URLSearchParams({
call: 'luxtools_calendar_month',
year: String(year),
month: String(month),
base: baseNs
base: baseNs,
size: size,
show_times: showTimes
});
var url = ajaxUrl + (ajaxUrl.indexOf('?') >= 0 ? '&' : '?') + params.toString();
@@ -212,6 +223,7 @@
}
function restoreCalendarMonth(calendar) {
if (!shouldPersistCalendarMonth(calendar)) return;
var saved = readSavedCalendarMonth(calendar);
if (!saved) return;