-
-
-
-
-
-
-
-
- );
+ );
};
export default Navigation;
diff --git a/src/pages/admin/BulkCreateUser.tsx b/src/pages/admin/BulkCreateUser.tsx
new file mode 100644
index 0000000..f5131d6
--- /dev/null
+++ b/src/pages/admin/BulkCreateUser.tsx
@@ -0,0 +1,100 @@
+import axios from "axios";
+import { useState } from "react";
+
+function BulkUsers() {
+ const [file, setFile] = useState(null);
+ const [userData, setUserData] = useState([]);
+ const [practical, setPractical] = useState("0");
+
+ const handlePracticalChange = (e) => {
+ setPractical(e.target.value);
+ }
+
+ const handleFileChange = (event) => {
+ const selectedFile = event.target.files[0];
+ if (selectedFile && selectedFile.type === 'text/csv') {
+ setFile(selectedFile);
+ parseCSV(selectedFile);
+ } else {
+ alert('Please upload a valid CSV file.');
+ }
+ };
+
+ const parseCSV = (file) => {
+ const reader = new FileReader();
+ reader.onload = (event) => {
+ const text = event.target.result;
+ const rows = text.split('\n').map((row) => row.split(','));
+ const formattedData = rows.map((row) => ({
+ name: row[0],
+ email: row[1],
+ // Add other fields as necessary
+ }));
+ setUserData(formattedData);
+ };
+ reader.readAsText(file);
+ };
+
+ const handleSubmit = () => {
+ // 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 => console.log(res));
+ };
+
+ return (
+
+
Bulk User Creation
+
+ {userData.length > 0 && (
+
+
+
+
+ Name |
+ Email |
+ {/* Add other headers as necessary */}
+
+
+
+ {userData.map((user, index) => (
+
+ {user.name} |
+ {user.email} |
+
+ ))}
+
+
+
+ )}
+
+
+
+
+
+
+
+ );
+}
+
+export default BulkUsers;