diff options
author | mattpiwik <matthieu.aubry@gmail.com> | 2010-07-13 20:43:28 +0400 |
---|---|---|
committer | mattpiwik <matthieu.aubry@gmail.com> | 2010-07-13 20:43:28 +0400 |
commit | f1d8f1c1da91c515682c8fe528c3573bf72167af (patch) | |
tree | d63bf932ed702f8a847dadf5b8653d3739a7d9ff /core/DataTable/Renderer/Php.php | |
parent | 957d02819f50396696cdf9098fa2e8b362e2757a (diff) |
Refs #1446
Integration tests were often different simply because the internal idsubdatatable in the response was different. However. this idsubtable is really just an internal ID and it is not expected that this ID is the same across several archiving processes. Therefore integration tests will now set a special flag to remove the ID from the response, to minimize noise.
git-svn-id: http://dev.piwik.org/svn/trunk@2495 59fd770c-687e-43c8-a1e3-f5a4ff64c105
Diffstat (limited to 'core/DataTable/Renderer/Php.php')
-rw-r--r-- | core/DataTable/Renderer/Php.php | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/core/DataTable/Renderer/Php.php b/core/DataTable/Renderer/Php.php index 18f24452e0..cebda20266 100644 --- a/core/DataTable/Renderer/Php.php +++ b/core/DataTable/Renderer/Php.php @@ -30,6 +30,7 @@ class Piwik_DataTable_Renderer_Php extends Piwik_DataTable_Renderer { $this->serialize = (bool)$bool; } + public function setPrettyDisplay($bool) { $this->prettyDisplay = (bool)$bool; @@ -145,13 +146,14 @@ class Piwik_DataTable_Renderer_Php extends Piwik_DataTable_Renderer foreach($array as $row) { $newRow = $row['columns'] + $row['metadata']; - if(isset($row['idsubdatatable'])) + if(isset($row['idsubdatatable']) + && $this->hideIdSubDatatable === false) { $newRow += array('idsubdatatable' => $row['idsubdatatable']); - if(isset($row['subtable'])) - { - $newRow += array('subtable' => $this->flattenArray($row['subtable']) ); - } + } + if(isset($row['subtable'])) + { + $newRow += array('subtable' => $this->flattenArray($row['subtable']) ); } $flatArray[] = $newRow; } @@ -192,18 +194,23 @@ class Piwik_DataTable_Renderer_Php extends Piwik_DataTable_Renderer && $row->getIdSubDataTable() !== null) { try{ - $subTable = $this->renderTable( Piwik_DataTable_Manager::getInstance()->getTable($row->getIdSubDataTable())); + $subTable = $this->renderTable( Piwik_DataTable_Manager::getInstance()->getTable($row->getIdSubDataTable())); $newRow['subtable'] = $subTable; - if(isset($newRow['metadata']['idsubdatatable_in_db'])) + if($this->hideIdSubDatatable === false + && isset($newRow['metadata']['idsubdatatable_in_db'])) { $newRow['columns']['idsubdatatable'] = $newRow['metadata']['idsubdatatable_in_db']; - unset($newRow['metadata']['idsubdatatable_in_db']); } + unset($newRow['metadata']['idsubdatatable_in_db']); } catch (Exception $e) { // the subtables are not loaded we dont do anything } } - + if($this->hideIdSubDatatable !== false) + { + unset($newRow['idsubdatatable']); + } + $array[] = $newRow; } return $array; |