/**
* 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());
}