Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
337 changes: 49 additions & 288 deletions app/[locale]/institute/sections/sports/page.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import Link from 'next/link';
import { Suspense } from 'react';
import React, { Suspense } from 'react';

import Heading from '~/components/heading';
import ImageHeader from '~/components/image-header';
Expand Down Expand Up @@ -42,27 +41,46 @@ export default async function Sports({
<ImageHeader
title={text.title}
headings={[
{ label: text.headings.about, href: '#about' },
{ label: text.headings.swimmingPool, href: '#swimming-pool' },
{ label: text.headings.Sports, href: '#sports' },
{ label: text.headings.Department, href: '#dept' },
{ label: text.headings.admin, href: '#facilities' },
{ label: text.headings.facilities, href: '#facilities' },
{ label: text.headings.gallery, href: '#gallery' },
]}
src="institute/sports/header.jpg"
/>
<section className="container" id="about">
<section className="container" id="sports">
<Heading
glyphDirection="rtl"
heading="h2"
href="#sports"
text={text.headings.Sports}
/>
<p>{text.sports.about}</p>
<br />
<p className="bg-white text-gray-800 rounded-lg p-4 shadow">
{text.sports.prize}
</p>
</section>
<section className="container space-y-4" id="dept">
<Heading
glyphDirection="ltr"
heading="h2"
href="#about"
text={text.about.title}
href="#dept"
text={text.headings.Department}
/>

<Table scrollAreaClassName="mb-10">
<TableHeader>
<TableRow>
<TableHead>{text.about.profTableTitle.name}</TableHead>
<TableHead>{text.about.profTableTitle.details}</TableHead>
<TableHead>{text.sports.name}</TableHead>
<TableHead>{text.sports.designation}</TableHead>
<TableHead>{text.sports.phone}</TableHead>
<TableHead>{text.sports.mail}</TableHead>
</TableRow>
</TableHeader>
<TableBody>
<Suspense
<Suspense
fallback={
<TableRow>
<TableCell colSpan={2} rowSpan={2}>
Expand All @@ -83,290 +101,33 @@ export default async function Sports({
</Suspense>
</TableBody>
</Table>
<p className="whitespace-pre-line">{section?.aboutUs}</p>
</section>
<section className="container space-y-4" id="swimming-pool">
<p>{text.sports.department}</p>


<article className="rounded-lg border-[0.5px] border-primary-300 bg-shade-light p-4 shadow">
<p>{text.sports.dept[0]}</p>
<br />
<p>{text.sports.dept[1]}</p>
<br />
<p>{text.sports.dept[2]}</p>
</article>

<Heading
glyphDirection="rtl"
heading="h2"
href="#swimming-pool"
text={text.swimmingPool.title}
href="#facilities"
text={text.headings.facilities}
id="facilities"
/>
<h5>{text.swimmingPool.welcome}</h5>
<h4>{text.swimmingPool.about}</h4>
<p>{text.swimmingPool.aboutDescription}</p>
<h4>{text.swimmingPool.location}</h4>
<h5>{text.swimmingPool.membershipListQuestion}</h5>
<p>{text.swimmingPool.membershipPre}</p>
<ol className="!mt-1 list-inside list-decimal">
{text.swimmingPool.membershipList.map((item, index) => (
<li key={index}>{item}</li>
))}
</ol>
<p className="!mt-1">{text.swimmingPool.membershipPost}</p>

<h5>{text.swimmingPool.membershipHowQuestion}</h5>
<p
className="whitespace-pre-line"
dangerouslySetInnerHTML={{
__html: text.swimmingPool.membershipHow,
}}
<p>{text.sports.facilities}</p>
<Heading
glyphDirection="ltr"
heading="h2"
href="#gallery"
id="gallery"
text={text.headings.gallery}
/>
<p>
{text.swimmingPool.membershipHowList[0]}
<Link
href={`/${locale}`}
className="text-primary-500 hover:text-primary-700"
>
www.nitkkr.ac.in{' '}
</Link>
&gt;
<Link href={`/${locale}/institute/sections`}>
{text.swimmingPool.membershipHowList[1]}
</Link>
&gt;
<Link href={`/${locale}/institute/sections/sports`}>
{text.swimmingPool.membershipHowList[2]}
</Link>
&gt;
<Link href={`/${locale}/institute/sections/sports#swimming-pool`}>
{text.swimmingPool.membershipHowList[3]}
</Link>
</p>
<h5>{text.swimmingPool.membershipApplicationForm}</h5>
<ol className="!mt-1 list-inside list-decimal">
{text.swimmingPool.ApplicationFormList.map((item, index) => (
<li key={index}>
<p className="inline cursor-pointer text-primary-500 hover:text-primary-700">
{item}
</p>
</li>
))}
</ol>
<h5>{text.swimmingPool.subscriptionsTitle}</h5>
<Table scrollAreaClassName="mb-10">
<TableHeader>
<TableRow>
<TableHead>
{text.swimmingPool.subscriptionsTableTitle.category}
</TableHead>
<TableHead>
{text.swimmingPool.subscriptionsTableTitle.duration8}
</TableHead>
<TableHead>
{text.swimmingPool.subscriptionsTableTitle.duration3}
</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.subscriptionsTable.map(
({ category, duration8, duration3 }, index) => (
<TableRow key={index}>
<TableCell>{category}</TableCell>
<TableCell>{duration8}</TableCell>
<TableCell>{duration3}</TableCell>
</TableRow>
)
)}
</TableBody>
</Table>
<h4>{text.swimmingPool.administrativeTitle}</h4>
<h5>{text.swimmingPool.inchargeTitle}</h5>
<p className="whitespace-pre-line">
{text.swimmingPool.inchargedetails}
</p>
<h5>{text.swimmingPool.committeeTitle}</h5>
<p>{text.swimmingPool.committeeDetails}</p>
<h5>{text.swimmingPool.responsibilitiesTitle}</h5>
<ol className="!mt-1 list-inside list-decimal">
{text.swimmingPool.responsibilitiesList.map((item, index) => (
<li key={index}>
<p className="inline">{item}</p>
</li>
))}
</ol>
<h5>{text.swimmingPool.spcTitle}</h5>
<h6>{text.swimmingPool.spcSubTitle}</h6>
<Table>
<TableBody>
{text.swimmingPool.spcList.map((item, index) => (
<TableRow key={index}>
<TableCell>{index}</TableCell>
<TableCell>{item.name}</TableCell>
<TableCell>{item.role}</TableCell>
</TableRow>
))}
</TableBody>
</Table>

<h5>{text.swimmingPool.manpower}</h5>
<h6>{text.swimmingPool.manpowerSubTitle}</h6>
<p>{text.swimmingPool.manpowerListPretext}</p>
<Table>
<TableHeader>
<TableRow>
<TableHead>{text.swimmingPool.manpowerListTitle.sNo}</TableHead>
<TableHead>{text.swimmingPool.manpowerListTitle.name}</TableHead>
<TableHead>
{text.swimmingPool.manpowerListTitle.quantity}
</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.manpowerList.map((item, index) => (
<TableRow key={index}>
<TableCell>{index + 1}</TableCell>
<TableCell>{item.name}</TableCell>
<TableCell>{item.quantity}</TableCell>
</TableRow>
))}
</TableBody>
</Table>

<h5>{text.swimmingPool.maintenance}</h5>
<h6>{text.swimmingPool.maintenanceSubTitle}</h6>
<Table>
<TableHeader>
<TableRow>
<TableHead>
{text.swimmingPool.maintenanceListTitle.sNo}
</TableHead>
<TableHead>
{text.swimmingPool.maintenanceListTitle.name}
</TableHead>
<TableHead>
{text.swimmingPool.maintenanceListTitle.quantity}
</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.maintenanceList.map((item, index) => (
<TableRow key={index}>
<TableCell>{index + 1}</TableCell>
<TableCell>{item.name}</TableCell>
<TableCell>{item.quantity}</TableCell>
</TableRow>
))}
</TableBody>
</Table>

<h5>{text.swimmingPool.chemicals}</h5>
<h6>{text.swimmingPool.chemicalsSubTitle}</h6>
<Table>
<TableHeader>
<TableRow>
<TableHead>{text.swimmingPool.chemicalsListTitle.sNo}</TableHead>
<TableHead>
{text.swimmingPool.chemicalsListTitle.description}
</TableHead>
<TableHead>
{text.swimmingPool.chemicalsListTitle.quantity}
</TableHead>
<TableHead>{text.swimmingPool.chemicalsListTitle.unit}</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.chemicalsList.map((item, index) => (
<TableRow key={index}>
<TableCell>{index + 1}</TableCell>
<TableCell>{item.description}</TableCell>
<TableCell>{item.quantity}</TableCell>
<TableCell>{item.unit}</TableCell>
</TableRow>
))}
</TableBody>
</Table>
<h5>{text.swimmingPool.guidelinesTitle}</h5>
<ol className="!mt-1 list-inside list-decimal">
{text.swimmingPool.guidelines.map((item, index) => (
<li
key={index}
dangerouslySetInnerHTML={{
__html: item,
}}
/>
))}
</ol>
<h5>{text.swimmingPool.conductTitle}</h5>
<ol className="!mt-1 list-inside list-decimal">
{text.swimmingPool.conduct.map((item, index) => (
<li
key={index}
dangerouslySetInnerHTML={{
__html: item,
}}
/>
))}
</ol>
<h5>{text.swimmingPool.safetyTitle}</h5>
<ol className="!mt-1 list-inside list-decimal">
<li>{text.swimmingPool.safety[0]}</li>
<li>
<strong>{text.swimmingPool.safety[1]}</strong>
</li>
</ol>
<h5>{text.swimmingPool.eventsTitle}</h5>
<Table>
<TableHeader>
<TableRow>
<TableHead rowSpan={2}>
{text.swimmingPool.eventsListTitles.sNo}
</TableHead>
<TableHead colSpan={2}>
{text.swimmingPool.eventsListTitles.events}
</TableHead>
</TableRow>
<TableRow>
<TableHead>{text.swimmingPool.eventsListTitles.men}</TableHead>
<TableHead>{text.swimmingPool.eventsListTitles.women}</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.eventsTable.map((item, index) => (
<TableRow key={index}>
<TableCell>{index + 1}</TableCell>
<TableCell>{item.eventMale}</TableCell>
<TableCell>{item.eventFemale}</TableCell>
</TableRow>
))}
</TableBody>
</Table>
<h5>{text.swimmingPool.roadmapTitle}</h5>
<Table>
<TableHeader>
<TableRow>
<TableHead>
{text.swimmingPool.roadmapTableTitles.event}
</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.jan}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.feb}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.mar}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.apr}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.may}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.jun}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.jul}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.aug}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.sep}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.oct}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.nov}</TableHead>
<TableHead>{text.swimmingPool.roadmapTableTitles.dec}</TableHead>
</TableRow>
</TableHeader>
<TableBody>
{text.swimmingPool.roadmapEvents.map((event, index) => (
<TableRow key={index}>
<TableCell>{event}</TableCell>
{Array.from({ length: 3 }).map((_, i) => (
<TableCell
key={i}
colSpan={roadmapTableData[index][i].span}
className={roadmapTableData[index][i].className}
/>
))}
</TableRow>
))}
</TableBody>
</Table>
</section>
</>
);
Expand Down
Loading