📝 Código do Apps Script (clique para ver)
function doPost(e) {
try {
const ss = SpreadsheetApp.getActiveSpreadsheet();
// Obter ou criar a aba "Jogadores"
let sheet = ss.getSheetByName('Jogadores');
if (!sheet) {
sheet = ss.insertSheet('Jogadores');
}
// Aceitar dados de JSON ou formulário
let data;
if (e.postData && e.postData.contents) {
data = JSON.parse(e.postData.contents);
} else if (e.parameter && e.parameter.data) {
data = JSON.parse(e.parameter.data);
} else {
throw new Error('Dados não recebidos corretamente');
}
// Criar cabeçalhos se não existirem
if (sheet.getLastRow() === 0) {
const headers = [
'Data/Hora Cadastro', 'Nome do Jogador', 'Data de Nascimento', 'RG', 'CPF',
'Endereço', 'Cidade', 'Estado', 'CEP', 'Telefone', 'E-mail', 'Posição',
'Foto 3x4', 'Responsável 1 - Nome', 'Responsável 1 - RG', 'Responsável 1 - CPF',
'Responsável 1 - Telefone', 'Responsável 1 - Parentesco', 'Responsável 2 - Nome',
'Responsável 2 - RG', 'Responsável 2 - CPF', 'Responsável 2 - Telefone',
'Responsável 2 - Parentesco', 'Observações'
];
sheet.appendRow(headers);
}
// Adicionar dados
const rowData = [
data.dataCadastro || new Date().toLocaleString('pt-BR'),
data.jogador?.nome || '',
data.jogador?.dataNascimento || '',
data.jogador?.rg || '',
data.jogador?.cpf || '',
data.jogador?.endereco || '',
data.jogador?.cidade || '',
data.jogador?.estado || '',
data.jogador?.cep || '',
data.jogador?.telefone || '',
data.jogador?.email || '',
data.jogador?.posicao || '',
data.jogador?.foto || '',
data.responsavel1?.nome || '',
data.responsavel1?.rg || '',
data.responsavel1?.cpf || '',
data.responsavel1?.telefone || '',
data.responsavel1?.parentesco || '',
data.responsavel2?.nome || '',
data.responsavel2?.rg || '',
data.responsavel2?.cpf || '',
data.responsavel2?.telefone || '',
data.responsavel2?.parentesco || '',
data.observacoes || ''
];
sheet.appendRow(rowData);
return ContentService.createTextOutput(JSON.stringify({success: true, message: 'Dados salvos com sucesso!'}))
.setMimeType(ContentService.MimeType.JSON);
} catch (error) {
return ContentService.createTextOutput(JSON.stringify({success: false, error: error.toString()}))
.setMimeType(ContentService.MimeType.JSON);
}
}