Skip to content

Commit b280d18

Browse files
committed
Add /api/v1/mutes endpoint
1 parent fcf231f commit b280d18

File tree

2 files changed

+32
-1
lines changed

2 files changed

+32
-1
lines changed

app/Http/Controllers/Api/ApiV1Controller.php

+30
Original file line numberDiff line numberDiff line change
@@ -995,6 +995,36 @@ public function mediaUpdate(Request $request, $id)
995995
return response()->json($res);
996996
}
997997

998+
/**
999+
* GET /api/v1/mutes
1000+
*
1001+
*
1002+
* @return App\Transformer\Api\AccountTransformer
1003+
*/
1004+
public function accountMutes(Request $request)
1005+
{
1006+
abort_if(!$request->user(), 403);
1007+
1008+
$this->validate($request, [
1009+
'limit' => 'nullable|integer|min:1|max:40'
1010+
]);
1011+
1012+
$user = $request->user();
1013+
$limit = $request->input('limit') ?? 40;
1014+
1015+
$mutes = UserFilter::whereUserId($user->profile_id)
1016+
->whereFilterableType('App\Profile')
1017+
->whereFilterType('mute')
1018+
->simplePaginate($limit)
1019+
->pluck('filterable_id');
1020+
1021+
$accounts = Profile::find($mutes);
1022+
1023+
$resource = new Fractal\Resource\Collection($accounts, new AccountTransformer());
1024+
$res = $this->fractal->createData($resource)->toArray();
1025+
return response()->json($res);
1026+
}
1027+
9981028
public function statusById(Request $request, $id)
9991029
{
10001030
$status = Status::whereVisibility('public')->findOrFail($id);

routes/web.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,8 @@
112112
Route::get('lists/{id}/accounts', 'Api\ApiV1Controller@accountListsById')->middleware('auth:api');
113113
Route::post('media', 'Api\ApiV1Controller@mediaUpload')->middleware('auth:api');
114114
Route::put('media/{id}', 'Api\ApiV1Controller@mediaUpdate')->middleware('auth:api');
115-
115+
Route::get('mutes', 'Api\ApiV1Controller@accountMutes')->middleware('auth:api');
116+
116117
// Route::get('likes', 'ApiController@hydrateLikes');
117118
// Route::post('media', 'ApiController@uploadMedia')->middleware('auth:api');
118119
// Route::delete('media', 'ApiController@deleteMedia')->middleware('auth:api');

0 commit comments

Comments
 (0)