From 56fdb4fd1d6a854015be97266f64de0c6d4fff63 Mon Sep 17 00:00:00 2001 From: marijo Date: Mon, 29 Jun 2026 08:07:25 +0000 Subject: [PATCH] Ordering by date, name --- app.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/app.js b/app.js index 00b50e6..5e00cd5 100644 --- a/app.js +++ b/app.js @@ -26,7 +26,7 @@ const emptyState = document.querySelector("#empty-state"); const routesList = document.querySelector("#routes-list"); const template = document.querySelector("#route-card-template"); -let routes = loadRoutes(); +let routes = sortRoutes(loadRoutes()); authForm.addEventListener("submit", authenticate); logoutButton.addEventListener("click", lockApp); @@ -91,6 +91,19 @@ function storeRoutes() { localStorage.setItem(STORAGE_KEY, JSON.stringify(routes)); } +function sortRoutes(routeList) { + return [...routeList].sort((a, b) => { + const dateA = a.date || "0000-00-00"; + const dateB = b.date || "0000-00-00"; + + if (dateA !== dateB) { + return dateB.localeCompare(dateA); + } + + return a.name.localeCompare(b.name, undefined, { sensitivity: "base" }); + }); +} + async function saveRoute(event) { event.preventDefault(); @@ -132,6 +145,7 @@ async function saveRoute(event) { routes.unshift(route); } + routes = sortRoutes(routes); storeRoutes(); renderRoutes(); resetForm();