From 981ec66a9af24512c83b6ee34faa97b9cbdde21b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Fri, 24 Jul 2026 09:10:50 +0400 Subject: [PATCH] Restore working UI from v1.0.12, v1.0.18 --- site/app.py | 2 +- site/templates/index.html | 14 +++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/site/app.py b/site/app.py index 427fa54..ec0e4ed 100644 --- a/site/app.py +++ b/site/app.py @@ -6,7 +6,7 @@ from routes.main import bp as main_bp from routes.api import bp as api_bp from routes.api_test import bp as api_test_bp -VERSION = "1.0.16" +VERSION = "1.0.18" app = Flask(__name__, template_folder="templates", static_folder="static") app.config["NUBES_API_ENDPOINT"] = os.getenv("NUBES_API_ENDPOINT", "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc") diff --git a/site/templates/index.html b/site/templates/index.html index 9c4cc9d..1615c61 100644 --- a/site/templates/index.html +++ b/site/templates/index.html @@ -97,15 +97,13 @@ let selectedSvc=null, selectedOp=null, svcInstances=[]; // Load services — only dummy for now (async function(){ const el=document.getElementById('svc-list'); - el.innerHTML='Загрузка...'; try{ const r=await fetch('/api/services'); - if(!r.ok) throw new Error(r.status+' '+r.statusText); const data=await r.json(); const dummy=data.find(s=>s.svcId===1); - if(dummy){ el.innerHTML=`
1. ${dummy.svc}
`; } - else el.innerHTML='dummy не найден'; - }catch(e){el.innerHTML='Ошибка: '+e.message+'';} + if(dummy) el.innerHTML=`
1. ${dummy.svc}
`; + selectService(1); + }catch(e){el.innerHTML='Ошибка загрузки';} })(); async function selectService(svcId){ @@ -142,13 +140,11 @@ async function selectOperation(opId,opName,svcId){ document.getElementById('params-card').style.display='block'; document.getElementById('btn-test').style.display='inline-flex'; - const displayName='autotest-'+svcId+'-'+Date.now().toString(36); const r=await fetch('/api/params/'+opId); const params=await r.json(); const form=document.getElementById('params-form'); - form.innerHTML='
' - + params.map(p=>{ + form.innerHTML=params.map(p=>{ const req=p.isRequired; const hasDfl=p.defaultValue!==null&&p.defaultValue!==undefined&&p.defaultValue!==''; const labelCls=req?(hasDfl?'req':'req-nodfl'):''; @@ -191,7 +187,7 @@ async function runTest(){ svcOperationId:selectedOp.opId, params, instanceUid:instUid, - const displayName=document.getElementById('param-displayname')?.value||'autotest-'+selectedOp.svcId; + displayName:'autotest-'+selectedOp.svcId })}); const d=await r.json(); const cls=d.status==='OK'?'badge badge-success':'badge';