PageSourceSearch

https://anatoliegordeev-blip-chisinau-pulse.vercel.app/moldova-hitech-park-assessment.js?v=20260814assessment2

js anatoliegordeev-blip-chisinau-pulse.vercel.app collected 2026-10-03 06:16:25 UTC 14,280 bytes, 50 lines download raw bytes

1(()=>{
2  const lang=()=>document.documentElement.lang==='ru'?'ru':'ro';
3  const FACT={geoArea:60.299,officialArea:50,jobs:21600,green:10.15,parkingArea:28600};
4  const CALC={jobsPerGeoHa:FACT.jobs/FACT.geoArea,jobsPerOfficialHa:FACT.jobs/FACT.officialArea,greenGeoShare:FACT.green/FACT.geoArea*100,greenOfficialShare:FACT.green/FACT.officialArea*100,parkingMin:FACT.parkingArea/32,parkingMax:FACT.parkingArea/28,ptPaxHour:FACT.jobs*.5/2,cars50:FACT.jobs*.5/1.2,cars70:FACT.jobs*.7/1.2};
5  const T={
6    ru:{title:'Moldova HiTech Park · предварительная оценка',sub:'Оценка основана на опубликованных параметрах masterplan и GeoJSON. Факты, расчёты и сценарии показаны отдельно.',warn:'Критическое условие: 21 600 рабочих мест создают транспортный спрос городского масштаба. Без высокопроизводительного общественного транспорта экономический эффект проекта может сопровождаться ухудшением мобильности.',k1:'Экономика',k1v:'сильный плюс',k2:'Транспорт',k2v:'критический риск',k3:'Зелёный каркас',k3v:'сильный потенциал',k4:'Компактность',k4v:'нужен GIS-анализ',calcTitle:'Расчётные показатели',calcSub:'FACT — опубликовано/получено из GeoJSON · CALC — арифметика из фактов · SCENARIO — результат заданного допущения.',fact:'FACT',calc:'CALC',scenario:'SCENARIO',fArea:'Контур GeoJSON',fJobs:'Рабочие места',fGreen:'Central Park',fParking:'Площадь parking',cJobs:'Плотность рабочих мест',cGreen:'Доля Central Park',cParking:'Оценка парковочных мест',sPt:'Спрос на ОТ в пик',sCars50:'Авто при 50% car share',sCars70:'Авто при 70% car share',noteArea:'GeoJSON = 60,299 га; опубликованная общая площадь проекта ≈50 га. Это расхождение нужно уточнить.',noteParking:'28600 м² / 28–32 м² на одно место с проездами.',notePt:'Сценарий: 50% работников на ОТ, прибытие в течение 2 часов.',noteCars:'Сценарий: средняя загрузка автомобиля 1,2 чел.',foot:'Это предварительная проектная оценка, а не итоговый балл. Финальные значения C01–C12 должны появляться только после расчёта по городским и GIS-данным.',rows:[
7      ['C01','Компактность','?','Крупный периферийный полюс. Нужно проверить связь с Urban Footprint и административной границей.'],
8      ['C02','15 минут','↑','Смешение рабочих, образовательных, медицинских, спортивных и коммерческих функций создаёт хороший потенциал локальной доступности.'],
9      ['C03','Доступ к зелени','↑','Central Park 10,15 га формирует сильный внутренний зелёный каркас; фактическая доступность проверяется по пешеходной сети.'],
10      ['C04','Общественный транспорт','↓','Главный риск проекта: масштаб рабочих мест требует транспортной системы высокой провозной способности.'],
11      ['C05','Инфраструктура','↑','Университетские, медицинские, research и campus-функции встроены в masterplan.'],
12      ['C06','Доступность жилья','?','Жильё и co-living заявлены, но объём, цена и доля доступного жилья пока не подтверждены.'],
13      ['C07','Качество среды','?','Нужны данные по улицам, первым этажам, общественным пространствам, шуму и безопасности.'],
14      ['C08','Климат и энергия','↑','Крупный парк и заявленные энергоэффективные решения дают положительный потенциал, но н
14ужен расчёт.'],
15      ['C09','Надёжность инфраструктуры','?','Нужна проверка мощности сетей, воды, канализации, энергии и устойчивости к пиковым нагрузкам.'],
16      ['C10','Территориальный баланс','↑','Создаётся новый северо-восточный полюс рабочих мест вне традиционного центра.'],
17      ['C11','Экономическая устойчивость','↑','21 600 рабочих мест делают экономический вклад одним из самых сильных эффектов проекта.'],
18      ['C12','Управление','↑','Есть отдельная институциональная рамка и управляющая структура; итог зависит от прозрачности этапов и мониторинга.']
19    ]},
20    ro:{title:'Moldova HiTech Park · evaluare preliminară',sub:'Evaluarea folosește parametrii publicați ai masterplanului și GeoJSON. Faptele, calculele și scenariile sunt separate explicit.',warn:'Condiție critică: 21 600 de locuri de muncă generează o cerere de transport la scară urbană. Fără transport public de capacitate ridicată, efectul economic pozitiv poate fi însoțit de deteriorarea mobilității.',k1:'Economie',k1v:'plus puternic',k2:'Transport',k2v:'risc critic',k3:'Cadru verde',k3v:'potențial puternic',k4:'Compactitate',k4v:'necesită GIS',calcTitle:'Indicatori calculați',calcSub:'FACT — publicat/derivat din GeoJSON · CALC — aritmetică din fapte · SCENARIO — rezultat bazat pe o ipoteză declarată.',fact:'FACT',calc:'CALC',scenario:'SCENARIO',fArea:'Contur GeoJSON',fJobs:'Locuri de muncă',fGreen:'Central Park',fParking:'Suprafață parking',cJobs:'Densitatea locurilor de muncă',cGreen:'Ponderea Central Park',cParking:'Estimare locuri de parcare',sPt:'Cerere TP la vârf',sCars50:'Auto la 50% car share',sCars70:'Auto la 70% car share',noteArea:'GeoJSON = 60,299 ha; suprafața totală publicată a proiectului ≈50 ha. Diferența trebuie clarificată.',noteParking:'28600 m² / 28–32 m² per loc, inclusiv circulații.',notePt:'Scenariu: 50% dintre angajați cu TP, sosire într-o fereastră de 2 ore.',noteCars:'Scenariu: ocupare medie 1,2 persoane/automobil.',foot:'Aceasta este o evaluare preliminară de proiect, nu un scor final. Valorile finale C01–C12 trebuie să apară numai după recalcularea pe date urbane și GIS.',rows:[
21      ['C01','Compactitate','?','Pol periferic major. Trebuie verificată relația cu Urban Footprint și limita administrativă.'],
22      ['C02','15 minute','↑','Mixul de funcțiuni de muncă, educație, sănătate, sport și comerț oferă potențial bun de accesibilitate locală.'],
23      ['C03','Acces la verde','↑','Central Park de 10,15 ha formează un cadru verde intern puternic; accesibilitatea efectivă se verifică pe rețeaua pietonală.'],
24      ['C04','Transport public','↓','Riscul principal: amploarea locurilor de muncă cere transport public de capacitate ridicată.'],
25      ['C05','Infrastructură','↑','Funcțiunile universitare, medicale, research și campus sunt integrate în masterplan.'],
26      ['C06','Accesibilitatea locuirii','?','Locuirea și co-living sunt menționate, dar volumul, prețul și cota accesibilă nu sunt confirmate.'],
27      ['C07','Calitatea mediului urban','?','Sunt necesare date despre străzi, parteruri active, spații publice, zgomot și siguranță.'],
28      ['C08','Climă și energie','↑','Parcul mare și soluțiile eficiente energetic oferă potențial pozitiv, dar este necesar calculul.'],
29      ['C09','Fiabilitatea infrastructurii','?','Trebuie verificate capacitățile rețelelor, apei, canalizării, energiei și reziliența la vârfuri.'],
30      ['C10','Echilibru teritorial','↑','Se formează un nou pol nord-estic de locuri de muncă în afara centrului tradițional.'],
31      ['C11','Rezistență economică','↑','21 600 de locuri de muncă fac din contribuția economică unul dintre cele mai puternice efecte.'],
32      ['C12','Guvernanță','↑','Există cadru instituțional și structură de administrare; rezultatul depinde de transparență și monitorizare.']
33    ]}
34  };
35  const f=(n,d=0)=>n.toLocaleString(lang()==='ru'?'ru-RU':'ro-RO',{maximumFractionDigits:d,minimumFractionDigits:d});
36  function style(){if(document.getElementById('hitechAssessmentCss'))return;const s=document.createElement('style');s.id='hitechAssessmentCss';s.textContent=`
37    .hta{margin:12px 0;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.hta-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.hta-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.hta-kpi{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fafcfe}.hta-kpi b{display:block;margin-top:3px}.hta-warn{margin-top:12px;padding:11px 12px;border:1px solid #f0d59e;border-radius:11px;background:#fff8ec;color:#8b640e}.hta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.hta-row{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fafcfe}.hta-top{display:flex;justify-content:space-between;gap:8px}.hta-dir{font-weight:900}.hta-dir.up{color:#2e7d3f}.hta-dir.down{color:#a62f2f}.hta-dir.unknown{color:#986300}.hta-calc-title{margin-top:16px}.hta-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.hta-metric{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fff}.hta-kind{display:inline-block;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900;margin-bottom:6px}.hta-kind.fact{background:#eaf2ff;color:#1e5bb8}.hta-kind.calc{background:#f2f4f7;color:#475467}.hta-kind.scenario{background:#fff4dd;color:#986300}.hta-metric strong{display:block;font-size:18px;margin-top:3px}.hta-metric .small{display:block;margin-top:4px}@media(max-width:950px){.hta-metrics{grid-template-columns:1fr 1fr}}@media(max-width:850px){.hta-kpis,.hta-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.hta-kpis,.hta-grid,.hta-metrics{grid-template-columns:1fr}}`;
38    document.head.appendChild(s)}
39  function metric(kind,label,value,note=''){const t=T[lang()];return `<div class="hta-metric"><span class="hta-kind ${kind}">${t[kind]}</span><span class="small">${label}</span><strong>${value}</strong>${note?`<span class="small">${note}</span>`:''}</div>`}
40  function render(){const box=document.getElementById('hitechAssessment');if(!box)return;const t=T[lang()];const row=r=>{const cls=r[2]==='↑'?'up':r[2]==='↓'?'down':'unknown';return `<div class="hta-row"><div class="hta-top"><b>${r[0]} · ${r[1]}</b><span class="hta-dir ${cls}">${r[2]}</span></div><div class="small" style="margin-top:5px">${r[3]}</div></div>`};
41    const metrics=[
42      metric('fact',t.fArea,`${f(FACT.geoArea,3)} ha`,t.noteArea),metric('fact',t.fJobs,f(FACT.jobs)),metric('fact',t.fGreen,`${f(FACT.green,2)} ha`),metric('fact',t.fParking,`${f(FACT.parkingArea)} m²`),
43      metric('calc',t.cJobs,`${f(CALC.jobsPerGeoHa,1)} /ha`,`${f(CALC.jobsPerOfficialHa,0)} /ha ${lang()==='ru'?'при 50 га':'la 50 ha'}`),metric('calc',t.cGreen,`${f(CALC.greenGeoShare,1)}%`,`${f(CALC.greenOfficialShare,1)}% ${lang()==='ru'?'при 50 га':'la 50 ha'}`),metric('calc',t.cParking,`${f(CALC.parkingMin,0)}–${f(CALC.parkingMax,0)}`,t.noteParking),
44      metric('scenario',t.sPt,`≈${f(CALC.ptPaxHour,0)} ${lang()==='ru'?'пасс./ч':'pas./h'}`,t.notePt),metric('scenario',t.sCars50,`≈${f(CALC.cars50,0)}`,t.noteCars),metric('scenario',t.sCars70,`≈${f(CALC.cars70,0)}`,t.noteCars)
45    ].join('');
46    box.innerHTML=`<div class="hta-head"><div><b>${t.title}</b><div class="small" style="margin-top:4px">${t.sub}</div></div><span class="badge">PRELIMINARY · C01–C12</span></div><div class="hta-kpis"><div class="hta-kpi"><span class="small">${t.k1}</span><b>${t.k1v}</b></div><div class="hta-kpi"><span class="small">${t.k2}</span><b>${t.k2v}</b></div><div class="hta-kpi"><span class="small">${t.k3}</span><b>${t.k3v}</b></div><div class="hta-kpi"><span class="small">${t.k4}</span><b>${t.k4v}</b></div></div><div class="hta-warn"><b>${t.warn}</b></div><div class="hta-calc-title"><b>${t.calcTitle}</b><div class="small" style="margin-top:4px">${t.calcSub}</div></div><div class="hta-metrics">${metrics}</div><div class="hta-grid">${t.rows.map(row).join('')}</div><div class="sourcebox" style="margin-top:12px">${t.foot}</div>`}
47  function sync(){const active=document.getElementById('pemHitech')?.classList.contains('active');const box=document.getElementById('hitechAssessment');if(box)box.style.display=active?'block':'none'}
48  function mount(){const host=document.getElementById('projectEvaluationMode');if(!host||document.getElementById('hitechAssessment'))return false;style();const box=document.createElement('div');box.id='hitechAssessment';box.className='hta';host.insertAdjacentElement('afterend',box);render();sync();document.addEventListener('click',e=>{if(e.target?.id==='pemHitech'||/^pem(Generic|Satul|Newton)$/.test(e.target?.id||''))setTimeout(sync,50)});['langRo','langRu'].forEach(id=>document.getElementById(id)?.addEventListener('click',()=>setTimeout(()=>{render();sync()},80)));return true}
49  if(!mount()){const o=new MutationObserver(()=>{if(mount())o.disconnect()});o.observe(document.body,{childList:true,subtree:true})}
50})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.