408 a 808
window.renderProdutos=()=>{
produtos.innerHTML="";
produtosLista
.filter(p=>p.titulo.toLowerCase().includes(buscaInput.value.toLowerCase()))
.forEach(p=>{
produtos.innerHTML+=`
`:""}
`;
});
};
window.lerImagemProduto=i=>{
const r=new FileReader();
r.onload=()=>imagemProduto=r.result;
r.readAsDataURL(i.files[0]);
};
window.salvarProduto=()=>{
const p={
titulo:titulo.value,
descricao:descricao.value,
preco:Number(preco.value)||0,
estoque:Number(estoque.value)||0,
imagem:imagemProduto||""
};
editando?set(ref(db,"produtos/"+editando),p):push(ref(db,"produtos"),p);
cancelarEdicao();
};
window.editarProduto = id => {
get(ref(db,"produtos/"+id)).then(s=>{
const p = s.val();
titulo.value = p.titulo;
descricao.value = p.descricao;
preco.value = p.preco;
estoque.value = p.estoque;
imagemProduto = p.imagem;
editando = id;
// ⬆️ sobe a tela até a área de edição do produto
document.getElementById("secaoProduto")
.scrollIntoView({ behavior: "smooth", block: "start" });
});
};
window.removerProduto=id=>{
if(confirm("Excluir produto?")) remove(ref(db,"produtos/"+id));
};
window.cancelarEdicao=()=>{
titulo.value=descricao.value=preco.value=estoque.value="";
imagemProduto="";
editando=null;
};
window.addCarrinho=id=>{
let p=produtosLista.find(x=>x.id===id);
let i=carrinho.find(x=>x.id===id);
i?i.qtd++:carrinho.push({...p,qtd:1});
renderCarrinho();
};
function renderCarrinho(){
itens.innerHTML="";
let total=0;
carrinho.forEach(p=>{
total+=p.preco*p.qtd;
itens.innerHTML+=`
${p.titulo}
${p.descricao}
R$ ${Number(p.preco).toFixed(2)}
${modoAdmin?`
${p.titulo} x${p.qtd}
`;
});
totalDiv.innerText=`Total: R$ ${(total+frete).toFixed(2)}`;
}
window.calcularFrete=()=>{
const cepLimpo = cep.value.replace(/D/g,"");
frete = cepLimpo.length === 8 ? 18 : 25;
freteInfo.innerText = `Frete: R$ ${frete.toFixed(2)}`;
renderCarrinho();
};
const iconePaginacao = document.getElementById("iconePaginacao");
const carrinhoDiv = document.getElementById("carrinhoDiv");
function atualizarBotaoPaginacao() {
if (carrinhoDiv.classList.contains("aberto")) {
iconePaginacao.style.display = "none"; // some quando o carrinho abre
} else {
iconePaginacao.style.display = "flex"; // reaparece quando o carrinho fecha
}
}
window.toggleCarrinho = () => {
carrinhoDiv.classList.toggle("aberto"); // abre ou fecha o carrinho
atualizarBotaoPaginacao(); // atualiza visibilidade do ícone de paginação
};
window.enviarWhats=()=>{
let msg="🛒 Pedido:%0A";
carrinho.forEach(p=>msg+=`${p.titulo} x${p.qtd}%0A`);
msg+=`Frete: R$ ${frete.toFixed(2)}%0A`;
msg+=`Total: R$ ${totalDiv.innerText.replace("Total: ","")}`;
window.open(`https://wa.me/${WHATS}?text=${msg}`);
};
Carregando...