diff($deviceLastseen); return abs($interval->days * 24 * 60 + $interval->h * 60 + $interval->i) < \Utils\Constants::get('RULE_NEW_DEVICE_MAX_AGE_IN_MINUTES'); } public static function countryIsNewByIpId(array $params, int $ipId): bool { $filtered = array_filter($params['eip_country_id'], function ($value) { return $value !== null; }); $countryCounts = array_count_values($filtered); $ipIdx = array_search($ipId, $params['eip_ip_id']); $eventIpCountryId = $params['eip_country_id'][$ipIdx]; $count = $countryCounts[$eventIpCountryId] ?? 0; return $count === 1; } public static function cidrIsNewByIpId(array $params, int $ipId): bool { $filtered = array_filter($params['eip_cidr'], function ($value) { return $value !== null; }); $cidrCounts = array_count_values($filtered); $ipIdx = array_search($ipId, $params['eip_ip_id']); $eventIpCidr = $params['eip_cidr'][$ipIdx]; $count = $cidrCounts[$eventIpCidr] ?? 0; return $count === 1; } }