document.addEventListener('DOMContentLoaded', function() { console.log('Carregando script cotas.js...'); // Configuração do modal de edição const modalEditarCota = document.getElementById('modalEditarCota'); if (modalEditarCota) { modalEditarCota.addEventListener('show.bs.modal', function(event) { console.log('Modal de edição sendo exibido'); const button = event.relatedTarget; if (!button) { console.error('Botão não encontrado!'); return; } const cotaId = button.getAttribute('data-cota-id'); console.log('ID da cota:', cotaId); // Dados da cota const dados = { militanteId: button.getAttribute('data-cota-militante'), militanteNome: button.closest('tr').querySelector('td').textContent.trim(), valorAntigo: button.closest('tr').querySelector('td[data-valor_antigo]').getAttribute('data-valor_antigo'), valorNovo: button.closest('tr').querySelector('td[data-valor_novo]').getAttribute('data-valor_novo'), dataAlteracao: button.getAttribute('data-cota-data-alteracao'), dataVencimento: button.getAttribute('data-cota-data-vencimento'), pago: button.getAttribute('data-cota-pago') === 'true' }; console.log('Dados da cota:', dados); // Preencher campos document.getElementById('editMilitante').value = dados.militanteId; document.getElementById('editMilitanteNome').value = dados.militanteNome; document.getElementById('editValorAntigo').value = dados.valorAntigo; document.getElementById('editValorNovo').value = dados.valorNovo; document.getElementById('editDataAlteracao').value = dados.dataAlteracao; document.getElementById('editDataVencimento').value = dados.dataVencimento; document.getElementById('editPago').checked = dados.pago; // Configurar formulário const form = document.getElementById('formEditarCota'); if (form) { form.action = `/cotas/editar/${cotaId}`; console.log('Action do formulário:', form.action); // Remover listeners antigos para evitar duplicação const newForm = form.cloneNode(true); form.parentNode.replaceChild(newForm, form); // Adicionar listener para o submit do formulário newForm.addEventListener('submit', function(e) { e.preventDefault(); console.log('Formulário submetido'); // Criar FormData com os dados do formulário const formData = new FormData(this); // Adicionar campo pago com o valor correto const isPago = document.getElementById('editPago').checked; formData.set('pago', isPago ? 'true' : 'false'); // Log dos dados sendo enviados console.log('Dados do formulário:'); for (let [key, value] of formData.entries()) { console.log(key + ': ' + value); } // Enviar requisição fetch(this.action, { method: 'POST', body: formData }) .then(response => { console.log('Status da resposta:', response.status); return response.json(); }) .then(data => { console.log('Resposta:', data); if (data.status === 'success') { // Fechar modal const modal = bootstrap.Modal.getInstance(modalEditarCota); modal.hide(); // Recarregar página window.location.reload(); } else { alert('Erro ao atualizar cota: ' + data.message); } }) .catch(error => { console.error('Erro:', error); alert('Erro ao atualizar cota. Por favor, tente novamente.'); }); }); } }); } // Configuração do modal de exclusão const deleteModal = document.getElementById('deleteModal'); if (deleteModal) { deleteModal.addEventListener('show.bs.modal', function(event) { console.log('Modal de exclusão sendo exibido'); const button = event.relatedTarget; if (!button) { console.error('Botão não encontrado!'); return; } const cotaId = button.getAttribute('data-cota-id'); const cotaInfo = button.getAttribute('data-cota-info'); console.log('ID da cota:', cotaId); console.log('Info da cota:', cotaInfo); // Atualizar texto do modal document.getElementById('cotaInfo').textContent = cotaInfo; // Configurar formulário de exclusão const form = document.getElementById('deleteForm'); if (form) { form.action = `/cotas/excluir/${cotaId}`; console.log('Action do formulário:', form.action); } }); } });