appendReturningVisitorSegment($segment); $this->unprefixColumns($columns); $params = array( 'idSite' => $idSite, 'period' => $period, 'date' => $date, 'segment' => $segment, 'columns' => implode(',', $columns), 'format' => 'original', 'format_metrics' => 0 ); $table = Request::processRequest('VisitsSummary.get', $params); $this->prefixColumns($table, $period); return $table; } protected function appendReturningVisitorSegment($segment) { if (empty($segment)) { $segment = ''; } else { $segment .= urlencode(SegmentExpression::AND_DELIMITER); } $segment .= self::RETURNING_VISITOR_SEGMENT; return $segment; } protected function unprefixColumns(&$columns) { $columns = Piwik::getArrayFromApiParameter($columns); foreach ($columns as &$column) { $column = str_replace(self::COLUMN_SUFFIX, "", $column); } } protected function prefixColumns($table, $period) { $rename = array(); foreach (APIVisitsSummary::getInstance()->getColumns($period) as $oldColumn) { $rename[$oldColumn] = $oldColumn . self::COLUMN_SUFFIX; } $table->filter('ReplaceColumnNames', array($rename)); } }