/** * Checks whether the user is allowed to edit specified user * * @param User $user The user to edit * @return boolean Returns true if the user is allowed to edit specified user */ public function canEditUser(User $user) { return !$this->isTeamUser() && $user->accountId == $this->accountId && ($this->id == $user->id || $this->isAccountOwner() || $this->isAccountSuperAdmin() && !$user->isAccountOwner() || $this->isAccountAdmin() && !$user->isAccountOwner() && !$user->isAccountSuperAdmin()); }