function renderizarBotaoDeTroca(totalOperacoesSalvas) {
if (totalOperacoesSalvas {
window.location.href = 'chooser.html';
});
container.appendChild(button);
}
< /code>
//config button
function renderizarBotaoDeConfiguracoes(){
const container = document.getElementById('config-button-container');
if (!container) return;
const button = document.createElement('button');
button.className = 'change-op-button';
button.title = 'Configurações';
button.innerHTML = '
button.addEventListener('click', () => {
window.location.href = 'chooser.html';
});
container.appendChild(button);
}
< /code>
async function iniciarPopup() {
renderizarBotaoDeConfiguracoes();
let sessionData = await chrome.storage.session.get(['operacaoAtivaId']);
let operacaoId = sessionData.operacaoAtivaId;
let localData = await chrome.storage.local.get(['operacoesSelecionadas']);
let operacoesSalvas = localData.operacoesSelecionadas;
const totalOperacoesSalvas = operacoesSalvas ? operacoesSalvas.length : 0;
const nomeOperacao = await buscarNomeDaOperacao(operacaoId);
if (nomeOperacao) {
document.getElementById('popup-title').textContent = nomeOperacao;
}
// Chama a nova função para decidir se o botão deve ser criado
renderizarBotaoDeTroca(totalOperacoesSalvas);
if (operacaoId) {
// Se sim, ótimo! Prosseguimos para carregar os dados.
console.log("Operação da sessão encontrada:", operacaoId);
} else {
// 2. Se não, verifica as operações SALVAS permanentemente.
let localData = await chrome.storage.local.get(['operacoesSelecionadas']);
let operacoesSalvas = localData.operacoesSelecionadas;
if (!operacoesSalvas || operacoesSalvas.length === 0) {
// Se não há nada salvo, vai para o onboarding.
window.location.href = 'onboarding.html';
return;
}
if (operacoesSalvas.length === 1) {
// Se só tem uma salva, ela se torna a ativa.
operacaoId = operacoesSalvas[0];
await chrome.storage.session.set({ operacaoAtivaId: operacaoId });
console.log("Definindo operação única como ativa:", operacaoId);
} else {
// Se tem mais de uma, precisa ir para a tela de escolha.
window.location.href = 'chooser.html';
return;
}
}
const dados = await buscarDadosDaOperacao(operacaoId);
if (!dados || dados.length === 0) {
document.body.innerHTML = 'Ed Help
Nenhum dado encontrado no banco de dados.
';
return;
}
const dadosAgrupados = dados.reduce((acc, item) => {
const categoria = item.tipo_contato;
if (!acc[categoria]) {
acc[categoria] = [];
}
acc[categoria].push(item);
return acc;
}, {});
renderizarBotoesDeCategoria(dadosAgrupados);
renderizarModais(dadosAgrupados);
configurarEventListeners();
}
document.addEventListener('DOMContentLoaded', iniciarPopup);
< /code>
If any other information is needed I can provide, but the link for the repository
https://github.com/z3itgeist/quick-refe ... nsion-opus
I tried movind the if (!container) return; statement to different locations of the function, have tried moving the function call on iniciarPopup from the end to the beggining. And also tried the delete and reinstalation on chrome but it does not work yet. I'm new to programming and am a bit lost here.
The only thing that is happening is that the button does not load at all.
Подробнее здесь: https://stackoverflow.com/questions/797 ... -extension
Мобильная версия