mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-21 01:12:14 +00:00
controller refactoring part 21
This commit is contained in:
44
src/Support/Demo/Actions/FakeRenameFileOrFolderAction.php
Normal file
44
src/Support/Demo/Actions/FakeRenameFileOrFolderAction.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace Support\Demo\Actions;
|
||||
|
||||
|
||||
use Domain\Files\Models\File;
|
||||
use Domain\Folders\Models\Folder;
|
||||
use Domain\Items\Requests\RenameItemRequest;
|
||||
|
||||
class FakeRenameFileOrFolderAction
|
||||
{
|
||||
/**
|
||||
* Rename item name
|
||||
*/
|
||||
public function __invoke(
|
||||
RenameItemRequest $request,
|
||||
string $id,
|
||||
): array {
|
||||
|
||||
// Get item
|
||||
if ($request->input('type') === 'folder') {
|
||||
$item = Folder::where('id', $id)
|
||||
->first();
|
||||
} else {
|
||||
$item = File::where('id', $id)
|
||||
->first();
|
||||
}
|
||||
|
||||
if ($item) {
|
||||
$item->name = $request->input('name');
|
||||
$item->emoji = $request->input('icon.emoji') ?? null;
|
||||
$item->color = $request->input('icon.color') ?? null;
|
||||
|
||||
return $item;
|
||||
}
|
||||
|
||||
return [
|
||||
'id' => $request->input('id'),
|
||||
'name' => $request->input('name'),
|
||||
'type' => $request->input('type'),
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user