feat(apk): creer un coffre local seulement en debogage (AllowCreateLocal)

En release le telephone ne sait que reprendre le coffre du depot : l'ecran
d'accueil n'offre plus que Download vault, et RegisterLocal refuse aussi.
Depot vide (404) ou conteneur illisible : rien n'est cree.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
r-zakarya
2026-09-17 21:14:16 +01:00
parent 22b1120228
commit 1d2ea55bec
2 changed files with 25 additions and 1 deletions
+2 -1
View File
@@ -739,7 +739,8 @@ var vaultOpen = false;
// en dernier - c'est l'ordre des frequences, pas celui du code. La creation // en dernier - c'est l'ordre des frequences, pas celui du code. La creation
// etait en tete parce que son bloc etait ecrit en premier dans la page. // etait en tete parce que son bloc etait ecrit en premier dans la page.
function syncAuthbox() { function syncAuthbox() {
document.getElementById('authbox').hidden = (authMode === 'open'); document.getElementById('authbox').hidden =
(authMode === 'open') || (authMode === 'download');
// L'ACCENT SUIT LE GESTE ATTENDU. Creer un coffre neuf le portait alors qu'un // L'ACCENT SUIT LE GESTE ATTENDU. Creer un coffre neuf le portait alors qu'un
// depot est configure - c'est-a-dire exactement le mauvais geste. Il revient // depot est configure - c'est-a-dire exactement le mauvais geste. Il revient
// a celui qui vient chercher le coffre, et ne reste sur la creation que // a celui qui vient chercher le coffre, et ne reste sur la creation que
+23
View File
@@ -27,6 +27,17 @@ unit mainApk;
demanderait le PUT cote serveur et une fusion cote client. demanderait le PUT cote serveur et une fusion cote client.
} }
// CREER UN COFFRE SUR LE TELEPHONE : ESSAIS SEULEMENT.
//
// Un coffre ne ici n'existe nulle part ailleurs : le poste ne le connait pas,
// et personne ne peut le rendre a qui perd son mot de passe. En release le
// telephone ne sait donc que REPRENDRE le coffre du depot ; depot vide ou
// fichier illisible, il ne se passe rien - surtout pas un coffre neuf qui
// masquerait un reglage a corriger.
{$IFDEF DEBUG}
{$DEFINE AllowCreateLocal}
{$ENDIF}
interface interface
uses uses
@@ -563,7 +574,13 @@ begin
else if HasLocalContainer then else if HasLocalContainer then
WebCall('PM.setAuthMode("login")') WebCall('PM.setAuthMode("login")')
else else
{$IFDEF AllowCreateLocal}
WebCall('PM.setAuthMode("register")'); WebCall('PM.setAuthMode("register")');
{$ELSE}
// 'download' : meme ecran, sans les champs de creation - il ne reste que
// les reglages du depot et le bouton qui va chercher le coffre.
WebCall('PM.setAuthMode("download")');
{$ENDIF}
PushUnlockMode; PushUnlockMode;
LCanOpen := HasVault and not FVaultUnreadable; LCanOpen := HasVault and not FVaultUnreadable;
@@ -1984,6 +2001,12 @@ end;
procedure TForm8.RegisterLocal(const AUser, APwd: string); procedure TForm8.RegisterLocal(const AUser, APwd: string);
begin begin
if FBusy then Exit; if FBusy then Exit;
{$IFNDEF AllowCreateLocal}
// La page ne propose plus la creation, mais la commande existe toujours :
// elle se refuse ici aussi, pour que l'interdit ne tienne pas qu'a l'ecran.
StatusErr('Download the vault from the repository');
Exit;
{$ENDIF}
if AUser = '' then if AUser = '' then
begin begin
StatusErr('Pick a username'); StatusErr('Pick a username');