#32 Remove dummy data. Modified makeRequest so it doesn't send body on GET

This commit is contained in:
2023-04-06 23:03:57 -04:00
parent c72b49a92b
commit 0ba212e1bb
2 changed files with 15 additions and 42 deletions

View File

@@ -2,54 +2,24 @@ import { useContext, useEffect, useState } from "react";
import { Card, Container } from "react-bootstrap"; import { Card, Container } from "react-bootstrap";
import { Link } from "wouter"; import { Link } from "wouter";
import UserContext from "../contexts/UserContext"; import UserContext from "../contexts/UserContext";
import { makeRequest } from "../utils.ts";
const CoursesWidget = ({ className = "" }) => { const CoursesWidget = ({ className = "" }) => {
const [courseData, setCourseData] = useState({}); const [courseData, setCourseData] = useState([]);
const { currentUser } = useContext(UserContext); const { currentUser } = useContext(UserContext);
const dummyData = [
{
course_id: 1,
course_title: "Advanced Website Design",
couse_code: "COMP 2707",
instructor: "Saja Al Mamoori",
},
{
course_id: 2,
course_title: "Introduction to Roman Civilization",
couse_code: "GRST 1200",
instructor: "Max Nelson",
},
{
course_id: 3,
course_title: "Software Verification and Testing",
couse_code: "COMP 4110",
instructor: "Serif Saad",
},
{
course_id: 4,
course_title: "Selected Topics in Software Engineering",
couse_code: "COMP 4800",
instructor: "Jessica Chen",
},
{
course_id: 5,
course_title: "Project Management: Techniques and Tools",
couse_code: "COMP 4990",
instructor: "Arunita Jaekel",
},
];
useEffect(() => { useEffect(() => {
fetch(`http://localhost:5000/user/${currentUser.id}/courses`) makeRequest({ url: `http://localhost:5000/user/${currentUser.id}/courses` })
.then((resp) => resp.json()) .then((resp) => resp.json())
.then((data) => { .then((data) => {
setCourseData(data.courses); setCourseData(data.courses);
}); });
}, []); }, [setCourseData, currentUser]);
return ( return (
<Container className={`${className} py-3 grid`}> <Container className={`${className} py-3 grid`}>
<div className="row justify-content-center"> <div className="row justify-content-center">
{dummyData.map((course, i) => { {courseData.map((course, i) => {
return ( return (
<Link <Link
is="a" is="a"
@@ -58,9 +28,9 @@ const CoursesWidget = ({ className = "" }) => {
className="col col-lg-2" className="col col-lg-2"
> >
<Card role="button" className="m-2" style={{ width: "300px" }}> <Card role="button" className="m-2" style={{ width: "300px" }}>
<h2 className="text-center py-5 border">{course.couse_code}</h2> <h2 className="text-center py-5 border">{course.course_code}</h2>
<Card.Body> <Card.Body>
<Card.Title>{course.course_title}</Card.Title> <Card.Title>{course.name}</Card.Title>
<Card.Text>{course.instructor}</Card.Text> <Card.Text>{course.instructor}</Card.Text>
</Card.Body> </Card.Body>
</Card> </Card>

View File

@@ -1,11 +1,14 @@
const makeRequest = ({ url, method, body = {} }): Promise<Response> => { const makeRequest = ({ url, method, body = null }): Promise<Response> => {
return fetch(url, { const req: RequestInit = {
method: method, method: method,
credentials: "include", credentials: "include",
body: JSON.stringify(body),
headers: { "content-type": "application/json" }, headers: { "content-type": "application/json" },
mode: "cors", mode: "cors",
}); };
if (body) {
req["body"] = JSON.stringify(body);
}
return fetch(url, req);
}; };
const sendLoginRequest = async ( const sendLoginRequest = async (