diff --git a/app/Http/Controllers/Api/ApiV1Controller.php b/app/Http/Controllers/Api/ApiV1Controller.php index 757de1ab4..3347b0289 100644 --- a/app/Http/Controllers/Api/ApiV1Controller.php +++ b/app/Http/Controllers/Api/ApiV1Controller.php @@ -78,6 +78,15 @@ class ApiV1Controller extends Controller return response()->json($res); } + public function statusById(Request $request, $id) + { + $status = Status::whereVisibility('public')->findOrFail($id); + $resource = new Fractal\Resource\Item($status, new StatusTransformer()); + $res = $this->fractal->createData($resource)->toArray(); + + return response()->json($res); + } + public function instance(Request $request) { $res = [ @@ -99,4 +108,21 @@ class ApiV1Controller extends Controller ]; return response()->json($res, 200, [], JSON_PRETTY_PRINT); } + + public function filters(Request $request) + { + // Pixelfed does not yet support keyword filters + return response()->json([]); + } + + public function context(Request $request) + { + // todo + $res = [ + 'ancestors' => [], + 'descendants' => [] + ]; + + return response()->json($res); + } } \ No newline at end of file diff --git a/app/Http/Controllers/PublicApiController.php b/app/Http/Controllers/PublicApiController.php index 41cc2b3d9..99a7fd382 100644 --- a/app/Http/Controllers/PublicApiController.php +++ b/app/Http/Controllers/PublicApiController.php @@ -223,7 +223,7 @@ class PublicApiController extends Controller 'page' => 'nullable|integer|max:40', 'min_id' => 'nullable|integer|min:0|max:' . PHP_INT_MAX, 'max_id' => 'nullable|integer|min:0|max:' . PHP_INT_MAX, - 'limit' => 'nullable|integer|max:20' + 'limit' => 'nullable|integer|max:30' ]); if(config('instance.timeline.local.is_public') == false && !Auth::check()) { diff --git a/routes/api.php b/routes/api.php index 78c263701..65380a01a 100644 --- a/routes/api.php +++ b/routes/api.php @@ -9,5 +9,8 @@ Route::group(['prefix' => 'api'], function() { Route::group(['prefix' => 'v1'], function() { Route::post('apps', 'Api\ApiV1Controller@apps'); Route::get('instance', 'Api\ApiV1Controller@instance'); + Route::get('filters', 'Api\ApiV1Controller@filters'); + Route::get('statuses/{id}', 'Api\ApiV1Controller@statusById'); + Route::get('statuses/{id}/context', 'Api\ApiV1Controller@context'); }); });