Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenaka Moorthi <benaka.moorthi@gmail.com>2013-08-07 00:18:59 +0400
committerBenaka Moorthi <benaka.moorthi@gmail.com>2013-08-07 00:18:59 +0400
commit5ff42da365f64fed1cb60cde94ba12d38f60dd4e (patch)
tree607b2a0a34354ea48594eb10947f1ed87968f263 /core/Archive.php
parent5be3fbf225fdaef4a9fa2c438194ab758b901d0f (diff)
Refs #4041, added parameter to Archive::getDataTableExpanded so entire tree will not be created if not necessary.
Diffstat (limited to 'core/Archive.php')
-rw-r--r--core/Archive.php13
1 files changed, 8 insertions, 5 deletions
diff --git a/core/Archive.php b/core/Archive.php
index 6e060cc2da..2c53a8e665 100644
--- a/core/Archive.php
+++ b/core/Archive.php
@@ -251,15 +251,17 @@ class Archive
* Manager::getTable() function.
*
* @param string $name The name of the record to get.
- * @param int|string|null $idSubtable The subtable ID (if any) or self::ID_SUBTABLE_LOAD_ALL_SUBTABLES if requesting every datatable.
+ * @param int|string|null $idSubtable The subtable ID (if any) or self::ID_SUBTABLE_LOAD_ALL_SUBTABLES
+ * if requesting every datatable.
+ * @param int|null $depth The maximum number of subtable levels to load. If null, all levels are loaded.
* @param bool $addMetadataSubtableId Whether to add the DB subtable ID as metadata to each datatable,
* or not.
* @return DataTable
*/
- public function getDataTableExpanded($name, $idSubtable = null, $addMetadataSubtableId = true)
+ public function getDataTableExpanded($name, $idSubtable = null, $depth = null, $addMetadataSubtableId = true)
{
$data = $this->get($name, 'blob', self::ID_SUBTABLE_LOAD_ALL_SUBTABLES);
- return $data->getExpandedDataTable($this->getResultIndices(), $idSubtable, $addMetadataSubtableId);
+ return $data->getExpandedDataTable($this->getResultIndices(), $idSubtable, $depth, $addMetadataSubtableId);
}
/**
@@ -291,7 +293,8 @@ class Archive
* @param int|null $idSubtable
* @return DataTable|DataTable\Map
*/
- public static function getDataTableFromArchive($name, $idSite, $period, $date, $segment, $expanded, $idSubtable = null)
+ public static function getDataTableFromArchive($name, $idSite, $period, $date, $segment, $expanded,
+ $idSubtable = null, $depth = null)
{
Piwik::checkUserHasViewAccess($idSite);
$archive = Archive::build($idSite, $period, $date, $segment);
@@ -300,7 +303,7 @@ class Archive
}
if ($expanded) {
- $dataTable = $archive->getDataTableExpanded($name, $idSubtable);
+ $dataTable = $archive->getDataTableExpanded($name, $idSubtable, $depth);
} else {
$dataTable = $archive->getDataTable($name, $idSubtable);
}