Flarum\Core\Command\DeleteAvatarHandler::handle PHP Method

handle() public method

public handle ( DeleteAvatar $command ) : User
$command DeleteAvatar
return Flarum\Core\User
    public function handle(DeleteAvatar $command)
    {
        $actor = $command->actor;
        $user = $this->users->findOrFail($command->userId);
        if ($actor->id !== $user->id) {
            $this->assertCan($actor, 'edit', $user);
        }
        $avatarPath = $user->avatar_path;
        $user->changeAvatarPath(null);
        $this->events->fire(new AvatarWillBeDeleted($user, $actor));
        $user->save();
        if ($this->uploadDir->has($avatarPath)) {
            $this->uploadDir->delete($avatarPath);
        }
        $this->dispatchEventsFor($user, $actor);
        return $user;
    }
DeleteAvatarHandler