]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - application/api/controllers/History.php
Optimize and cleanup imports
[github/shaarli/Shaarli.git] / application / api / controllers / History.php
diff --git a/application/api/controllers/History.php b/application/api/controllers/History.php
deleted file mode 100644 (file)
index 4582e8b..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-
-namespace Shaarli\Api\Controllers;
-
-use Shaarli\Api\Exceptions\ApiBadParametersException;
-use Slim\Http\Request;
-use Slim\Http\Response;
-
-/**
- * Class History
- *
- * REST API Controller: /history
- *
- * @package Shaarli\Api\Controllers
- */
-class History extends ApiController
-{
-    /**
-     * Service providing operation regarding Shaarli datastore and settings.
-     *
-     * @param Request  $request  Slim request.
-     * @param Response $response Slim response.
-     *
-     * @return Response response.
-     *
-     * @throws ApiBadParametersException Invalid parameters.
-     */
-    public function getHistory($request, $response)
-    {
-        $history = $this->history->getHistory();
-
-        // Return history operations from the {offset}th, starting from {since}.
-        $since = \DateTime::createFromFormat(\DateTime::ATOM, $request->getParam('since'));
-        $offset = $request->getParam('offset');
-        if (empty($offset)) {
-            $offset = 0;
-        } elseif (ctype_digit($offset)) {
-            $offset = (int) $offset;
-        } else {
-            throw new ApiBadParametersException('Invalid offset');
-        }
-
-        // limit parameter is either a number of links or 'all' for everything.
-        $limit = $request->getParam('limit');
-        if (empty($limit)) {
-            $limit = count($history);
-        } elseif (ctype_digit($limit)) {
-            $limit = (int) $limit;
-        } else {
-            throw new ApiBadParametersException('Invalid limit');
-        }
-
-        $out = [];
-        $i = 0;
-        foreach ($history as $entry) {
-            if ((! empty($since) && $entry['datetime'] <= $since) || count($out) >= $limit) {
-                break;
-            }
-            if (++$i > $offset) {
-                $out[$i] = $entry;
-                $out[$i]['datetime'] = $out[$i]['datetime']->format(\DateTime::ATOM);
-            }
-        }
-        $out = array_values($out);
-
-        return $response->withJson($out, 200, $this->jsonStyle);
-    }
-}