From 70b46eceba318a55d17d4aee0cb03eddb90e5d2c Mon Sep 17 00:00:00 2001 From: mattab Date: Sun, 26 May 2013 11:35:07 +1200 Subject: [PATCH] Fixes #3887 Proper fix for this problem, adding static array of "Row evolution not supported" Also I decided to enable tests so they all run on my box /standard ubuntu, rather than travis CI. Fixed a bug in tests that plugins language files were not loaded early enough. --- plugins/API/API.php | 2 +- plugins/ImageGraph/ImageGraph.php | 12 +- plugins/Referers/Referers.php | 1 - tests/PHPUnit/BaseFixture.php | 11 +- ...Reports.generateReport_month.original.html | 924 +++++++++--------- ...Reports.generateReport_month.original.html | 916 ++++++++--------- ...FReports.generateReport_month.original.pdf | Bin 475519 -> 475180 bytes ...ortMetadata__API.getReportMetadata_day.xml | 299 +++--- ...FReports.generateReport_week.original.html | 642 ++++++------ ...FReports.generateReport_week.original.html | 554 +++++------ ...DFReports.generateReport_week.original.pdf | Bin 495269 -> 494183 bytes tests/PHPUnit/IntegrationTestCase.php | 3 +- 12 files changed, 1684 insertions(+), 1680 deletions(-) diff --git a/plugins/API/API.php b/plugins/API/API.php index 4eafaae7269..0fcb1a54b9c 100644 --- a/plugins/API/API.php +++ b/plugins/API/API.php @@ -1035,8 +1035,8 @@ private function sort($a, $b) Piwik_Translate('Referers_Referers'), Piwik_Translate('Goals_Goals'), Piwik_Translate('General_Visitors'), - Piwik_Translate('UserSettings_VisitorSettings'), Piwik_Translate('DevicesDetection_DevicesDetection'), + Piwik_Translate('UserSettings_VisitorSettings'), ); } return ($category = strcmp(array_search($a['category'], $order), array_search($b['category'], $order))) == 0 diff --git a/plugins/ImageGraph/ImageGraph.php b/plugins/ImageGraph/ImageGraph.php index f149150d23b..4e48e93d1d4 100644 --- a/plugins/ImageGraph/ImageGraph.php +++ b/plugins/ImageGraph/ImageGraph.php @@ -15,6 +15,11 @@ class Piwik_ImageGraph extends Piwik_Plugin 'Referers_getRefererType', ); + // row evolution support not yet implemented for these APIs + static private $REPORTS_DISABLED_EVOLUTION_GRAPH = array( + 'Referers_getAll', + ); + public function getInformation() { return array( @@ -130,7 +135,12 @@ public function getReportMetadata($notification) // thanks to API.getRowEvolution, reports with dimensions can now be plotted using an evolution graph // however, most reports with a fixed set of dimension values are excluded // this is done so Piwik Mobile and Scheduled Reports do not display them - if (empty($report['constantRowsCount']) || in_array($reportUniqueId, self::$CONSTANT_ROW_COUNT_REPORT_EXCEPTIONS)) { + $reportWithDimensionsSupportsEvolution = empty($report['constantRowsCount']) || in_array($reportUniqueId, self::$CONSTANT_ROW_COUNT_REPORT_EXCEPTIONS); + + $reportSupportsEvolution = !in_array($reportUniqueId, self::$REPORTS_DISABLED_EVOLUTION_GRAPH); + + if ( $reportSupportsEvolution + && $reportWithDimensionsSupportsEvolution) { $parameters['period'] = $periodForMultiplePeriodGraph; $parameters['date'] = $dateForMultiplePeriodGraph; $report['imageGraphEvolutionUrl'] = $urlPrefix . Piwik_Url::getQueryStringFromParameters($parameters); diff --git a/plugins/Referers/Referers.php b/plugins/Referers/Referers.php index 145cd05de6d..3e40f2d9a97 100644 --- a/plugins/Referers/Referers.php +++ b/plugins/Referers/Referers.php @@ -80,7 +80,6 @@ public function getReportMetadata($notification) 'module' => 'Referers', 'action' => 'getAll', 'dimension' => Piwik_Translate('Referers_Referrer'), - 'constantRowsCount' => true, 'documentation' => Piwik_Translate('Referers_AllReferersReportDocumentation', '
'), 'order' => 2, ), diff --git a/tests/PHPUnit/BaseFixture.php b/tests/PHPUnit/BaseFixture.php index 8b1253299ec..9da120fe0f1 100644 --- a/tests/PHPUnit/BaseFixture.php +++ b/tests/PHPUnit/BaseFixture.php @@ -23,8 +23,8 @@ abstract class Test_Piwik_BaseFixture extends PHPUnit_Framework_Assert { const IMAGES_GENERATED_ONLY_FOR_OS = 'linux'; - const IMAGES_GENERATED_FOR_PHP = '5.3.10'; - const IMAGES_GENERATED_FOR_GD = '2.0'; + const IMAGES_GENERATED_FOR_PHP = '5.4'; + const IMAGES_GENERATED_FOR_GD = '2.0.36'; /** Adds data to Piwik. Creates sites, tracks visits, imports log files, etc. */ public abstract function setUp(); @@ -270,17 +270,14 @@ public static function setUpScheduledReports($idSite) } /** - * Return true if system under test has the following characteristics : - * - php_uname() contains 'precise32' or 'ubuntu' - * - phpversion() contains '5.3.10' - * - 'GD Version' equals '2.0' + * Return true if system under test has Piwik core team's most common configuration */ public static function canImagesBeIncludedInScheduledReports() { $gdInfo = gd_info(); return stristr(php_uname(), self::IMAGES_GENERATED_ONLY_FOR_OS) && - version_compare(phpversion(), self::IMAGES_GENERATED_FOR_PHP, '>=') && + strpos( phpversion(), self::IMAGES_GENERATED_FOR_PHP) !== false && $gdInfo['GD Version'] == self::IMAGES_GENERATED_FOR_GD; } diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html index 2ec4b7d5ee9..d1dedfec4d6 100644 --- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html +++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html @@ -191,6 +191,41 @@

  • + +Device type + +
  • +
  • + +Device brand + +
  • +
  • + +Device model + +
  • +
  • + +Operating System families + +
  • +
  • + +Operating System versions + +
  • +
  • + +Browsers families + +
  • +
  • + +Browser versions + +
  • +
  • Screen Resolution @@ -245,41 +280,6 @@

    Browser language

  • -
  • - -Device type - -
  • -
  • - -Device brand - -
  • -
  • - -Device model - -
  • -
  • - -Operating System families - -
  • -
  • - -Operating System versions - -
  • -
  • - -Browsers families - -
  • -
  • - -Browser versions - -
  • All Websites dashboard @@ -2567,7 +2567,7 @@


    @@ -3718,13 +3718,13 @@


    Back to top - +

    -Screen Resolution +Device type


    @@ -3732,7 +3732,7 @@

    - - - - - - - - -
    - Resolution   + Device type    Visits   @@ -3756,45 +3756,24 @@

    -800x300 - -2 - -6 + +  +Desktop 3 -00:07:31 - -50% - -0% -
    -1024x768 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3805,13 +3784,13 @@


    Back to top - +

    -Visitor Browser +Device brand


    @@ -3819,7 +3798,7 @@

    - - - - - - - - -
    - Browser   + Device brand    Visits   @@ -3843,49 +3822,24 @@

    - +   -Opera - -2 - -6 +Unknown 3 -00:07:31 - -50% - -0% -
    - -  -Firefox - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3896,13 +3850,13 @@


    Back to top - +

    -Browser Version +Device model


    @@ -3910,7 +3864,7 @@

    - - - - - - - - -
    - Browser version   + Device model    Visits   @@ -3934,49 +3888,22 @@

    - -  -Opera 9.63 - -2 - -6 +Unknown 3 -00:07:31 - -50% - -0% -
    - -  -Firefox 3.6 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3987,13 +3914,13 @@


    Back to top - +

    -Browser Family +Operating System families


    @@ -4001,7 +3928,7 @@

    - - - - - - - - -
    - Browser family   + Operating System families    Visits   @@ -4025,45 +3952,24 @@

    -Presto (Opera) - -2 - -6 + +  +Windows 3 -00:07:31 - -50% - -0% -
    -Gecko (Firefox) - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -4074,13 +3980,13 @@


    Back to top - +

    -Browser Plugins +Operating System versions


    @@ -4088,102 +3994,114 @@

    + + + + - - - - - - - - - - - + +
    - Plugin   + Operating System versions    Visits   - % Visits   + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate  
    - -  -Cookie - -3 - -100% -
    - +   -Flash +Windows XP 3 -100% -
    - -  -Java - -3 +8 -100% +2.67
    - -  -Director +00:07:01 -0 +33.33% 0%
    +
    +
    +Back to top + +

    +Browsers families +

    + +
    +
    + + + + + + + + + + + - - - - - - - - - - - - @@ -4233,13 +4137,13 @@


    Back to top - +

    -Normal / Widescreen +Browser versions


    @@ -4247,7 +4151,7 @@

    + Browsers families   + + Visits   + + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate   +
    - +   -Gears - -0 - -0% +Opera
    - -  -Pdf +2 -0 +6 -0% +3
    - -  -Quicktime +00:07:31 -0 +50% 0% @@ -4191,39 +4109,25 @@

    - +   -Realplayer +Firefox -0 +1 -0% +2
    - -  -Silverlight +2 -0 +00:06:01 0%
    - -  -Windowsmedia - -0 - 0%
    - Type of screen   + Browser versions    Visits   @@ -4271,9 +4175,9 @@

    - +   -Dual +Opera 9.63 2 @@ -4296,9 +4200,9 @@

    - +   -Normal +Firefox 3.6 1 @@ -4324,13 +4228,13 @@


    Back to top - +

    -Operating System +Screen Resolution


    @@ -4338,7 +4242,7 @@

    + + + + + + + + +
    - Operating system   + Resolution    Visits   @@ -4362,24 +4266,45 @@

    - -  -Windows XP +800x300 + +2 + +6 3 -8 +00:07:31 -2.67 +50% -00:07:01 +0%
    -33.33% +1024x768 + +1 + +2 + +2 + +00:06:01 + +0% 0% @@ -4390,13 +4315,13 @@


    Back to top - +

    -Visitor Configuration +Visitor Browser


    @@ -4404,7 +4329,7 @@

    - Configuration   + Browser    Visits   @@ -4428,7 +4353,9 @@

    -Windows XP / Opera / 800x300 + +  +Opera 2 @@ -4451,7 +4378,9 @@

    -Windows XP / Firefox / 1024x768 + +  +Firefox 1 @@ -4477,13 +4406,13 @@


    Back to top - +

    -Operating System Family +Browser Version


    @@ -4491,7 +4420,7 @@

    + + + + + + + + +
    - Operating system family   + Browser version    Visits   @@ -4515,24 +4444,49 @@

    - +   -Windows +Opera 9.63 + +2 + +6 3 -8 +00:07:31 -2.67 +50% -00:07:01 +0%
    -33.33% + +  +Firefox 3.6 + +1 + +2 + +2 + +00:06:01 + +0% 0% @@ -4543,13 +4497,13 @@


    Back to top - +

    -Mobile vs Desktop +Browser Family


    @@ -4557,7 +4511,7 @@

    - Mobile vs Desktop   + Browser family    Visits   @@ -4581,24 +4535,22 @@

    - -  -Desktop +Presto (Opera) -3 +2 -8 +6 -2.67 +3 -00:07:01 +00:07:31 -33.33% +50% 0% @@ -4606,21 +4558,19 @@

    - -  -Mobile +Gecko (Firefox) -0 +1 -0 +2 -0 +2 -00:00:00 +00:06:01 0% @@ -4634,13 +4584,13 @@


    Back to top - +

    -Browser language +Browser Plugins


    @@ -4648,46 +4598,141 @@

    - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    - Language   + Plugin    Visits   - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   + % Visits  
    -French + +  +Cookie + +3 + +100% +
    + +  +Flash + +3 + +100% +
    + +  +Java + +3 + +100% +
    + +  +Director + +0 + +0% +
    + +  +Gears + +0 + +0% +
    + +  +Pdf + +0 + +0% +
    + +  +Quicktime + +0 + +0% +
    + +  +Realplayer -3 +0 -8 +0%
    -2.67 + +  +Silverlight -00:07:01 +0 -33.33% +0% +
    + +  +Windowsmedia + +0 0% @@ -4698,13 +4743,13 @@


    Back to top - +

    -Device type +Normal / Widescreen


    @@ -4712,7 +4757,7 @@

    - -
    - Device type   + Type of screen    Visits   @@ -4736,90 +4781,49 @@

    - +   -Desktop +Dual -3 +2 -8 +6 -2.67 +3 -00:07:01 +00:07:31 -33.33% +50% 0%
    -
    -
    -Back to top - -

    -Device brand -

    - -
    -
    - - - - - - - - - - - - +
    - Device brand   - - Visits   - - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   -
    - +   -Unknown +Normal -3 +1 -8 +2 -2.67 +2 -00:07:01 +00:06:01 -33.33% +0% 0% @@ -4830,13 +4834,13 @@


    Back to top - +

    -Device model +Operating System


    @@ -4844,7 +4848,7 @@

    - Device model   + Operating system    Visits   @@ -4868,7 +4872,9 @@

    -Unknown + +  +Windows XP 3 @@ -4894,13 +4900,13 @@


    Back to top - +

    -Operating System families +Visitor Configuration


    @@ -4908,7 +4914,7 @@

    + + + + + + + + +
    - Operating System families   + Configuration    Visits   @@ -4932,24 +4938,45 @@

    - -  -Windows +Windows XP / Opera / 800x300 + +2 + +6 3 -8 +00:07:31 -2.67 +50% -00:07:01 +0% +
    +Windows XP / Firefox / 1024x768 -33.33% +1 + +2 + +2 + +00:06:01 + +0% 0% @@ -4960,13 +4987,13 @@


    Back to top - +

    -Operating System versions +Operating System Family


    @@ -4974,7 +5001,7 @@

    - Operating System versions   + Operating system family    Visits   @@ -4998,9 +5025,9 @@

    - +   -Windows XP +Windows 3 @@ -5026,13 +5053,13 @@


    Back to top - +

    -Browsers families +Mobile vs Desktop


    @@ -5040,7 +5067,7 @@

    - Browsers families   + Mobile vs Desktop    Visits   @@ -5064,24 +5091,24 @@

    - +   -Opera +Desktop -2 +3 -6 +8 -3 +2.67 -00:07:31 +00:07:01 -50% +33.33% 0% @@ -5089,21 +5116,21 @@

    - +   -Firefox +Mobile -1 +0 -2 +0 -2 +0 -00:06:01 +00:00:00 0% @@ -5117,13 +5144,13 @@


    Back to top - +

    -Browser versions +Browser language


    @@ -5131,7 +5158,7 @@

    - - - - - - - - -
    - Browser versions   + Language    Visits   @@ -5155,49 +5182,22 @@

    - -  -Opera 9.63 - -2 - -6 +French 3 -00:07:31 - -50% - -0% -
    - -  -Firefox 3.6 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html index e4b8603488d..206709a758b 100644 --- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html +++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html @@ -191,6 +191,41 @@

  • + +Device type + +
  • +
  • + +Device brand + +
  • +
  • + +Device model + +
  • +
  • + +Operating System families + +
  • +
  • + +Operating System versions + +
  • +
  • + +Browsers families + +
  • +
  • + +Browser versions + +
  • +
  • Screen Resolution @@ -245,41 +280,6 @@

    Browser language

  • -
  • - -Device type - -
  • -
  • - -Device brand - -
  • -
  • - -Device model - -
  • -
  • - -Operating System families - -
  • -
  • - -Operating System versions - -
  • -
  • - -Browsers families - -
  • -
  • - -Browser versions - -
  • All Websites dashboard @@ -3536,14 +3536,14 @@


    Back to top - +

    -Screen Resolution +Device type

    - - - - - - - - -
    - Resolution   + Device type    Visits   @@ -3567,45 +3567,24 @@

    -800x300 - -2 - -6 + +  +Desktop 3 -00:07:31 - -50% - -0% -
    -1024x768 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3616,14 +3595,14 @@


    Back to top - +

    -Visitor Browser +Device brand

    - - - - - - - - -
    - Browser   + Device brand    Visits   @@ -3647,49 +3626,24 @@

    - +   -Opera - -2 - -6 +Unknown 3 -00:07:31 - -50% - -0% -
    - -  -Firefox - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3700,14 +3654,14 @@


    Back to top - +

    -Browser Version +Device model

    - - - - - - - - -
    - Browser version   + Device model    Visits   @@ -3731,49 +3685,22 @@

    - -  -Opera 9.63 - -2 - -6 +Unknown 3 -00:07:31 - -50% - -0% -
    - -  -Firefox 3.6 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3784,14 +3711,14 @@


    Back to top - +

    -Browser Family +Operating System families

    - - - - - - - - -
    - Browser family   + Operating System families    Visits   @@ -3815,45 +3742,24 @@

    -Presto (Opera) - -2 - -6 + +  +Windows 3 -00:07:31 - -50% - -0% -
    -Gecko (Firefox) - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% @@ -3864,148 +3770,223 @@


    Back to top - +

    -Browser Plugins +Operating System versions

    - - - - - + + + + + + + - - + + + +
    - Plugin   + Operating System versions    Visits   - % Visits   + Actions  
    - -  -Cookie - -3 + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate   +
    + +  +Windows XP -100% +3
    - -  -Flash +8 -3 +2.67 -100% +00:07:01 + +33.33% + +0%
    +
    +
    +Back to top + +

    +Browsers families +

    + + + + + + + + + + + - - + - + - - + + +
    + Browsers families   + + Visits   + + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate   +
    - +   -Java +Opera -3 +2 -100% +6
    - -  -Director +3 -0 +00:07:31 + +50% 0%
    - +   -Gears +Firefox -0 +1 -0% +2
    - -  -Pdf +2 -0 +00:06:01 + +0% 0%
    +
    +
    +Back to top + +

    +Browser versions +

    + + + + + + + + + + + - - + - + - - +
    + Browser versions   + + Visits   + + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate   +
    - +   -Quicktime +Opera 9.63 -0 +2 -0% +6
    - -  -Realplayer +3 -0 +00:07:31 + +50% 0%
    - +   -Silverlight +Firefox 3.6 -0 +1 -0% +2
    - -  -Windowsmedia +2 -0 +00:06:01 + +0% 0% @@ -4016,14 +3997,14 @@


    Back to top - +

    -Normal / Widescreen +Screen Resolution

    - Type of screen   + Resolution    Visits   @@ -4047,9 +4028,7 @@

    - -  -Dual +800x300 2 @@ -4072,9 +4051,7 @@

    - -  -Normal +1024x768 1 @@ -4100,14 +4077,14 @@


    Back to top - +

    -Operating System +Visitor Browser

    + + + + + + + + +
    - Operating system   + Browser    Visits   @@ -4131,24 +4108,49 @@

    - +   -Windows XP +Opera + +2 + +6 3 -8 +00:07:31 -2.67 +50% -00:07:01 +0%
    -33.33% + +  +Firefox + +1 + +2 + +2 + +00:06:01 + +0% 0% @@ -4159,14 +4161,14 @@


    Back to top - +

    -Visitor Configuration +Browser Version

    - Configuration   + Browser version    Visits   @@ -4190,7 +4192,9 @@

    -Windows XP / Opera / 800x300 + +  +Opera 9.63 2 @@ -4213,7 +4217,9 @@

    -Windows XP / Firefox / 1024x768 + +  +Firefox 3.6 1 @@ -4239,14 +4245,14 @@


    Back to top - +

    -Operating System Family +Browser Family

    + + + + + + + + +
    - Operating system family   + Browser family    Visits   @@ -4270,24 +4276,45 @@

    - -  -Windows +Presto (Opera) + +2 + +6 3 -8 +00:07:31 -2.67 +50% -00:07:01 +0%
    -33.33% +Gecko (Firefox) + +1 + +2 + +2 + +00:06:01 + +0% 0% @@ -4298,80 +4325,148 @@


    Back to top - +

    -Mobile vs Desktop +Browser Plugins

    - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + +
    - Mobile vs Desktop   + Plugin    Visits   - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   + % Visits  
    - +   -Desktop +Cookie 3 -8 +100%
    -2.67 + +  +Flash -00:07:01 +3 + +100% +
    + +  +Java + +3 + +100% +
    + +  +Director + +0 + +0% +
    + +  +Gears + +0 + +0% +
    + +  +Pdf + +0 + +0% +
    + +  +Quicktime + +0 + +0% +
    + +  +Realplayer -33.33% +0 0%
    - +   -Mobile - -0 +Silverlight 0 -0 +0%
    -00:00:00 + +  +Windowsmedia -0% +0 0% @@ -4382,14 +4477,14 @@


    Back to top - +

    -Browser language +Normal / Widescreen

    - -
    - Language   + Type of screen    Visits   @@ -4413,81 +4508,49 @@

    -French + +  +Dual -3 +2 -8 +6 -2.67 +3 -00:07:01 +00:07:31 -33.33% +50% 0%
    -
    -
    -Back to top - -

    -Device type -

    - - - - - - - - - - - - +
    - Device type   - - Visits   - - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   -
    - +   -Desktop +Normal -3 +1 -8 +2 -2.67 +2 -00:07:01 +00:06:01 -33.33% +0% 0% @@ -4498,14 +4561,14 @@


    Back to top - +

    -Device brand +Operating System

    - Device brand   + Operating system    Visits   @@ -4529,9 +4592,9 @@

    - +   -Unknown +Windows XP 3 @@ -4557,14 +4620,14 @@


    Back to top - +

    -Device model +Visitor Configuration

    - -
    - Device model   + Configuration    Visits   @@ -4588,81 +4651,45 @@

    -Unknown +Windows XP / Opera / 800x300 -3 +2 -8 +6 -2.67 +3 -00:07:01 +00:07:31 -33.33% +50% 0%
    -
    -
    -Back to top - -

    -Operating System families -

    - - - - - - - - - - - - +
    - Operating System families   - - Visits   - - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   -
    - -  -Windows +Windows XP / Firefox / 1024x768 -3 +1 -8 +2 -2.67 +2 -00:07:01 +00:06:01 -33.33% +0% 0% @@ -4673,14 +4700,14 @@


    Back to top - +

    -Operating System versions +Operating System Family

    - Operating System versions   + Operating system family    Visits   @@ -4704,9 +4731,9 @@

    - +   -Windows XP +Windows 3 @@ -4732,14 +4759,14 @@


    Back to top - +

    -Browsers families +Mobile vs Desktop

    - Browsers families   + Mobile vs Desktop    Visits   @@ -4763,24 +4790,24 @@

    - +   -Opera +Desktop -2 +3 -6 +8 -3 +2.67 -00:07:31 +00:07:01 -50% +33.33% 0% @@ -4788,21 +4815,21 @@

    - +   -Firefox +Mobile -1 +0 -2 +0 -2 +0 -00:06:01 +00:00:00 0% @@ -4816,14 +4843,14 @@


    Back to top - +

    -Browser versions +Browser language

    - - - - - - - - -
    - Browser versions   + Language    Visits   @@ -4847,49 +4874,22 @@

    - -  -Opera 9.63 - -2 - -6 +French 3 -00:07:31 - -50% - -0% -
    - -  -Firefox 3.6 - -1 - -2 +8 -2 +2.67 -00:06:01 +00:07:01 -0% +33.33% 0% diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_month.original.pdf b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_month.original.pdf index 1c82da2142589a0f50c5286b634245f9c556871c..3f5f68cde79bdbb400594b79397a82e8705a0913 100644 GIT binary patch delta 15143 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 delta 15535 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 diff --git a/tests/PHPUnit/Integration/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml b/tests/PHPUnit/Integration/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml index fe3be1bf288..40dd71adecc 100644 --- a/tests/PHPUnit/Integration/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml +++ b/tests/PHPUnit/Integration/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml @@ -638,7 +638,6 @@ Referers getAll Referrer - 1 This report shows all your Referers in one unified report, listing all Websites, Search keywords and Campaigns used by your visitors to find your website. Visits @@ -1436,11 +1435,11 @@ Provider_getProvider - Visitor Settings - Screen Resolution - UserSettings - getResolution - Resolution + Visitor Devices + Device type + DevicesDetection + getType + Device type Visits Unique visitors @@ -1464,17 +1463,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getResolution&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getResolution&period=day&date=2008-12-06,2009-01-04 - UserSettings_getResolution + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getType&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getType&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getType - Visitor Settings - Visitor Browser - UserSettings - getBrowser - Browser - This report contains information about what kind of browser your visitors were using. Each browser version is listed separately. + Visitor Devices + Device brand + DevicesDetection + getBrand + Device brand Visits Unique visitors @@ -1498,16 +1496,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowser&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowser&period=day&date=2008-12-06,2009-01-04 - UserSettings_getBrowser + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrand&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrand&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getBrand - Visitor Settings - Browser Version - UserSettings - getBrowserVersion - Browser version + Visitor Devices + Device model + DevicesDetection + getModel + Device model Visits Unique visitors @@ -1531,17 +1529,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserVersion&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserVersion&period=day&date=2008-12-06,2009-01-04 - UserSettings_getBrowserVersion + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getModel&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getModel&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getModel - Visitor Settings - Browser Family - UserSettings - getBrowserType - Browser family - This chart shows your visitors' browsers broken down into browser families. <br /> The most important information for web developers is what kind of rendering engine their visitors are using. The labels contain the names of the engines followed by the most common browser using that engine in brackets. + Visitor Devices + Operating System families + DevicesDetection + getOsFamilies + Operating System families Visits Unique visitors @@ -1565,22 +1562,27 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserType&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserType&period=day&date=2008-12-06,2009-01-04 - UserSettings_getBrowserType + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsFamilies&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsFamilies&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getOsFamilies - Visitor Settings - Browser Plugins - UserSettings - getPlugin - Plugin - This report shows which browser plugins your visitors had enabled. This information might be important for choosing the right way to deliver your content. + Visitor Devices + Operating System versions + DevicesDetection + getOsVersions + Operating System versions Visits - % Visits + Unique visitors + Actions - 1 + + Actions per Visit + Avg. Time on Website + Bounce Rate + Conversion Rate + If a visitor comes to your website for the first time or if he visits a page more than 30 minutes after his last page view, this will be recorded as a new visit. The number of unduplicated visitors coming to your website. Every user is only counted once, even if he visits the website multiple times a day. @@ -1593,15 +1595,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getPlugin&period=day&date=2009-01-04 - UserSettings_getPlugin + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsVersions&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsVersions&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getOsVersions - Visitor Settings - Normal / Widescreen - UserSettings - getWideScreen - Type of screen + Visitor Devices + Browsers families + DevicesDetection + getBrowserFamilies + Browsers families Visits Unique visitors @@ -1625,16 +1628,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getWideScreen&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getWideScreen&period=day&date=2008-12-06,2009-01-04 - UserSettings_getWideScreen + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserFamilies&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserFamilies&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getBrowserFamilies - Visitor Settings - Operating System - UserSettings - getOS - Operating system + Visitor Devices + Browser versions + DevicesDetection + getBrowserVersions + Browser versions Visits Unique visitors @@ -1658,17 +1661,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOS&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOS&period=day&date=2008-12-06,2009-01-04 - UserSettings_getOS + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserVersions&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserVersions&period=day&date=2008-12-06,2009-01-04 + DevicesDetection_getBrowserVersions Visitor Settings - Visitor Configuration + Screen Resolution UserSettings - getConfiguration - Configuration - This report shows the most common overall configurations that your visitors had. A configuration is the combination of an operating system, a browser type and a screen resolution. + getResolution + Resolution Visits Unique visitors @@ -1692,16 +1694,17 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getConfiguration&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getConfiguration&period=day&date=2008-12-06,2009-01-04 - UserSettings_getConfiguration + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getResolution&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getResolution&period=day&date=2008-12-06,2009-01-04 + UserSettings_getResolution Visitor Settings - Operating System Family + Visitor Browser UserSettings - getOSFamily - Operating system family + getBrowser + Browser + This report contains information about what kind of browser your visitors were using. Each browser version is listed separately. Visits Unique visitors @@ -1725,16 +1728,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOSFamily&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOSFamily&period=day&date=2008-12-06,2009-01-04 - UserSettings_getOSFamily + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowser&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowser&period=day&date=2008-12-06,2009-01-04 + UserSettings_getBrowser Visitor Settings - Mobile vs Desktop + Browser Version UserSettings - getMobileVsDesktop - Mobile vs Desktop + getBrowserVersion + Browser version Visits Unique visitors @@ -1758,16 +1761,17 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getMobileVsDesktop&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getMobileVsDesktop&period=day&date=2008-12-06,2009-01-04 - UserSettings_getMobileVsDesktop + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserVersion&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserVersion&period=day&date=2008-12-06,2009-01-04 + UserSettings_getBrowserVersion Visitor Settings - Browser language + Browser Family UserSettings - getLanguage - Language + getBrowserType + Browser family + This chart shows your visitors' browsers broken down into browser families. <br /> The most important information for web developers is what kind of rendering engine their visitors are using. The labels contain the names of the engines followed by the most common browser using that engine in brackets. Visits Unique visitors @@ -1791,27 +1795,22 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getLanguage&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getLanguage&period=day&date=2008-12-06,2009-01-04 - UserSettings_getLanguage + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserType&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getBrowserType&period=day&date=2008-12-06,2009-01-04 + UserSettings_getBrowserType - Visitor Devices - Device type - DevicesDetection - getType - Device type + Visitor Settings + Browser Plugins + UserSettings + getPlugin + Plugin + This report shows which browser plugins your visitors had enabled. This information might be important for choosing the right way to deliver your content. Visits - Unique visitors - Actions + % Visits - - Actions per Visit - Avg. Time on Website - Bounce Rate - Conversion Rate - + 1 If a visitor comes to your website for the first time or if he visits a page more than 30 minutes after his last page view, this will be recorded as a new visit. The number of unduplicated visitors coming to your website. Every user is only counted once, even if he visits the website multiple times a day. @@ -1824,16 +1823,15 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getType&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getType&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getType + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getPlugin&period=day&date=2009-01-04 + UserSettings_getPlugin - Visitor Devices - Device brand - DevicesDetection - getBrand - Device brand + Visitor Settings + Normal / Widescreen + UserSettings + getWideScreen + Type of screen Visits Unique visitors @@ -1857,16 +1855,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrand&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrand&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getBrand + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getWideScreen&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getWideScreen&period=day&date=2008-12-06,2009-01-04 + UserSettings_getWideScreen - Visitor Devices - Device model - DevicesDetection - getModel - Device model + Visitor Settings + Operating System + UserSettings + getOS + Operating system Visits Unique visitors @@ -1890,16 +1888,17 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getModel&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getModel&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getModel + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOS&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOS&period=day&date=2008-12-06,2009-01-04 + UserSettings_getOS - Visitor Devices - Operating System families - DevicesDetection - getOsFamilies - Operating System families + Visitor Settings + Visitor Configuration + UserSettings + getConfiguration + Configuration + This report shows the most common overall configurations that your visitors had. A configuration is the combination of an operating system, a browser type and a screen resolution. Visits Unique visitors @@ -1923,16 +1922,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsFamilies&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsFamilies&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getOsFamilies + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getConfiguration&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getConfiguration&period=day&date=2008-12-06,2009-01-04 + UserSettings_getConfiguration - Visitor Devices - Operating System versions - DevicesDetection - getOsVersions - Operating System versions + Visitor Settings + Operating System Family + UserSettings + getOSFamily + Operating system family Visits Unique visitors @@ -1956,16 +1955,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsVersions&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getOsVersions&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getOsVersions + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOSFamily&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getOSFamily&period=day&date=2008-12-06,2009-01-04 + UserSettings_getOSFamily - Visitor Devices - Browsers families - DevicesDetection - getBrowserFamilies - Browsers families + Visitor Settings + Mobile vs Desktop + UserSettings + getMobileVsDesktop + Mobile vs Desktop Visits Unique visitors @@ -1989,16 +1988,16 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserFamilies&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserFamilies&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getBrowserFamilies + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getMobileVsDesktop&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getMobileVsDesktop&period=day&date=2008-12-06,2009-01-04 + UserSettings_getMobileVsDesktop - Visitor Devices - Browser versions - DevicesDetection - getBrowserVersions - Browser versions + Visitor Settings + Browser language + UserSettings + getLanguage + Language Visits Unique visitors @@ -2022,9 +2021,9 @@ The number of times this page was visited. The percentage of visits that left the website after viewing this page. - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserVersions&period=day&date=2009-01-04 - index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=DevicesDetection&apiAction=getBrowserVersions&period=day&date=2008-12-06,2009-01-04 - DevicesDetection_getBrowserVersions + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getLanguage&period=day&date=2009-01-04 + index.php?module=API&method=ImageGraph.get&idSite=1&apiModule=UserSettings&apiAction=getLanguage&period=day&date=2008-12-06,2009-01-04 + UserSettings_getLanguage API diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html index dd6c3fe0f6b..08390c4cbc2 100644 --- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html +++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html @@ -251,6 +251,41 @@

  • + +Device type + +
  • +
  • + +Device brand + +
  • +
  • + +Device model + +
  • +
  • + +Operating System families + +
  • +
  • + +Operating System versions + +
  • +
  • + +Browsers families + +
  • +
  • + +Browser versions + +
  • +
  • Screen Resolution @@ -305,41 +340,6 @@

    Browser language

  • -
  • - -Device type - -
  • -
  • - -Device brand - -
  • -
  • - -Device model - -
  • -
  • - -Operating System families - -
  • -
  • - -Operating System versions - -
  • -
  • - -Browsers families - -
  • -
  • - -Browser versions - -
  • All Websites dashboard @@ -5706,13 +5706,13 @@


    Back to top - +

    -Screen Resolution +Device type


    @@ -5720,7 +5720,7 @@

    - Resolution   + Device type    Visits   @@ -5744,7 +5744,9 @@

    -1024x768 + +  +Desktop 5 @@ -5770,13 +5772,13 @@


    Back to top - +

    -Visitor Browser +Device brand


    @@ -5784,7 +5786,7 @@

    - Browser   + Device brand    Visits   @@ -5808,9 +5810,9 @@

    - +   -Firefox +Unknown 5 @@ -5836,13 +5838,13 @@


    Back to top - +

    -Browser Version +Device model


    @@ -5850,7 +5852,7 @@

    - Browser version   + Device model    Visits   @@ -5874,9 +5876,7 @@

    - -  -Firefox 3.6 +Unknown 5 @@ -5902,13 +5902,13 @@


    Back to top - +

    -Browser Family +Operating System families


    @@ -5916,7 +5916,7 @@

    - Browser family   + Operating System families    Visits   @@ -5940,7 +5940,9 @@

    -Gecko (Firefox) + +  +Windows 5 @@ -5966,13 +5968,13 @@


    Back to top - +

    -Browser Plugins +Operating System versions


    @@ -5980,144 +5982,117 @@

    + + + + - - - - - - - - - - - + +
    - Plugin   + Operating System versions    Visits   - % Visits   + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate  
    - -  -Cookie - -5 - -100% -
    - +   -Flash +Windows XP 5 -100% -
    - -  -Java - -5 +16 -100% +3.2
    - -  -Director +00:22:49 -0 +20% -0% +80%
    +
    +
    +Back to top + +

    +Browsers families +

    + +
    +
    + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - @@ -6125,13 +6100,13 @@


    Back to top - +

    -Normal / Widescreen +Browser versions


    @@ -6139,7 +6114,7 @@

    + Browsers families   + + Visits   + + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate   +
    - +   -Gears - -0 - -0% +Firefox
    - -  -Pdf +5 -0 +16 -0% +3.2
    - -  -Quicktime +00:22:49 -0 +20% -0% -
    - -  -Realplayer - -0 - -0% -
    - -  -Silverlight - -0 - -0% -
    - -  -Windowsmedia - -0 - -0% +80%
    - Type of screen   + Browser versions    Visits   @@ -6163,9 +6138,9 @@

    - +   -Normal +Firefox 3.6 5 @@ -6191,13 +6166,13 @@


    Back to top - +

    -Operating System +Screen Resolution


    @@ -6205,7 +6180,7 @@

    - Operating system   + Resolution    Visits   @@ -6229,9 +6204,7 @@

    - -  -Windows XP +1024x768 5 @@ -6257,13 +6230,13 @@


    Back to top - +

    -Visitor Configuration +Visitor Browser


    @@ -6271,7 +6244,7 @@

    - Configuration   + Browser    Visits   @@ -6295,7 +6268,9 @@

    -Windows XP / Firefox / 1024x768 + +  +Firefox 5 @@ -6321,13 +6296,13 @@


    Back to top - +

    -Operating System Family +Browser Version


    @@ -6335,7 +6310,7 @@

    - Operating system family   + Browser version    Visits   @@ -6359,9 +6334,9 @@

    - +   -Windows +Firefox 3.6 5 @@ -6387,13 +6362,13 @@


    Back to top - +

    -Mobile vs Desktop +Browser Family


    @@ -6401,7 +6376,7 @@

    - - - - - - - - -
    - Mobile vs Desktop   + Browser family    Visits   @@ -6425,9 +6400,7 @@

    - -  -Desktop +Gecko (Firefox) 5 @@ -6448,43 +6421,18 @@

    80%

    - -  -Mobile - -0 - -0 - -0 - -00:00:00 - -0% - -0% -

    Back to top - +

    -Browser language +Browser Plugins


    @@ -6492,49 +6440,144 @@

    - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6542,13 +6585,13 @@


    Back to top - +

    -Device type +Normal / Widescreen


    @@ -6556,7 +6599,7 @@

    - Language   + Plugin    Visits   - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   + % Visits  
    -French + +  +Cookie 5 -16 +100%
    -3.2 + +  +Flash -00:22:49 +5 -20% +100%
    -80% + +  +Java + +5 + +100% +
    + +  +Director + +0 + +0% +
    + +  +Gears + +0 + +0% +
    + +  +Pdf + +0 + +0% +
    + +  +Quicktime + +0 + +0% +
    + +  +Realplayer + +0 + +0% +
    + +  +Silverlight + +0 + +0% +
    + +  +Windowsmedia + +0 + +0%
    - Device type   + Type of screen    Visits   @@ -6580,9 +6623,9 @@

    - +   -Desktop +Normal 5 @@ -6608,13 +6651,13 @@


    Back to top - +

    -Device brand +Operating System


    @@ -6622,7 +6665,7 @@

    - Device brand   + Operating system    Visits   @@ -6646,9 +6689,9 @@

    - +   -Unknown +Windows XP 5 @@ -6674,13 +6717,13 @@


    Back to top - +

    -Device model +Visitor Configuration


    @@ -6688,7 +6731,7 @@

    - Device model   + Configuration    Visits   @@ -6712,7 +6755,7 @@

    -Unknown +Windows XP / Firefox / 1024x768 5 @@ -6738,9 +6781,9 @@


    Back to top - +

    -Operating System families +Operating System Family

    @@ -6804,13 +6847,13 @@


    Back to top - +

    -Operating System versions +Mobile vs Desktop


    @@ -6818,7 +6861,7 @@

    - Operating System families   + Operating system family    Visits   @@ -6776,7 +6819,7 @@

    - +   Windows
    - -
    - Operating System versions   + Mobile vs Desktop    Visits   @@ -6842,9 +6885,9 @@

    - +   -Windows XP +Desktop 5 @@ -6865,70 +6908,29 @@

    80%

    -
    -
    -Back to top - -

    -Browsers families -

    - -
    -
    - - - - - - - - - - - - + @@ -6936,13 +6938,13 @@


    Back to top - +

    -Browser versions +Browser language


    @@ -6950,7 +6952,7 @@

    - Browsers families   - - Visits   - - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   -
    - +   -Firefox +Mobile -5 +0 -16 +0 -3.2 +0 -00:22:49 +00:00:00 -20% +0% -80% +0%
    - Browser versions   + Language    Visits   @@ -6974,9 +6976,7 @@

    - -  -Firefox 3.6 +French 5 diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html index ebdff088d9e..8907c3abf02 100644 --- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html +++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html @@ -251,6 +251,41 @@

  • + +Device type + +
  • +
  • + +Device brand + +
  • +
  • + +Device model + +
  • +
  • + +Operating System families + +
  • +
  • + +Operating System versions + +
  • +
  • + +Browsers families + +
  • +
  • + +Browser versions + +
  • +
  • Screen Resolution @@ -305,41 +340,6 @@

    Browser language

  • -
  • - -Device type - -
  • -
  • - -Device brand - -
  • -
  • - -Device model - -
  • -
  • - -Operating System families - -
  • -
  • - -Operating System versions - -
  • -
  • - -Browsers families - -
  • -
  • - -Browser versions - -
  • All Websites dashboard @@ -5433,14 +5433,14 @@


    Back to top - +

    -Screen Resolution +Device type

    - Resolution   + Device type    Visits   @@ -5464,7 +5464,9 @@

    -1024x768 + +  +Desktop 5 @@ -5490,14 +5492,14 @@


    Back to top - +

    -Visitor Browser +Device brand

    - Browser   + Device brand    Visits   @@ -5521,9 +5523,9 @@

    - +   -Firefox +Unknown 5 @@ -5549,14 +5551,14 @@


    Back to top - +

    -Browser Version +Device model

    - Browser version   + Device model    Visits   @@ -5580,9 +5582,7 @@

    - -  -Firefox 3.6 +Unknown 5 @@ -5608,14 +5608,14 @@


    Back to top - +

    -Browser Family +Operating System families

    - Browser family   + Operating System families    Visits   @@ -5639,7 +5639,9 @@

    -Gecko (Firefox) + +  +Windows 5 @@ -5665,151 +5667,58 @@


    Back to top - +

    -Browser Plugins +Operating System versions

    + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -5817,14 +5726,14 @@


    Back to top - +

    -Normal / Widescreen +Browsers families

    - Plugin   + Operating System versions    Visits   - % Visits   + Actions   + + Actions per Visit   + + Avg. Time on Website   + + Bounce Rate   + + Conversion Rate  
    - -  -Cookie - -5 - -100% -
    - -  -Flash - -5 - -100% -
    - +   -Java +Windows XP 5 -100% -
    - -  -Director - -0 - -0% -
    - -  -Gears - -0 - -0% -
    - -  -Pdf - -0 - -0% -
    - -  -Quicktime - -0 - -0% -
    - -  -Realplayer - -0 - -0% -
    - -  -Silverlight - -0 +16 -0% +3.2
    - -  -Windowsmedia +00:22:49 -0 +20% -0% +80%
    - Type of screen   + Browsers families    Visits   @@ -5848,9 +5757,9 @@

    - +   -Normal +Firefox 5 @@ -5876,14 +5785,14 @@


    Back to top - +

    -Operating System +Browser versions

    - Operating system   + Browser versions    Visits   @@ -5907,9 +5816,9 @@

    - +   -Windows XP +Firefox 3.6 5 @@ -5935,14 +5844,14 @@


    Back to top - +

    -Visitor Configuration +Screen Resolution

    - Configuration   + Resolution    Visits   @@ -5966,7 +5875,7 @@

    -Windows XP / Firefox / 1024x768 +1024x768 5 @@ -5992,14 +5901,14 @@


    Back to top - +

    -Operating System Family +Visitor Browser

    - Operating system family   + Browser    Visits   @@ -6023,9 +5932,9 @@

    - +   -Windows +Firefox 5 @@ -6051,14 +5960,14 @@


    Back to top - +

    -Mobile vs Desktop +Browser Version

    - - - - - - - - -
    - Mobile vs Desktop   + Browser version    Visits   @@ -6082,9 +5991,9 @@

    - +   -Desktop +Firefox 3.6 5 @@ -6105,44 +6014,19 @@

    80%

    - -  -Mobile - -0 - -0 - -0 - -00:00:00 - -0% - -0% -

    Back to top - +

    -Browser language +Browser Family

    - Language   + Browser family    Visits   @@ -6166,7 +6050,7 @@

    -French +Gecko (Firefox) 5 @@ -6192,58 +6076,151 @@


    Back to top - +

    -Device type +Browser Plugins

    - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6251,14 +6228,14 @@


    Back to top - +

    -Device brand +Normal / Widescreen

    - Device type   + Plugin    Visits   - Actions   - - Actions per Visit   - - Avg. Time on Website   - - Bounce Rate   - - Conversion Rate   + % Visits  
    - +   -Desktop +Cookie 5 -16 +100%
    -3.2 + +  +Flash -00:22:49 +5 -20% +100% +
    + +  +Java -80% +5 + +100% +
    + +  +Director + +0 + +0% +
    + +  +Gears + +0 + +0% +
    + +  +Pdf + +0 + +0% +
    + +  +Quicktime + +0 + +0% +
    + +  +Realplayer + +0 + +0% +
    + +  +Silverlight + +0 + +0% +
    + +  +Windowsmedia + +0 + +0%
    - Device brand   + Type of screen    Visits   @@ -6282,9 +6259,9 @@

    - +   -Unknown +Normal 5 @@ -6310,14 +6287,14 @@


    Back to top - +

    -Device model +Operating System

    - Device model   + Operating system    Visits   @@ -6341,7 +6318,9 @@

    -Unknown + +  +Windows XP 5 @@ -6367,14 +6346,14 @@


    Back to top - +

    -Operating System families +Visitor Configuration

    - Operating System families   + Configuration    Visits   @@ -6398,9 +6377,7 @@

    - -  -Windows +Windows XP / Firefox / 1024x768 5 @@ -6426,14 +6403,14 @@


    Back to top - +

    -Operating System versions +Operating System Family

    - Operating System versions   + Operating system family    Visits   @@ -6457,9 +6434,9 @@

    - +   -Windows XP +Windows 5 @@ -6485,14 +6462,14 @@


    Back to top - +

    -Browsers families +Mobile vs Desktop

    + + + + + + + + +
    - Browsers families   + Mobile vs Desktop    Visits   @@ -6516,9 +6493,9 @@

    - +   -Firefox +Desktop 5 @@ -6539,19 +6516,44 @@

    80%

    + +  +Mobile + +0 + +0 + +0 + +00:00:00 + +0% + +0% +

    Back to top - +

    -Browser versions +Browser language

    - Browser versions   + Language    Visits   @@ -6575,9 +6577,7 @@

    - -  -Firefox 3.6 +French 5 diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_week.original.pdf b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_week.original.pdf index f8689b4ebf0ab18079d3b3f684c85c57192283cf..773f256f72bf9dad5a8767a23dde80854b409014 100644 GIT binary patch delta 28633 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 delta 29258 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 diff --git a/tests/PHPUnit/IntegrationTestCase.php b/tests/PHPUnit/IntegrationTestCase.php index e8da4273b63..30595ef8edc 100755 --- a/tests/PHPUnit/IntegrationTestCase.php +++ b/tests/PHPUnit/IntegrationTestCase.php @@ -141,7 +141,6 @@ public static function _setUpBeforeClass($dbName = false, $createEmptyDatabase = Piwik::createLogObject(); Piwik_PluginsManager::getInstance()->loadPlugins(array()); - } catch (Exception $e) { self::fail("TEST INITIALIZATION FAILED: " . $e->getMessage()); } @@ -168,7 +167,7 @@ public static function _setUpBeforeClass($dbName = false, $createEmptyDatabase = $_SERVER['HTTP_REFERER'] = ''; // Make sure translations are loaded to check messages in English - Piwik_Translate::getInstance()->loadEnglishTranslation(); + Piwik_Translate::getInstance()->reloadLanguage('en'); Piwik_LanguagesManager_API::getInstance()->setLanguageForUser('superUserLogin', 'en'); // List of Modules, or Module.Method that should not be called as part of the XML output compare