themes.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. $app->post('/themes/manage/{theme}', function ($request, $response, $args) {
  3. $Organizr = ($request->getAttribute('Organizr')) ?? new Organizr();
  4. if ($Organizr->qualifyRequest(1, true)) {
  5. $Organizr->installTheme($args['theme']);
  6. }
  7. $response->getBody()->write(jsonE($GLOBALS['api']));
  8. return $response
  9. ->withHeader('Content-Type', 'application/json;charset=UTF-8')
  10. ->withStatus($GLOBALS['responseCode']);
  11. });
  12. $app->delete('/themes/manage/{theme}', function ($request, $response, $args) {
  13. $Organizr = ($request->getAttribute('Organizr')) ?? new Organizr();
  14. if ($Organizr->qualifyRequest(1, true)) {
  15. $Organizr->removeTheme($args['theme']);
  16. }
  17. $response->getBody()->write(jsonE($GLOBALS['api']));
  18. return $response
  19. ->withHeader('Content-Type', 'application/json;charset=UTF-8')
  20. ->withStatus($GLOBALS['responseCode']);
  21. });
  22. $app->get('/themes/marketplace', function ($request, $response, $args) {
  23. $Organizr = ($request->getAttribute('Organizr')) ?? new Organizr();
  24. if ($Organizr->checkRoute($request)) {
  25. if ($Organizr->qualifyRequest(1, true)) {
  26. $GLOBALS['api']['response']['data'] = $Organizr->getThemesMarketplace();
  27. }
  28. }
  29. $response->getBody()->write(jsonE($GLOBALS['api']));
  30. return $response
  31. ->withHeader('Content-Type', 'application/json;charset=UTF-8')
  32. ->withStatus($GLOBALS['responseCode']);
  33. });
  34. $app->get('/themes', function ($request, $response, $args) {
  35. $Organizr = ($request->getAttribute('Organizr')) ?? new Organizr();
  36. if ($Organizr->checkRoute($request)) {
  37. if ($Organizr->qualifyRequest(1, true)) {
  38. $GLOBALS['api']['response']['data'] = $Organizr->getAllThemesInformation();
  39. }
  40. }
  41. $response->getBody()->write(jsonE($GLOBALS['api']));
  42. return $response
  43. ->withHeader('Content-Type', 'application/json;charset=UTF-8')
  44. ->withStatus($GLOBALS['responseCode']);
  45. });