|
|
|
<?php
|
|
|
|
use function _\filter;
|
|
|
|
|
|
|
|
class PagesAPI
|
|
|
|
{
|
|
|
|
public function __construct()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
public static function getPageContent($request, $args)
|
|
|
|
{
|
|
|
|
$task = $args["fourth"];
|
|
|
|
$content = (new Book("../content/pages"))->getContents();
|
|
|
|
switch ($task) {
|
|
|
|
case "published":
|
|
|
|
//$pageNum = $args["fifth"]; not not needed but gonna keep remnant in case it becomes useful/needed
|
|
|
|
$published = filter($content, function ($item) {
|
|
|
|
return $item["published"] == true && $item["deleted"] == false;
|
|
|
|
});
|
|
|
|
|
|
|
|
$result = ["pages" => $published, "totalPages" => count($published)];
|
|
|
|
//$result = (new Book("../content/pages"))->getPages($pageNum, 4, $task);
|
|
|
|
break;
|
|
|
|
case "single":
|
|
|
|
$uuid = $args["fifth"];
|
|
|
|
$result = (new Book("../content/pages"))->findPageById($uuid);
|
|
|
|
break;
|
|
|
|
case "tags":
|
|
|
|
$result = Settings::getTags();
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
$result = [
|
|
|
|
"message" => "Hm, no task. That's unfortunate",
|
|
|
|
"type" => "TASK_NONE",
|
|
|
|
];
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return $result;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static function handlePageTask($request, $args)
|
|
|
|
{
|
|
|
|
$task = $args["fourth"];
|
|
|
|
switch ($task) {
|
|
|
|
case "delete":
|
|
|
|
case "create":
|
|
|
|
case "write":
|
|
|
|
$result = (new Book("../content/pages"))->editPage($task, $request);
|
|
|
|
break;
|
|
|
|
case "add-entry-image":
|
|
|
|
$result = ImagesAPI::uploadImage($request);
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
$result = [
|
|
|
|
"message" => "Hm, no task. That's unfortunate",
|
|
|
|
"type" => "TASK_NONE",
|
|
|
|
];
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
return $result;
|
|
|
|
}
|
|
|
|
}
|