Updated timeline route for both education and work

This commit is contained in:
Rohit Pai 2021-08-27 21:18:19 +01:00
parent 1e742ed654
commit 539e6cc23d
3 changed files with 49 additions and 9 deletions

View File

@ -23,16 +23,36 @@ $app->setBasePath("/api");
$timelineData = new TimelineData(); $timelineData = new TimelineData();
$app->get("/timelineData", function (Request $request, Response $response) $app->get("/timelineData/{timeline}", function (Request $request, Response $response, array $args)
{ {
global $timelineData; global $timelineData;
$json = $result = "";
$result = $timelineData->getTimelineData(); //check if route is available if it is get the data
//otherwise return an error
if($args["timeline"] == "edu")
{
$result = $timelineData->getEduData();
}
else if($args["timeline"] == "work")
{
$result = $timelineData->getWorkData();
}
else
{
$result = array("errorMessage" => "Error, timeline data not found");
}
$json = json_encode($result); $json = json_encode($result);
$response->getBody()->write($json); $response->getBody()->write($json);
//if it is an error give a 404 code since it can't find the data
if(array_key_exists(“errorMessage”, $result))
{
$response = $response->withStatus(404);
}
//use content type json to indicate json data on frontend.
return $response->withHeader("Content-Type", "application/json"); return $response->withHeader("Content-Type", "application/json");
}); });

View File

@ -3,10 +3,10 @@ require_once "./config.php";
class TimelineData class TimelineData
{ {
function getTimelineData() function getEduData()
{ {
$conn = dbConn(); $conn = dbConn();
$stmt = $conn->prepare("SELECT * FROM timeline;"); $stmt = $conn->prepare("SELECT * FROM edu;");
$stmt->execute(); $stmt->execute();
// set the resulting array to associative // set the resulting array to associative
@ -18,8 +18,28 @@ class TimelineData
} }
else else
{ {
return array("errorMessage" => "Error timeline data not found"); return array("errorMessage" => "Error, edu data not found");
}
} }
function getWorkData()
{
$conn = dbConn();
$stmt = $conn->prepare("SELECT * FROM work;");
$stmt->execute();
// set the resulting array to associative
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($result)
{
return $result;
}
else
{
return array("errorMessage" => "Error, work data not found");
} }
} }
}

View File

@ -104,11 +104,11 @@ function StartTextAnimation(i)
function getTimelineData() function getTimelineData()
{ {
fetch("/api/timelineData").then(res => fetch("/api/timelineData/edu").then(res =>
{ {
res.json().then(json => res.json().then(json =>
{ {
console.log(JSON.parse(json)); json
}) })
}); });
} }