diff --git a/web/site-cart.js b/web/site-cart.js index 38714ab..8a1cbb6 100644 --- a/web/site-cart.js +++ b/web/site-cart.js @@ -77,6 +77,7 @@ function pintaPedido(){ if(pedido.length || itemAtual) $('carr').classList.add('on'); if($('cartN')){ $('cartN').textContent=noCarrinho>99?'99+':noCarrinho; $('cartN').hidden=!noCarrinho; $('cartLink').setAttribute('aria-label','Carrinho, '+noCarrinho+(noCarrinho===1?' item':' itens')); } + pintaAvisoEnvio(); window.dispatchEvent(new Event('dtf-cart-changed')); } diff --git a/web/site-config.js b/web/site-config.js index a6c8ab0..2401117 100644 --- a/web/site-config.js +++ b/web/site-config.js @@ -129,16 +129,16 @@ const duracao=s=>{ const min=Math.ceil(s/60); return s<60 ? 'menos de 1 min' : min<60 ? min+' min' : Math.floor(min/60)+' h'+(min%60? ' '+min%60+' min' : ''); }; -const faixaEnvio=bytes=>'de '+duracao(bytes/ENVIO_RAPIDO)+' a '+duracao(bytes/ENVIO_LENTO); +const faixaEnvio=bytes=>bytes/ENVIO_RAPIDO<60 ? 'até '+duracao(bytes/ENVIO_LENTO) + : 'de '+duracao(bytes/ENVIO_RAPIDO)+' a '+duracao(bytes/ENVIO_LENTO); +// Só enquanto há arquivos no produto aberto: sai quando o item vai para o carrinho. function pintaAvisoEnvio(){ const el=$('avisoEnvio'); if(!el) return; - const total=(ehFolha()?folhas:artes).reduce((t,x)=>t+(x.f?.size||0),0); + const total=modo ? (ehFolha()?folhas:artes).reduce((t,x)=>t+(x.f?.size||0),0) : 0; el.hidden = total/ENVIO_LENTO < ENVIO_AVISA_S; if(el.hidden) return; - el.innerHTML='O envio '+((ehFolha()?folhas:artes).length>1?'destes arquivos':'deste arquivo')+ - ' ('+fmt(total)+') leva '+faixaEnvio(total)+', conforme a velocidade de upload da sua internet. '+ - 'Ele começa quando você coloca o item no carrinho e continua enquanto você preenche os dados. '+ - 'Mantenha a página aberta até terminar.'; + el.innerHTML='Envio: '+faixaEnvio(total)+' ('+fmt(total)+'), conforme sua internet. '+ + 'Mantenha a página aberta.'; } const larguraFilme=()=>MODOS[modo].larg; // cobrança proporcional: arredonda para cima em 10 cm · 2,75 m vira 2,80 m diff --git a/web/site-flow.js b/web/site-flow.js index 6b87f73..e6f8c89 100644 --- a/web/site-flow.js +++ b/web/site-flow.js @@ -29,6 +29,7 @@ function guardaItem(){ $('foco').classList.remove('on'); ['qual','prev'].forEach(id=>$(id).classList.remove('on')); modo=null; artes=[]; folhas=[]; metros=0; nota=0; montagemCm=0; + pintaAvisoEnvio(); pintaPedido(); return true; } diff --git a/web/site-modes.js b/web/site-modes.js index f2b0d24..329c876 100644 --- a/web/site-modes.js +++ b/web/site-modes.js @@ -11,6 +11,7 @@ function escolheProduto(m){ } function abrir(m){ modo=m; artes=[]; folhas=[]; metros=0; nota=0; reencaixado=false; + pintaAvisoEnvio(); montagemCm=0; avisoTipo(''); pintaModo(); @@ -89,6 +90,7 @@ document.querySelectorAll('#tipoEnvio .cam').forEach(b=>b.addEventListener('clic function trocaTipo(destino){ if(!destino || modo===destino) return; folhas=[]; artes=[]; recemChegada=null; metros=0; nota=0; montagemCm=0; + pintaAvisoEnvio(); modo=destino; history.replaceState(history.state,'',PAGINAS[modo]); document.title=tituloPagina(); $('lista').innerHTML=''; $('rA').style.display='none'; recusa([]);