teste
Deploy / Deploy (push) Successful in 1m28s Details

This commit is contained in:
JotaChina 2025-12-08 12:49:25 -03:00
parent 588d755147
commit e4abea98a6
1 changed files with 24 additions and 14 deletions

View File

@ -8,8 +8,7 @@ permalink: /samples/
<main class="main-content"> <main class="main-content">
<div class="publication"> <div class="publication">
teste teste teste
<div class="container"> <div class="container">
<br /> <br />
@ -29,10 +28,12 @@ permalink: /samples/
<button id="btn-home" class="button is-small is-info is-light mr-3" title="Voltar ao início"> <button id="btn-home" class="button is-small is-info is-light mr-3" title="Voltar ao início">
<i class="fa-solid fa-house"></i> <i class="fa-solid fa-house"></i>
</button> </button>
<button id="btn-open-upload" class="button is-small is-success is-light mr-3" title="Enviar novo Sample">
<span class="icon"><i class="fa-solid fa-cloud-arrow-up"></i></span> <button id="btn-open-upload" class="button is-small is-success is-light mr-3" title="Enviar novo Sample" style="display: inline-flex; align-items: center;">
<span class="icon"><i class="fa-solid fa-upload"></i></span>
<span>Enviar Sample</span> <span>Enviar Sample</span>
</button> </button>
<nav class="breadcrumb is-small mb-0" aria-label="breadcrumbs"> <nav class="breadcrumb is-small mb-0" aria-label="breadcrumbs">
<ul id="breadcrumb-list"> <ul id="breadcrumb-list">
<li class="is-active"><a href="#">Raiz</a></li> <li class="is-active"><a href="#">Raiz</a></li>
@ -533,7 +534,7 @@ document.addEventListener('DOMContentLoaded', () => {
} }
}; };
// Enviar Formulário // CORREÇÃO 2: Lógica de envio robusta com debug
confirmUploadBtn.onclick = async (e) => { confirmUploadBtn.onclick = async (e) => {
e.preventDefault(); e.preventDefault();
@ -543,38 +544,47 @@ document.addEventListener('DOMContentLoaded', () => {
} }
const formData = new FormData(document.getElementById('sample-upload-form')); const formData = new FormData(document.getElementById('sample-upload-form'));
const API_URL = 'https://alice.ufsj.edu.br:33002/api/upload/sample';
// UI de Carregamento // UI de Carregamento
confirmUploadBtn.classList.add('is-loading'); confirmUploadBtn.classList.add('is-loading');
uploadProgress.classList.remove('is-hidden'); uploadProgress.classList.remove('is-hidden');
uploadStatus.classList.remove('is-hidden'); uploadStatus.classList.remove('is-hidden');
uploadStatus.textContent = "Enviando e atualizando biblioteca (pode demorar)..."; uploadStatus.textContent = "Iniciando conexão com o servidor...";
uploadStatus.className = "help has-text-info"; uploadStatus.className = "help has-text-info";
console.log("Tentando upload para:", API_URL);
try { try {
// URL do seu servidor Python (ajuste a porta/domínio se necessário) const response = await fetch(API_URL, {
// Se estiver rodando localmente no navegador, use a URL pública
const response = await fetch('https://alice.ufsj.edu.br:33002/api/upload/sample', {
method: 'POST', method: 'POST',
body: formData body: formData
}); });
console.log("Status da resposta:", response.status);
const result = await response.json(); const result = await response.json();
if (response.ok) { if (response.ok) {
uploadStatus.textContent = "Sucesso! Recarregando..."; uploadStatus.textContent = "Sucesso! Recarregando em 2s...";
uploadStatus.className = "help has-text-success"; uploadStatus.className = "help has-text-success";
// Aguarda um pouco e recarrega a página para pegar o novo manifesto // Aguarda um pouco e recarrega a página para pegar o novo manifesto
setTimeout(() => { setTimeout(() => {
window.location.reload(); window.location.reload();
}, 1500); }, 2000);
} else { } else {
throw new Error(result.error || "Erro desconhecido"); throw new Error(result.error || "O servidor recusou o arquivo (Erro " + response.status + ")");
} }
} catch (error) { } catch (error) {
console.error(error); console.error("Erro detalhado do Upload:", error);
uploadStatus.textContent = "Erro: " + error.message;
let msg = "Erro: " + error.message;
if (error.message.includes("Failed to fetch")) {
msg = "Erro de Conexão: O servidor não respondeu. Verifique se você está na VPN/Rede da UFSJ ou se a porta 33002 está bloqueada.";
}
uploadStatus.textContent = msg;
uploadStatus.className = "help has-text-danger"; uploadStatus.className = "help has-text-danger";
confirmUploadBtn.classList.remove('is-loading'); confirmUploadBtn.classList.remove('is-loading');
} }