it_get_all_team_folders

This commit is contained in:
Peter Papp
2021-08-24 16:54:05 +02:00
parent e0ecfce382
commit 0c6621494e
5 changed files with 48 additions and 17 deletions
+6 -4
View File
@@ -1,4 +1,5 @@
<?php
namespace Domain\Folders\Models;
use Illuminate\Support\Str;
@@ -49,7 +50,8 @@ class Folder extends Model
];
protected $casts = [
'emoji' => 'array',
'emoji' => 'array',
'team_folder' => 'boolean',
];
protected $hidden = [
@@ -132,9 +134,9 @@ class Folder extends Model
/**
* Format deleted at date reformat
*/
public function getDeletedAtAttribute(): string | null
public function getDeletedAtAttribute(): string|null
{
if (! $this->attributes['deleted_at']) {
if (!$this->attributes['deleted_at']) {
return null;
}
@@ -226,7 +228,7 @@ class Folder extends Model
parent::boot();
static::creating(function ($model) {
$model->id = (string) Str::uuid();
$model->id = (string)Str::uuid();
});
static::deleting(function ($item) {
@@ -20,7 +20,11 @@ class ConvertFolderIntoTeamFolderController extends Controller
Request $request,
Folder $folder
): Response {
$folder->update(['team_folder' => 1]);
$folder->update([
'team_folder' => 1,
'parent_id' => null,
]);
// Invite team members
($this->inviteMembers)($request->input('members'), $folder);
@@ -9,6 +9,7 @@ use Illuminate\Http\Response;
use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller;
use Domain\Teams\DTO\CreateTeamFolderData;
use Illuminate\Support\Facades\Auth;
class TeamFoldersController extends Controller
{
@@ -16,6 +17,22 @@ class TeamFoldersController extends Controller
public InviteMembersIntoTeamFolderAction $inviteMembers,
) {}
public function show($id)
{
$folder_id = $id !== 'undefined'
? Folder::findOrFail($id)->id
: null;
$folders = Folder::with(['parent:id,name', 'shared:token,id,item_id,permission,is_protected,expire_in'])
->where('parent_id', $folder_id)
->where('team_folder', 1)
->where('user_id', Auth::id())
->sortable()
->get();
return response($folders);
}
public function store(
Request $request,
): Response {