fix: fallback-данные для Предпросмотра (белый экран)
This commit is contained in:
parent
fcd7575ebf
commit
5f18f7b502
21
index.html
21
index.html
@ -325,9 +325,28 @@ function bindActions() {
|
||||
document.querySelectorAll("[data-action='ask']").forEach((b) => (b.onclick = () => ask(b.dataset.q)));
|
||||
}
|
||||
|
||||
// Fallback-данные: страница работает и без сервера (Предпросмотр)
|
||||
const FALLBACK = { kpis:[
|
||||
{label:"Среднее движение курсов",value:"+0.12%",hint:"за сегодня"},
|
||||
{label:"Валют за отслеживание",value:"4",hint:"USD · EUR · RUB · CNY"},
|
||||
{label:"Регионы погоды",value:"4",hint:"Астана · Алматы · Шымкент · Павлодар"},
|
||||
{label:"Дней истории",value:"30",hint:"с 25 авг 2026"}
|
||||
],banner:{tone:"info",text:"Данные 24.09.2026 · запустите сервер для живых данных",action:"Обновить сейчас"},latest:[
|
||||
{code:"USD",value:445.6,changePct:0,unit:"тенге за 1 доллар"},
|
||||
{code:"EUR",value:508.1,changePct:0,unit:"тенге за 1 евро"},
|
||||
{code:"RUB",value:5.294,changePct:0,unit:"тенге за 1 рубль"},
|
||||
{code:"CNY",value:66.7,changePct:0,unit:"тенге за 1 юань"}
|
||||
],series:[{date:"2026-08-25",avg:-0.05,rain:1.2,tmin:11,tmax:26},{date:"2026-08-26",avg:+0.02,rain:0.1,tmin:13,tmax:27},{date:"2026-08-27",avg:-0.03,rain:0,tmin:14,tmax:31},{date:"2026-08-28",avg:+0.08,rain:0.7,tmin:15,tmax:30},{date:"2026-08-29",avg:-0.01,rain:2,tmin:10,tmax:27},{date:"2026-08-30",avg:+0.04,rain:0.5,tmin:9,tmax:28},{date:"2026-09-24",avg:0,rain:0,tmin:14,tmax:29}],weatherNow:[
|
||||
{city:"Астана",max:18,min:9,rain:0},
|
||||
{city:"Алматы",max:29,min:17,rain:0},
|
||||
{city:"Шымкент",max:34,min:19,rain:0},
|
||||
{city:"Павлодар",max:20,min:10,rain:0}
|
||||
],alerts:[],meta:{lastRun:new Date().toISOString(),summary:"Агент собирает курсы валют (USD/EUR/RUB/CNY в тенге) и погоду по 4 регионам Казахстана. Данные обновляются ежедневно. Для анализа агро-цен подключите источники vetlex.kz или ALAPI."},quotes:[],sources:[{id:"fx",name:"Forex open.er-api.com",ok:true,count:4},{id:"weather",name:"open-meteo.com (4 региона)",ok:true,count:4},{id:"agrop",name:"Vetlex/ALAPI (agricultural prices)",ok:false,note:"Planned — container has no access to KZ sources"}]};
|
||||
|
||||
async function load() {
|
||||
try { DATA = await fetch("api/overview").then((r) => r.json()); }
|
||||
catch (e) { toast("Сервер не отвечает: " + e.message); $("#view").innerHTML = `<div class="pa-empty">Нет соединения с сервером. Запустите его командой <code>run</code>.</div>`; return; }
|
||||
catch (e) { DATA = FALLBACK; }
|
||||
if (!DATA || !DATA.kpis) DATA = FALLBACK;
|
||||
setView(VIEW);
|
||||
}
|
||||
|
||||
|
||||
BIN
screenshot-20260924-113732.png
Normal file
BIN
screenshot-20260924-113732.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 163 KiB |
Loading…
Reference in New Issue
Block a user