����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 18.218.146.21 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/./cbt.bofirm.com/vendor/laravel/jetstream/src/Http/Livewire/ |
Upload File : |
<?php namespace Laravel\Jetstream\Http\Livewire; use Illuminate\Support\Facades\Auth; use Laravel\Jetstream\Actions\UpdateTeamMemberRole; use Laravel\Jetstream\Contracts\AddsTeamMembers; use Laravel\Jetstream\Contracts\InvitesTeamMembers; use Laravel\Jetstream\Contracts\RemovesTeamMembers; use Laravel\Jetstream\Features; use Laravel\Jetstream\Jetstream; use Laravel\Jetstream\TeamInvitation; use Livewire\Component; class TeamMemberManager extends Component { /** * The team instance. * * @var mixed */ public $team; /** * Indicates if a user's role is currently being managed. * * @var bool */ public $currentlyManagingRole = false; /** * The user that is having their role managed. * * @var mixed */ public $managingRoleFor; /** * The current role for the user that is having their role managed. * * @var string */ public $currentRole; /** * Indicates if the application is confirming if a user wishes to leave the current team. * * @var bool */ public $confirmingLeavingTeam = false; /** * Indicates if the application is confirming if a team member should be removed. * * @var bool */ public $confirmingTeamMemberRemoval = false; /** * The ID of the team member being removed. * * @var int|null */ public $teamMemberIdBeingRemoved = null; /** * The "add team member" form state. * * @var array */ public $addTeamMemberForm = [ 'email' => '', 'role' => null, ]; /** * Mount the component. * * @param mixed $team * @return void */ public function mount($team) { $this->team = $team; } /** * Add a new team member to a team. * * @return void */ public function addTeamMember() { $this->resetErrorBag(); if (Features::sendsTeamInvitations()) { app(InvitesTeamMembers::class)->invite( $this->user, $this->team, $this->addTeamMemberForm['email'], $this->addTeamMemberForm['role'] ); } else { app(AddsTeamMembers::class)->add( $this->user, $this->team, $this->addTeamMemberForm['email'], $this->addTeamMemberForm['role'] ); } $this->addTeamMemberForm = [ 'email' => '', 'role' => null, ]; $this->team = $this->team->fresh(); $this->emit('saved'); } /** * Cancel a pending team member invitation. * * @param int $invitationId * @return void */ public function cancelTeamInvitation($invitationId) { if (! empty($invitationId)) { $model = Jetstream::teamInvitationModel(); $model::whereKey($invitationId)->delete(); } $this->team = $this->team->fresh(); } /** * Allow the given user's role to be managed. * * @param int $userId * @return void */ public function manageRole($userId) { $this->currentlyManagingRole = true; $this->managingRoleFor = Jetstream::findUserByIdOrFail($userId); $this->currentRole = $this->managingRoleFor->teamRole($this->team)->key; } /** * Save the role for the user being managed. * * @param \Laravel\Jetstream\Actions\UpdateTeamMemberRole $updater * @return void */ public function updateRole(UpdateTeamMemberRole $updater) { $updater->update( $this->user, $this->team, $this->managingRoleFor->id, $this->currentRole ); $this->team = $this->team->fresh(); $this->stopManagingRole(); } /** * Stop managing the role of a given user. * * @return void */ public function stopManagingRole() { $this->currentlyManagingRole = false; } /** * Remove the currently authenticated user from the team. * * @param \Laravel\Jetstream\Contracts\RemovesTeamMembers $remover * @return void */ public function leaveTeam(RemovesTeamMembers $remover) { $remover->remove( $this->user, $this->team, $this->user ); $this->confirmingLeavingTeam = false; $this->team = $this->team->fresh(); return redirect(config('fortify.home')); } /** * Confirm that the given team member should be removed. * * @param int $userId * @return void */ public function confirmTeamMemberRemoval($userId) { $this->confirmingTeamMemberRemoval = true; $this->teamMemberIdBeingRemoved = $userId; } /** * Remove a team member from the team. * * @param \Laravel\Jetstream\Contracts\RemovesTeamMembers $remover * @return void */ public function removeTeamMember(RemovesTeamMembers $remover) { $remover->remove( $this->user, $this->team, $user = Jetstream::findUserByIdOrFail($this->teamMemberIdBeingRemoved) ); $this->confirmingTeamMemberRemoval = false; $this->teamMemberIdBeingRemoved = null; $this->team = $this->team->fresh(); } /** * Get the current user of the application. * * @return mixed */ public function getUserProperty() { return Auth::user(); } /** * Get the available team member roles. * * @return array */ public function getRolesProperty() { return array_values(Jetstream::$roles); } /** * Render the component. * * @return \Illuminate\View\View */ public function render() { return view('teams.team-member-manager'); } }