'use client';
import React, { useState, useEffect } from 'react';
import { useRouter } from 'next/navigation';
import Sidebar from '@/app/admin/components/Sidebar/sidebar';
import CareerList from '@/app/admin/components/career/CareerList';
import CareerStatsDashboard from '@/app/admin/components/career/CareerStats';
import Cookies from 'js-cookie';
import { Box, Container, Paper, Typography, Tabs, Tab } from '@mui/material';
import '@/app/admin/dashboard/dashboard.scss';
interface TabPanelProps {
children?: React.ReactNode;
index: number;
value: number;
}
function TabPanel(props: TabPanelProps) {
const { children, value, index, ...other } = props;
return (
{value === index && (
{children}
)}
);
}
function a11yProps(index: number) {
return {
id: `career-tab-${index}`,
'aria-controls': `career-tabpanel-${index}`,
};
}
const CareersPage = () => {
const router = useRouter();
const [tabValue, setTabValue] = useState(0);
const [adminUser, setAdminUser] = useState(null);
useEffect(() => {
const user = localStorage.getItem('adminUser');
const token = localStorage.getItem('adminToken');
if (!user || !token) {
router.push('/admin/login');
return;
}
const syncCookie = Cookies.get('adminTokenSync');
if (token && !syncCookie) {
Cookies.set('adminTokenSync', token, {
expires: 1/6,
path: '/',
sameSite: 'Strict'
});
}
setAdminUser(JSON.parse(user));
}, [router]);
const handleTabChange = (event: React.SyntheticEvent, newValue: number) => {
setTabValue(newValue);
};
if (!adminUser) {
return null;
}
return (
);
};
export default CareersPage;