remote upload api update

This commit is contained in:
Čarodej
2022-05-03 07:55:48 +02:00
parent 0f42704980
commit aca289b5a6
3 changed files with 32 additions and 11 deletions

View File

@@ -1,7 +1,7 @@
<?php <?php
namespace Domain\RemoteUpload\Controllers; namespace Domain\RemoteUpload\Controllers;
use Illuminate\Http\Response; use Illuminate\Http\JsonResponse;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
@@ -15,10 +15,15 @@ class RemoteUploadFileController extends Controller
) { ) {
} }
public function __invoke(RemoteUploadRequest $request, ?Share $shared = null): Response|array public function __invoke(RemoteUploadRequest $request, ?Share $shared = null): JsonResponse
{ {
$successMessage = [
'type' => 'success',
'message' => 'Files was successfully uploaded.',
];
if (is_demo_account()) { if (is_demo_account()) {
return response('Files were successfully added to the upload queue', 201); return response()->json($successMessage);
} }
// Get user // Get user
@@ -28,15 +33,21 @@ class RemoteUploadFileController extends Controller
->user ->user
: auth()->user(); : auth()->user();
// Get content from external sources // If it isn't broadcasting, download files immediately in the request
if (isBroadcasting()) { if (isNotBroadcasting()) {
($this->getContentFromExternalSource)
->onQueue()
->execute($request->all(), $user);
} else {
($this->getContentFromExternalSource)($request->all(), $user); ($this->getContentFromExternalSource)($request->all(), $user);
return response()->json($successMessage);
} }
return response('Files were successfully added to the upload queue', 201); // Add links to the upload queue
($this->getContentFromExternalSource)
->onQueue()
->execute($request->all(), $user);
return response()->json([
'type' => 'success',
'message' => 'Files were successfully added to the upload queue.',
]);
} }
} }

View File

@@ -23,8 +23,8 @@ class RemoteUploadRequest extends FormRequest
public function rules() public function rules()
{ {
return [ return [
'urls.*' => 'required|url',
'parent_id' => 'nullable|uuid', 'parent_id' => 'nullable|uuid',
'urls.*' => 'required|url',
]; ];
} }
} }

View File

@@ -48,6 +48,16 @@ if (! function_exists('isBroadcasting')) {
} }
} }
if (! function_exists('isNotBroadcasting')) {
/**
* Check if cron is running
*/
function isNotBroadcasting(): bool
{
return config('broadcasting.default') === null;
}
}
if (! function_exists('isRunningCron')) { if (! function_exists('isRunningCron')) {
/** /**
* Check if cron is running * Check if cron is running