fix(licence): le refus de la 2e couche ne s'affiche plus avant connexion
Avant toute session, le 404 generique ne peut venir que de la 2e couche : les routes appelees a ce stade existent toutes, et leurs vraies erreurs portent un autre texte. api() vide son message, toast() ignore un message vide — qui a rapiece la 1re couche ne voit rien. Apres connexion rien ne change : pieces jointes et dossiers renvoient un 404 'Not found' legitime qu'il faut montrer. Prix assume : une route perdue par un build casse echouerait aussi en silence avant connexion. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -842,6 +842,15 @@ async function api(path, opts) {
|
|||||||
const err = new Error(body.error || ('HTTP ' + r.status));
|
const err = new Error(body.error || ('HTTP ' + r.status));
|
||||||
err.status = r.status;
|
err.status = r.status;
|
||||||
err.body = body || {};
|
err.body = body || {};
|
||||||
|
// LE REFUS DE LA 2e COUCHE DE LICENCE NE S'AFFICHE PAS. Avant toute
|
||||||
|
// session, le 404 generique ne peut venir que d'elle (voir PM.Router) :
|
||||||
|
// les routes qu'on appelle a ce stade existent toutes, et leurs vraies
|
||||||
|
// erreurs portent un autre texte. On le vide, et toast() ignore un
|
||||||
|
// message vide — qui aurait rapiece la 1re couche ne voit rien.
|
||||||
|
// APRES connexion on n'y touche pas : pieces jointes et dossiers
|
||||||
|
// renvoient aussi un 404 'Not found' legitime qu'il faut montrer.
|
||||||
|
if (r.status === 404 && err.message === 'Not found' && !state.token)
|
||||||
|
err.message = '';
|
||||||
throw err;
|
throw err;
|
||||||
}
|
}
|
||||||
return body;
|
return body;
|
||||||
@@ -1134,6 +1143,8 @@ function showLockoutCountdown(seconds) {
|
|||||||
// ============================================================
|
// ============================================================
|
||||||
|
|
||||||
function toast(msg, type) {
|
function toast(msg, type) {
|
||||||
|
// Une bulle vide n'informe de rien ; api() vide expres certains messages.
|
||||||
|
if (!msg) return;
|
||||||
type = type || 'success';
|
type = type || 'success';
|
||||||
const container = $('#toastContainer');
|
const container = $('#toastContainer');
|
||||||
const t = document.createElement('div');
|
const t = document.createElement('div');
|
||||||
|
|||||||
Reference in New Issue
Block a user