Skip to content
This repository was archived by the owner on May 12, 2026. It is now read-only.

Commit 1790060

Browse files
committed
Styling /consumers
1 parent 61138ca commit 1790060

2 files changed

Lines changed: 272 additions & 228 deletions

File tree

‎src/routes/(protected)/consumers/+page.server.ts‎

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

7-
const logger = createLogger("UserConsumersServer");
8+
const logger = createLogger("ConsumersServer");
89

910
export async function load(event: RequestEvent) {
10-
const token = event.locals.session.data.oauth?.access_token;
11-
if (!token) {
12-
error(401, {
13-
message: "Unauthorized: No access token found in session.",
14-
});
11+
const session = event.locals.session;
12+
13+
if (!session?.data?.user) {
14+
throw error(401, "Unauthorized");
1515
}
1616

17-
let consumersResponse: { consumers: OBPConsumer[] } | undefined = undefined;
17+
// Get the OAuth session data
18+
const sessionOAuth = SessionOAuthHelper.getSessionOAuth(session);
19+
const accessToken = sessionOAuth?.accessToken;
1820

19-
try {
20-
consumersResponse = await obp_requests.get(
21-
"/obp/v6.0.0/management/users/current/consumers",
22-
token,
23-
);
24-
logger.debug(
25-
`Retrieved ${consumersResponse?.consumers?.length || 0} consumers`,
26-
);
27-
} catch (e) {
28-
logger.error("Error fetching consumers:", e);
29-
error(500, {
30-
message:
31-
"Could not fetch consumers at this time. Please try again later.",
32-
});
21+
if (!accessToken) {
22+
logger.warn("No access token available for consumers API calls");
23+
return {
24+
consumers: [],
25+
userEntitlements: [],
26+
requiredRoles: [{ role: "CanGetConsumers" }],
27+
hasApiAccess: false,
28+
error: "No API access token available",
29+
};
3330
}
3431

35-
if (!consumersResponse || !consumersResponse.consumers) {
36-
error(500, {
37-
message:
38-
"Could not fetch consumers at this time. Please try again later.",
39-
});
40-
}
32+
// Get user entitlements from session for role checking
33+
const userEntitlements = (session.data.user as any)?.entitlements?.list || [];
34+
const requiredRoles = [{ role: "CanGetConsumers" }];
4135

42-
const consumers = consumersResponse.consumers;
36+
let consumers: OBPConsumer[] = [];
37+
let errorMessage: string | null = null;
4338

44-
// Log first consumer for debugging
45-
logger.debug(`Total consumers after processing: ${consumers.length}`);
39+
try {
40+
logger.info("=== GET ALL CONSUMERS API CALL ===");
41+
const endpoint = `/obp/v6.0.0/management/consumers`;
42+
logger.info(`Request: ${endpoint}`);
43+
44+
const consumersResponse = await obp_requests.get(endpoint, accessToken);
45+
46+
consumers = consumersResponse?.consumers || [];
47+
logger.info(`Response: ${consumers.length} consumers`);
48+
} catch (e: any) {
49+
logger.error("Error fetching consumers:", e);
50+
errorMessage =
51+
e?.message || "Could not fetch consumers. Please try again later.";
52+
}
4653

4754
// Sort consumers by created date, most recent first
4855
consumers.sort((a: OBPConsumer, b: OBPConsumer) => {
@@ -53,5 +60,9 @@ export async function load(event: RequestEvent) {
5360

5461
return {
5562
consumers,
63+
userEntitlements,
64+
requiredRoles,
65+
hasApiAccess: true,
66+
error: errorMessage,
5667
};
5768
}

0 commit comments

Comments
 (0)