--- import Layout from '../../layouts/Layout.astro'; import NavBar from '../../components/NavBar.astro'; import { getUserByAccessToken } from '../../lib/db/users'; import { getHighestWeightedLanguage, getLocales, getName, getObj } from '../../lib/utils/langDriver'; import ResourceBar from '../../components/ResourceBar.astro'; import ItemCard from '../../components/ItemCard.astro'; import { getAllResearch } from '../../lib/db/research'; const researchList = await getAllResearch(); const loggedToken = Astro.cookies.get('sessionToken')?.value ?? null; const username = Astro.cookies.get('username')?.value ?? ""; if(loggedToken === null || username === "") return Astro.redirect('/logout'); const checkUser = await getUserByAccessToken(loggedToken); if(checkUser === null || checkUser.username !== username) return Astro.redirect('/logout'); const planetId = Astro.cookies.get('planetid')?.value ?? ""; if(planetId === "") return Astro.redirect('/logout'); const locale = await getHighestWeightedLanguage(Astro.request.headers.get('accept-language')); const lang = await getLocales(locale); const modalSet: { [key: string]: { resources: Array, research: Array, buildings: Array } } = {}; for(const research of researchList) { modalSet[research.id] = { resources: research.requirements.resources, research: research.requirements.research, buildings: research.requirements.buildings, // energy: building.energy }; } ---

Required resources

None

Required buildings

None

Required research

None
{researchList.map(research => <> x.id === research.id)?.level.toString() ?? "0"} description={getObj(lang, "research", research.id).description ?? ""} image={`/images/research/${research.id}.jpeg`} button_type="general" button_name="nav-research" /> )}