diff --git a/frontend/src/components/AssignmentsWidget.jsx b/frontend/src/components/AssignmentsWidget.jsx new file mode 100644 index 0000000..3e3ee5e --- /dev/null +++ b/frontend/src/components/AssignmentsWidget.jsx @@ -0,0 +1,43 @@ +import { useContext, useEffect, useState } from "react"; +import { Card, Container } from "react-bootstrap"; +import { Link } from "wouter"; +import UserContext from "../contexts/UserContext"; +import { makeRequest } from "../utils.ts"; + +const AssignmentsWidget = ({ className = "", cid }) => { + const [assignmentData, setAssignmentData] = useState([]); + + useEffect(() => { + makeRequest({ endpoint: `course/${cid}/assignments` }) + .then((resp) => resp.json()) + .then((data) => { + setAssignmentData(data.assignments); + }); + }, [setAssignmentData]); + + return ( + +
+ {assignmentData.map((assignment, i) => { + return ( + + + + {assignment.name} + Due: {assignment.due_date} + + + + ); + })} +
+
+ ); +}; + +export default AssignmentsWidget; diff --git a/frontend/src/pages/CoursePage.jsx b/frontend/src/pages/CoursePage.jsx index 4615e30..092154f 100644 --- a/frontend/src/pages/CoursePage.jsx +++ b/frontend/src/pages/CoursePage.jsx @@ -1,5 +1,6 @@ import { useEffect, useState } from "react"; import { Container } from "react-bootstrap"; +import AssignmentsWidget from "../components/AssignmentsWidget"; import MyNavbar from "../components/MyNavbar"; import { makeRequest } from "../utils.ts"; @@ -21,7 +22,10 @@ const CoursePage = ({ id }) => {

{courseData.name}

{courseData.instructor}


-

Assignments

+
+

Assignments

+ +
);