remote upload refactoring

This commit is contained in:
Čarodej
2022-04-25 10:56:15 +02:00
parent 954f0e3361
commit b635a17644
14 changed files with 41 additions and 39 deletions

View File

@@ -0,0 +1,42 @@
<?php
namespace Domain\RemoteUpload\Controllers;
use Illuminate\Http\Response;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller;
use Domain\Files\Requests\RemoteUploadRequest;
use Domain\RemoteUpload\Actions\GetContentFromExternalSource;
class RemoteUploadFileController extends Controller
{
public function __construct(
public GetContentFromExternalSource $getContentFromExternalSource,
) {
}
public function __invoke(RemoteUploadRequest $request, ?Share $shared = null): Response|array
{
if (is_demo_account()) {
return response('Files were successfully added to the upload queue', 201);
}
// Get user
$user = $request->filled('parent_id')
? Folder::find($request->input('parent_id'))
->getLatestParent()
->user
: auth()->user();
// Get content from external sources
if (isBroadcasting()) {
($this->getContentFromExternalSource)
->onQueue()
->execute($request->all(), $user);
} else {
($this->getContentFromExternalSource)($request->all(), $user);
}
return response('Files were successfully added to the upload queue', 201);
}
}