* @apiName Index Files * @apiGroup Files * * @apiParam {string} [full] Optional You can pass `?full` to get more details * * @apiSuccess (200) Array Array of files paths */ $this->get('', function ($req, $res) use($fs) { ///https://weierophinney.github.io/2015-10-20-PSR-7-and-Middleware/#/35 //->getUploadedFiles try { // Detailed view if (isset($req->getQueryParams()['full'])) { $files = []; $fs->index('', function (SplFileInfo $file, $cdir) use(&$files) { $files[] = ['filename' => $file->getFileName(), 'path' => (string) $cdir, 'lastedit' => $file->getMTime(), 'size' => $file->getSize(), 'type' => $file->getType()]; }); return $this->api->json($res, $files); } return $this->api->json($res, $fs->index()); } catch (IOException $e) { return $this->api->json($res, ['error' => 'IOException', 'message' => $e->getMessage()], 500); } catch (Exception $e) { return $this->api->json($res, ['error' => 'Exception', 'message' => 'Server error'], 500); } }); /** * @api {post} /files/upload Upload a file * @apiName Upload File * @apiGroup Files * @apiDescription Upload file(s) via multipart data upload