getUser(); if (!$user instanceof User) { return false; } switch ($attribute) { case self::VIEW: case self::EDIT: case self::RELOAD: case self::STAR: case self::ARCHIVE: case self::SHARE: case self::UNSHARE: case self::EXPORT: case self::DELETE: case self::LIST_ANNOTATIONS: case self::CREATE_ANNOTATIONS: case self::LIST_TAGS: case self::TAG: case self::UNTAG: return $user === $subject->getUser(); } return false; } }