BUILD120 - шорткаты на быстрое изменение счёта

This commit is contained in:
2026-08-26 14:05:03 +03:00
parent fb422d5bf8
commit 6256f54fdf
2 changed files with 4 additions and 3 deletions

2
app.py
View File

@@ -29,7 +29,7 @@ from ui_builder import install_ui_builder
from khl_site.khl_data_center import APP as khl_site_app from khl_site.khl_data_center import APP as khl_site_app
BASE_DIR = Path(__file__).resolve().parent BASE_DIR = Path(__file__).resolve().parent
BUILD_VERSION = "2026.08.26.6" BUILD_VERSION = "2026.08.26.7"
# compatibility: BUILD_VERSION = "2026.08.26.1" # compatibility: BUILD_VERSION = "2026.08.26.1"
# compatibility: BUILD_VERSION = "2026.08.25.1" # compatibility: BUILD_VERSION = "2026.08.25.1"
# compatibility: BUILD_VERSION = "2026.08.24.15" # compatibility: BUILD_VERSION = "2026.08.24.15"

View File

@@ -6855,7 +6855,7 @@ function openTimerQuickEditor(focusActionId = "") {
function hockeyRosterCountMarkup(players) { function hockeyRosterCountMarkup(players) {
const counts = hockeyRosterCounts(players); const counts = hockeyRosterCounts(players);
const tooltip = `Всего: ${counts.total} · Нападающие: ${counts.forwards} · Защитники: ${counts.defenders} · Вратари: ${counts.goalkeepers}${counts.other ? ` · Не определено: ${counts.other}` : ""}`; const tooltip = `Всего: ${counts.total} · Нападающие: ${counts.forwards} · Защитники: ${counts.defenders} · Вратари: ${counts.goalkeepers}${counts.other ? ` · Не определено: ${counts.other}` : ""}`;
return `<em class="hpd-roster-count-breakdown" data-tooltip="${escapeHtml(tooltip)}" aria-label="${escapeHtml(tooltip)}"><b>${counts.total}</b><span>Н${counts.forwards}</span><span>З${counts.defenders}</span><span>В${counts.goalkeepers}</span></em>`; return `<em class="hpd-roster-count-breakdown" data-tooltip="${escapeHtml(tooltip)}" aria-label="${escapeHtml(tooltip)}"><b>${counts.total}</b><span>${counts.forwards}</span><span>${counts.defenders}</span><span>${counts.goalkeepers}</span></em>`;
} }
function hockeyTeamName(component, side) { function hockeyTeamName(component, side) {
@@ -14127,7 +14127,7 @@ function renderHockeyPenaltyDashboard(node, component, runtime) {
["away_minus","AWAY 1 гол"], ["away_minus","AWAY 1 гол"],
["sync","Синхронизировать с SQL/API"], ["sync","Синхронизировать с SQL/API"],
], step.score_command)}</select></label> ], step.score_command)}</select></label>
</div><p class="shortcut-step-note">Первое ручное +/ фиксирует оперативный LIVE-счёт для текущего матча. Последующие обновления API его не перезаписывают. «Синхронизировать» берёт последний счёт из базы/API и снова включает внешний режим.</p>`; </div><p class="shortcut-step-note">Назначьте этому сценарию любую клавишу выше. Первое ручное +/ фиксирует оперативный LIVE-счёт для текущего матча. Последующие обновления API его не перезаписывают. «Синхронизировать» берёт последний счёт из SQL/API и снова включает внешний режим.</p>`;
} else if (step.type === "vmix_command") { } else if (step.type === "vmix_command") {
const functionKnown = !step.function || VMIX_FUNCTIONS.includes(String(step.function)); const functionKnown = !step.function || VMIX_FUNCTIONS.includes(String(step.function));
body.innerHTML = `<div class="shortcut-step-grid vmix-command-grid"> body.innerHTML = `<div class="shortcut-step-grid vmix-command-grid">
@@ -14404,6 +14404,7 @@ function renderHockeyPenaltyDashboard(node, component, runtime) {
<button type="button" class="mini-btn" data-add-step="hockey_vmix_timers_start">🏒 Таймеры</button> <button type="button" class="mini-btn" data-add-step="hockey_vmix_timers_start">🏒 Таймеры</button>
<button type="button" class="mini-btn" data-add-step="timer_command">⏱ Веб-таймер</button> <button type="button" class="mini-btn" data-add-step="timer_command">⏱ Веб-таймер</button>
<button type="button" class="mini-btn" data-add-step="hockey_penalties_command">2 Удаления</button> <button type="button" class="mini-btn" data-add-step="hockey_penalties_command">2 Удаления</button>
<button type="button" class="mini-btn" data-add-step="hockey_score_command">🏒 Счёт</button>
<button type="button" class="mini-btn" data-add-step="vmix_command">vMix</button> <button type="button" class="mini-btn" data-add-step="vmix_command">vMix</button>
<button type="button" class="mini-btn" data-add-step="delay">Пауза</button> <button type="button" class="mini-btn" data-add-step="delay">Пауза</button>
</div>`; </div>`;