"use client" import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faBook, faChevronDown, faFileInvoice } from '@fortawesome/free-solid-svg-icons'; import { useState } from 'react'; import subjectsData from '@/data/subjects.json'; interface Subject { id: number; code: string; hours: string; kojPat: number; name: string; semester: number; status: string; signature: string; group: string; professor: string; } interface TableCellProps { children: React.ReactNode; className?: string; } const TableCell = ({ children, className = "" }: TableCellProps) => ( {children} ); const StatusBadge = ({ status }: { status: string }) => { const baseClasses = "px-3 py-1 rounded-md text-xs font-medium"; if (status === "Зад.") { return ( {status} ); } else if (status === "Изб.") { return ( {status} ); } return ( {status} ); }; export default function SubjectsPage() { const [selectedSemester, setSelectedSemester] = useState(subjectsData.currentSemester.id); const [isDropdownOpen, setIsDropdownOpen] = useState(false); const currentSemesterData = subjectsData.semesters.find(s => s.id === selectedSemester) || subjectsData.currentSemester; const currentSubjects: Subject[] = subjectsData.subjectsBySemester[selectedSemester as keyof typeof subjectsData.subjectsBySemester] || []; const { currentSemester } = subjectsData; return (
{/* Header */}

Предмети

Преглед на запишани предмети по семестри

{/* Status and Selection Section */}
{/* Left Column - Status and Dropdown */}
{/* Status Card */}
Статус: Запишан од студент
Број на тикет: {currentSemester.ticketNumber}
{/* Semester Selection */}
Долг од документи: {currentSemester.debt}
{isDropdownOpen && (
{subjectsData.semesters.map((semester) => ( ))}
)}
Сериски број: {currentSemesterData.serviceNumber}
{/* Enrolled Subjects */}

Запишани предмети

{currentSubjects.length}
{/* Right Column - Financial Information */}

Финансиски информации

{/* Left Financial Column */}
Сума: {currentSemester.financialInfo.sum}
Платено: {currentSemester.financialInfo.paid}
Должи: {currentSemester.financialInfo.due}
Материјални трошоци:
{currentSemester.financialInfo.materialCosts}
{/* Right Financial Column */}
Кредити: {currentSemester.financialInfo.credits}
МКСА: {currentSemester.financialInfo.MKSA}
Електронско запишување: {currentSemester.financialInfo.electronicRegistration}
Е-УКИМ: {currentSemester.financialInfo.eUKIM}
Банкарска провизија: {currentSemester.financialInfo.bankProvision}
Тотал: {currentSemester.financialInfo.total}
{/* Subjects Table */}

Листа на предмети

{currentSubjects.map((subject: Subject) => ( {subject.id}{subject.code}{subject.hours}{subject.kojPat}
{subject.name}
{subject.semester} {subject.signature || ( — )} {subject.group || ( — )} {subject.professor || ( — )} ))}
# Код Часови Кој пат Предмет Семестар Статус Потпис Група Професор
); }