Skip to content

Commit 8318bff

Browse files
committed
webui-props loading ok
1 parent 2e09edd commit 8318bff

3 files changed

Lines changed: 22 additions & 13 deletions

File tree

src/routes/(protected)/system/webui-props/+page.server.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,15 @@ import { obp_requests } from "$lib/obp/requests";
33
import { error } from "@sveltejs/kit";
44
import type { OBPWebUIPropsResponse } from "$lib/obp/types";
55
import type { RequestEvent } from "@sveltejs/kit";
6+
import { SessionOAuthHelper } from "$lib/oauth/sessionHelper";
67

78
const logger = createLogger("WebUIPropsServer");
89

910
export async function load(event: RequestEvent) {
10-
const token = event.locals.session.data.oauth?.access_token;
11+
const session = event.locals.session;
12+
const sessionOAuth = SessionOAuthHelper.getSessionOAuth(session);
13+
const token = sessionOAuth?.accessToken;
14+
1115
if (!token) {
1216
error(401, {
1317
message: "Unauthorized: No access token found in session.",
@@ -20,7 +24,8 @@ export async function load(event: RequestEvent) {
2024
// Validate filter
2125
if (!["active", "database", "config"].includes(filter)) {
2226
error(400, {
23-
message: "Invalid filter parameter. Must be 'active', 'database', or 'config'.",
27+
message:
28+
"Invalid filter parameter. Must be 'active', 'database', or 'config'.",
2429
});
2530
}
2631

src/routes/(protected)/system/webui-props/+page.svelte

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<script lang="ts">
2-
import { goto } from "$app/navigation";
2+
import { goto, invalidateAll } from "$app/navigation";
33
import type { PageData } from "./$types";
44
import type { OBPWebUIProp } from "$lib/obp/types";
55
import {
@@ -206,9 +206,9 @@
206206
}
207207
}
208208
209-
function switchFilter(filter: string) {
209+
async function switchFilter(filter: string) {
210210
currentFilter = filter;
211-
goto(`/system/webui-props?what=${filter}`);
211+
await goto(`/system/webui-props?what=${filter}`, { invalidateAll: true });
212212
}
213213
</script>
214214

@@ -274,7 +274,7 @@
274274
<!-- Props List -->
275275
{#if filteredProps && filteredProps.length > 0}
276276
<div class="space-y-4">
277-
{#each filteredProps as prop (prop.webui_props_id)}
277+
{#each filteredProps as prop, index (prop.webui_props_id || `prop-${index}`)}
278278
<div
279279
class="rounded-lg border border-gray-200 bg-white p-6 shadow-sm dark:border-gray-700 dark:bg-gray-800"
280280
>

src/routes/+layout.svelte

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,17 @@
9696
}
9797
9898
logger.info("🔐 Checking authentication state");
99-
if (data.email) {
100-
isAuthenticated = true;
101-
logger.info(`✅ User authenticated: ${data.email}`);
102-
} else {
103-
isAuthenticated = false;
104-
logger.info("ℹ️ User not authenticated");
105-
}
99+
100+
// Make authentication reactive to data changes
101+
$effect(() => {
102+
if (data.email) {
103+
isAuthenticated = true;
104+
logger.info(`✅ User authenticated: ${data.email}`);
105+
} else {
106+
isAuthenticated = false;
107+
logger.info("ℹ️ User not authenticated");
108+
}
109+
});
106110
107111
// Pre-warm resource docs cache in browser for authenticated users
108112
onMount(() => {

0 commit comments

Comments
 (0)