瀏覽代碼

Add /api/v1/follow_requests endpoint

Daniel Supernault 5 年之前
父節點
當前提交
9726913622
共有 2 個文件被更改,包括 23 次插入0 次删除
  1. 22 0
      app/Http/Controllers/Api/ApiV1Controller.php
  2. 1 0
      routes/web.php

+ 22 - 0
app/Http/Controllers/Api/ApiV1Controller.php

@@ -746,6 +746,28 @@ class ApiV1Controller extends Controller
         return response()->json([]);
     }
 
+    /**
+     * GET /api/v1/follow_requests
+     *
+     *  Return array of Accounts that have sent follow requests
+     *
+     * @return \App\Transformer\Api\AccountTransformer
+     */
+    public function accountFollowRequests(Request $request)
+    {
+        abort_if(!$request->user(), 403);
+
+        $user = $request->user();
+
+        $followRequests = FollowRequest::whereFollowingId($user->profile->id)->pluck('follower_id');
+
+        $profiles = Profile::find($followRequests);
+
+        $resource = new Fractal\Resource\Collection($profiles, new AccountTransformer());
+        $res = $this->fractal->createData($resource)->toArray();
+        return response()->json($res);
+    }
+
     public function statusById(Request $request, $id)
     {
         $status = Status::whereVisibility('public')->findOrFail($id);

+ 1 - 0
routes/web.php

@@ -103,6 +103,7 @@ Route::domain(config('pixelfed.domain.app'))->middleware(['validemail', 'twofact
             Route::post('statuses/{id}/favourite', 'Api\ApiV1Controller@statusFavouriteById')->middleware('auth:api');
             Route::post('statuses/{id}/unfavourite', 'Api\ApiV1Controller@statusUnfavouriteById')->middleware('auth:api');
             Route::get('filters', 'Api\ApiV1Controller@accountFilters')->middleware('auth:api');
+            Route::get('follow_requests', 'Api\ApiV1Controller@accountFollowRequests')->middleware('auth:api');
 
             Route::get('likes', 'ApiController@hydrateLikes');
             Route::post('media', 'ApiController@uploadMedia')->middleware('auth:api');