koel/app/Http/Controllers/API/Interaction/BatchLikeController.php

32 lines
878 B
PHP
Raw Normal View History

2017-08-06 09:43:59 +00:00
<?php
namespace App\Http\Controllers\API\Interaction;
2022-07-29 06:47:10 +00:00
use App\Http\Controllers\Controller;
2017-08-06 09:43:59 +00:00
use App\Http\Requests\API\BatchInteractionRequest;
2022-07-29 06:47:10 +00:00
use App\Models\User;
use App\Services\InteractionService;
use Illuminate\Contracts\Auth\Authenticatable;
2017-08-06 09:43:59 +00:00
class BatchLikeController extends Controller
{
2022-07-29 06:47:10 +00:00
/** @param User $user */
public function __construct(private InteractionService $interactionService, protected ?Authenticatable $user)
{
}
2017-08-06 09:50:52 +00:00
public function store(BatchInteractionRequest $request)
2017-08-06 09:43:59 +00:00
{
2022-06-10 10:47:46 +00:00
$interactions = $this->interactionService->batchLike((array) $request->songs, $this->user);
2018-08-18 12:27:26 +00:00
return response()->json($interactions);
2017-08-06 09:43:59 +00:00
}
public function destroy(BatchInteractionRequest $request)
{
2022-06-10 10:47:46 +00:00
$this->interactionService->batchUnlike((array) $request->songs, $this->user);
2018-08-18 12:27:26 +00:00
return response()->noContent();
2017-08-06 09:43:59 +00:00
}
}