����JFIF��x�x����'
| Server IP : 78.140.185.180 / Your IP : 216.73.216.170 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/./././public_html/common/Workspaces/Controllers/ |
Upload File : |
<?php
namespace Common\Workspaces\Controllers;
use App\User;
use Auth;
use Common\Core\BaseController;
use Common\Workspaces\Actions\JoinWorkspace;
use Common\Workspaces\Actions\RemoveMemberFromWorkspace;
use Common\Workspaces\Workspace;
use Common\Workspaces\WorkspaceInvite;
use Common\Workspaces\WorkspaceMember;
use Illuminate\Http\Request;
use Session;
use const App\Providers\WORKSPACE_HOME_ROUTE;
class WorkspaceMembersController extends BaseController
{
/**
* @var Request
*/
private $request;
/**
* @var User
*/
private $user;
public function __construct(
Request $request,
User $user
) {
$this->request = $request;
$this->user = $user;
}
public function join(WorkspaceInvite $workspaceInvite)
{
if ($user = Auth::user()) {
app(JoinWorkspace::class)->execute($workspaceInvite, $user);
if ($this->request->expectsJson()) {
return $this->success(['workspace' => $workspaceInvite->workspace->loadCount('members')]);
} else {
return redirect(WORKSPACE_HOME_ROUTE);
}
} else {
Session::put('workspaceInvite', $workspaceInvite->id);
if (User::where('email', $workspaceInvite->email)->exists()) {
return redirect("workspace/join/login?email={$workspaceInvite->email}");
} else {
return redirect("workspace/join/register?email={$workspaceInvite->email}");
}
}
}
public function destroy(Workspace $workspace, int $userId) {
$this->authorize('destroy', [WorkspaceMember::class, $workspace, $userId]);
app(RemoveMemberFromWorkspace::class)->execute($workspace, $userId);
return $this->success();
}
public function changeRole(Workspace $workspace, int $memberId)
{
$this->authorize('update', [WorkspaceMember::class, $workspace]);
$validatedData = $this->request->validate([
'roleId' => 'required|integer'
]);
app(WorkspaceMember::class)
->where('id', $memberId)
->update(['role_id' => $validatedData['roleId']]);
return $this->success();
}
}