From 3bcbe4cd6bf53218c4fa9ecd3a229f0a2d35cda4 Mon Sep 17 00:00:00 2001 From: JBB0807 <104856796+JBB0807@users.noreply.github.com> Date: Wed, 7 May 2025 13:44:53 -0700 Subject: [PATCH] merged with main --- src/pages/AssignmentPage.jsx | 97 ++++++++++++++++++++++-------------- 1 file changed, 60 insertions(+), 37 deletions(-) diff --git a/src/pages/AssignmentPage.jsx b/src/pages/AssignmentPage.jsx index 6658b68..687061c 100644 --- a/src/pages/AssignmentPage.jsx +++ b/src/pages/AssignmentPage.jsx @@ -130,6 +130,7 @@ const AssignmentPage = () => { const handleSubmit = async (e) => { e.preventDefault(); + setLoading(true); if (!user.userId) return alert("Please login to submit an assignment."); @@ -143,13 +144,14 @@ const AssignmentPage = () => { formData.append("description", description); setTimeout(() => { - if (editingIndex !== null) { - const updatedProjects = [...projects]; - updatedProjects[editingIndex] = newProject; - setProjects(updatedProjects); - } else { - setProjects([...projects, newProject]); - } + //replace with api + // if (editingIndex !== null) { + // const updatedProjects = [...projects]; + // updatedProjects[editingIndex] = newProject; + // setProjects(updatedProjects); + // } else { + // setProjects([...projects, newProject]); + // } alert(editingIndex !== null ? "Assignment updated!" : "Assignment submitted!"); resetForm(); @@ -280,15 +282,6 @@ const AssignmentPage = () => { /> -
- setSearchTerm(e.target.value)} - /> -
- {showModal && (
@@ -338,19 +331,22 @@ const AssignmentPage = () => { />
-
+
- setPassword(e.target.value)} required /> -
- -
- - setPassword(e.target.value)} - required - /> +
+ setPassword(e.target.value)} + required + /> + setShowPassword((prev) => !prev)} + > + {showPassword ? "Hide" : "Show"} + +
@@ -367,9 +363,20 @@ const AssignmentPage = () => { setFile(e.target.files[0])} />
+ {loading && ( +
+
+

Uploading...

+
+ )} +
- - + +
@@ -378,13 +385,29 @@ const AssignmentPage = () => { {projects.length > 0 && (
- {projects.map((project, index) => ( -
-
- Student Name: {project.studentname || project.studentName} |{" "} - CampID: {project.campid || project.campID} |{" "} - ProgramID: {project.programid || project.programID} -
+ {projects + .filter((project) => { + if (!searchTerm.trim()) return true; + const regex = new RegExp(searchTerm, "i"); + return ( + regex.test(project.studentname || project.studentName || "") || + regex.test(project.campid || project.campID || "") || + regex.test(project.programid || project.programID || "") || + regex.test(project.title || "") || + regex.test(project.description || "") || + regex.test(project.fileName || "") || + regex.test(project.assignmenturl || "") || + regex.test(project.originalfile || "") || + regex.test(project.editablefile || "") + ); + }) + .map((project, index) => ( +
+
+

Student Name: {project.studentname || project.studentName}

+

CampID: {project.campid || project.campID}

+

ProgramID: {project.programid || project.programID}

+
{project.title &&

{project.title}

} {project.description &&

{project.description}

}