diff --git a/site/app.py b/site/app.py index 2cdc414..d16a64c 100644 --- a/site/app.py +++ b/site/app.py @@ -32,7 +32,7 @@ from routes.api_scenario_defs import bp_defs as api_scenario_defs_bp # Версия — показывается в топбаре UI. Меняется при КАЖДОМ изменении кода. # Нужна для фильтрации истории (пользователь видит только записи своей версии). -VERSION = "1.2.39" +VERSION = "1.2.40" # Flask-приложение с Jinja2-шаблонами из папки templates/ app = Flask(__name__, template_folder="templates", static_folder="static") diff --git a/site/static/js/instances.js b/site/static/js/instances.js index e6d3d38..a68df96 100644 --- a/site/static/js/instances.js +++ b/site/static/js/instances.js @@ -143,9 +143,13 @@ async function toggleInstance(iuid){ } // Кнопки операций с цветовой маркировкой - opsEl.innerHTML=ops.map(o=> - `` - ).join(''); + // o.operation в onclick — JS-escape: \ → \\, ' → \' + // o.operation в тексте кнопки — HTML-escape через _esc() + opsEl.innerHTML=ops.map(o=>{ + const escOp = _esc(o.operation); + const jsOp = o.operation.replace(/\\/g,'\\\\').replace(/'/g,"\\'"); + return ``; + }).join(''); opsEl.classList.add('open'); }catch(e){ opsEl.innerHTML='Ошибка загрузки';