koel/app/Http/Controllers/API/AlbumCoverController.php

31 lines
776 B
PHP
Raw Normal View History

<?php
namespace App\Http\Controllers\API;
use App\Events\LibraryChanged;
2022-07-29 06:47:10 +00:00
use App\Http\Controllers\Controller;
use App\Http\Requests\API\AlbumCoverUpdateRequest;
use App\Models\Album;
use App\Services\MediaMetadataService;
use Illuminate\Http\JsonResponse;
class AlbumCoverController extends Controller
{
2022-07-29 06:47:10 +00:00
public function __construct(private MediaMetadataService $mediaMetadataService)
{
}
public function update(AlbumCoverUpdateRequest $request, Album $album)
{
$this->mediaMetadataService->writeAlbumCover(
$album,
$request->getFileContentAsBinaryString(),
$request->getFileExtension()
);
event(new LibraryChanged());
return new JsonResponse(['coverUrl' => $album->cover]);
}
}