App\Repositories\Backend\Access\User\UserRepository::update PHP Method

update() public method

public update ( Model $user, array $input )
$user Illuminate\Database\Eloquent\Model
$input array
    public function update(Model $user, array $input)
    {
        $data = $input['data'];
        $roles = $input['roles'];
        $this->checkUserByEmail($data, $user);
        DB::transaction(function () use($user, $data, $roles) {
            if (parent::update($user, $data)) {
                //For whatever reason this just wont work in the above call, so a second is needed for now
                $user->status = isset($data['status']) ? 1 : 0;
                $user->confirmed = isset($data['confirmed']) ? 1 : 0;
                parent::save($user);
                $this->checkUserRolesCount($roles);
                $this->flushRoles($roles, $user);
                event(new UserUpdated($user));
                return true;
            }
            throw new GeneralException(trans('exceptions.backend.access.users.update_error'));
        });
    }

Usage Example

 /**
  * @param User $user
  * @param UpdateUserRequest $request
  * @return mixed
  */
 public function update(User $user, UpdateUserRequest $request)
 {
     $this->users->update($user, ['data' => $request->except('assignees_roles'), 'roles' => $request->only('assignees_roles')]);
     return redirect()->route('admin.access.user.index')->withFlashSuccess(trans('alerts.backend.users.updated'));
 }