requirements_checker = $requirements_checker; } /** * @param DynamicSegment $dynamic_segment * * @return int */ function getSubscribersCount(DynamicSegment $dynamic_segment) { $orm = Subscriber::selectExpr('count(distinct ' . Subscriber::$_table . '.id) as cnt'); if ($this->requirements_checker->shouldSkipSegment($dynamic_segment)) { return 0; } foreach ($dynamic_segment->getFilters() as $filter) { $orm = $filter->toSql($orm); } return $orm->findOne()->cnt; } }