Files
wticreatorstudio/Modules/StudioPlus/Http/Controllers/API/UploadThumbnailController.php
T
2024-02-12 22:54:20 -05:00

26 lines
914 B
PHP

<?php
namespace Modules\StudioPlus\Http\Controllers\API;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\Support\Facades\Storage;
use Modules\StudioPlus\Entities\StudioPlusChannel;
use Modules\StudioPlus\Entities\StudioPlusVideo;
class UploadThumbnailController extends Controller
{
public function __invoke(Request $request, StudioPlusChannel $studioPlusChannel, StudioPlusVideo $studioPlusVideo)
{
$fileName = $request->file('thumbnail')->getClientOriginalName();
$folderPath = "public/videos/" . auth()->id() . "/upload-{$studioPlusVideo->id}/thumbnails";
$filePath = Storage::put($folderPath, $request->thumbnail);
$studioPlusVideo->thumbnails()->create([
'filename' => $fileName,
'thumbnail_url' => "/public" . Storage::url($filePath)
]);
return $studioPlusVideo->load(['thumbnails']);
}
}