This commit is contained in:
oliver
2026-06-14 20:24:16 -03:00
parent f4c1a5cf96
commit 677cf54d60
2 changed files with 132 additions and 8 deletions
+31 -1
View File
@@ -21,6 +21,8 @@ let serversData = [];
let currentServerIdx = 0;
let keysData = [];
let crmRecords = [];
let crmSortKey = null;
let crmSortDir = 1;
let currentSession = null;
let currentEmail = null;
@@ -1418,7 +1420,7 @@ function crmRender() {
document.getElementById("crm-search-category")?.value ?? ""
).toLowerCase();
const filtered = crmRecords.filter((r) => {
let filtered = crmRecords.filter((r) => {
const name = (r.Name ?? "").toLowerCase();
const company = (r.Company ?? "").toLowerCase();
const email = (r.email ?? "").toLowerCase();
@@ -1435,6 +1437,23 @@ function crmRender() {
);
});
// Sort
if (crmSortKey) {
filtered.sort((a, b) => {
const va = (a[crmSortKey] ?? "").toString().toLowerCase();
const vb = (b[crmSortKey] ?? "").toString().toLowerCase();
if (va < vb) return -1 * crmSortDir;
if (va > vb) return 1 * crmSortDir;
return 0;
});
}
// Update sort arrows
document.querySelectorAll(".sort-arrow").forEach((el) => {
el.textContent =
el.dataset.sort === crmSortKey ? (crmSortDir === 1 ? " ▲" : " ▼") : "";
});
const total = crmRecords.length;
const countEl = document.getElementById("crm-record-count");
countEl.textContent =
@@ -1490,6 +1509,17 @@ function crmRender() {
crmUpdateDeleteBtn();
}
/* ─── CRM — Sort ───────────────────────────────────────────────── */
function crmToggleSort(key) {
if (crmSortKey === key) {
crmSortDir *= -1;
} else {
crmSortKey = key;
crmSortDir = 1;
}
crmRender();
}
/* ─── CRM — Checkbox helpers ────────────────────────────────────── */
function crmUpdateDeleteBtn() {
const checked = document.querySelectorAll(".crm-select:checked").length;