diff options
author | Stefan Giehl <stefan@piwik.org> | 2018-06-12 05:39:24 +0300 |
---|---|---|
committer | diosmosis <diosmosis@users.noreply.github.com> | 2018-06-12 05:39:24 +0300 |
commit | a4e5979b3d623bb855071f2030a4ea1011c99df9 (patch) | |
tree | 9c5900c6de2321144a48dd0109d3861191599c98 /plugins/Live | |
parent | 061e9364f69ad30cbbe1ef63eb9337e9e1d2434b (diff) |
Show info message in visitor profile if there had been more visits than shown in the summary (#12863)
* Show info message in visitor profile if there have been more visits than shown in the summary
* show limited profile message in visit list as well
* fix tests
Diffstat (limited to 'plugins/Live')
-rw-r--r-- | plugins/Live/API.php | 12 | ||||
-rw-r--r-- | plugins/Live/Model.php | 21 | ||||
-rw-r--r-- | plugins/Live/VisitorProfile.php | 1 | ||||
-rw-r--r-- | plugins/Live/lang/en.json | 2 | ||||
-rw-r--r-- | plugins/Live/templates/_profileSummary.twig | 3 | ||||
-rw-r--r-- | plugins/Live/templates/getVisitorProfilePopup.twig | 8 | ||||
-rw-r--r-- | plugins/Live/tests/System/ApiTest.php | 13 | ||||
-rw-r--r-- | plugins/Live/tests/System/expected/test___Live.getVisitorProfile.xml | 1 | ||||
-rw-r--r-- | plugins/Live/tests/System/expected/test_higherLimit__Live.getVisitorProfile.xml | 1 | ||||
-rw-r--r-- | plugins/Live/tests/System/expected/test_maxVisitLimit__Live.getVisitorProfile.xml | 1251 | ||||
-rw-r--r-- | plugins/Live/tests/UI/Live_spec.js | 15 | ||||
-rw-r--r-- | plugins/Live/tests/UI/expected-screenshots/Live_visitor_profile_limited.png | 3 |
12 files changed, 1325 insertions, 6 deletions
diff --git a/plugins/Live/API.php b/plugins/Live/API.php index 6e82802be1..7d93ce2287 100644 --- a/plugins/Live/API.php +++ b/plugins/Live/API.php @@ -393,18 +393,20 @@ class API extends \Piwik\Plugin\API private function loadLastVisitorDetailsFromDatabase($idSite, $period, $date, $segment = false, $offset = 0, $limit = 100, $minTimestamp = false, $filterSortOrder = false, $visitorId = false) { $model = new Model(); - $data = $model->queryLogVisits($idSite, $period, $date, $segment, $offset, $limit, $visitorId, $minTimestamp, $filterSortOrder); - return $this->makeVisitorTableFromArray($data); + list($data, $hasMoreVisits) = $model->queryLogVisits($idSite, $period, $date, $segment, $offset, $limit, $visitorId, $minTimestamp, $filterSortOrder, true); + return $this->makeVisitorTableFromArray($data, $hasMoreVisits); } /** * @param $data + * @param $hasMoreVisits * @return DataTable * @throws Exception */ - private function makeVisitorTableFromArray($data) + private function makeVisitorTableFromArray($data, $hasMoreVisits=null) { $dataTable = new DataTable(); + $dataTable->addRowsFromSimpleArray($data); if (!empty($data[0])) { @@ -415,6 +417,10 @@ class API extends \Piwik\Plugin\API $dataTable->setMetadata(DataTable::COLUMN_AGGREGATION_OPS_METADATA_NAME, $columnsToNotAggregate); } + if (null !== $hasMoreVisits) { + $dataTable->setMetadata('hasMoreVisits', $hasMoreVisits); + } + return $dataTable; } } diff --git a/plugins/Live/Model.php b/plugins/Live/Model.php index 81a8fe4e04..51b7e2de66 100644 --- a/plugins/Live/Model.php +++ b/plugins/Live/Model.php @@ -32,14 +32,31 @@ class Model * @param $visitorId * @param $minTimestamp * @param $filterSortOrder + * @param $checkforMoreEntries * @return array * @throws Exception */ - public function queryLogVisits($idSite, $period, $date, $segment, $offset, $limit, $visitorId, $minTimestamp, $filterSortOrder) + public function queryLogVisits($idSite, $period, $date, $segment, $offset, $limit, $visitorId, $minTimestamp, $filterSortOrder, $checkforMoreEntries = false) { + // to check for more entries increase the limit by one, but cut off the last entry before returning the result + if ($checkforMoreEntries) { + $limit++; + } + list($sql, $bind) = $this->makeLogVisitsQueryString($idSite, $period, $date, $segment, $offset, $limit, $visitorId, $minTimestamp, $filterSortOrder); - return Db::fetchAll($sql, $bind); + $visits = Db::fetchAll($sql, $bind); + + if ($checkforMoreEntries) { + if (count($visits) == $limit) { + array_pop($visits); + return [$visits, true]; + } + + return [$visits, false]; + } + + return $visits; } /** diff --git a/plugins/Live/VisitorProfile.php b/plugins/Live/VisitorProfile.php index 634aa7f9c9..1e432bb395 100644 --- a/plugins/Live/VisitorProfile.php +++ b/plugins/Live/VisitorProfile.php @@ -36,6 +36,7 @@ class VisitorProfile $visitorDetailsManipulators = Visitor::getAllVisitorDetailsInstances(); $this->profile['visitorId'] = $visitorId; + $this->profile['hasMoreVisits'] = $visits->getMetadata('hasMoreVisits'); $this->profile['visit_first'] = $visits->getLastRow(); $this->profile['visit_last'] = $visits->getFirstRow(); diff --git a/plugins/Live/lang/en.json b/plugins/Live/lang/en.json index fe54d81c58..3de17947f1 100644 --- a/plugins/Live/lang/en.json +++ b/plugins/Live/lang/en.json @@ -14,6 +14,8 @@ "LastVisit": "Last visit", "LinkVisitorLog": "View detailed visitor log", "LoadMoreVisits": "Load more visits", + "LimitedSummary": "The information in this profile summarizes the last %1$s visits. This user had more visits in total.", + "LimitedVisitsShown": "Only the last %1$s visits are shown. This user had more visits in total.", "MorePagesNotDisplayed": "more pages by this visitor are not displayed", "NbVisitor": "1 visitor", "NbVisitors": "%s visitors", diff --git a/plugins/Live/templates/_profileSummary.twig b/plugins/Live/templates/_profileSummary.twig index 12924fea6b..58c551832e 100644 --- a/plugins/Live/templates/_profileSummary.twig +++ b/plugins/Live/templates/_profileSummary.twig @@ -5,6 +5,9 @@ <div class="visitor-profile-summary visitor-profile-resume"> <h1>{{ 'General_Summary'|translate }}</h1> <div> + {% if visitorData.hasMoreVisits %} + <p>{{ 'Live_LimitedSummary'|translate('<strong>' ~ visitorData.totalVisits ~ '</strong>')|raw }}</p> + {% endif %} {% if visitorData.totalPageViews != visitorData.totalActions %} {% set actionDetails = [] %} {% if visitorData.totalPageViews > 0 %}{% set actionDetails = actionDetails|merge(['<span title="' ~ pageviewDetails ~ '">' ~ visitorData.totalPageViews ~ ' ' ~ 'General_ColumnPageviews'|translate ~ '</span>']) %}{% endif %} diff --git a/plugins/Live/templates/getVisitorProfilePopup.twig b/plugins/Live/templates/getVisitorProfilePopup.twig index 0ba189c3ac..96c95fc2f8 100644 --- a/plugins/Live/templates/getVisitorProfilePopup.twig +++ b/plugins/Live/templates/getVisitorProfilePopup.twig @@ -74,7 +74,13 @@ style="display:none;" src="plugins/Morpheus/images/loading-blue.gif"/> {% else %} - <span class="visitor-profile-no-visits">{{ 'Live_NoMoreVisits'|translate }}</span> + <span class="visitor-profile-no-visits"> + {% if visitorData.hasMoreVisits %} + {{ 'Live_LimitedVisitsShown'|translate('<strong>' ~ visitorData.totalVisits ~ '</strong>')|raw }} + {% else %} + {{ 'Live_NoMoreVisits'|translate }} + {% endif %} + </span> {% endif %} </div> </div> diff --git a/plugins/Live/tests/System/ApiTest.php b/plugins/Live/tests/System/ApiTest.php index 18780fc033..db04371632 100644 --- a/plugins/Live/tests/System/ApiTest.php +++ b/plugins/Live/tests/System/ApiTest.php @@ -8,6 +8,7 @@ namespace Piwik\Plugins\Live\tests\System; +use Piwik\Config; use Piwik\Plugins\Live\tests\Fixtures\ManyVisitsOfSameVisitor; use Piwik\Tests\Framework\TestCase\SystemTestCase; @@ -80,6 +81,18 @@ class ApiTest extends SystemTestCase return $apiToTest; } + public function testApiWithLowerMaxVisitsLimit() + { + Config::getInstance()->General['live_visitor_profile_max_visits_to_aggregate'] = 20; + + $this->runApiTests('Live.getVisitorProfile', array( + 'idSite' => 1, + 'date' => self::$fixture->dateTime, + 'periods' => array('day'), + 'testSuffix' => 'maxVisitLimit' + )); + } + public static function getOutputPrefix() { return ''; diff --git a/plugins/Live/tests/System/expected/test___Live.getVisitorProfile.xml b/plugins/Live/tests/System/expected/test___Live.getVisitorProfile.xml index 66e6fdb408..c73127f62b 100644 --- a/plugins/Live/tests/System/expected/test___Live.getVisitorProfile.xml +++ b/plugins/Live/tests/System/expected/test___Live.getVisitorProfile.xml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="utf-8" ?> <result> + <hasMoreVisits>0</hasMoreVisits> <totalVisits>31</totalVisits> <totalVisitDuration>0</totalVisitDuration> <totalActions>31</totalActions> diff --git a/plugins/Live/tests/System/expected/test_higherLimit__Live.getVisitorProfile.xml b/plugins/Live/tests/System/expected/test_higherLimit__Live.getVisitorProfile.xml index 308bf08952..bbaaedfa8b 100644 --- a/plugins/Live/tests/System/expected/test_higherLimit__Live.getVisitorProfile.xml +++ b/plugins/Live/tests/System/expected/test_higherLimit__Live.getVisitorProfile.xml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="utf-8" ?> <result> + <hasMoreVisits>0</hasMoreVisits> <totalVisits>31</totalVisits> <totalVisitDuration>0</totalVisitDuration> <totalActions>31</totalActions> diff --git a/plugins/Live/tests/System/expected/test_maxVisitLimit__Live.getVisitorProfile.xml b/plugins/Live/tests/System/expected/test_maxVisitLimit__Live.getVisitorProfile.xml new file mode 100644 index 0000000000..4dda7b3fb4 --- /dev/null +++ b/plugins/Live/tests/System/expected/test_maxVisitLimit__Live.getVisitorProfile.xml @@ -0,0 +1,1251 @@ +<?xml version="1.0" encoding="utf-8" ?> +<result> + + <hasMoreVisits>1</hasMoreVisits> + <totalVisits>20</totalVisits> + <totalVisitDuration>0</totalVisitDuration> + <totalActions>20</totalActions> + <totalOutlinks>0</totalOutlinks> + <totalDownloads>0</totalDownloads> + <totalSearches>0</totalSearches> + <totalPageViews>20</totalPageViews> + <totalUniquePageViews>4</totalUniquePageViews> + <totalRevisitedPages>4</totalRevisitedPages> + <totalPageViewsWithTiming>0</totalPageViewsWithTiming> + <searches> + </searches> + <totalGoalConversions>0</totalGoalConversions> + <totalConversionsByGoal> + </totalConversionsByGoal> + <totalEvents>0</totalEvents> + <hasLatLong>0</hasLatLong> + <lastVisits> + <row> + <idSite>1</idSite> + <idVisit>32</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page2</url> + <pageTitle>incredible title 0</pageTitle> + <pageIdAction>8</pageIdAction> + + + <pageId>32</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>31</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page1</url> + <pageTitle>incredible title 2</pageTitle> + <pageIdAction>6</pageIdAction> + + + <pageId>31</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>30</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page0</url> + <pageTitle>incredible title 1</pageTitle> + <pageIdAction>4</pageIdAction> + + + <pageId>30</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>29</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page3</url> + <pageTitle>incredible title 0</pageTitle> + <pageIdAction>9</pageIdAction> + + + <pageId>29</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>28</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page2</url> + <pageTitle>incredible title 2</pageTitle> + <pageIdAction>8</pageIdAction> + + + <pageId>28</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>27</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page1</url> + <pageTitle>incredible title 1</pageTitle> + <pageIdAction>6</pageIdAction> + + + <pageId>27</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>26</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page0</url> + <pageTitle>incredible title 0</pageTitle> + <pageIdAction>4</pageIdAction> + + + <pageId>26</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>25</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page3</url> + <pageTitle>incredible title 2</pageTitle> + <pageIdAction>9</pageIdAction> + + + <pageId>25</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>24</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page2</url> + <pageTitle>incredible title 1</pageTitle> + <pageIdAction>8</pageIdAction> + + + <pageId>24</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + <row> + <idSite>1</idSite> + <idVisit>23</idVisit> + <visitIp>156.5.3.2</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://example.org/my/dir/page1</url> + <pageTitle>incredible title 0</pageTitle> + <pageIdAction>6</pageIdAction> + + + <pageId>23</pageId> + <bandwidth /> + <interactionPosition>1</interactionPosition> + <icon /> + + <bandwidth_pretty>0 M</bandwidth_pretty> + </row> + </actionDetails> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <siteName>Piwik test</siteName> + + + + + + + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitCount>1</visitCount> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <searches>0</searches> + <actions>1</actions> + <interactions>1</interactions> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <languageCode /> + <language>Unknown</language> + <deviceType>Unknown</deviceType> + <deviceTypeIcon>plugins/Morpheus/icons/dist/devices/unknown.png</deviceTypeIcon> + <deviceBrand>Unknown</deviceBrand> + <deviceModel>Unknown</deviceModel> + <operatingSystem>Unknown</operatingSystem> + <operatingSystemName>Unknown</operatingSystemName> + <operatingSystemIcon>plugins/Morpheus/icons/dist/os/UNK.png</operatingSystemIcon> + <operatingSystemCode>UNK</operatingSystemCode> + <operatingSystemVersion>UNK</operatingSystemVersion> + <browserFamily /> + <browserFamilyDescription>Unknown</browserFamilyDescription> + <browser>Unknown</browser> + <browserName>Unknown</browserName> + <browserIcon>plugins/Morpheus/icons/dist/browsers/UNK.png</browserIcon> + <browserCode>UNK</browserCode> + <browserVersion /> + <totalEcommerceRevenue>0</totalEcommerceRevenue> + <totalEcommerceConversions>0</totalEcommerceConversions> + <totalEcommerceItems>0</totalEcommerceItems> + <totalAbandonedCartsRevenue>0</totalAbandonedCartsRevenue> + <totalAbandonedCarts>0</totalAbandonedCarts> + <totalAbandonedCartsItems>0</totalAbandonedCartsItems> + <events>0</events> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/Morpheus/icons/dist/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <visitLocalTime>12:34:06</visitLocalTime> + <visitLocalHour>12</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + <customVariables> + </customVariables> + <resolution>1024x768</resolution> + <plugins>cookie, flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/cookie.png</pluginIcon> + <pluginName>cookie</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/flash.png</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/Morpheus/icons/dist/plugins/java.png</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + </row> + </lastVisits> + + + <totalVisitDurationPretty>0s</totalVisitDurationPretty> + <userId>0</userId> + <firstVisit> + + + + <referrerType>direct</referrerType> + <referrerUrl /> + <referralSummary>Direct Entry</referralSummary> + </firstVisit> + <lastVisit> + + + + <referrerType>direct</referrerType> + <referrerUrl /> + <referralSummary>Direct Entry</referralSummary> + </lastVisit> + <visitsAggregated>10</visitsAggregated> + <visitedPages> + <row> + <url>http://example.org/my/dir/page3</url> + <count>5</count> + </row> + <row> + <url>http://example.org/my/dir/page0</url> + <count>5</count> + </row> + <row> + <url>http://example.org/my/dir/page1</url> + <count>5</count> + </row> + <row> + <url>http://example.org/my/dir/page2</url> + <count>5</count> + </row> + </visitedPages> + <devices> + <row> + <type>Unknown</type> + <count>20</count> + <icon>plugins/Morpheus/icons/dist/devices/unknown.png</icon> + <devices> + <row> + <name>Unknown</name> + <count>20</count> + </row> + </devices> + </row> + </devices> + <continents> + <row> + <continent>unk</continent> + <nb_visits>20</nb_visits> + <prettyName>Unknown</prettyName> + </row> + </continents> + <countries> + <row> + <country>xx</country> + <nb_visits>20</nb_visits> + <flag>plugins/Morpheus/icons/dist/flags/xx.png</flag> + <prettyName>Unknown</prettyName> + </row> + </countries> +</result>
\ No newline at end of file diff --git a/plugins/Live/tests/UI/Live_spec.js b/plugins/Live/tests/UI/Live_spec.js index 48278897fe..74cb330f3a 100644 --- a/plugins/Live/tests/UI/Live_spec.js +++ b/plugins/Live/tests/UI/Live_spec.js @@ -69,6 +69,21 @@ describe("Live", function () { }, done); }); + it('should show limited profile message', function (done) { + expect.screenshot('visitor_profile_limited').to.be.captureSelector('.ui-dialog', function (page) { + + // Limit number of shown visits to 5 + testEnvironment.overrideConfig('General', 'live_visitor_profile_max_visits_to_aggregate', 5); + testEnvironment.save(); + + page.load("?module=CoreHome&action=index&idSite=1&period=year&date=2010-01-03#?idSite=1&period=year&date=2010-01-03&category=General_Visitors&subcategory=Live_VisitorLog"); + page.evaluate(function(){ + $('.card:first-child .visitor-log-visitor-profile-link').click(); + }); + page.wait(6000); + }, done); + }); + it('should show visitor log purge message when purged and no data', function (done) { expect.screenshot('visitor_log_purged').to.be.captureSelector('.reporting-page', function (page) { diff --git a/plugins/Live/tests/UI/expected-screenshots/Live_visitor_profile_limited.png b/plugins/Live/tests/UI/expected-screenshots/Live_visitor_profile_limited.png new file mode 100644 index 0000000000..03a0e8361d --- /dev/null +++ b/plugins/Live/tests/UI/expected-screenshots/Live_visitor_profile_limited.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43ac9699f75b88f2165ef0d80b8870d27a35406bad154d1a9cbc3e1fb90954eb +size 322994 |