organizr.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. $app->get('/organizr/{page}[/{var1}[/{var2}]]', function ($request, $response, $args) {
  3. /**
  4. * @OA\Get(
  5. * tags={"page"},
  6. * path="/api/v2/organizr/{page}",
  7. * summary="Get HTML for Organizr Pages",
  8. * @OA\Parameter(
  9. * name="page",
  10. * description="Page to get",
  11. * @OA\Schema(
  12. * type="string"
  13. * ),
  14. * in="path",
  15. * required=true
  16. * ),
  17. * @OA\Response(
  18. * response="200",
  19. * description="Success",
  20. * @OA\JsonContent(ref="#/components/schemas/get-html"),
  21. * ),
  22. * @OA\Response(response="401",description="Unauthorized"),
  23. * security={{ "api_key":{} }}
  24. * )
  25. */
  26. $Organizr = ($request->getAttribute('Organizr')) ?? new Organizr();
  27. $_GET['organizr'] = true;
  28. $_GET['vars'] = $args;
  29. $page = null;
  30. if ($Organizr->checkRoute($request)) {
  31. $page = $Organizr->getPage($args['page']);
  32. }
  33. if ($page) {
  34. $response->getBody()->write($page);
  35. return $response
  36. ->withHeader('Content-Type', 'text/html;charset=UTF-8')
  37. ->withStatus($GLOBALS['responseCode']);
  38. } else {
  39. $response->getBody()->write(jsonE($GLOBALS['api']));
  40. return $response
  41. ->withHeader('Content-Type', 'application/json;charset=UTF-8')
  42. ->withStatus($GLOBALS['responseCode']);
  43. }
  44. });