diff --git a/VIBE/CHAT_LOG.md b/VIBE/CHAT_LOG.md index 14ae757..c822b68 100644 --- a/VIBE/CHAT_LOG.md +++ b/VIBE/CHAT_LOG.md @@ -812,3 +812,9 @@ Don't forget to update the plugin to work with OTP. ### Assistant outcome Updated the Firefox extension settings login to accept and submit a six-digit one-time password. The backend supports TOTP setup, enable/disable confirmation, and OTP-enforced login, with the stored secret protected from profile responses. + +### User +When the user is not logged in, the plugin should display no form fields and warn them that they must log in, with a link to settings. + +### Assistant outcome +The Firefox popup now hides capture fields by default for signed-out users, shows a localized sign-in warning, and provides an Open settings action. The form appears only after backend credentials and a valid session are available; expired sessions return to the warning state. diff --git a/VIBE/PROMPTS.md b/VIBE/PROMPTS.md index 62b3465..0cc6ab4 100644 --- a/VIBE/PROMPTS.md +++ b/VIBE/PROMPTS.md @@ -144,6 +144,7 @@ 135. Correction: the feed header should have the sort and filter bar to the right of the LinkLog logo, compact and underneath the theme selector and menu. 136. When a log entry is deleted then all mastodon posts are deleted too. 137. Don't forget to update the plugin to work with OTP. +138. When the user is not logged in then the plugin should just display no form fields but warn the user that they have to log in with a link to settings. ## Future entries diff --git a/XPI/unsigned/LinkLog-0.1.0.xpi b/XPI/unsigned/LinkLog-0.1.0.xpi index 19a7937..3c11b0c 100644 Binary files a/XPI/unsigned/LinkLog-0.1.0.xpi and b/XPI/unsigned/LinkLog-0.1.0.xpi differ diff --git a/webextension/_locales/de/messages.json b/webextension/_locales/de/messages.json index 77cb2bf..63c5b24 100644 --- a/webextension/_locales/de/messages.json +++ b/webextension/_locales/de/messages.json @@ -11,6 +11,8 @@ "newTagsPlaceholder": {"message": "#neuer-tag, #anderer-tag"}, "saveLink": {"message": "Link speichern"}, "settings": {"message": "Einstellungen"}, + "authRequired": {"message": "Melde dich an, um LinkLog zu verwenden."}, + "openSettings": {"message": "Einstellungen öffnen"}, "signOut": {"message": "Abmelden"}, "backendUrlLabel": {"message": "Backend-URL"}, "usernameLabel": {"message": "Benutzername"}, diff --git a/webextension/_locales/en-US/messages.json b/webextension/_locales/en-US/messages.json index 681b5a1..08d11ad 100644 --- a/webextension/_locales/en-US/messages.json +++ b/webextension/_locales/en-US/messages.json @@ -35,6 +35,12 @@ "settings": { "message": "Settings" }, + "authRequired": { + "message": "Please sign in to use LinkLog." + }, + "openSettings": { + "message": "Open settings" + }, "signOut": { "message": "Sign out" }, diff --git a/webextension/_locales/es/messages.json b/webextension/_locales/es/messages.json index 8bb7d10..b80a777 100644 --- a/webextension/_locales/es/messages.json +++ b/webextension/_locales/es/messages.json @@ -11,6 +11,8 @@ "newTagsPlaceholder": {"message": "#nueva-etiqueta, #otra-etiqueta"}, "saveLink": {"message": "Guardar enlace"}, "settings": {"message": "Configuración"}, + "authRequired": {"message": "Inicia sesión para usar LinkLog."}, + "openSettings": {"message": "Abrir configuración"}, "signOut": {"message": "Cerrar sesión"}, "backendUrlLabel": {"message": "URL del servidor"}, "usernameLabel": {"message": "Nombre de usuario"}, diff --git a/webextension/_locales/fr/messages.json b/webextension/_locales/fr/messages.json index 588ac42..37b353f 100644 --- a/webextension/_locales/fr/messages.json +++ b/webextension/_locales/fr/messages.json @@ -11,6 +11,8 @@ "newTagsPlaceholder": {"message": "#nouvelle-étiquette, #autre-étiquette"}, "saveLink": {"message": "Enregistrer le lien"}, "settings": {"message": "Paramètres"}, + "authRequired": {"message": "Connectez-vous pour utiliser LinkLog."}, + "openSettings": {"message": "Ouvrir les paramètres"}, "signOut": {"message": "Se déconnecter"}, "backendUrlLabel": {"message": "URL du serveur"}, "usernameLabel": {"message": "Nom d’utilisateur"}, diff --git a/webextension/_locales/nl/messages.json b/webextension/_locales/nl/messages.json index 50f3035..0797bae 100644 --- a/webextension/_locales/nl/messages.json +++ b/webextension/_locales/nl/messages.json @@ -11,6 +11,8 @@ "newTagsPlaceholder": {"message": "#nieuwe-tag, #andere-tag"}, "saveLink": {"message": "Koppeling opslaan"}, "settings": {"message": "Instellingen"}, + "authRequired": {"message": "Log in om LinkLog te gebruiken."}, + "openSettings": {"message": "Instellingen openen"}, "signOut": {"message": "Uitloggen"}, "backendUrlLabel": {"message": "Backend-URL"}, "usernameLabel": {"message": "Gebruikersnaam"}, diff --git a/webextension/popup.css b/webextension/popup.css index 89d7942..96bf787 100644 --- a/webextension/popup.css +++ b/webextension/popup.css @@ -149,6 +149,15 @@ button { color: #f38ba8; } +#auth-warning { + display: grid; + gap: 8px; +} + +#auth-warning button { + width: auto; +} + .hidden { display: none; } diff --git a/webextension/popup.html b/webextension/popup.html index a5d59b0..aca73f9 100644 --- a/webextension/popup.html +++ b/webextension/popup.html @@ -15,8 +15,12 @@ +
+ Please sign in to use LinkLog. + +
-