Merge pull request #2 from EuskadiTech/copilot/fix-1
Fix table sorting with hybrid date-name prioritization
This commit is contained in:
@@ -719,12 +719,31 @@ function TS_IndexElement(
|
||||
|
||||
function render() {
|
||||
function sorter(a, b) {
|
||||
if (a.Fecha < b.Fecha) {
|
||||
return -1;
|
||||
// If both items have Fecha field, sort by date first
|
||||
if (a.Fecha && b.Fecha) {
|
||||
// Primary sort by date
|
||||
if (a.Fecha < b.Fecha) return -1;
|
||||
if (a.Fecha > b.Fecha) return 1;
|
||||
|
||||
// Secondary sort by Nombre if dates are equal and both have names
|
||||
if (a.Nombre && b.Nombre) {
|
||||
const nameA = a.Nombre.toLowerCase();
|
||||
const nameB = b.Nombre.toLowerCase();
|
||||
if (nameA < nameB) return -1;
|
||||
if (nameA > nameB) return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
if (a.Fecha > b.Fecha) {
|
||||
return 1;
|
||||
|
||||
// If no Fecha field exists, sort only by Nombre
|
||||
if (a.Nombre && b.Nombre) {
|
||||
const nameA = a.Nombre.toLowerCase();
|
||||
const nameB = b.Nombre.toLowerCase();
|
||||
if (nameA < nameB) return -1;
|
||||
if (nameA > nameB) return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user