118 lines
4.2 KiB
JavaScript
118 lines
4.2 KiB
JavaScript
// Mapeamento de atividades por dia da semana
|
|
const atividadesPorDia = {
|
|
'Segunda-feira': [
|
|
'Preparação'
|
|
],
|
|
'Terça-feira': [
|
|
'PAT Ensino: Orientação para Trabalho de Conclusão de Curso',
|
|
'PAT Gestão: Comissão Permanente de Avaliação de Projetos de Ensino com Fomento e Fluxo Contínuo',
|
|
'Permanência'
|
|
],
|
|
'Quarta-feira': [
|
|
'Aula: 18:50 às 22:00',
|
|
'PAT Gestão: PAT IF',
|
|
'PAT Gestão: Função de Coordenador do Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas (Coordenação)',
|
|
'PAT Pesquisa: Desenvolvimento de um repositório baseado em redes descentralizadas ipfs e blockchain para o armazenamento autenticidade e compartilhamento de recursos educacionais abertos (rea) assistivos'
|
|
],
|
|
'Quinta-feira': [
|
|
'Aula: 18:50 às 20:20',
|
|
'PAT Gestão: Função de Coordenador do Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas (Coordenação)',
|
|
'PAT Gestão: Presidência do NDE e Colegiado (Coordenação)',
|
|
'PAT Gestão: Nucleo de Desenvolvimento Educacional (NDE) do Médio Integrado'
|
|
],
|
|
'Sexta-feira': [
|
|
'Aula: 18:50 às 22:00',
|
|
'PAT Gestão: Função de Coordenador do Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas (Coordenação)',
|
|
'PAT Pesquisa: Desenvolvimento de um repositório baseado em redes descentralizadas ipfs e blockchain para o armazenamento autenticidade e compartilhamento de recursos educacionais abertos (rea) assistivos'
|
|
]
|
|
};
|
|
|
|
const diasSemana = [
|
|
'Domingo', 'Segunda-feira', 'Terça-feira',
|
|
'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado'
|
|
];
|
|
|
|
function deletarObservacoes() {
|
|
const elements = document.querySelectorAll('.icon.icon-delete');
|
|
elements.forEach(element => {
|
|
const splited_element = element.href.split('/')
|
|
if (splited_element[4] == 'observacao_remover') {
|
|
fetch(`https://suap.ifms.edu.br/ponto/observacao_remover/${splited_element[5]}/`, {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
}
|
|
})
|
|
.then(result => {
|
|
console.log(`GET realizado para ${splited_element[5]}:`, result);
|
|
})
|
|
.catch(error => {
|
|
console.error(`Erro no GET para ${splited_element[5]}:`, error);
|
|
});
|
|
}
|
|
})
|
|
}
|
|
|
|
function extrairNumerosFinais(links) {
|
|
return Array.from(links)
|
|
.map(link => {
|
|
const href = link.getAttribute('href');
|
|
const match = href.match(/(\d+)\/?$/);
|
|
return match ? match[1] : null;
|
|
})
|
|
.filter(Boolean);
|
|
}
|
|
|
|
function obterDataEdiadasemana(numero) {
|
|
const dataStr = numero.replace(/(\d{2})(\d{2})(\d{4})/, '$1-$2-$3');
|
|
const [day, month, year] = dataStr.split('-').map(Number);
|
|
const dateObj = new Date(year, month - 1, day);
|
|
const diaSemana = diasSemana[dateObj.getDay()];
|
|
return { dataStr, diaSemana };
|
|
}
|
|
|
|
function enviarDescricao(numero, descricao) {
|
|
fetch(`https://suap.ifms.edu.br/ponto/observacao_adicionar/${numero}/`, {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
},
|
|
body: `descricao=${encodeURIComponent(descricao)}`
|
|
})
|
|
.then(result => {
|
|
console.log(`POST realizado para ${numero}:`, result);
|
|
})
|
|
.catch(error => {
|
|
console.error(`Erro no POST para ${numero}:`, error);
|
|
});
|
|
}
|
|
|
|
function processarTabelaFrequencias() {
|
|
const tabela = document.getElementById('tabela-frequencias');
|
|
|
|
if (!tabela) {
|
|
console.log('Tabela não encontrada.');
|
|
return;
|
|
}
|
|
|
|
const links = tabela.querySelectorAll('a.btn.success.popup');
|
|
const numerosFinais = extrairNumerosFinais(links);
|
|
|
|
numerosFinais.forEach(numero => {
|
|
const { dataStr, diaSemana } = obterDataEdiadasemana(numero);
|
|
const atividades = atividadesPorDia[diaSemana];
|
|
|
|
if (atividades && atividades.length > 0) {
|
|
const descricao = atividades.join('\n');
|
|
console.log(`Número: ${numero}, Data: ${dataStr}, Dia da semana: ${diaSemana}, Descrição:\n${descricao}`);
|
|
enviarDescricao(numero, descricao);
|
|
} else {
|
|
console.log(`Nenhuma atividade configurada para ${diaSemana}. Nenhum POST enviado para ${numero}.`);
|
|
}
|
|
});
|
|
}
|
|
|
|
// Executa o processo
|
|
//processarTabelaFrequencias();
|
|
//deletarObservacoes()
|