🏠
$
$
%
📊
%
30
51015202530
🔒
$
$
$
🏠
PITI

'; w.document.write(html);w.document.close();w.print(); } /* ── INIT ─────────────────────────────────────────── */ document.addEventListener('dml:lang', function(e) { var lang = e.detail.lang; // Update term display unit after lang switch var termVal = parseInt($id('inp-term').value)||30; var unitKey = 'mort.field.term.unit'; $id('term-display').textContent = termVal + ' ' + t(unitKey, lang); // Update gauge scale labels var gl=$id('gauge-below'), gr=$id('gauge-above'); if(gl) gl.textContent = lang==='de'?'Unter Markt':lang==='fr'?'Sous le marché':lang==='es'?'Bajo el mercado':lang==='pt'?'Abaixo do mercado':lang==='it'?'Sotto il mercato':'Below market'; if(gr) gr.textContent = lang==='de'?'Über Markt':lang==='fr'?'Au-dessus du marché':lang==='es'?'Sobre el mercado':lang==='pt'?'Acima do mercado':lang==='it'?'Sopra il mercato':'Above market'; // Recalculate if we have data if(lastCalc) renderAmort(); }); window.addEventListener('load', function(){ var lang = window.DML_PAGE_LANG || 'en'; initLang(lang); onTermSlide($id('inp-term').value); calculate(); }); window.addEventListener('resize', function(){clearTimeout(window._rt);window._rt=setTimeout(function(){if(lastCalc)drawChart(chartType);},150);});