// 'use server'; // import { NextRequest, NextResponse } from "next/server"; // import { getServerSession } from "next-auth"; // import { authOptions } from "@/app/lib/auth"; // import { getUMAToken } from "@/app/lib/keycloak"; // import { configs } from "@/app/config/configs"; // export async function POST(req: NextRequest) { // const session = await getServerSession(authOptions); // console.log(`a user is attempting to POST their profile. session as follows`) // console.log(session) // if (session) { // if (!session.token?.access_token) { // console.error('session.token.access_token was missing') // return NextResponse.json({ error: `Failed to get access token from Session`}, { status: 500 }) // } // const uma = await getUMAToken(); // const userId = session.user.id; // Assuming session.user.id is the Keycloak user ID // const updatedAttributes = await req.json(); // Assuming the updated attributes are sent in the request body // console.log('updatedAttributes as follows') // console.log(updatedAttributes) // const response = await fetch(`${configs.keycloakLocalUrl}/admin/realms/futureporn/users/${userId}`, { // method: 'PUT', // headers: { // 'Authorization': `Bearer ${uma.access_token}`, // 'Content-Type': 'application/json' // }, // body: JSON.stringify({ // attributes: updatedAttributes // }) // }); // // /admin/realms/futureporn/users/9dd538cd-56a9-4f43-81cd-fa86473214f5 // if (!response.ok) { // console.error(`failed. res.status=${response.status} res.statusText=${response.statusText}`) // return NextResponse.json({ error: 'Failed to update user attributes' }, { status: 500 }); // } else { // return NextResponse.json({ message: 'User attributes updated successfully' }); // } // } // return NextResponse.json({ error: "You must be logged in." }, { status: 401 }); // }