Skip to content

Commit

Permalink
Merge pull request #1897 from lumi-tip/development-lumi-hotfix-15
Browse files Browse the repository at this point in the history
correct cronological order
  • Loading branch information
tommygonzaleza authored Feb 26, 2025
2 parents 4b7af9e + 408dde5 commit b92b291
Showing 1 changed file with 14 additions and 7 deletions.
21 changes: 14 additions & 7 deletions src/utils/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -275,18 +275,25 @@ const sortToNearestTodayDate = (data, minutes = 30, includeExpired = false) => {
});

return filteredDates.sort((a, b) => {
const aHasStarted = new Date(a.starting_at) < currentDate;
const aHasExpired = new Date(a.ended_at || a.ending_at) < currentDate;
const bHasStarted = new Date(b.starting_at) < currentDate;
const bHasExpired = new Date(b.ended_at || b.ending_at) < currentDate;
const aStartingDate = new Date(a.starting_at);
const aEndingDate = new Date(a.ended_at || a.ending_at);
const bStartingDate = new Date(b.starting_at);
const bEndingDate = new Date(b.ended_at || b.ending_at);

if (aHasStarted && !aHasExpired && !(bHasStarted && !bHasExpired)) return -1; // Prio live events
const aHasStarted = aStartingDate < currentDate;
const aHasExpired = aEndingDate < currentDate;
const bHasStarted = bStartingDate < currentDate;
const bHasExpired = bEndingDate < currentDate;

if (aHasStarted && !aHasExpired && !(bHasStarted && !bHasExpired)) return -1;
if (!(aHasStarted && !aHasExpired) && bHasStarted && !bHasExpired) return 1;

if (!aHasStarted && !aHasExpired && (bHasStarted || bHasExpired)) return -1; // Then upcomming evnets
if (!aHasStarted && !aHasExpired && (bHasStarted || bHasExpired)) return -1;
if ((aHasStarted || aHasExpired) && !bHasStarted && !bHasExpired) return 1;

return new Date(b.starting_at) - new Date(a.starting_at); // Crono order
if (aHasExpired && bHasExpired) return bStartingDate - aStartingDate;

return aStartingDate - bStartingDate;
});
};

Expand Down

0 comments on commit b92b291

Please sign in to comment.