Files
new-api/controller
t0ng7u bc371778b6 🚀 feat: add enabled/disabled channel filtering & optimize type-based pagination (#1289)
WHAT’S NEW
• Backend
  – Introduced `parseStatusFilter` helper to normalize `status` query across handlers.
  – `GET /api/channel` & `GET /api/channel/search` now accept `status=enabled|disabled` to return only enabled or disabled channels.
  – Tag-mode branch respects both `statusFilter` and `typeFilter`; SQL paths trimmed to one query + one lightweight `GROUP BY` for `type_counts`.

• Frontend (`ChannelsTable.js`)
  – Added “Status Filter” `<Select>` (All / Enabled / Disabled) with localStorage persistence.
  – All data-loading and search requests now always append `type` (when not “all”) and `status` params, so filtering & pagination are handled entirely server-side.
  – Removed client-side post-filtering for type, preventing short pages and reducing CPU work.
  – Tabs’ type counts stay in sync via backend-provided `type_counts`.

IMPROVEMENTS
• Eliminated duplicated status-parsing logic; single source of truth eases future extension.
• Reduced redundant queries, improved consistency of counts in UI.
• Secured key leakage with `Omit("key")` unchanged; no perf regressions observed.

Closes #1289
2025-06-23 23:40:34 +08:00
..
2024-12-29 16:50:26 +08:00
2024-11-18 18:52:14 +08:00
2025-03-15 19:10:12 +08:00
2024-11-18 18:52:14 +08:00
2025-04-28 11:25:04 +08:00
2025-06-18 21:23:06 +08:00
2025-06-19 15:16:26 +08:00
2025-06-19 11:53:42 +08:00
2025-06-19 11:53:42 +08:00
2024-09-25 17:15:59 +08:00
2025-06-16 22:15:12 +08:00