This commit is contained in:
2026-06-02 14:02:09 +05:00
parent f263d84a8d
commit 847c87fd7e
9 changed files with 79 additions and 29 deletions
+8 -6
View File
@@ -547,13 +547,13 @@ const Live = {
initialDim() {
const max = this.maxDim || 8;
const q = parseInt(new URLSearchParams(location.search).get("grid"), 10);
if (q >= 2 && q <= 8) return Math.min(q, max);
if (q >= 1 && q <= 8) return Math.min(q, max);
const saved = parseInt(localStorage.getItem("corevision.grid"), 10);
return saved >= 2 ? Math.min(saved, max) : 2;
return saved >= 1 ? Math.min(saved, max) : 2;
},
setDim(dim, rerender = true) {
this.dim = Math.min(this.maxDim || 8, Math.max(2, dim));
this.dim = Math.min(this.maxDim || 8, Math.max(1, dim));
this.layout = this.dim * this.dim;
localStorage.setItem("corevision.grid", String(this.dim));
this.page = 0; // смена размера сетки → первая страница
@@ -1167,6 +1167,8 @@ const Archive = {
// ════════════════════════════════════════════════════════════════
const CamSettings = {
SLOTS: 64,
// номер слота с ведущим нулём: 1‑9 → 01‑09, 10+ без изменений
slotId(n) { return String(n).padStart(2, "0"); },
editing: false, // идёт инлайн-редактирование — не перерисовываем по WS
bulk: false, // режим массового редактирования всей таблицы
cams: [],
@@ -1266,7 +1268,7 @@ const CamSettings = {
const record = cam ? cam.record : true;
const storageId = cam ? cam.storage_id : "";
return (
`<td class="muted">${slotNo}</td>` +
`<td class="muted">${this.slotId(slotNo)}</td>` +
`<td><input class="cell-in" type="text" data-f="name" value="${name}"${cam ? "" : ' placeholder="новая камера"'}></td>` +
`<td><input class="cell-in" type="text" data-f="ip" value="${ip}"${cam ? "" : ' placeholder="IP"'}></td>` +
`<td><select class="cell-sel" data-f="channel" title="Канал (поток)">${channelOptions(ch)}</select></td>` +
@@ -1462,7 +1464,7 @@ const CamSettings = {
: `<span class="muted">выключена</span>`;
tr.dataset.id = c.id; tr.dataset.slot = i + 1;
tr.innerHTML =
`<td class="muted">${i + 1}</td>` +
`<td class="muted">${this.slotId(i + 1)}</td>` +
`<td>${c.name}</td>` +
`<td class="muted">${c.ip}</td>` +
`<td class="muted">${streams}</td>` +
@@ -1476,7 +1478,7 @@ const CamSettings = {
tr.className = "slot-empty";
tr.dataset.slot = i + 1;
tr.innerHTML =
`<td class="muted">${i + 1}</td>` +
`<td class="muted">${this.slotId(i + 1)}</td>` +
`<td class="muted">—</td><td class="muted">—</td><td class="muted">—</td><td class="muted">—</td><td class="muted">—</td><td class="muted">—</td>` +
`<td class="muted">пусто</td>` +
`<td></td>`;