v1.9.5: Modal wifi_connect.log - message clair si fichier absent
Au lieu d'afficher l'erreur Apache "404 Not Found" qui faisait croire à un bug, le modal indique maintenant que le log n'existe que lorsqu'une tentative de connexion WiFi a déjà eu lieu. Inclut aussi un échappement HTML basique du contenu et limite l'affichage aux 1000 dernières lignes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,18 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"version": "1.9.5",
|
||||
"date": "2026-05-20",
|
||||
"changes": {
|
||||
"features": [],
|
||||
"improvements": [
|
||||
"logs.html (modal WiFi connect logs): message clair quand le fichier n'existe pas encore (au lieu du 404 d'Apache qui faisait croire à un bug). Échappement HTML du contenu et limitation aux 1000 dernières lignes pour la performance"
|
||||
],
|
||||
"fixes": [],
|
||||
"compatibility": []
|
||||
},
|
||||
"notes": "Petit ajustement UX du modal introduit en v1.9.4: si aucune tentative WiFi n'a eu lieu depuis v1.9.3, on indique simplement qu'il faut en déclencher une plutôt que d'afficher une erreur HTTP."
|
||||
},
|
||||
{
|
||||
"version": "1.9.4",
|
||||
"date": "2026-05-20",
|
||||
|
||||
@@ -210,7 +210,32 @@ window.onload = function() {
|
||||
function loadWifiLog() {
|
||||
const container = document.getElementById('card_wifi_content');
|
||||
if (!container) return;
|
||||
displayLogFile('../logs/wifi_connect.log', container, true, 1000);
|
||||
container.innerHTML = '<div class="text-center"><i>Loading log file...</i></div>';
|
||||
fetch('../logs/wifi_connect.log')
|
||||
.then(response => {
|
||||
if (response.status === 404) {
|
||||
container.innerHTML = '<div class="alert alert-info mb-0">'
|
||||
+ 'Aucun log WiFi pour le moment. '
|
||||
+ 'Ce journal est créé lors de la première tentative de connexion WiFi depuis le mode hotspot. '
|
||||
+ 'Reviens ici après avoir cliqué sur "Se connecter" depuis la page WiFi.'
|
||||
+ '</div>';
|
||||
return null;
|
||||
}
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP ${response.status} ${response.statusText}`);
|
||||
}
|
||||
return response.text();
|
||||
})
|
||||
.then(text => {
|
||||
if (text === null) return;
|
||||
const lines = text.split('\n');
|
||||
const tail = lines.slice(-1000).join('\n');
|
||||
container.innerHTML = `<pre style="white-space: pre-wrap; word-wrap: break-word; margin: 0;">${tail.replace(/</g, '<')}</pre>`;
|
||||
container.scrollTop = container.scrollHeight;
|
||||
})
|
||||
.catch(err => {
|
||||
container.innerHTML = `<div class="text-danger">Error loading log file: ${err.message}</div>`;
|
||||
});
|
||||
}
|
||||
|
||||
function displayLogFile(logFilePath, containerElement, scrollToBottom = true, maxLines = 0) {
|
||||
|
||||
Reference in New Issue
Block a user