Calendar Refinement
This commit is contained in:
@@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user