Spaces:
Running
Running
add
Browse files- static/script.js +23 -28
static/script.js
CHANGED
@@ -211,6 +211,7 @@ function loadResumerPage() {
|
|
211 |
|
212 |
//Quand on clique sur le boutton traduction ---------------
|
213 |
|
|
|
214 |
function loadTraductionPage() {
|
215 |
document.body.style.setProperty('--background-image', "url('traduction.webp')");
|
216 |
let appContainer = document.createElement("div");
|
@@ -222,25 +223,25 @@ function loadResumerPage() {
|
|
222 |
<div class="logo-bottom">AI</div>
|
223 |
</div>
|
224 |
<div class="menu-section">
|
225 |
-
<button class="menu-btn" id="resumerButton">
|
226 |
-
<button class="menu-btn" id="qesdocButton">
|
227 |
-
<button class="menu-btn" id="visualisationButton">
|
228 |
</div>
|
229 |
<div class="menu-section">
|
230 |
<div class="menu-title">IMAGES</div>
|
231 |
-
<button class="menu-btn" id="interpretationButton">
|
232 |
-
<button class="menu-btn" id="qesimgButton">
|
233 |
</div>
|
234 |
</div>
|
235 |
<div class="main-content-area">
|
236 |
<div class="document-container">
|
237 |
-
<h1 class="document-main-title">
|
238 |
-
<h2 class="document-subtitle">TRANSLATE
|
239 |
<div class="upload-container">
|
240 |
<div class="file-drop-zone" id="fileDropZone">
|
241 |
<label for="translateFile" class="file-upload-label">
|
242 |
<img src="up.png" id="uploadIcon" class="upload-icon" alt="Upload">
|
243 |
-
<span class="drop-text" id="dropText">
|
244 |
</label>
|
245 |
<input type="file" id="translateFile" class="file-input" accept=".doc,.docx,.xls,.xlsx,.pdf,.ppt,.pptx" hidden>
|
246 |
</div>
|
@@ -354,14 +355,14 @@ function loadResumerPage() {
|
|
354 |
</div>
|
355 |
<div class="results-container">
|
356 |
<div class="results-placeholder">
|
357 |
-
<p class="placeholder-text" id="translateResult">
|
358 |
<div id="downloadSection" style="display: none; margin-top: 20px;">
|
359 |
-
<h3 style="color: white; margin-bottom: 10px;">
|
360 |
<div style="display: flex; gap: 10px;">
|
361 |
<button id="downloadPdf" class="download-btn">PDF</button>
|
362 |
<button id="downloadWord" class="download-btn">Word</button>
|
363 |
<button id="downloadPpt" class="download-btn">PowerPoint</button>
|
364 |
-
<button id="downloadTxt" class="download-btn">
|
365 |
</div>
|
366 |
</div>
|
367 |
</div>
|
@@ -442,12 +443,12 @@ function loadResumerPage() {
|
|
442 |
const resultElement = document.getElementById("translateResult");
|
443 |
|
444 |
if (!fileInput.files[0]) {
|
445 |
-
resultElement.innerText = "
|
446 |
return;
|
447 |
}
|
448 |
|
449 |
if (!targetLang) {
|
450 |
-
resultElement.innerText = "
|
451 |
return;
|
452 |
}
|
453 |
|
@@ -456,7 +457,7 @@ function loadResumerPage() {
|
|
456 |
formData.append("target_lang", targetLang);
|
457 |
|
458 |
try {
|
459 |
-
resultElement.innerText = "
|
460 |
const response = await fetch("/translate/", {
|
461 |
method: "POST",
|
462 |
body: formData,
|
@@ -470,23 +471,17 @@ function loadResumerPage() {
|
|
470 |
const data = await response.json();
|
471 |
|
472 |
if (data.translated_text) {
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
resultContainer.dataset.translatedText = data.translated_text;
|
481 |
-
|
482 |
-
// Afficher les options de téléchargement
|
483 |
-
document.getElementById("downloadSection").style.display = "block";
|
484 |
-
} else {
|
485 |
-
resultElement.innerText = "❌ Translation not available.";
|
486 |
}
|
487 |
} catch (error) {
|
488 |
console.error("Erreur:", error);
|
489 |
-
resultElement.innerText = "
|
490 |
}
|
491 |
}
|
492 |
|
|
|
211 |
|
212 |
//Quand on clique sur le boutton traduction ---------------
|
213 |
|
214 |
+
|
215 |
function loadTraductionPage() {
|
216 |
document.body.style.setProperty('--background-image', "url('traduction.webp')");
|
217 |
let appContainer = document.createElement("div");
|
|
|
223 |
<div class="logo-bottom">AI</div>
|
224 |
</div>
|
225 |
<div class="menu-section">
|
226 |
+
<button class="menu-btn" id="resumerButton">RESUME</button>
|
227 |
+
<button class="menu-btn" id="qesdocButton">QUESTION</button>
|
228 |
+
<button class="menu-btn" id="visualisationButton">VISUALISATION</button>
|
229 |
</div>
|
230 |
<div class="menu-section">
|
231 |
<div class="menu-title">IMAGES</div>
|
232 |
+
<button class="menu-btn" id="interpretationButton">INTERPRETER</button>
|
233 |
+
<button class="menu-btn" id="qesimgButton">QUESTIONS</button>
|
234 |
</div>
|
235 |
</div>
|
236 |
<div class="main-content-area">
|
237 |
<div class="document-container">
|
238 |
+
<h1 class="document-main-title">Opérations sur documents</h1>
|
239 |
+
<h2 class="document-subtitle">TRANSLATE</h2>
|
240 |
<div class="upload-container">
|
241 |
<div class="file-drop-zone" id="fileDropZone">
|
242 |
<label for="translateFile" class="file-upload-label">
|
243 |
<img src="up.png" id="uploadIcon" class="upload-icon" alt="Upload">
|
244 |
+
<span class="drop-text" id="dropText">Déposez votre fichier ici ou cliquez pour parcourir</span>
|
245 |
</label>
|
246 |
<input type="file" id="translateFile" class="file-input" accept=".doc,.docx,.xls,.xlsx,.pdf,.ppt,.pptx" hidden>
|
247 |
</div>
|
|
|
355 |
</div>
|
356 |
<div class="results-container">
|
357 |
<div class="results-placeholder">
|
358 |
+
<p class="placeholder-text" id="translateResult">Le résultat apparaîtra ici...</p>
|
359 |
<div id="downloadSection" style="display: none; margin-top: 20px;">
|
360 |
+
<h3 style="color: white; margin-bottom: 10px;">Télécharger la traduction</h3>
|
361 |
<div style="display: flex; gap: 10px;">
|
362 |
<button id="downloadPdf" class="download-btn">PDF</button>
|
363 |
<button id="downloadWord" class="download-btn">Word</button>
|
364 |
<button id="downloadPpt" class="download-btn">PowerPoint</button>
|
365 |
+
<button id="downloadTxt" class="download-btn">Texte</button>
|
366 |
</div>
|
367 |
</div>
|
368 |
</div>
|
|
|
443 |
const resultElement = document.getElementById("translateResult");
|
444 |
|
445 |
if (!fileInput.files[0]) {
|
446 |
+
resultElement.innerText = "Veuillez sélectionner un fichier";
|
447 |
return;
|
448 |
}
|
449 |
|
450 |
if (!targetLang) {
|
451 |
+
resultElement.innerText = "Veuillez sélectionner une langue";
|
452 |
return;
|
453 |
}
|
454 |
|
|
|
457 |
formData.append("target_lang", targetLang);
|
458 |
|
459 |
try {
|
460 |
+
resultElement.innerText = "Traduction en cours...";
|
461 |
const response = await fetch("/translate/", {
|
462 |
method: "POST",
|
463 |
body: formData,
|
|
|
471 |
const data = await response.json();
|
472 |
|
473 |
if (data.translated_text) {
|
474 |
+
resultElement.innerText = "📝 Traduction : " + data.translated_text;
|
475 |
+
// Stocker le texte traduit pour le téléchargement
|
476 |
+
resultElement.dataset.translatedText = data.translated_text;
|
477 |
+
// Afficher les options de téléchargement
|
478 |
+
document.getElementById("downloadSection").style.display = "block";
|
479 |
+
} else {
|
480 |
+
resultElement.innerText = "❌ Traduction non disponible.";
|
|
|
|
|
|
|
|
|
|
|
|
|
481 |
}
|
482 |
} catch (error) {
|
483 |
console.error("Erreur:", error);
|
484 |
+
resultElement.innerText = "Échec de la traduction: " + error.message;
|
485 |
}
|
486 |
}
|
487 |
|