feat(frontend): purge all static content fallback files and enforce strict backend-only dynamic rendering
- Delete all legacy static content data files (members.ts, publications.ts, lectures.ts, standards.ts, projects.ts) - Remove all fallback imports and static fallbacks across all page components - Enforce strict dynamic runtime fetching where pages render empty datasets when Go backend server is unavailable
This commit is contained in:
@@ -2,31 +2,10 @@ import React from "react";
|
||||
import Link from "next/link";
|
||||
import HeroComposition from "./_components/HeroComposition";
|
||||
import { ProjectPageView } from "./_components/ProjectPageView";
|
||||
import { publications as staticPubs, patents as staticPatents } from "../content/publications";
|
||||
import { standardsBodies as staticStandards } from "../content/standards";
|
||||
import { researchProjects as staticProjects } from "../content/projects";
|
||||
import { getStatsSummary, getResearchAreaNames, getResearchProjects } from "../lib/api";
|
||||
|
||||
export const dynamic = "force-dynamic";
|
||||
|
||||
// CUSTOMIZATION HOOK: 14 Core Research Areas
|
||||
const RESEARCH_AREAS: string[] = [
|
||||
"Quick UDP Internet Connection (QUIC)",
|
||||
"QUIC-based Mobility and Multi-Streaming Support",
|
||||
"Services and Protocols for Internet-of-Things (IoT)",
|
||||
"Constrained Application Protocol (CoAP)",
|
||||
"In-Vehicle Infotainment (IVI)",
|
||||
"Optical Wireless or Visible Light Communications (OWC/VLC)",
|
||||
"Lighting Control Networks (PLASA E1.45) for LED-based VLC",
|
||||
"Mobility Management: Distributed Mobility Control",
|
||||
"Multicast Routing Protocols and Reliable Multicasting",
|
||||
"mobile SCTP (mSCTP): Soft Handover in Transport Layer",
|
||||
"Stream Control Transmission Protocol (SCTP)",
|
||||
"Telecommunication Optimization: Network Planning and Management",
|
||||
"TAC/TAL Configuration for Paging and Location Management",
|
||||
"Tabu Search and Genetic Algorithm",
|
||||
];
|
||||
|
||||
const INTERNATIONAL_SDOS = [
|
||||
"IEC TC100: Multimedia Systems and Equipment",
|
||||
"ISO/IEC JTC1/SC41: Internet-of-Things (IoT) Applications",
|
||||
@@ -37,19 +16,13 @@ const INTERNATIONAL_SDOS = [
|
||||
|
||||
export default async function HomePage() {
|
||||
const stats = (await getStatsSummary()) ?? {
|
||||
intlPubsCount: staticPubs.filter(
|
||||
(p) => p.category === "intl-journal-conf"
|
||||
).length,
|
||||
patentCount: staticPatents.length,
|
||||
stdDocsCount: staticStandards.reduce(
|
||||
(sum, b) =>
|
||||
sum + b.projects.reduce((pSum, p) => pSum + p.documents.length, 0),
|
||||
0
|
||||
),
|
||||
intlPubsCount: 0,
|
||||
patentCount: 0,
|
||||
stdDocsCount: 0,
|
||||
};
|
||||
|
||||
const researchAreas = (await getResearchAreaNames()) ?? RESEARCH_AREAS;
|
||||
const researchProjects = (await getResearchProjects()) ?? staticProjects;
|
||||
const researchAreas = (await getResearchAreaNames()) ?? [];
|
||||
const researchProjects = (await getResearchProjects()) ?? [];
|
||||
|
||||
return (
|
||||
<div className="container-content space-y-16 md:space-y-24 pt-10 md:pt-16 pb-16 md:pb-24">
|
||||
|
||||
Reference in New Issue
Block a user