feat: admin sidebar
This commit is contained in:
parent
723285c140
commit
8d43e34be4
@ -23,7 +23,7 @@ function App() {
|
|||||||
<Route path="/instances" element={<Instances />} />
|
<Route path="/instances" element={<Instances />} />
|
||||||
<Route path="/profile" element={<PageTest />} />
|
<Route path="/profile" element={<PageTest />} />
|
||||||
<Route path="/login" element={<LoginPage />} />
|
<Route path="/login" element={<LoginPage />} />
|
||||||
<Route path="/admin" element={<BulkUsers />} />
|
<Route path="/admin/jdmi" element={<BulkUsers />} />
|
||||||
<Route path="/admin/tps" element={<CreateTp />} />
|
<Route path="/admin/tps" element={<CreateTp />} />
|
||||||
<Route path="/settings" element={<CreateTp />} />
|
<Route path="/settings" element={<CreateTp />} />
|
||||||
</Routes>
|
</Routes>
|
||||||
|
@ -77,7 +77,7 @@ const Navigation: React.FC<NavigationProps> = ({
|
|||||||
<div className="drawer-side">
|
<div className="drawer-side">
|
||||||
<div className="drawer-overlay" onClick={toggleDrawer}></div>
|
<div className="drawer-overlay" onClick={toggleDrawer}></div>
|
||||||
<div className="h-full menu bg-base-200 text-base-content w-80">
|
<div className="h-full menu bg-base-200 text-base-content w-80">
|
||||||
{user ? (
|
{user.username.trim() !== "" ? (
|
||||||
<li>
|
<li>
|
||||||
<div className="dropdown dropdown-bottom h-full">
|
<div className="dropdown dropdown-bottom h-full">
|
||||||
<div
|
<div
|
||||||
@ -113,21 +113,48 @@ const Navigation: React.FC<NavigationProps> = ({
|
|||||||
) : (
|
) : (
|
||||||
<li>
|
<li>
|
||||||
<Link to="login" onClick={toggleDrawer}>
|
<Link to="login" onClick={toggleDrawer}>
|
||||||
Log Out
|
Log In
|
||||||
</Link>
|
</Link>
|
||||||
</li>
|
</li>
|
||||||
)}
|
)}
|
||||||
{user && user.roles.includes("root") && (
|
{user && user.roles.includes("root") && (
|
||||||
<li>
|
<li>
|
||||||
<div>
|
<details open={false}>
|
||||||
<ChartPieIcon className="size-6" />
|
<summary>Admin</summary>
|
||||||
<Link to="/admin" onClick={toggleDrawer}>
|
<ul>
|
||||||
Admin
|
<li>
|
||||||
</Link>
|
<div>
|
||||||
</div>
|
<Link to="/admin" onClick={toggleDrawer}>
|
||||||
|
Admin
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div>
|
||||||
|
<Link to="/admin/tps" onClick={toggleDrawer}>
|
||||||
|
Create Tp
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div>
|
||||||
|
<Link to="/admin/tps" onClick={toggleDrawer}>
|
||||||
|
Create User
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div>
|
||||||
|
<Link to="/admin/jdmi" onClick={toggleDrawer}>
|
||||||
|
Bulk user creation
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</details>
|
||||||
</li>
|
</li>
|
||||||
)}
|
)}
|
||||||
{user && (
|
{user && user.username.trim() !== "" && (
|
||||||
<>
|
<>
|
||||||
<li>
|
<li>
|
||||||
<div>
|
<div>
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
|
import { useNavigate } from "react-router-dom";
|
||||||
|
|
||||||
function BulkUsers() {
|
function BulkUsers() {
|
||||||
const [file, setFile] = useState(null);
|
const [file, setFile] = useState(null);
|
||||||
const [userData, setUserData] = useState([]);
|
const [userData, setUserData] = useState([]);
|
||||||
const [practical, setPractical] = useState("0");
|
const [practical, setPractical] = useState("0");
|
||||||
|
const navigate = useNavigate();
|
||||||
|
|
||||||
const handlePracticalChange = (e) => {
|
const handlePracticalChange = (e) => {
|
||||||
setPractical(e.target.value);
|
setPractical(e.target.value);
|
||||||
@ -37,8 +39,7 @@ function BulkUsers() {
|
|||||||
|
|
||||||
const handleSubmit = () => {
|
const handleSubmit = () => {
|
||||||
// Handle submission logic (e.g., sending data to the backend)
|
// Handle submission logic (e.g., sending data to the backend)
|
||||||
console.log('Submitting data:', userData.filter(user => user.name !== ""));
|
axios.post("/api/users/jdmi", userData.filter(user => user.name !== "")).then(res => navigate(`/tps/${res.data.id}`));
|
||||||
axios.post("/api/users/jdmi", userData.filter(user => user.name !== "")).then(res => console.log(res));
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
Loading…
x
Reference in New Issue
Block a user