fix(client): Read-only-UI nur bei bestätigter READ-Rolle

Während des Ladens geteilter Logbücher wird Schreibzugriff nicht mehr
fälschlich gesperrt; der Zugriffs-Effect setzt bei fehlendem Record kein OWNER mehr.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-30 14:09:54 +02:00
co-authored by Cursor
parent d98e2e8dc0
commit b9ccb0dfb6
+7 -7
View File
@@ -85,13 +85,17 @@ function App() {
return
}
if (activeLogbookRecord?.isShared !== 1) {
if (!activeLogbookRecord) {
setActiveAccessRole(null)
return
}
if (activeLogbookRecord.isShared !== 1) {
setActiveAccessRole('OWNER')
return
}
const cachedRole = activeLogbookRecord.collaborationRole
// Fail-closed for write UI until role is known: do not assume WRITE
setActiveAccessRole(
cachedRole ? parseCollaborationRole(cachedRole, `logbook ${activeLogbookId}`) : null
)
@@ -418,12 +422,8 @@ function App() {
const pwaInstallBanner = <PwaInstallPrompt variant="banner" />
const sharedLogbook =
activeLogbookRecord === undefined ? null : activeLogbookRecord.isShared === 1
const logbookReadOnly =
activeLogbookId != null &&
(sharedLogbook === null || sharedLogbook) &&
activeAccessRole !== 'WRITE'
activeLogbookRecord?.isShared === 1 && activeAccessRole === 'READ'
if (!activeLogbookId) {
return (