side Menu updated

This commit is contained in:
2025-01-07 22:25:30 +03:00
parent c1f517d32d
commit 2dd267a570
42 changed files with 1040 additions and 102 deletions

View File

@@ -87,7 +87,6 @@ async function retrieveUserSelection() {
const buildNo = availableOccupants?.build_no;
let selectedOccupant: any = null;
const occupants = availableOccupants?.occupants;
console.log("occupants", occupants);
if (occupants) {
selectedOccupant = occupants.find(
(occupant: any) =>

View File

@@ -3,9 +3,31 @@ import { fetchDataWithToken } from "../api-fetcher";
import { cookies } from "next/headers";
import { baseUrl, cookieObject, tokenSecret } from "../basics";
import NextCrypto from "next-crypto";
import { PagesInfosAndEndpoints } from "@/apimaps/mappingApi";
const availableEventsURL = `${baseUrl}/access/endpoints/available`;
async function checkPageAvaliablityByEndpoint(availableEvents: any) {
let availablePages: string[] = [];
const availableEventsList: string[] = availableEvents || [];
PagesInfosAndEndpoints.map((page) => {
const pageInfo = page?.pageInfo?.tr || [];
if (pageInfo.length > 0) {
pageInfo.map((pageInfoItem) => {
const endpoint = pageInfoItem?.endpoint || "";
if (
availableEventsList.includes(endpoint) &&
!availablePages.includes(page.name)
) {
availablePages.push(page.name);
return;
}
});
}
});
return availablePages;
}
async function setAvailableEvents() {
const cookieStore = await cookies();
const nextCrypto = new NextCrypto(tokenSecret);
@@ -19,6 +41,10 @@ async function setAvailableEvents() {
if (availableResponse.status === 200) {
const availableEventData = Array.from(availableResponse?.result) || [];
const availableEventDataRes = await checkPageAvaliablityByEndpoint(
availableEventData
);
console.log("availableEventDataRes", availableEventDataRes);
const availableEvents = await nextCrypto.encrypt(
JSON.stringify({ availableEvents: availableEventData })
);

View File

@@ -1,9 +1,10 @@
"use server";
import NextCrypto from "next-crypto";
import { fetchData, fetchDataWithToken } from "../api-fetcher";
import { cookies } from "next/headers";
import { baseUrl, cookieObject, tokenSecret } from "../basics";
import NextCrypto from "next-crypto";
// import { setAvailableEvents } from "../events/available";
import { setAvailableEvents } from "../events/available";
const loginEndpoint = `${baseUrl}/authentication/login`;
const loginSelectEndpoint = `${baseUrl}/authentication/select`;
@@ -92,6 +93,7 @@ async function loginSelectEmployee(payload: LoginSelectEmployee) {
false
);
if (selectResponse.status === 200) {
await setAvailableEvents();
const usersSelection = await nextCrypto.encrypt(
JSON.stringify({
company_uu_id: payload.company_uu_id,
@@ -137,7 +139,7 @@ async function loginSelectOccupant(payload: LoginSelectOccupant) {
value: usersSelection,
...cookieObject,
});
// await setAvailableEvents();
await setAvailableEvents();
}
return selectResponse;
}

View File

@@ -43,6 +43,7 @@ async function retrieveHeadersAndValidationByEndpoint({
"POST",
false
);
if (selectResponse.status === 200) {
const responseParsed = new HeadersAndValidations(selectResponse);
return {