public function get($idSite, $period, $date, $segment = false, $idGoal = false, $columns = array())
{
Piwik::checkUserHasViewAccess($idSite);
/** @var DataTable|DataTable\Map $table */
$table = null;
$segments = array('' => false, '_new_visit' => 'visitorType%3D%3Dnew', '_returning_visit' => VisitFrequencyAPI::RETURNING_VISITOR_SEGMENT);
foreach ($segments as $appendToMetricName => $predefinedSegment) {
$segmentToUse = $this->appendSegment($predefinedSegment, $segment);
/** @var DataTable|DataTable\Map $tableSegmented */
$tableSegmented = Request::processRequest('Goals.getMetrics', array('segment' => $segmentToUse, 'idSite' => $idSite, 'period' => $period, 'date' => $date, 'idGoal' => $idGoal, 'columns' => $columns, 'format_metrics' => 'bc'));
$tableSegmented->filter('Piwik\\Plugins\\Goals\\DataTable\\Filter\\AppendNameToColumnNames', array($appendToMetricName));
if (!isset($table)) {
$table = $tableSegmented;
} else {
$merger = new MergeDataTables();
$merger->mergeDataTables($table, $tableSegmented);
}
}
return $table;
}