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