1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Refactor reloadData function

This commit is contained in:
Josh Stock 2023-10-03 11:19:45 -05:00
parent 71089846d1
commit 81a861f3fc

View file

@ -61,20 +61,13 @@ function renderList(elem, apiClient, result) {
}
function reloadData(instance, elem, apiClient, startIndex, limit) {
if (startIndex == null) {
startIndex = parseInt(elem.getAttribute('data-activitystartindex') || '0', 10);
}
limit = limit || parseInt(elem.getAttribute('data-activitylimit') || '7', 10);
startIndex ??= parseInt(elem.getAttribute('data-activitystartindex') || '0', 10);
limit ||= parseInt(elem.getAttribute('data-activitylimit') || '7', 10);
const minDate = new Date();
const hasUserId = toBoolean(elem.getAttribute('data-useractivity'), true);
const dateOffset = hasUserId ? 1 : 7; // one day back if user id, otherwise one week
// TODO: Use date-fns
if (hasUserId) {
minDate.setTime(minDate.getTime() - 24 * 60 * 60 * 1000); // one day back
} else {
minDate.setTime(minDate.getTime() - 7 * 24 * 60 * 60 * 1000); // one week back
}
minDate.setTime(minDate.getTime() - dateOffset * 24 * 60 * 60 * 1000);
ApiClient.getJSON(ApiClient.getUrl('System/ActivityLog/Entries', {
startIndex: startIndex,
@ -84,16 +77,9 @@ function reloadData(instance, elem, apiClient, startIndex, limit) {
})).then(function (result) {
elem.setAttribute('data-activitystartindex', startIndex);
elem.setAttribute('data-activitylimit', limit);
if (!startIndex) {
if (startIndex === 0) {
const activityContainer = dom.parentWithClass(elem, 'activityContainer');
if (activityContainer) {
if (result.Items.length) {
activityContainer.classList.remove('hide');
} else {
activityContainer.classList.add('hide');
}
}
activityContainer?.classList.toggle('hide', result.Items.length === 0);
}
instance.items = result.Items;