From 985324970e65beac2d1d461ca124ed43c1866d64 Mon Sep 17 00:00:00 2001 From: Aroy-Art Date: Wed, 27 Mar 2024 14:32:57 +0100 Subject: [PATCH] Add Sort folders first in sort mode Name & Size --- js/main.js | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/js/main.js b/js/main.js index 5b43f2f..887b884 100644 --- a/js/main.js +++ b/js/main.js @@ -97,7 +97,10 @@ $(document).ready(function () { var collator = new Intl.Collator([], {numeric: true}); filesData.sort(function (fileA, fileB) { return collator.compare(fileA.name.toLowerCase(), fileB.name.toLowerCase()); - //return fileA.name.toLowerCase().localeCompare(fileB.name.toLowerCase()); + }); + + filesData.sort(function (fileA, fileB) { + return collator.compare(fileA.type.toLowerCase(), fileB.type.toLowerCase()); }); } else if (sortBy === "size") { @@ -112,6 +115,16 @@ $(document).ready(function () { fileListElement.empty(); + var directories = []; + var files = []; + filesData.forEach(function (fileData) { + if (fileData.type === "folder") { + directories.push(fileData); + } else { + files.push(fileData); + } + }); + var parentDir = getParentDir(path); if (parentDir) { @@ -122,7 +135,17 @@ $(document).ready(function () { )); } - filesData.forEach(function (fileData) { + directories.forEach(function (fileData) { + fileListElement.append(renderFileElement( + path, + fileData.name, + fileData.type, + fileData.size, + fileData.mtime + )); + }); + + files.forEach(function (fileData) { fileListElement.append(renderFileElement( path, fileData.name,