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

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md42
-rw-r--r--LEGALNOTICE12
-rw-r--r--config/global.ini.php4
-rw-r--r--core/ArchiveProcessor/PluginsArchiver.php4
-rw-r--r--core/CliMulti.php8
-rw-r--r--core/CliMulti/Output.php16
-rw-r--r--core/CliMulti/Process.php19
-rw-r--r--core/Common.php52
-rw-r--r--core/CronArchive.php14
-rw-r--r--core/DataArray.php5
-rw-r--r--core/Db.php12
-rw-r--r--core/Exception/InvalidRequestParameterException.php13
-rw-r--r--core/Exception/UnexpectedWebsiteFoundException.php13
-rw-r--r--core/Filesystem.php34
-rw-r--r--core/Mail.php2
-rw-r--r--core/Piwik.php1
-rw-r--r--core/Plugin/MetadataLoader.php2
-rw-r--r--core/Plugin/Settings.php24
-rw-r--r--core/ProxyHttp.php24
-rw-r--r--core/Sequence.php35
-rw-r--r--core/SettingsPiwik.php12
-rw-r--r--core/Site.php3
-rw-r--r--core/Tracker.php44
-rw-r--r--core/Tracker/Request.php6
-rw-r--r--core/Tracker/Visitor.php13
-rw-r--r--core/Translate.php2
-rw-r--r--core/Translate/Filter/ByParameterCount.php3
-rwxr-xr-xcore/Twig.php3
-rw-r--r--core/Updates/1.8.3-b1.php4
-rw-r--r--core/Updates/2.0.3-b7.php4
-rw-r--r--core/Updates/2.10.0-b1.php252
-rw-r--r--core/Updates/2.9.0-b7.php3
-rw-r--r--core/Version.php2
-rw-r--r--core/WidgetsList.php33
-rw-r--r--js/piwik.js3
-rw-r--r--lang/cy.json1
-rw-r--r--lang/fr.json3
-rw-r--r--lang/gl.json1
-rw-r--r--lang/sl.json1
-rw-r--r--lang/ta.json1
-rw-r--r--lang/tl.json450
-rw-r--r--libs/PiwikTracker/PiwikTracker.php11
-rw-r--r--libs/UserAgentParser/README.md23
-rw-r--r--libs/UserAgentParser/UserAgentParser.php729
-rw-r--r--libs/UserAgentParser/UserAgentParser.test.php56
-rwxr-xr-xmisc/log-analytics/import_logs.py13
-rw-r--r--misc/others/api_rest_call.php4
-rwxr-xr-xmisc/others/geoipUpdateRows.php4
-rw-r--r--piwik.js2
-rw-r--r--plugins/API/lang/tl.json13
-rw-r--r--plugins/Actions/Reports/Base.php4
-rw-r--r--plugins/Actions/lang/sl.json4
-rw-r--r--plugins/Actions/lang/tl.json64
-rw-r--r--plugins/Annotations/lang/tl.json22
-rw-r--r--plugins/Contents/lang/fr.json9
-rw-r--r--plugins/Contents/lang/tl.json12
-rw-r--r--plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_day.xml32
-rw-r--r--plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_month.xml32
-rw-r--r--plugins/Contents/tests/System/expected/test_Contents_contentInteractionMatch__Live.getLastVisitsDetails_day.xml32
-rw-r--r--plugins/Contents/tests/System/expected/test_Contents_contentTargetMatch__Live.getLastVisitsDetails_day.xml32
-rw-r--r--plugins/Contents/tests/System/expected/test_ContentscontentNameOrPieceMatch__Live.getLastVisitsDetails_day.xml32
-rw-r--r--plugins/CoreAdminHome/Controller.php4
-rw-r--r--plugins/CoreAdminHome/lang/fr.json1
-rw-r--r--plugins/CoreAdminHome/lang/tl.json86
-rw-r--r--plugins/CoreConsole/Commands/GitCommit.php3
-rw-r--r--plugins/CoreConsole/Commands/GitPull.php3
-rw-r--r--plugins/CoreConsole/Commands/GitPush.php3
-rw-r--r--plugins/CoreHome/lang/fr.json1
-rw-r--r--plugins/CoreHome/lang/tl.json62
-rw-r--r--plugins/CorePluginsAdmin/Controller.php11
-rw-r--r--plugins/CorePluginsAdmin/Menu.php2
-rw-r--r--plugins/CorePluginsAdmin/PluginInstaller.php10
-rw-r--r--plugins/CorePluginsAdmin/javascripts/pluginExtend.js2
-rw-r--r--plugins/CorePluginsAdmin/lang/am.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/ar.json3
-rw-r--r--plugins/CorePluginsAdmin/lang/be.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/bg.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/ca.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/cs.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/da.json15
-rw-r--r--plugins/CorePluginsAdmin/lang/de.json13
-rw-r--r--plugins/CorePluginsAdmin/lang/el.json11
-rw-r--r--plugins/CorePluginsAdmin/lang/en.json15
-rw-r--r--plugins/CorePluginsAdmin/lang/es.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/et.json9
-rw-r--r--plugins/CorePluginsAdmin/lang/eu.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/fa.json8
-rw-r--r--plugins/CorePluginsAdmin/lang/fi.json9
-rw-r--r--plugins/CorePluginsAdmin/lang/fr.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/he.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/hi.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/hu.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/id.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/is.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/it.json15
-rw-r--r--plugins/CorePluginsAdmin/lang/ja.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/ka.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/ko.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/lt.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/lv.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/nb.json3
-rw-r--r--plugins/CorePluginsAdmin/lang/nl.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/nn.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/pl.json6
-rw-r--r--plugins/CorePluginsAdmin/lang/pt-br.json2
-rw-r--r--plugins/CorePluginsAdmin/lang/pt.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/ro.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/ru.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/sk.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/sl.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/sq.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/sr.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/sv.json10
-rw-r--r--plugins/CorePluginsAdmin/lang/ta.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/th.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/tl.json95
-rw-r--r--plugins/CorePluginsAdmin/lang/tr.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/uk.json1
-rw-r--r--plugins/CorePluginsAdmin/lang/vi.json5
-rw-r--r--plugins/CorePluginsAdmin/lang/zh-cn.json7
-rw-r--r--plugins/CorePluginsAdmin/lang/zh-tw.json1
-rw-r--r--plugins/CorePluginsAdmin/stylesheets/marketplace.less8
-rw-r--r--plugins/CorePluginsAdmin/templates/browsePlugins.twig10
-rw-r--r--plugins/CorePluginsAdmin/templates/browsePluginsActions.twig15
-rw-r--r--plugins/CorePluginsAdmin/templates/browseThemes.twig3
-rw-r--r--plugins/CorePluginsAdmin/templates/extend.twig70
-rw-r--r--plugins/CorePluginsAdmin/templates/plugins.twig3
-rw-r--r--plugins/CoreUpdater/lang/fr.json2
-rw-r--r--plugins/CoreUpdater/lang/tl.json60
m---------plugins/CustomAlerts0
-rw-r--r--plugins/CustomVariables/Archiver.php2
-rw-r--r--plugins/CustomVariables/Model.php2
-rw-r--r--plugins/CustomVariables/lang/tl.json11
-rw-r--r--plugins/CustomVariables/tests/System/expected/test_CustomVariablesSystemTest__Live.getLastVisitsDetails_day.xml16
-rw-r--r--plugins/DBStats/lang/tl.json21
-rw-r--r--plugins/Dashboard/Controller.php10
-rw-r--r--plugins/Dashboard/Dashboard.php6
-rw-r--r--plugins/Dashboard/Model.php98
-rw-r--r--plugins/Dashboard/lang/tl.json37
-rw-r--r--plugins/DevicesDetection/API.php59
-rw-r--r--plugins/DevicesDetection/Archiver.php2
-rw-r--r--plugins/DevicesDetection/Columns/BrowserName.php13
-rw-r--r--plugins/DevicesDetection/Columns/BrowserVersion.php13
-rw-r--r--plugins/DevicesDetection/Columns/Os.php13
-rw-r--r--plugins/DevicesDetection/Controller.php24
-rw-r--r--plugins/DevicesDetection/DevicesDetection.php13
-rw-r--r--plugins/DevicesDetection/Reports/GetBrowserVersions.php10
-rw-r--r--plugins/DevicesDetection/Reports/GetBrowsers.php (renamed from plugins/DevicesDetection/Reports/GetBrowserFamilies.php)12
-rw-r--r--plugins/DevicesDetection/Reports/GetOsFamilies.php2
-rw-r--r--plugins/DevicesDetection/Visitor.php40
-rw-r--r--plugins/DevicesDetection/functions.php71
-rw-r--r--plugins/DevicesDetection/lang/am.json5
-rw-r--r--plugins/DevicesDetection/lang/ar.json6
-rw-r--r--plugins/DevicesDetection/lang/be.json4
-rw-r--r--plugins/DevicesDetection/lang/bg.json3
-rw-r--r--plugins/DevicesDetection/lang/ca.json4
-rw-r--r--plugins/DevicesDetection/lang/cs.json3
-rw-r--r--plugins/DevicesDetection/lang/da.json4
-rw-r--r--plugins/DevicesDetection/lang/de.json3
-rw-r--r--plugins/DevicesDetection/lang/el.json3
-rw-r--r--plugins/DevicesDetection/lang/en.json3
-rw-r--r--plugins/DevicesDetection/lang/es.json3
-rw-r--r--plugins/DevicesDetection/lang/et.json3
-rw-r--r--plugins/DevicesDetection/lang/eu.json5
-rw-r--r--plugins/DevicesDetection/lang/fa.json3
-rw-r--r--plugins/DevicesDetection/lang/fi.json3
-rw-r--r--plugins/DevicesDetection/lang/fr.json3
-rw-r--r--plugins/DevicesDetection/lang/he.json6
-rw-r--r--plugins/DevicesDetection/lang/hi.json6
-rw-r--r--plugins/DevicesDetection/lang/hr.json5
-rw-r--r--plugins/DevicesDetection/lang/hu.json5
-rw-r--r--plugins/DevicesDetection/lang/id.json4
-rw-r--r--plugins/DevicesDetection/lang/is.json5
-rw-r--r--plugins/DevicesDetection/lang/it.json3
-rw-r--r--plugins/DevicesDetection/lang/ja.json3
-rw-r--r--plugins/DevicesDetection/lang/ka.json5
-rw-r--r--plugins/DevicesDetection/lang/ko.json4
-rw-r--r--plugins/DevicesDetection/lang/lt.json6
-rw-r--r--plugins/DevicesDetection/lang/lv.json4
-rw-r--r--plugins/DevicesDetection/lang/nb.json3
-rw-r--r--plugins/DevicesDetection/lang/nl.json3
-rw-r--r--plugins/DevicesDetection/lang/nn.json5
-rw-r--r--plugins/DevicesDetection/lang/pl.json3
-rw-r--r--plugins/DevicesDetection/lang/pt-br.json3
-rw-r--r--plugins/DevicesDetection/lang/pt.json4
-rw-r--r--plugins/DevicesDetection/lang/ro.json3
-rw-r--r--plugins/DevicesDetection/lang/ru.json3
-rw-r--r--plugins/DevicesDetection/lang/sk.json5
-rw-r--r--plugins/DevicesDetection/lang/sl.json13
-rw-r--r--plugins/DevicesDetection/lang/sq.json4
-rw-r--r--plugins/DevicesDetection/lang/sr.json3
-rw-r--r--plugins/DevicesDetection/lang/sv.json3
-rw-r--r--plugins/DevicesDetection/lang/te.json6
-rw-r--r--plugins/DevicesDetection/lang/th.json6
-rw-r--r--plugins/DevicesDetection/lang/tl.json31
-rw-r--r--plugins/DevicesDetection/lang/tr.json3
-rw-r--r--plugins/DevicesDetection/lang/uk.json5
-rw-r--r--plugins/DevicesDetection/lang/vi.json4
-rw-r--r--plugins/DevicesDetection/lang/zh-cn.json4
-rw-r--r--plugins/DevicesDetection/lang/zh-tw.json6
-rw-r--r--plugins/DevicesDetection/templates/detection.twig2
-rw-r--r--plugins/DevicesDetection/templates/index.twig4
-rw-r--r--plugins/Events/lang/tl.json31
-rw-r--r--plugins/ExamplePlugin/tests/Unit/SimpleTest.php15
-rw-r--r--plugins/Feedback/lang/fr.json8
-rw-r--r--plugins/Feedback/lang/tl.json26
-rw-r--r--plugins/Goals/Controller.php2
-rw-r--r--plugins/Insights/lang/tl.json18
-rw-r--r--plugins/Insights/lang/zh-cn.json12
-rw-r--r--plugins/Installation/Controller.php10
-rw-r--r--plugins/Installation/lang/en.json1
-rw-r--r--plugins/Installation/lang/fr.json56
-rw-r--r--plugins/Installation/lang/tl.json128
-rw-r--r--plugins/Installation/lang/zh-cn.json1
-rw-r--r--plugins/LanguagesManager/lang/tl.json7
-rw-r--r--plugins/LanguagesManager/lang/zh-cn.json3
-rwxr-xr-xplugins/LanguagesManager/tests/Integration/LanguagesManagerTest.php7
-rw-r--r--plugins/LeftMenu/lang/tl.json10
-rw-r--r--plugins/LeftMenu/lang/zh-cn.json6
-rw-r--r--plugins/Live/lang/tl.json37
-rw-r--r--plugins/Live/templates/getSingleVisitSummary.twig2
-rw-r--r--plugins/Live/tests/Integration/APITest.php2
-rw-r--r--plugins/Login/lang/tl.json22
-rw-r--r--plugins/Login/templates/_formErrors.twig9
-rw-r--r--plugins/Login/templates/login.twig9
-rwxr-xr-xplugins/Login/templates/resetPassword.twig10
-rw-r--r--plugins/Login/tests/Integration/LoginTest.php2
-rw-r--r--plugins/MobileMessaging/API.php4
-rw-r--r--plugins/MobileMessaging/lang/tl.json41
-rw-r--r--plugins/MobileMessaging/tests/Integration/MobileMessagingTest.php2
-rw-r--r--plugins/MultiSites/lang/tl.json9
-rw-r--r--plugins/Overlay/Controller.php2
-rw-r--r--plugins/Overlay/lang/tl.json20
-rw-r--r--plugins/PrivacyManager/Controller.php9
-rw-r--r--plugins/PrivacyManager/DoNotTrackHeaderChecker.php113
-rw-r--r--plugins/PrivacyManager/PrivacyManager.php7
-rw-r--r--plugins/PrivacyManager/lang/tl.json63
-rw-r--r--plugins/PrivacyManager/tests/Framework/Mock/Config.php18
-rw-r--r--plugins/PrivacyManager/tests/Unit/DoNotTrackHeaderCheckerTest.php165
-rw-r--r--plugins/Provider/lang/fr.json1
-rw-r--r--plugins/Provider/lang/sl.json1
-rw-r--r--plugins/Provider/lang/tl.json10
-rw-r--r--plugins/Referrers/lang/tl.json56
-rw-r--r--plugins/SEO/MajesticClient.php2
-rw-r--r--plugins/SEO/lang/tl.json15
-rw-r--r--plugins/SEO/tests/Integration/SEOTest.php2
-rw-r--r--plugins/ScheduledReports/API.php11
-rw-r--r--plugins/ScheduledReports/Controller.php2
-rw-r--r--plugins/ScheduledReports/lang/tl.json50
-rw-r--r--plugins/ScheduledReports/tests/Integration/ApiTest.php2
m---------plugins/SecurityInfo0
-rw-r--r--plugins/SegmentEditor/lang/tl.json28
-rw-r--r--plugins/SegmentEditor/tests/Integration/SegmentEditorTest.php2
-rw-r--r--plugins/SitesManager/SitesManager.php1
-rw-r--r--plugins/SitesManager/lang/fr.json2
-rw-r--r--plugins/SitesManager/lang/tl.json76
-rw-r--r--plugins/SitesManager/tests/Integration/SitesManagerTest.php2
m---------plugins/TasksTimetable0
-rw-r--r--plugins/TestRunner/Commands/TestsRunOnAws.php3
-rw-r--r--plugins/Transitions/lang/tl.json28
-rw-r--r--plugins/UserCountry/Controller.php16
-rwxr-xr-xplugins/UserCountry/GeoIPAutoUpdater.php11
-rw-r--r--plugins/UserCountry/lang/sl.json1
-rw-r--r--plugins/UserCountry/lang/tl.json368
-rw-r--r--plugins/UserCountry/tests/Unit/UserCountryTest.php6
-rw-r--r--plugins/UserCountryMap/Controller.php6
-rw-r--r--plugins/UserCountryMap/lang/sl.json4
-rw-r--r--plugins/UserCountryMap/lang/tl.json27
-rw-r--r--plugins/UserSettings/API.php99
-rw-r--r--plugins/UserSettings/Archiver.php28
-rw-r--r--plugins/UserSettings/Columns/Browser.php33
-rw-r--r--plugins/UserSettings/Columns/BrowserVersion.php32
-rw-r--r--plugins/UserSettings/Columns/MobilevsDesktop.php20
-rw-r--r--plugins/UserSettings/Columns/Operatingsystem.php33
-rw-r--r--plugins/UserSettings/Columns/OperatingsystemFamily.php20
-rw-r--r--plugins/UserSettings/Controller.php8
-rw-r--r--plugins/UserSettings/Reports/GetBrowser.php46
-rw-r--r--plugins/UserSettings/Reports/GetBrowserVersion.php47
-rw-r--r--plugins/UserSettings/Reports/GetMobileVsDesktop.php43
-rw-r--r--plugins/UserSettings/Reports/GetOS.php41
-rw-r--r--plugins/UserSettings/Reports/GetOSFamily.php42
-rw-r--r--plugins/UserSettings/Reports/GetScreenType.php (renamed from plugins/UserSettings/Reports/GetWideScreen.php)9
-rw-r--r--plugins/UserSettings/UserSettings.php40
-rw-r--r--plugins/UserSettings/Visitor.php40
-rw-r--r--plugins/UserSettings/functions.php161
-rw-r--r--plugins/UserSettings/images/os/IOS.gifbin591 -> 594 bytes
-rw-r--r--plugins/UserSettings/lang/am.json1
-rw-r--r--plugins/UserSettings/lang/ar.json2
-rw-r--r--plugins/UserSettings/lang/be.json2
-rw-r--r--plugins/UserSettings/lang/bg.json3
-rw-r--r--plugins/UserSettings/lang/ca.json3
-rw-r--r--plugins/UserSettings/lang/cs.json3
-rw-r--r--plugins/UserSettings/lang/da.json3
-rw-r--r--plugins/UserSettings/lang/de.json3
-rw-r--r--plugins/UserSettings/lang/el.json3
-rw-r--r--plugins/UserSettings/lang/en.json4
-rw-r--r--plugins/UserSettings/lang/es.json3
-rw-r--r--plugins/UserSettings/lang/et.json3
-rw-r--r--plugins/UserSettings/lang/eu.json1
-rw-r--r--plugins/UserSettings/lang/fa.json3
-rw-r--r--plugins/UserSettings/lang/fi.json3
-rw-r--r--plugins/UserSettings/lang/fr.json3
-rw-r--r--plugins/UserSettings/lang/he.json2
-rw-r--r--plugins/UserSettings/lang/hi.json3
-rw-r--r--plugins/UserSettings/lang/hr.json1
-rw-r--r--plugins/UserSettings/lang/hu.json1
-rw-r--r--plugins/UserSettings/lang/id.json3
-rw-r--r--plugins/UserSettings/lang/is.json1
-rw-r--r--plugins/UserSettings/lang/it.json3
-rw-r--r--plugins/UserSettings/lang/ja.json3
-rw-r--r--plugins/UserSettings/lang/ka.json1
-rw-r--r--plugins/UserSettings/lang/ko.json3
-rw-r--r--plugins/UserSettings/lang/lt.json2
-rw-r--r--plugins/UserSettings/lang/lv.json2
-rw-r--r--plugins/UserSettings/lang/nb.json3
-rw-r--r--plugins/UserSettings/lang/nl.json3
-rw-r--r--plugins/UserSettings/lang/nn.json1
-rw-r--r--plugins/UserSettings/lang/pl.json3
-rw-r--r--plugins/UserSettings/lang/pt-br.json3
-rw-r--r--plugins/UserSettings/lang/pt.json2
-rw-r--r--plugins/UserSettings/lang/ro.json3
-rw-r--r--plugins/UserSettings/lang/ru.json3
-rw-r--r--plugins/UserSettings/lang/sk.json1
-rw-r--r--plugins/UserSettings/lang/sl.json3
-rw-r--r--plugins/UserSettings/lang/sq.json2
-rw-r--r--plugins/UserSettings/lang/sr.json3
-rw-r--r--plugins/UserSettings/lang/sv.json3
-rw-r--r--plugins/UserSettings/lang/te.json3
-rw-r--r--plugins/UserSettings/lang/th.json3
-rw-r--r--plugins/UserSettings/lang/tl.json216
-rw-r--r--plugins/UserSettings/lang/tr.json2
-rw-r--r--plugins/UserSettings/lang/uk.json1
-rw-r--r--plugins/UserSettings/lang/vi.json3
-rw-r--r--plugins/UserSettings/lang/zh-cn.json3
-rw-r--r--plugins/UserSettings/lang/zh-tw.json2
-rw-r--r--plugins/UserSettings/templates/index.twig20
-rw-r--r--plugins/UserSettings/tests/Unit/UserSettingsTest.php1036
-rw-r--r--plugins/UsersManager/lang/tl.json65
-rw-r--r--plugins/UsersManager/tests/Integration/APITest.php2
-rw-r--r--plugins/UsersManager/tests/Integration/UserPreferencesTest.php2
-rw-r--r--plugins/UsersManager/tests/Integration/UsersManagerTest.php2
-rw-r--r--plugins/VisitFrequency/lang/da.json1
-rw-r--r--plugins/VisitFrequency/lang/fr.json1
-rw-r--r--plugins/VisitFrequency/lang/tl.json25
-rw-r--r--plugins/VisitTime/lang/tl.json18
m---------plugins/VisitorGenerator0
-rw-r--r--plugins/VisitorInterest/lang/tl.json24
-rw-r--r--plugins/VisitsSummary/lang/tl.json27
-rw-r--r--plugins/Widgetize/Controller.php2
-rw-r--r--plugins/Widgetize/lang/tl.json7
-rw-r--r--plugins/ZenMode/lang/tl.json9
-rwxr-xr-xtests/PHPUnit/BenchmarkTestCase.php2
-rw-r--r--tests/PHPUnit/ConsoleCommandTestCase.php3
-rw-r--r--tests/PHPUnit/FakeAccess.php2
-rw-r--r--tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php16
-rw-r--r--tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php2
-rw-r--r--tests/PHPUnit/Fixtures/UITestFixture.php4
-rw-r--r--tests/PHPUnit/Framework/Constraint/ResponseCode.php59
-rw-r--r--tests/PHPUnit/Framework/Fixture.php43
-rw-r--r--tests/PHPUnit/Framework/Mock/File.php62
-rwxr-xr-xtests/PHPUnit/Framework/TestCase/SystemTestCase.php24
-rwxr-xr-xtests/PHPUnit/Framework/TestCase/UnitTestCase.php31
-rw-r--r--tests/PHPUnit/Framework/TestRequest/Collection.php2
-rw-r--r--tests/PHPUnit/Integration/AccessTest.php34
-rw-r--r--tests/PHPUnit/Integration/ArchiveProcessingTest.php29
-rw-r--r--tests/PHPUnit/Integration/AssetManager/UIAssetMinifierTest.php6
-rw-r--r--tests/PHPUnit/Integration/CronArchive/FixedSiteIdsTest.php7
-rw-r--r--tests/PHPUnit/Integration/CronArchive/SharedSiteIdsTest.php5
-rw-r--r--tests/PHPUnit/Integration/DataAccess/ModelTest.php7
-rw-r--r--tests/PHPUnit/Integration/DbTest.php11
-rw-r--r--tests/PHPUnit/Integration/DocumentationGeneratorTest.php (renamed from tests/PHPUnit/Core/API/DocumentationGeneratorTest.php)13
-rw-r--r--tests/PHPUnit/Integration/FilesystemTest.php33
-rw-r--r--tests/PHPUnit/Integration/HttpTest.php17
-rw-r--r--tests/PHPUnit/Integration/JsProxyTest.php22
-rw-r--r--tests/PHPUnit/Integration/LogTest.php37
-rw-r--r--tests/PHPUnit/Integration/OptionTest.php25
-rw-r--r--tests/PHPUnit/Integration/PiwikTest.php7
-rw-r--r--tests/PHPUnit/Integration/Plugin/SettingsTest.php55
-rw-r--r--tests/PHPUnit/Integration/ReleaseCheckListTest.php68
-rw-r--r--tests/PHPUnit/Integration/ReportTest.php6
-rw-r--r--tests/PHPUnit/Integration/SegmentTest.php39
-rw-r--r--tests/PHPUnit/Integration/ServeStaticFileTest.php9
-rwxr-xr-xtests/PHPUnit/Integration/SqlTest.php17
-rw-r--r--tests/PHPUnit/Integration/Tracker/ActionTest.php16
-rw-r--r--tests/PHPUnit/Integration/Tracker/DbTest.php11
-rw-r--r--tests/PHPUnit/Integration/Tracker/Visit2Test.php27
-rw-r--r--tests/PHPUnit/Integration/Tracker/VisitTest.php15
-rw-r--r--tests/PHPUnit/Integration/TrackerTest.php2
-rw-r--r--tests/PHPUnit/Integration/TravisEnvironmentTest.php22
-rw-r--r--tests/PHPUnit/Integration/UpdaterTest.php7
-rw-r--r--tests/PHPUnit/Integration/ViewDataTable/ManagerTest.php8
-rw-r--r--tests/PHPUnit/Integration/WidgetsListTest.php25
-rwxr-xr-xtests/PHPUnit/System/AnnotationsTest.php2
-rw-r--r--tests/PHPUnit/System/AutoSuggestAPITest.php26
-rwxr-xr-xtests/PHPUnit/System/BlobReportLimitingTest.php4
-rw-r--r--tests/PHPUnit/System/CliMultiTest.php1
-rw-r--r--tests/PHPUnit/System/FrontControllerTest.php2
-rwxr-xr-xtests/PHPUnit/System/OneVisitorNoKeywordSpecifiedTest.php7
-rwxr-xr-xtests/PHPUnit/System/OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTestsTest.php2
-rwxr-xr-xtests/PHPUnit/System/OneVisitorTwoVisitsWithCookieSupportTest.php2
-rwxr-xr-xtests/PHPUnit/System/RowEvolutionTest.php8
-rwxr-xr-xtests/PHPUnit/System/TrackerTest.php97
-rwxr-xr-xtests/PHPUnit/System/TwoVisitsWithCustomVariablesSegmentMatchNONETest.php7
-rw-r--r--tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_day.xml9
-rw-r--r--tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_year.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_range.xml560
-rw-r--r--tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_day.xml160
-rw-r--r--tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_month.xml160
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml52
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml87
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml35
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml640
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml14
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml46
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml49
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml26
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml35
-rw-r--r--tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getScreenType_month.xml39
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortAsc__Live.getLastVisitsDetails_month.xml7
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisitAsc__Live.getLastVisitsDetails_month.xml112
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisit__Live.getLastVisitsDetails_month.xml112
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByVisitCount__Live.getLastVisitsDetails_month.xml112
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortDesc__Live.getLastVisitsDetails_month.xml112
-rw-r--r--tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest__Live.getLastVisitsDetails_month.xml160
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getBrowsers_day.xml14
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getType_day.xml40
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getBrowserVersion_day.xml1
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getMobileVsDesktop_day.xml41
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOSFamily_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOS_day.xml1
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getScreenType_day.xml14
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrand_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserEngines_day.xml14
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserFamilies_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserVersions_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowsers_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getModel_day.xml14
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsFamilies_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsVersions_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getType_day.xml55
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__Live.getLastVisitsDetails_day.xml32
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getBrowserVersion_day.xml1
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getMobileVsDesktop_day.xml41
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOSFamily_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOS_day.xml1
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getScreenType_day.xml15
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Live.getLastVisitsDetails_day.xml66
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Referrers.getKeywords_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_OneVisitor_SeveralDays_ImportedInRandomOrderTest_shouldShowOneVisit_InEachOfThreeDays__Live.getLastVisitsDetails_month.xml48
-rw-r--r--tests/PHPUnit/System/expected/test_RowEvolution_mobileDesktop__API.getRowEvolution_day.xml4
-rw-r--r--tests/PHPUnit/System/expected/test_TimezonesTest__Live.getLastVisitsDetails_day.xml16
-rw-r--r--tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_csv__ScheduledReports.generateReport_month.original.csv52
-rw-r--r--tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_month.original.html849
-rw-r--r--tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_month.original.html809
-rw-r--r--tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_month.original.pdfbin510894 -> 502673 bytes
-rw-r--r--tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml222
-rw-r--r--tests/PHPUnit/System/expected/test_apiGetReportMetadata_year__LanguagesManager.getAvailableLanguageNames.xml5
-rw-r--r--tests/PHPUnit/System/expected/test_csvExport__Live.getLastVisitsDetails_day.csvbin7708 -> 7680 bytes
-rwxr-xr-xtests/PHPUnit/System/expected/test_ecommerceOrderWithItems_LiveEcommerceStatusOrdered__Live.getLastVisitsDetails_day.xml32
-rwxr-xr-xtests/PHPUnit/System/expected/test_ecommerceOrderWithItems__Live.getLastVisitsDetails_day.xml48
-rw-r--r--tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_csv__ScheduledReports.generateReport_week.original.csv37
-rw-r--r--tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_week.original.html474
-rw-r--r--tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_week.original.html434
-rw-r--r--tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_week.original.pdfbin527977 -> 521344 bytes
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_day.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_week.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_day.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_week.xml10
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit__DevicesDetection.getBrowsers_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_noVisit__UserSettings.getScreenType_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisits.xml48
-rw-r--r--tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisitsDetails_range.xml48
-rw-r--r--tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getVisitorProfile.xml32
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getBrowserVersions_day.xml (renamed from tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getBrowserVersion_day.xml)3
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getOsVersions_day.xml (renamed from tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getOS_day.xml)7
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getConfiguration_day.xml2
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getBrowserVersions_day.xml (renamed from tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getBrowserVersion_day.xml)3
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getOsVersions_day.xml (renamed from tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getOS_day.xml)7
-rw-r--r--tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getConfiguration_day.xml2
-rw-r--r--tests/PHPUnit/TestingEnvironment.php2
m---------tests/PHPUnit/UI0
-rw-r--r--tests/PHPUnit/Unit/CliMulti/OutputTest.php33
-rw-r--r--tests/PHPUnit/Unit/CliMulti/ProcessTest.php27
-rw-r--r--tests/PHPUnit/Unit/CommonTest.php44
-rw-r--r--tests/PHPUnit/Unit/DeprecatedMethodsTest.php14
-rw-r--r--tests/PHPUnit/Unit/FilesystemTest.php102
-rw-r--r--tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php15
-rw-r--r--tests/javascript/index.php4
-rw-r--r--tests/resources/OmniFixture-dump.sql.gzbin650895 -> 658143 bytes
-rw-r--r--tests/resources/TestPluginLogClass.php3
491 files changed, 7442 insertions, 7669 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1b7bb934b1..d85406f477 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,7 +1,31 @@
# Piwik Platform Changelog
-This is a changelog for Piwik platform developers. All changes for our HTTP API's, Plugins, Themes, etc will be listed here.
+This is a changelog for Piwik platform developers. All changes for our HTTP API's, Plugins, Themes, etc will be listed here.
+## Piwik 2.10.0
+
+### Breaking Changes
+* Some duplicate reports from UserSettings plugin have been removed. Widget URLs for those reports will still work till May 1st 2015. Please update those to the new reports of DevicesDetection plugin.
+
+### Deprecations
+* The API method `UserSettings.getBrowserVersion` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getBrowserVersions` instead
+* The API method `UserSettings.getBrowser` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getBrowsers` instead
+* The API method `UserSettings.getOSFamily` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getOsFamilies` instead
+* The API method `UserSettings.getOS` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getOsVersions` instead
+* The API method `UserSettings.getMobileVsDesktop` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getType` instead
+* The API method `UserSettings.getBrowserType` is deprecated and will be removed from May 1st 2015. Use `DevicesDetection.getBrowserEngines` instead
+* The API method `UserSettings.getWideScreen` is deprecated and will be removed from May 1st 2015. Use `UserSettings.getScreenType` instead
+
+## Piwik 2.9.1
+
+### Breaking Changes
+* The HTTP Tracker API does now respond with a HTTP 400 instead of a HTTP 500 in case an invalid `idsite` is used
+
+### New APIs
+* New URL parameter `send_image=0` in the [HTTP Tracking API](http://developer.piwik.org/api-reference/tracking-api) to receive a HTTP 204 response code instead of a GIF image. This improves performance and can fix errors if images are not allowed to be obtained directly (eg Chrome Apps).
+
+### New commands
+* `core:plugin list` lists all plugins currently activated in Piwik.
## Piwik 2.10.0
@@ -46,13 +70,13 @@ This is a changelog for Piwik platform developers. All changes for our HTTP API'
### Deprecations
* The `Piwik::setUserHasSuperUserAccess` method is deprecated, instead use Access::doAsSuperUser. This method will ensure that super user access is properly rescinded after the callback finishes.
-* The class is `\IntegrationTestCase` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\SystemTestCase` instead.
-* The class is `\DatabaseTestCase` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\IntegrationTestCase` instead.
-* The class is `\BenchmarkTestCase` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\BenchmarkTestCase` instead.
-* The class is `\ConsoleCommandTestCase` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\ConsoleCommandTestCase` instead.
-* The class is `\FakeAccess` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\Mock\FakeAccess` instead.
-* The class is `\Piwik\Tests\Fixture` deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\Fixture` instead.
-* The class is `\Piwik\Tests\OverrideLogin` deprecated and will be removed from February 6ths 2015. Use `\Piwik\Framework\Framework\OverrideLogin` instead.
+* The class `\IntegrationTestCase` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\SystemTestCase` instead.
+* The class `\DatabaseTestCase` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\IntegrationTestCase` instead.
+* The class `\BenchmarkTestCase` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\BenchmarkTestCase` instead.
+* The class `\ConsoleCommandTestCase` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\TestCase\ConsoleCommandTestCase` instead.
+* The class `\FakeAccess` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\Mock\FakeAccess` instead.
+* The class `\Piwik\Tests\Fixture` is deprecated and will be removed from February 6th 2015. Use `\Piwik\Tests\Framework\Fixture` instead.
+* The class `\Piwik\Tests\OverrideLogin` is deprecated and will be removed from February 6ths 2015. Use `\Piwik\Framework\Framework\OverrideLogin` instead.
### New API Features
* The pivotBy and related query parameters can be used to pivot reports by another dimension. Read more about the new query parameters [here](http://developer.piwik.org/api-reference/reporting-api#optional-api-parameters).
@@ -168,3 +192,5 @@ We are using `@since` annotations in case we are introducing new API's to make i
### Library updates
### Internal change
-->
+
+Find the general Piwik Changelogs for each release at [piwik.org/changelog](http://piwik.org/changelog/)
diff --git a/LEGALNOTICE b/LEGALNOTICE
index c438523071..e6c5a1e9c0 100644
--- a/LEGALNOTICE
+++ b/LEGALNOTICE
@@ -69,10 +69,6 @@ SEPARATELY LICENSED COMPONENTS AND LIBRARIES
Link: https://github.com/piwik/device-detector
License: LGPL
- Name: UserAgentParser
- Link: https://github.com/piwik/piwik/blob/master/libs/UserAgentParser/
- License: New BSD
-
Name: Piwik/Decompress
Link: https://github.com/piwik/component-decompress
License: LGPL v3.0
@@ -259,10 +255,6 @@ THIRD-PARTY CONTENT
Notes:
- used in ImageGraph plugin
- Name: plugins/CorePluginsAdmin/images/themes.png
- Link: https://www.iconfinder.com/icons/17022/colors_draw_paint_icon
- License: Free for commercial use
-
Name: plugins/Feedback/angularjs/ratefeature/thumbs-down.png
Link: https://www.iconfinder.com/icons/216428/down_thumbs_icon
License: Creative Commons (Attribution-Share Alike 3.0 Unported)
@@ -271,10 +263,6 @@ THIRD-PARTY CONTENT
Link: https://www.iconfinder.com/icons/216429/thumbs_up_icon
License: Creative Commons (Attribution-Share Alike 3.0 Unported)
- Name: plugins/CorePluginsAdmin/images/plugins.png
- Link: http://findicons.com/icon/94051/tools_wizard?id=396912
- License: GNU/GPL
-
Name: plugins/Insights/images/idea.png
Link: https://www.iconfinder.com/icons/6074/brainstorm_bulb_idea_jabber_light_icon
License: GPL
diff --git a/config/global.ini.php b/config/global.ini.php
index 516497ada1..a8025027c0 100644
--- a/config/global.ini.php
+++ b/config/global.ini.php
@@ -571,13 +571,13 @@ ignore_visits_cookie_name = piwik_ignore
; Comma separated list of variable names that will be read to define a Campaign name, for example CPC campaign
; Example: If a visitor first visits 'index.php?piwik_campaign=Adwords-CPC' then it will be counted as a campaign referrer named 'Adwords-CPC'
; Includes by default the GA style campaign parameters
-campaign_var_name = "pk_campaign,piwik_campaign,utm_campaign,utm_source,utm_medium"
+campaign_var_name = "pk_cpn,pk_campaign,piwik_campaign,utm_campaign,utm_source,utm_medium"
; Comma separated list of variable names that will be read to track a Campaign Keyword
; Example: If a visitor first visits 'index.php?piwik_campaign=Adwords-CPC&piwik_kwd=My killer keyword' ;
; then it will be counted as a campaign referrer named 'Adwords-CPC' with the keyword 'My killer keyword'
; Includes by default the GA style campaign keyword parameter utm_term
-campaign_keyword_var_name = "pk_kwd,piwik_kwd,pk_keyword,utm_term"
+campaign_keyword_var_name = "pk_kwd,pk_keyword,piwik_kwd,utm_term"
; maximum length of a Page Title or a Page URL recorded in the log_action.name table
page_maximum_length = 1024;
diff --git a/core/ArchiveProcessor/PluginsArchiver.php b/core/ArchiveProcessor/PluginsArchiver.php
index e0618f8343..d1bb950d38 100644
--- a/core/ArchiveProcessor/PluginsArchiver.php
+++ b/core/ArchiveProcessor/PluginsArchiver.php
@@ -96,7 +96,7 @@ class PluginsArchiver
$archiver = new $archiverClass($this->archiveProcessor);
if (!$archiver->isEnabled()) {
- Log::debug("PluginsArchiver::%s: Skipping archiving for plugin '%s'.", __FUNCTION__, $pluginName);
+ Log::verbose("PluginsArchiver::%s: Skipping archiving for plugin '%s'.", __FUNCTION__, $pluginName);
continue;
}
@@ -111,7 +111,7 @@ class PluginsArchiver
$archiver->aggregateMultipleReports();
}
} else {
- Log::debug("PluginsArchiver::%s: Not archiving reports for plugin '%s'.", __FUNCTION__, $pluginName);
+ Log::verbose("PluginsArchiver::%s: Not archiving reports for plugin '%s'.", __FUNCTION__, $pluginName);
}
Manager::getInstance()->deleteAll($latestUsedTableId);
diff --git a/core/CliMulti.php b/core/CliMulti.php
index aee8d7e35d..8a1bffd773 100644
--- a/core/CliMulti.php
+++ b/core/CliMulti.php
@@ -152,6 +152,14 @@ class CliMulti {
return false;
}
+ $pid = $process->getPid();
+ foreach ($this->outputs as $output) {
+ if ($output->getOutputId() === $pid && $output->isAbnormal()) {
+ $process->finishProcess();
+ return true;
+ }
+ }
+
if ($process->hasFinished()) {
// prevent from checking this process over and over again
unset($this->processes[$index]);
diff --git a/core/CliMulti/Output.php b/core/CliMulti/Output.php
index 67ecf3543b..e4feb1a805 100644
--- a/core/CliMulti/Output.php
+++ b/core/CliMulti/Output.php
@@ -13,6 +13,7 @@ use Piwik\Filesystem;
class Output {
private $tmpFile = '';
+ private $outputId = null;
public function __construct($outputId)
{
@@ -23,7 +24,13 @@ class Output {
$dir = CliMulti::getTmpPath();
Filesystem::mkdir($dir);
- $this->tmpFile = $dir . '/' . $outputId . '.output';
+ $this->tmpFile = $dir . '/' . $outputId . '.output';
+ $this->outputId = $outputId;
+ }
+
+ public function getOutputId()
+ {
+ return $this->outputId;
}
public function write($content)
@@ -36,6 +43,13 @@ class Output {
return $this->tmpFile;
}
+ public function isAbnormal()
+ {
+ $size = Filesystem::getFileSize($this->tmpFile, 'MB');
+
+ return $size !== null && $size >= 100;
+ }
+
public function exists()
{
return file_exists($this->tmpFile);
diff --git a/core/CliMulti/Process.php b/core/CliMulti/Process.php
index 15dc539e59..cd75a1e6ef 100644
--- a/core/CliMulti/Process.php
+++ b/core/CliMulti/Process.php
@@ -24,6 +24,7 @@ class Process
private $pidFile = '';
private $timeCreation = null;
private $isSupported = null;
+ private $pid = null;
public function __construct($pid)
{
@@ -37,10 +38,16 @@ class Process
$this->isSupported = self::isSupported();
$this->pidFile = $pidDir . '/' . $pid . '.pid';
$this->timeCreation = time();
+ $this->pid = $pid;
$this->markAsNotStarted();
}
+ public function getPid()
+ {
+ return $this->pid;
+ }
+
private function markAsNotStarted()
{
$content = $this->getPidFileContent();
@@ -97,6 +104,11 @@ class Process
return false;
}
+ if (!$this->pidFileSizeIsNormal()) {
+ $this->finishProcess();
+ return false;
+ }
+
if ($this->isProcessStillRunning($content)) {
return true;
}
@@ -108,6 +120,13 @@ class Process
return false;
}
+ private function pidFileSizeIsNormal()
+ {
+ $size = Filesystem::getFileSize($this->pidFile);
+
+ return $size !== null && $size < 500;
+ }
+
public function finishProcess()
{
Filesystem::deleteFileIfExists($this->pidFile);
diff --git a/core/Common.php b/core/Common.php
index 823e884af1..b5ed581d82 100644
--- a/core/Common.php
+++ b/core/Common.php
@@ -462,7 +462,7 @@ class Common
// we deal w/ json differently
if ($varType == 'json') {
$value = self::undoMagicQuotes($requestArrayToUse[$varName]);
- $value = self::json_decode($value, $assoc = true);
+ $value = json_decode($value, $assoc = true);
return self::sanitizeInputValues($value, $alreadyStripslashed = true);
}
@@ -471,7 +471,13 @@ class Common
$ok = false;
if ($varType === 'string') {
- if (is_string($value)) $ok = true;
+ if (is_string($value) || is_int($value)) {
+ $ok = true;
+ } else if (is_float($value)) {
+ $value = Common::forceDotAsSeparatorForDecimalPoint($value);
+ $ok = true;
+ }
+
} elseif ($varType === 'integer') {
if ($value == (string)(int)$value) $ok = true;
} elseif ($varType === 'float') {
@@ -1150,6 +1156,48 @@ class Common
}
/**
+ * Sends the given response code if supported.
+ *
+ * @param int $code Eg 204
+ *
+ * @throws Exception
+ */
+ public static function sendResponseCode($code)
+ {
+ $messages = array(
+ 200 => 'Ok',
+ 204 => 'No Response',
+ 301 => 'Moved Permanently',
+ 302 => 'Found',
+ 304 => 'Not Modified',
+ 400 => 'Bad Request',
+ 401 => 'Unauthorized',
+ 403 => 'Forbidden',
+ 404 => 'Not Found',
+ 500 => 'Internal Server Error'
+ );
+
+ if (!array_key_exists($code, $messages)) {
+ throw new Exception('Response code not supported: ' . $code);
+ }
+
+ if (strpos(PHP_SAPI, '-fcgi') === false) {
+ $key = $_SERVER['SERVER_PROTOCOL'];
+
+ if (strlen($key) > 15 || empty($key)) {
+ $key = 'HTTP/1.1';
+ }
+
+ } else {
+ // FastCGI
+ $key = 'Status:';
+ }
+
+ $message = $messages[$code];
+ Common::sendHeader($key . ' ' . $code . ' ' . $message);
+ }
+
+ /**
* Returns the ID of the current LocationProvider (see UserCountry plugin code) from
* the Tracker cache.
*/
diff --git a/core/CronArchive.php b/core/CronArchive.php
index 5cf42664a4..151298fc6a 100644
--- a/core/CronArchive.php
+++ b/core/CronArchive.php
@@ -453,9 +453,9 @@ class CronArchive
// (*) If there was some old reports invalidated for this website
// we make sure all these old reports are triggered at least once
- $websiteIsOldDataInvalidate = $this->isOldReportInvalidatedForWebsite($idSite);
+ $websiteInvalidatedShouldReprocess = $this->isOldReportInvalidatedForWebsite($idSite);
- if ($websiteIsOldDataInvalidate) {
+ if ($websiteInvalidatedShouldReprocess) {
$shouldArchivePeriods = true;
}
@@ -473,7 +473,7 @@ class CronArchive
$skipDayArchive = $existingArchiveIsValid;
// Invalidate old website forces the archiving for this site
- $skipDayArchive = $skipDayArchive && !$websiteIsOldDataInvalidate;
+ $skipDayArchive = $skipDayArchive && !$websiteInvalidatedShouldReprocess;
// Also reprocess when day has ended since last run
if ($dayHasEndedMustReprocess
@@ -527,6 +527,14 @@ class CronArchive
Option::set($this->lastRunKey($idSite, "periods"), time());
}
+ if(!$success) {
+ // cancel marking the site as reprocessed
+ if($websiteInvalidatedShouldReprocess) {
+ $store = new InvalidatedReports();
+ $store->addInvalidatedSitesToReprocess(array($idSite));
+ }
+ }
+
$this->archivedPeriodsArchivesWebsite++;
$requestsWebsite = $this->requests - $requestsBefore;
diff --git a/core/DataArray.php b/core/DataArray.php
index 7515ef8699..2eab0bbab5 100644
--- a/core/DataArray.php
+++ b/core/DataArray.php
@@ -99,6 +99,11 @@ class DataArray
return;
}
+ // Edge case fail safe
+ if(!isset($oldRowToUpdate[Metrics::INDEX_NB_VISITS])) {
+ return;
+ }
+
$oldRowToUpdate[Metrics::INDEX_NB_VISITS] += $newRowToAdd[Metrics::INDEX_NB_VISITS];
$oldRowToUpdate[Metrics::INDEX_NB_ACTIONS] += $newRowToAdd[Metrics::INDEX_NB_ACTIONS];
$oldRowToUpdate[Metrics::INDEX_NB_UNIQ_VISITORS] += $newRowToAdd[Metrics::INDEX_NB_UNIQ_VISITORS];
diff --git a/core/Db.php b/core/Db.php
index 556bd2ada5..fa26f34f02 100644
--- a/core/Db.php
+++ b/core/Db.php
@@ -46,7 +46,7 @@ class Db
return Tracker::getDatabase();
}
- if (self::$connection === null) {
+ if (!self::hasDatabaseObject()) {
self::createDatabaseObject();
}
@@ -104,6 +104,16 @@ class Db
}
/**
+ * Detect whether a database object is initialized / created or not.
+ *
+ * @internal
+ */
+ public static function hasDatabaseObject()
+ {
+ return isset(self::$connection);
+ }
+
+ /**
* Disconnects and destroys the database connection.
*
* For tests.
diff --git a/core/Exception/InvalidRequestParameterException.php b/core/Exception/InvalidRequestParameterException.php
new file mode 100644
index 0000000000..13ead2e716
--- /dev/null
+++ b/core/Exception/InvalidRequestParameterException.php
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ *
+ */
+namespace Piwik\Exception;
+
+class InvalidRequestParameterException extends Exception
+{
+} \ No newline at end of file
diff --git a/core/Exception/UnexpectedWebsiteFoundException.php b/core/Exception/UnexpectedWebsiteFoundException.php
new file mode 100644
index 0000000000..68178d8599
--- /dev/null
+++ b/core/Exception/UnexpectedWebsiteFoundException.php
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ *
+ */
+namespace Piwik\Exception;
+
+class UnexpectedWebsiteFoundException extends Exception
+{
+} \ No newline at end of file
diff --git a/core/Filesystem.php b/core/Filesystem.php
index ffeef1f3be..125c47bfda 100644
--- a/core/Filesystem.php
+++ b/core/Filesystem.php
@@ -375,6 +375,40 @@ class Filesystem
}
/**
+ * Get the size of a file in the specified unit.
+ *
+ * @param string $pathToFile
+ * @param string $unit eg 'B' for Byte, 'KB', 'MB', 'GB', 'TB'.
+ *
+ * @return float|null Returns null if file does not exist or the size of the file in the specified unit
+ *
+ * @throws Exception In case the unit is invalid
+ */
+ public static function getFileSize($pathToFile, $unit = 'B')
+ {
+ $unit = strtoupper($unit);
+ $units = array('TB' => pow(1024, 4),
+ 'GB' => pow(1024, 3),
+ 'MB' => pow(1024, 2),
+ 'KB' => 1024,
+ 'B' => 1);
+
+ if (!array_key_exists($unit, $units)) {
+ throw new Exception('Invalid unit given');
+ }
+
+ if (!file_exists($pathToFile)) {
+ return;
+ }
+
+ $filesize = filesize($pathToFile);
+ $factor = $units[$unit];
+ $converted = $filesize / $factor;
+
+ return $converted;
+ }
+
+ /**
* @param $path
* @return int
*/
diff --git a/core/Mail.php b/core/Mail.php
index 179b1221ab..1e9ef0bb52 100644
--- a/core/Mail.php
+++ b/core/Mail.php
@@ -107,7 +107,7 @@ class Mail extends Zend_Mail
$tr = new \Zend_Mail_Transport_Smtp($mailConfig['host'], $smtpConfig);
Mail::setDefaultTransport($tr);
- ini_set("smtp_port", $mailConfig['port']);
+ @ini_set("smtp_port", $mailConfig['port']);
}
public function send($transport = NULL)
diff --git a/core/Piwik.php b/core/Piwik.php
index 625a7cf9f8..80ed01cd8c 100644
--- a/core/Piwik.php
+++ b/core/Piwik.php
@@ -468,6 +468,7 @@ class Piwik
* in case another Login plugin is being used.
*
* @return string
+ * @api
*/
public static function getLoginPluginName()
{
diff --git a/core/Plugin/MetadataLoader.php b/core/Plugin/MetadataLoader.php
index 34bb90dcdc..e75bc58338 100644
--- a/core/Plugin/MetadataLoader.php
+++ b/core/Plugin/MetadataLoader.php
@@ -95,7 +95,7 @@ class MetadataLoader
return array();
}
- $info = Common::json_decode($json, $assoc = true);
+ $info = json_decode($json, $assoc = true);
if (!is_array($info)
|| empty($info)
) {
diff --git a/core/Plugin/Settings.php b/core/Plugin/Settings.php
index 57f8c813fb..0b0bb0953a 100644
--- a/core/Plugin/Settings.php
+++ b/core/Plugin/Settings.php
@@ -58,6 +58,9 @@ abstract class Settings implements StorageInterface
private $introduction;
private $pluginName;
+ // for lazy loading of setting values
+ private $settingValuesLoaded = false;
+
/**
* Constructor.
*/
@@ -76,7 +79,6 @@ abstract class Settings implements StorageInterface
}
$this->init();
- $this->loadSettings();
}
/**
@@ -126,7 +128,7 @@ abstract class Settings implements StorageInterface
});
$settings2 = $settings;
-
+
uasort($settings, function ($setting1, $setting2) use ($settings2) {
/** @var Setting $setting1 */ /** @var Setting $setting2 */
@@ -166,6 +168,8 @@ abstract class Settings implements StorageInterface
*/
public function save()
{
+ $this->loadSettingsIfNotDoneYet();
+
Option::set($this->getOptionKey(), serialize($this->settingsValues));
$pluginName = $this->getPluginName();
@@ -195,6 +199,7 @@ abstract class Settings implements StorageInterface
Option::delete($this->getOptionKey());
$this->settingsValues = array();
+ $this->settingValuesLoaded = false;
}
/**
@@ -210,6 +215,7 @@ abstract class Settings implements StorageInterface
{
$this->checkIsValidSetting($setting->getName());
$this->checkHasEnoughReadPermission($setting);
+ $this->loadSettingsIfNotDoneYet();
if (array_key_exists($setting->getKey(), $this->settingsValues)) {
@@ -247,6 +253,7 @@ abstract class Settings implements StorageInterface
settype($value, $setting->type);
}
+ $this->loadSettingsIfNotDoneYet();
$this->settingsValues[$setting->getKey()] = $value;
}
@@ -259,6 +266,7 @@ abstract class Settings implements StorageInterface
public function removeSettingValue(Setting $setting)
{
$this->checkHasEnoughWritePermission($setting);
+ $this->loadSettingsIfNotDoneYet();
$key = $setting->getKey();
@@ -298,6 +306,16 @@ abstract class Settings implements StorageInterface
return 'Plugin_' . $this->pluginName . '_Settings';
}
+ private function loadSettingsIfNotDoneYet()
+ {
+ if ($this->settingValuesLoaded) {
+ return;
+ }
+
+ $this->settingValuesLoaded = true;
+ $this->loadSettings();
+ }
+
private function loadSettings()
{
$values = Option::get($this->getOptionKey());
@@ -412,7 +430,7 @@ abstract class Settings implements StorageInterface
$setting->validate = function ($value) use ($setting, $pluginName) {
$errorMsg = Piwik::translate('CoreAdminHome_PluginSettingsValueNotAllowed',
- array($setting->title, $pluginName));
+ array($setting->title, $pluginName));
if (is_array($value) && $setting->type == Settings::TYPE_ARRAY) {
foreach ($value as $val) {
diff --git a/core/ProxyHttp.php b/core/ProxyHttp.php
index 69f7144b44..b2939e9a39 100644
--- a/core/ProxyHttp.php
+++ b/core/ProxyHttp.php
@@ -66,7 +66,7 @@ class ProxyHttp
{
// if the file cannot be found return HTTP status code '404'
if (!file_exists($file)) {
- self::setHttpStatus('404 Not Found');
+ Common::sendResponseCode(404);
return;
}
@@ -87,7 +87,7 @@ class ProxyHttp
// Return 304 if the file has not modified since
if ($modifiedSince === $lastModified) {
- self::setHttpStatus('304 Not Modified');
+ Common::sendResponseCode(304);
return;
}
@@ -158,7 +158,7 @@ class ProxyHttp
}
if (!_readfile($file, $byteStart, $byteEnd)) {
- self::setHttpStatus('505 Internal server error');
+ Common::sendResponseCode(500);
}
}
@@ -220,24 +220,6 @@ class ProxyHttp
}
/**
- * Set response header, e.g., HTTP/1.0 200 Ok
- *
- * @param string $status Status
- * @return bool
- */
- protected static function setHttpStatus($status)
- {
- if (strpos(PHP_SAPI, '-fcgi') === false) {
- $key = $_SERVER['SERVER_PROTOCOL'];
- } else {
- // FastCGI
- $key = 'Status:';
- }
-
- Common::sendHeader($key . ' ' . $status);
- }
-
- /**
* Returns a formatted Expires HTTP header for a certain number of days in the future. The result
* can be used in a call to `header()`.
*/
diff --git a/core/Sequence.php b/core/Sequence.php
index fa95b0b07c..7a25c23959 100644
--- a/core/Sequence.php
+++ b/core/Sequence.php
@@ -22,6 +22,10 @@ use Piwik\Db\AdapterInterface;
*/
class Sequence
{
+ const TABLE_NAME = 'sequence';
+ /**
+ * @var string
+ */
private $name;
/**
@@ -30,20 +34,22 @@ class Sequence
private $db;
/**
+ * @var string
+ */
+ private $table;
+
+ /**
* The name of the table or sequence you want to get an id for.
*
* @param string $name eg 'archive_numeric_2014_11'
* @param AdapterInterface $db You can optionally pass a DB adapter to make it work against another database.
+ * @param string|null $tablePrefix
*/
- public function __construct($name, $db = null)
+ public function __construct($name, $db = null, $tablePrefix = null)
{
$this->name = $name;
$this->db = $db ?: Db::get();
- }
-
- private function getTableName()
- {
- return Common::prefixTable('sequence');
+ $this->table = $this->getTableName($tablePrefix);
}
/**
@@ -58,9 +64,7 @@ class Sequence
{
$initialValue = (int) $initialValue;
- $table = $this->getTableName();
-
- $this->db->insert($table, array('name' => $this->name, 'value' => $initialValue));
+ $this->db->insert($this->table, array('name' => $this->name, 'value' => $initialValue));
return $initialValue;
}
@@ -72,7 +76,7 @@ class Sequence
*/
public function exists()
{
- $query = $this->db->query('SELECT * FROM ' . $this->getTableName() . ' WHERE name = ?', $this->name);
+ $query = $this->db->query('SELECT * FROM ' . $this->table . ' WHERE name = ?', $this->name);
return $query->rowCount() > 0;
}
@@ -86,8 +90,7 @@ class Sequence
*/
public function getNextId()
{
- $table = $this->getTableName();
- $sql = 'UPDATE ' . $table . ' SET value = LAST_INSERT_ID(value + 1) WHERE name = ?';
+ $sql = 'UPDATE ' . $this->table . ' SET value = LAST_INSERT_ID(value + 1) WHERE name = ?';
$result = $this->db->query($sql, array($this->name));
$rowCount = $result->rowCount();
@@ -108,8 +111,7 @@ class Sequence
*/
public function getCurrentId()
{
- $table = $this->getTableName();
- $sql = 'SELECT value FROM ' . $table . ' WHERE name = ?';
+ $sql = 'SELECT value FROM ' . $this->table . ' WHERE name = ?';
$id = $this->db->fetchOne($sql, array($this->name));
@@ -117,4 +119,9 @@ class Sequence
return (int) $id;
}
}
+
+ private function getTableName($prefix)
+ {
+ return ($prefix !== null) ? $prefix . self::TABLE_NAME : Common::prefixTable(self::TABLE_NAME);
+ }
}
diff --git a/core/SettingsPiwik.php b/core/SettingsPiwik.php
index 1d972a7f88..1291c7fe13 100644
--- a/core/SettingsPiwik.php
+++ b/core/SettingsPiwik.php
@@ -331,6 +331,17 @@ class SettingsPiwik
}
}
+ /**
+ * Returns true if Piwik is deployed using git
+ * FAQ: http://piwik.org/faq/how-to-install/faq_18271/
+ *
+ * @return bool
+ */
+ public static function isGitDeployment()
+ {
+ return file_exists(PIWIK_INCLUDE_PATH . '/.git/HEAD');
+ }
+
public static function getCurrentGitBranch()
{
$file = PIWIK_INCLUDE_PATH . '/.git/HEAD';
@@ -417,4 +428,5 @@ class SettingsPiwik
{
return Config::getInstance()->General['force_ssl'] == 1;
}
+
}
diff --git a/core/Site.php b/core/Site.php
index 96b7316b76..deefbd4911 100644
--- a/core/Site.php
+++ b/core/Site.php
@@ -10,6 +10,7 @@
namespace Piwik;
use Exception;
+use Piwik\Exception\UnexpectedWebsiteFoundException;
use Piwik\Plugins\SitesManager\API;
/**
@@ -95,7 +96,7 @@ class Site
protected static function setSite($idSite, $infoSite)
{
if (empty($idSite) || empty($infoSite)) {
- throw new Exception("An unexpected website was found, check idSite in the request.");
+ throw new UnexpectedWebsiteFoundException("An unexpected website was found, check idSite in the request.");
}
/**
diff --git a/core/Tracker.php b/core/Tracker.php
index ed911e55f6..d6b2d9236f 100644
--- a/core/Tracker.php
+++ b/core/Tracker.php
@@ -9,6 +9,8 @@
namespace Piwik;
use Exception;
+use Piwik\Exception\InvalidRequestParameterException;
+use Piwik\Exception\UnexpectedWebsiteFoundException;
use Piwik\Plugins\PrivacyManager\Config as PrivacyManagerConfig;
use Piwik\Plugins\SitesManager\SiteUrls;
use Piwik\Tracker\Cache;
@@ -412,15 +414,16 @@ class Tracker
*
* @param Exception $e
* @param bool $authenticated
+ * @param int $statusCode eg 500
*/
- protected function exitWithException($e, $authenticated = false)
+ protected function exitWithException($e, $authenticated = false, $statusCode = 500)
{
if ($this->hasRedirectUrl()) {
$this->performRedirectToUrlIfSet();
exit;
}
- Common::sendHeader('HTTP/1.1 500 Internal Server Error');
+ Common::sendResponseCode($statusCode);
error_log(sprintf("Error in Piwik (tracker): %s", str_replace("\n", " ", $this->getMessageFromException($e))));
if ($this->usingBulkTracking) {
@@ -436,7 +439,7 @@ class Tracker
$result['message'] = $this->getMessageFromException($e);
}
Common::sendHeader('Content-Type: application/json');
- echo Common::json_encode($result);
+ echo json_encode($result);
die(1);
exit;
}
@@ -454,8 +457,9 @@ class Tracker
Common::sendHeader('Content-Type: text/html; charset=utf-8');
echo $this->getMessageFromException($e);
} else {
- $this->outputTransparentGif();
+ $this->sendResponse();
}
+
die(1);
exit;
}
@@ -496,12 +500,12 @@ class Tracker
$this->outputAccessControlHeaders();
Common::sendHeader('Content-Type: application/json');
- echo Common::json_encode($result);
+ echo json_encode($result);
exit;
}
switch ($this->getState()) {
case self::STATE_LOGGING_DISABLE:
- $this->outputTransparentGif ();
+ $this->sendResponse();
Common::printDebug("Logging disabled, display transparent logo");
break;
@@ -513,7 +517,7 @@ class Tracker
case self::STATE_NOSCRIPT_REQUEST:
case self::STATE_NOTHING_TO_NOTICE:
default:
- $this->outputTransparentGif ();
+ $this->sendResponse();
Common::printDebug("Nothing to notice => default behaviour");
break;
}
@@ -648,7 +652,7 @@ class Tracker
return $visit;
}
- protected function outputTransparentGif ()
+ private function sendResponse()
{
if (isset($GLOBALS['PIWIK_TRACKER_DEBUG'])
&& $GLOBALS['PIWIK_TRACKER_DEBUG']
@@ -660,11 +664,25 @@ class Tracker
// If there was an error during tracker, return so errors can be flushed
return;
}
- $transGifBase64 = "R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==";
- Common::sendHeader('Content-Type: image/gif');
$this->outputAccessControlHeaders();
+ $request = $_GET + $_POST;
+
+ if (array_key_exists('send_image', $request) && $request['send_image'] === '0') {
+ Common::sendResponseCode(204);
+
+ return;
+ }
+
+ $this->outputTransparentGif();
+ }
+
+ protected function outputTransparentGif ()
+ {
+ $transGifBase64 = "R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==";
+ Common::sendHeader('Content-Type: image/gif');
+
print(base64_decode($transGifBase64));
}
@@ -828,6 +846,12 @@ class Tracker
} else {
Common::printDebug("The request is invalid: empty request, or maybe tracking is disabled in the config.ini.php via record_statistics=0");
}
+ } catch (UnexpectedWebsiteFoundException $e) {
+ Common::printDebug("Exception: " . $e->getMessage());
+ $this->exitWithException($e, $isAuthenticated, 400);
+ } catch (InvalidRequestParameterException $e) {
+ Common::printDebug("Exception: " . $e->getMessage());
+ $this->exitWithException($e, $isAuthenticated, 400);
} catch (DbException $e) {
Common::printDebug("Exception: " . $e->getMessage());
$this->exitWithException($e, $isAuthenticated);
diff --git a/core/Tracker/Request.php b/core/Tracker/Request.php
index b733ae30ea..8853800fa6 100644
--- a/core/Tracker/Request.php
+++ b/core/Tracker/Request.php
@@ -12,6 +12,8 @@ use Exception;
use Piwik\Common;
use Piwik\Config;
use Piwik\Cookie;
+use Piwik\Exception\InvalidRequestParameterException;
+use Piwik\Exception\UnexpectedWebsiteFoundException;
use Piwik\IP;
use Piwik\Network\IPUtils;
use Piwik\Piwik;
@@ -390,7 +392,7 @@ class Request
Piwik::postEvent('Tracker.Request.getIdSite', array(&$idSite, $this->params));
if ($idSite <= 0) {
- throw new Exception('Invalid idSite: \'' . $idSite . '\'');
+ throw new UnexpectedWebsiteFoundException('Invalid idSite: \'' . $idSite . '\'');
}
return $idSite;
@@ -523,7 +525,7 @@ class Request
$idVisitor = $this->getForcedVisitorId();
if (!empty($idVisitor)) {
if (strlen($idVisitor) != Tracker::LENGTH_HEX_ID_STRING) {
- throw new Exception("Visitor ID (cid) $idVisitor must be " . Tracker::LENGTH_HEX_ID_STRING . " characters long");
+ throw new InvalidRequestParameterException("Visitor ID (cid) $idVisitor must be " . Tracker::LENGTH_HEX_ID_STRING . " characters long");
}
Common::printDebug("Request will be recorded for this idvisitor = " . $idVisitor);
$found = true;
diff --git a/core/Tracker/Visitor.php b/core/Tracker/Visitor.php
index afec61849e..d9aadb640e 100644
--- a/core/Tracker/Visitor.php
+++ b/core/Tracker/Visitor.php
@@ -204,20 +204,17 @@ class Visitor
$fields[] = $dimension->getColumnName();
}
- /**
- * This event collects a list of [visit entity]() properties that should be loaded when reading
- * the existing visit. Properties that appear in this list will be available in other tracking
- * events such as 'onExistingVisit'.
- *
- * Plugins can use this event to load additional visit entity properties for later use during tracking.
- */
foreach ($dimension->getRequiredVisitFields() as $field) {
$fields[] = $field;
}
}
/**
- * @ignore
+ * This event collects a list of [visit entity](/guides/persistence-and-the-mysql-backend#visits) properties that should be loaded when reading
+ * the existing visit. Properties that appear in this list will be available in other tracking
+ * events such as 'onExistingVisit'.
+ *
+ * Plugins can use this event to load additional visit entity properties for later use during tracking.
*/
Piwik::postEvent('Tracker.getVisitFieldsToPersist', array(&$fields));
diff --git a/core/Translate.php b/core/Translate.php
index 65381c0a2d..c29d0f0339 100644
--- a/core/Translate.php
+++ b/core/Translate.php
@@ -173,7 +173,7 @@ class Translate
$clientSideTranslations[$key] = $translations[$plugin][$stringName];
}
- $js = 'var translations = ' . Common::json_encode($clientSideTranslations) . ';';
+ $js = 'var translations = ' . json_encode($clientSideTranslations) . ';';
$js .= "\n" . 'if (typeof(piwik_translations) == \'undefined\') { var piwik_translations = new Object; }' .
'for(var i in translations) { piwik_translations[i] = translations[i];} ';
return $js;
diff --git a/core/Translate/Filter/ByParameterCount.php b/core/Translate/Filter/ByParameterCount.php
index 74be50d26d..357ab5ba33 100644
--- a/core/Translate/Filter/ByParameterCount.php
+++ b/core/Translate/Filter/ByParameterCount.php
@@ -43,7 +43,8 @@ class ByParameterCount extends FilterAbstract
if (isset($this->baseTranslations[$pluginName][$key])) {
$baseTranslation = $this->baseTranslations[$pluginName][$key];
} else {
- $baseTranslation = '';
+ // english string was deleted, do not error
+ continue;
}
// ensure that translated strings have the same number of %s as the english source strings
diff --git a/core/Twig.php b/core/Twig.php
index bf840950a5..1ce277e235 100755
--- a/core/Twig.php
+++ b/core/Twig.php
@@ -11,7 +11,6 @@ namespace Piwik;
use Exception;
use Piwik\Container\StaticContainer;
use Piwik\DataTable\Filter\SafeDecodeLabel;
-use Piwik\Period\Range;
use Piwik\Translate;
use Piwik\View\RenderTokenParser;
use Piwik\Visualization\Sparkline;
@@ -245,7 +244,7 @@ class Twig
protected function addFilter_prettyDate()
{
$prettyDate = new Twig_SimpleFilter('prettyDate', function ($dateString, $period) {
- return Range::factory($period, $dateString)->getLocalizedShortString();
+ return Period\Factory::build($period, $dateString)->getLocalizedShortString();
});
$this->twig->addFilter($prettyDate);
}
diff --git a/core/Updates/1.8.3-b1.php b/core/Updates/1.8.3-b1.php
index 7a00ec20b3..ee8e6c4d00 100644
--- a/core/Updates/1.8.3-b1.php
+++ b/core/Updates/1.8.3-b1.php
@@ -98,8 +98,8 @@ class Updates_1_8_3_b1 extends Updates
is_null($period) ? ScheduledReports::DEFAULT_PERIOD : $period,
ScheduledReports::EMAIL_TYPE,
is_null($format) ? ScheduledReports::DEFAULT_REPORT_FORMAT : $format,
- Common::json_encode(preg_split('/,/', $reports)),
- Common::json_encode($parameters),
+ json_encode(preg_split('/,/', $reports)),
+ json_encode($parameters),
$ts_created,
$ts_last_sent,
$deleted
diff --git a/core/Updates/2.0.3-b7.php b/core/Updates/2.0.3-b7.php
index add119e462..9903d999c1 100644
--- a/core/Updates/2.0.3-b7.php
+++ b/core/Updates/2.0.3-b7.php
@@ -23,9 +23,11 @@ class Updates_2_0_3_b7 extends Updates
$errors = array();
try {
+ $checker = new DoNotTrackHeaderChecker();
+
// enable DoNotTrack check in PrivacyManager if DoNotTrack plugin was enabled
if (\Piwik\Plugin\Manager::getInstance()->isPluginActivated('DoNotTrack')) {
- DoNotTrackHeaderChecker::activate();
+ $checker->activate();
}
// enable IP anonymization if AnonymizeIP plugin was enabled
diff --git a/core/Updates/2.10.0-b1.php b/core/Updates/2.10.0-b1.php
new file mode 100644
index 0000000000..6a739b6468
--- /dev/null
+++ b/core/Updates/2.10.0-b1.php
@@ -0,0 +1,252 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ *
+ */
+
+namespace Piwik\Updates;
+
+use Piwik\Common;
+use Piwik\DataAccess\ArchiveTableCreator;
+use Piwik\DataTable;
+use Piwik\Db;
+use Piwik\Updater;
+use Piwik\Updates;
+use DeviceDetector\Parser\Client\Browser AS BrowserParser;
+use Piwik\Plugins\Dashboard\Model AS DashboardModel;
+
+/**
+ * This Update script will update all browser and os archives of UserSettings and DevicesDetection plugin
+ *
+ * In the future only DevicesDetection will handle browser and os archives, so we try to rename all existing archives
+ * of UserSettings plugin to their corresponding archive name in DevicesDetection plugin:
+ * - *UserSettings_browser* will now be *DevicesDetection_browserVersions*
+ * - *UserSettings_os* will now be *DevicesDetection_osVersions*
+ *
+ * Unlike DevicesDetection plugin, the UserSettings plugin did not store archives holding the os and browser data without
+ * their version number. The "version-less" reports were always generated out of the "version-containing" archives .
+ * For big archives (month/year) that ment that some of the data was truncated, due to the datatable entry limit.
+ * To avoid that data loss / inaccuracy in the future, DevicesDetection plugin will also store archives without the version.
+ * For data archived after DevicesDetection plugin was enabled, those archive already exist. As we are removing the
+ * UserSettings reports, we need to move the existing old data to the new archives, which means we need to build up
+ * those archives, where they do not exist.
+ *
+ * NOTE: Some archives might not contain "all" data.
+ * That might have happened directly after the day DevicesDetection plugin was enabled. For the days before, there were
+ * no archives calculated. So week/month/year archives will only contain data for the days, where archives were generated
+ * To find a date after which it is safe to use DevicesDetection archives we need to find the first day-archive that
+ * contains DevicesDetection data. Day archives will always contain full data, but week/month/year archives may not.
+ * So we need to recreate those week/month/year archives.
+ */
+class Updates_2_10_0_b1 extends Updates
+{
+
+ static function getSql()
+ {
+ $sqls = array('# ATTENTION: This update script will execute some more SQL queries than that below as it is necessary to rebuilt some archives #' => false);
+
+ // update scheduled reports to use new plugin
+ $reportsToReplace = array(
+ 'UserSettings_getBrowserVersion' => 'DevicesDetection_getBrowserVersions',
+ 'UserSettings_getBrowser' => 'DevicesDetection_getBrowsers',
+ 'UserSettings_getOSFamily' => 'DevicesDetection_getOsFamilies',
+ 'UserSettings_getOS' => 'DevicesDetection_getOsVersions',
+ 'UserSettings_getMobileVsDesktop' => 'DevicesDetection_getType',
+ 'UserSettings_getBrowserType' => 'DevicesDetection_getBrowserEngines',
+ 'UserSettings_getWideScreen' => 'UserSettings_getScreenType',
+ );
+
+ foreach ($reportsToReplace as $old => $new) {
+ $sqls["UPDATE " . Common::prefixTable('report') . " SET reports = REPLACE(reports, '".$old."', '".$new."')"] = false;
+ }
+
+ // update dashboard to use new widgets
+ $oldWidgets = array(
+ array('module' => 'UserSettings', 'action' => 'getBrowserVersion', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getBrowser', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getOSFamily', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getOS', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getMobileVsDesktop', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getBrowserType', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getWideScreen', 'params' => array()),
+ );
+
+ $newWidgets = array(
+ array('module' => 'DevicesDetection', 'action' => 'getBrowserVersions', 'params' => array()),
+ array('module' => 'DevicesDetection', 'action' => 'getBrowsers', 'params' => array()),
+ array('module' => 'DevicesDetection', 'action' => 'getOsFamilies', 'params' => array()),
+ array('module' => 'DevicesDetection', 'action' => 'getOsVersions', 'params' => array()),
+ array('module' => 'DevicesDetection', 'action' => 'getType', 'params' => array()),
+ array('module' => 'DevicesDetection', 'action' => 'getBrowserEngines', 'params' => array()),
+ array('module' => 'UserSettings', 'action' => 'getScreenType', 'params' => array()),
+ );
+
+ $allDashboards = Db::get()->fetchAll(sprintf("SELECT * FROM %s", Common::prefixTable('user_dashboard')));
+
+ foreach($allDashboards AS $dashboard) {
+
+ $dashboardLayout = json_decode($dashboard['layout']);
+
+ $dashboardLayout = DashboardModel::replaceDashboardWidgets($dashboardLayout, $oldWidgets, $newWidgets);
+
+ $newLayout = json_encode($dashboardLayout);
+ if ($newLayout != $dashboard['layout']) {
+ $sqls["UPDATE " . Common::prefixTable('user_dashboard') . " SET layout = '".addslashes($newLayout)."' WHERE iddashboard = ".$dashboard['iddashboard']] = false;
+ }
+ }
+
+ return $sqls;
+ }
+
+ static function update()
+ {
+ Updater::updateDatabase(__FILE__, self::getSql());
+
+ $archiveBlobTables = self::getAllArchiveBlobTables();
+
+ foreach ($archiveBlobTables as $table) {
+ self::updateBrowserArchives($table);
+ self::updateOsArchives($table);
+ }
+ }
+
+ /**
+ * Returns all available archive blob tables
+ *
+ * @return array
+ */
+ public static function getAllArchiveBlobTables()
+ {
+ static $archiveBlobTables;
+
+ if (empty($archiveBlobTables)) {
+
+ $archiveTables = ArchiveTableCreator::getTablesArchivesInstalled();
+
+ $archiveBlobTables = array_filter($archiveTables, function($name) {
+ return ArchiveTableCreator::getTypeFromTableName($name) == ArchiveTableCreator::BLOB_TABLE;
+ });
+
+ // sort tables so we have them in order of their date
+ rsort($archiveBlobTables);
+ }
+
+ return (array) $archiveBlobTables;
+ }
+
+ /**
+ * Find the first day on which DevicesDetection archives were generated
+ *
+ * @return int Timestamp
+ */
+ public static function getFirstDayOfArchivedDeviceDetectorData()
+ {
+ static $deviceDetectionBlobAvailableDate;
+
+ if (empty($deviceDetectionBlobAvailableDate)) {
+
+ $archiveBlobTables = self::getAllArchiveBlobTables();
+
+ $deviceDetectionBlobAvailableDate = null;
+ foreach ($archiveBlobTables as $table) {
+
+ // Look for all day archives and try to find that with the lowest date
+ $deviceDetectionBlobAvailableDate = Db::get()->fetchOne(sprintf("SELECT date1 FROM %s WHERE name = 'DevicesDetection_browserVersions' AND period = 1 ORDER BY date1 ASC LIMIT 1", $table));
+
+ if (!empty($deviceDetectionBlobAvailableDate)) {
+ break;
+ }
+
+ }
+
+ $deviceDetectionBlobAvailableDate = strtotime($deviceDetectionBlobAvailableDate);
+ }
+
+ return $deviceDetectionBlobAvailableDate;
+ }
+
+ /**
+ * Updates all browser archives to new structure
+ * @param string $table
+ * @throws \Exception
+ */
+ public static function updateBrowserArchives($table)
+ {
+ // rename old UserSettings archives where no DeviceDetection archives exists
+ Db::exec(sprintf("UPDATE IGNORE %s SET name='DevicesDetection_browserVersions' WHERE name = 'UserSettings_browser'", $table));
+
+ /*
+ * check dates of remaining (non-day) archives with calculated safe date
+ * archives before or within that week/month/year of that date will be replaced
+ */
+ $oldBrowserBlobs = Db::get()->fetchAll(sprintf("SELECT * FROM %s WHERE name = 'UserSettings_browser' AND `period` > 1", $table));
+ foreach ($oldBrowserBlobs as $blob) {
+
+ // if start date of blob is before calculated date us old usersettings archive instead of already existing DevicesDetection archive
+ if (strtotime($blob['date1']) < self::getFirstDayOfArchivedDeviceDetectorData()) {
+
+ Db::get()->query(sprintf("DELETE FROM %s WHERE idarchive = ? AND name = ?", $table), array($blob['idarchive'], 'DevicesDetection_browserVersions'));
+ Db::get()->query(sprintf("UPDATE %s SET name = ? WHERE idarchive = ? AND name = ?", $table), array('DevicesDetection_browserVersions', $blob['idarchive'], 'UserSettings_browser'));
+ }
+ }
+
+ // rebuild archives without versions
+ $browserBlobs = Db::get()->fetchAll(sprintf("SELECT * FROM %s WHERE name = 'DevicesDetection_browserVersions'", $table));
+ foreach ($browserBlobs as $blob) {
+ self::createArchiveBlobWithoutVersions($blob, 'DevicesDetection_browsers', $table);
+ }
+ }
+
+ public static function updateOsArchives($table) {
+ Db::exec(sprintf("UPDATE IGNORE %s SET name='DevicesDetection_osVersions' WHERE name = 'UserSettings_os'", $table));
+
+ /*
+ * check dates of remaining (non-day) archives with calculated safe date
+ * archives before or within that week/month/year of that date will be replaced
+ */
+ $oldOsBlobs = Db::get()->fetchAll(sprintf("SELECT * FROM %s WHERE name = 'UserSettings_os' AND `period` > 1", $table));
+ foreach ($oldOsBlobs as $blob) {
+
+ // if start date of blob is before calculated date us old usersettings archive instead of already existing DevicesDetection archive
+ if (strtotime($blob['date1']) < self::getFirstDayOfArchivedDeviceDetectorData()) {
+
+ Db::get()->query(sprintf("DELETE FROM %s WHERE idarchive = ? AND name = ?", $table), array($blob['idarchive'], 'DevicesDetection_osVersions'));
+ Db::get()->query(sprintf("UPDATE %s SET name = ? WHERE idarchive = ? AND name = ?", $table), array('DevicesDetection_osVersions', $blob['idarchive'], 'UserSettings_os'));
+ }
+ }
+
+ // rebuild archives without versions
+ $osBlobs = Db::get()->fetchAll(sprintf("SELECT * FROM %s WHERE name = 'DevicesDetection_osVersions'", $table));
+ foreach ($osBlobs as $blob) {
+ self::createArchiveBlobWithoutVersions($blob, 'DevicesDetection_os', $table);
+ }
+ }
+
+ protected static function createArchiveBlobWithoutVersions($blob, $newName, $table)
+ {
+ $blob['value'] = @gzuncompress($blob['value']);
+
+ $datatable = DataTable::fromSerializedArray($blob['value']);
+ $datatable->filter('GroupBy', array('label', function ($label) {
+ if (preg_match("/(.+) [0-9]+(?:\.[0-9]+)?$/", $label, $matches)) {
+ return $matches[1]; // should match for browsers
+ }
+
+ if (strpos($label, ';')) {
+ return substr($label, 0, 3); // should match for os
+ }
+
+ return $label;
+ }));
+
+ $newData = $datatable->getSerialized();
+
+ $blob['value'] = @gzcompress($newData[0]);
+ $blob['name'] = $newName;
+
+ Db::get()->query(sprintf('REPLACE INTO %s (`idarchive`, `name`, `idsite`, `date1`, `date2`, `period`, `ts_archived`, `value`) VALUES (?, ? , ?, ?, ?, ?, ?, ?)', $table), array_values($blob));
+ }
+}
diff --git a/core/Updates/2.9.0-b7.php b/core/Updates/2.9.0-b7.php
index 1efcf8360c..110545aaa8 100644
--- a/core/Updates/2.9.0-b7.php
+++ b/core/Updates/2.9.0-b7.php
@@ -47,7 +47,8 @@ class Updates_2_9_0_b7 extends Updates
}
$query = self::getQueryToCreateSequence($table, $maxId);
- $sql[$query] = false;
+ // refs #6696, ignores Integrity constraint violation: 1062 Duplicate entry 'piwik_archive_numeric_2010_01' for key 'PRIMARY'
+ $sql[$query] = '1062';
}
}
diff --git a/core/Version.php b/core/Version.php
index fa7f0f29b7..fcf7e8f40d 100644
--- a/core/Version.php
+++ b/core/Version.php
@@ -20,5 +20,5 @@ final class Version
* The current Piwik version.
* @var string
*/
- const VERSION = '2.9.0';
+ const VERSION = '2.10.0-b1';
}
diff --git a/core/WidgetsList.php b/core/WidgetsList.php
index e67f6b1b77..943dfceb68 100644
--- a/core/WidgetsList.php
+++ b/core/WidgetsList.php
@@ -159,18 +159,15 @@ class WidgetsList extends Singleton
}
/**
- * Adds a report to the list of dashboard widgets.
+ * Returns the unique id of an widget with the given parameters
*
- * @param string $widgetCategory The widget category. This can be a translation token.
- * @param string $widgetName The name of the widget. This can be a translation token.
- * @param string $controllerName The report's controller name (same as the plugin name).
- * @param string $controllerAction The report's controller action method name.
- * @param array $customParameters Extra query parameters that should be sent while getting
- * this report.
+ * @param $controllerName
+ * @param $controllerAction
+ * @param array $customParameters
+ * @return string
*/
- public static function add($widgetCategory, $widgetName, $controllerName, $controllerAction, $customParameters = array())
+ public static function getWidgetUniqueId($controllerName, $controllerAction, $customParameters = array())
{
- $widgetName = Piwik::translate($widgetName);
$widgetUniqueId = 'widget' . $controllerName . $controllerAction;
foreach ($customParameters as $name => $value) {
@@ -182,6 +179,24 @@ class WidgetsList extends Singleton
$widgetUniqueId .= $name . $value;
}
+ return $widgetUniqueId;
+ }
+
+ /**
+ * Adds a report to the list of dashboard widgets.
+ *
+ * @param string $widgetCategory The widget category. This can be a translation token.
+ * @param string $widgetName The name of the widget. This can be a translation token.
+ * @param string $controllerName The report's controller name (same as the plugin name).
+ * @param string $controllerAction The report's controller action method name.
+ * @param array $customParameters Extra query parameters that should be sent while getting
+ * this report.
+ */
+ public static function add($widgetCategory, $widgetName, $controllerName, $controllerAction, $customParameters = array())
+ {
+ $widgetName = Piwik::translate($widgetName);
+ $widgetUniqueId = self::getWidgetUniqueId($controllerName, $controllerAction, $customParameters);
+
if (!array_key_exists($widgetCategory, self::$widgets)) {
self::$widgets[$widgetCategory] = array();
}
diff --git a/js/piwik.js b/js/piwik.js
index e374649c64..98f22d7f8a 100644
--- a/js/piwik.js
+++ b/js/piwik.js
@@ -2925,7 +2925,8 @@ if (typeof Piwik !== 'object') {
'&_viewts=' + lastVisitTs +
(String(lastEcommerceOrderTs).length ? '&_ects=' + lastEcommerceOrderTs : '') +
(String(referralUrl).length ? '&_ref=' + encodeWrapper(purify(referralUrl.slice(0, referralUrlMaxLength))) : '') +
- (charSet ? '&cs=' + encodeWrapper(charSet) : '');
+ (charSet ? '&cs=' + encodeWrapper(charSet) : '') +
+ '&send_image=0';
// browser features
for (i in browserFeatures) {
diff --git a/lang/cy.json b/lang/cy.json
index 934c30bf8d..4e0a6126b2 100644
--- a/lang/cy.json
+++ b/lang/cy.json
@@ -2,6 +2,7 @@
"General": {
"AbandonedCarts": "Troliau Siopa a Adawyd",
"AboutPiwikX": "Am dan Piwik %s",
+ "Actions": "Camau gweithredu",
"AllowPiwikArchivingToTriggerBrowser": "Caniatáu system archifo Piwik i sbarduno pan fydd adroddiadau yn cael eu hystyried gan y porwr",
"AllWebsitesDashboard": "Dangosfwrdd Holl Wefannau",
"API": "API",
diff --git a/lang/fr.json b/lang/fr.json
index 1e5f9cbc77..982d7d02b1 100644
--- a/lang/fr.json
+++ b/lang/fr.json
@@ -67,6 +67,7 @@
"ColumnNbUniqVisitors": "Visiteurs uniques",
"ColumnNbUniqVisitorsDocumentation": "Nombre de visiteurs uniques visitant votre site web. Chaque utilisateur n'est compté qu'une seule fois, même s'il visite le site plusieurs fois dans la journée.",
"ColumnNbUsers": "Utilisateurs",
+ "ColumnNbUsersDocumentation": "Le nombre de visiteurs enregistrés connectés sur votre site. C'est le nombre de visiteurs uniques actifs qui ont un ID utilisateur enregistré (via la fonction nde code de suivi 'setUserId'",
"ColumnNbVisits": "Visites",
"ColumnNbVisitsDocumentation": "Si un visiteur se rend sur votre site web pour la première fois ou s'il visite une page plus de 30 minutes après sa dernière page, il sera enregistré en tant que nouvelle visite.",
"ColumnPageBounceRateDocumentation": "Pourcentage de visites qui ont commencé sur cette page et ont tout de suite quitté le site.",
@@ -127,7 +128,7 @@
"DisplayTableWithMoreMetrics": "Afficher un tableau avec plus d'unités",
"Documentation": "Documentation",
"Donate": "Donner",
- "Done": "Fait",
+ "Done": "Effectué",
"Download": "Télécharger",
"DownloadFail_FileExists": "Le fichier %s existe déjà!",
"DownloadFail_FileExistsContinue": "Téléchargement partiel en cours pour %s, mais un téléchargement terminé existe déjà!",
diff --git a/lang/gl.json b/lang/gl.json
index 9d5345fd65..2e9baa3d37 100644
--- a/lang/gl.json
+++ b/lang/gl.json
@@ -1,6 +1,7 @@
{
"General": {
"AboutPiwikX": "Acerca de Piwik %s",
+ "Actions": "Accións",
"AllWebsitesDashboard": "Tableiro de todas as Webs",
"API": "API",
"BackToPiwik": "Voltar a Piwik",
diff --git a/lang/sl.json b/lang/sl.json
index 466b54a7dd..cd0921fc87 100644
--- a/lang/sl.json
+++ b/lang/sl.json
@@ -223,6 +223,7 @@
"NoDataForGraph": "Nobenih podatkov za ta graf.",
"NoDataForTagCloud": "Ni podatkov za oblaček z etiketami",
"NotDefined": "%s ni definiran",
+ "Note": "Opomba",
"NotRecommended": "(ni priporočljivo)",
"NotValid": "%s ni veljaven",
"NSeconds": "%s sekund",
diff --git a/lang/ta.json b/lang/ta.json
index 822ea534aa..ce7a0be733 100644
--- a/lang/ta.json
+++ b/lang/ta.json
@@ -35,6 +35,7 @@
"ColumnGenerationTime": "உற்பத்தி நேரம்",
"ColumnKeyword": "திறவுச்சொல்",
"ColumnMaxActions": "ஒரு வருகையின் போது அதிக செயல்கள்",
+ "ColumnNbActions": "செயல்கள்",
"ColumnNbUniqVisitors": "தனித்துவமான பார்வையாளர்கள்",
"ColumnNbVisits": "பார்வைகள்",
"ColumnPageviews": "பக்கப்பார்வைகள்",
diff --git a/lang/tl.json b/lang/tl.json
new file mode 100644
index 0000000000..fffcf0e8d3
--- /dev/null
+++ b/lang/tl.json
@@ -0,0 +1,450 @@
+{
+ "DoNotTrack": {
+ "PluginDescription": "Huwag pansinin ang mga pagbisita sa X-Do-Hindi-Track o DNT header."
+ },
+ "General": {
+ "AbandonedCarts": "inabandunang Cart",
+ "AboutPiwikX": "ungkol sa Piwik %s",
+ "Action": "Aksyon",
+ "Actions": "Mga Aksyon",
+ "Add": "Magdagdag",
+ "AfterEntry": "pagkatapos na pumasok dito",
+ "All": "Lahat",
+ "AllowPiwikArchivingToTriggerBrowser": "Payagan ang Piwik archiving upang ma-trigger kapag ang ulat ay tiningnan mula sa browser",
+ "AllWebsitesDashboard": "Lahat ng dashboard Websites",
+ "And": "at",
+ "API": "API",
+ "ApplyDateRange": "I-apply ang petsa",
+ "ArchivingInlineHelp": "Para sa katam-tamang dami ng traffic websites inirerekomenda na huwag paganahin ang Piwik-archive upang ma-trigger mula sa browser. Sa halip aming nirerekomenda na mag setup ng cron job upang i-proseso ang mga ulat kada oras.",
+ "ArchivingTriggerDescription": "Inirerekomenda para sa mas malakihang pag-install ng Piwik kailangan mong %ssetup ang cron job%s upang awtomatikong iproseso ang mga ulat.",
+ "AuthenticationMethodSmtp": "Authentication method para sa SMTP",
+ "AverageOrderValue": "Average na Halaga ng Order",
+ "AveragePrice": "Pamantayang presyo",
+ "AverageQuantity": "average na dami",
+ "BackToPiwik": "Bumalik sa Piwik",
+ "Broken": "Sira",
+ "BrokenDownReportDocumentation": "Ito ay binaha-bahagi sa ibat-ibang mga ulat na kung saan ay ipinapakita sa sparklines sa ibaba ng pahina. Maaari mong palakihin ang mga graph sa pamamagitan ng pag-click sa ulat na nais mong makita.",
+ "Cancel": "Ikansela",
+ "CannotUnzipFile": "Hindi ma-unzip ang file %1$s: %2$s",
+ "ChangePassword": "Baguhin ang password",
+ "ChangeTagCloudView": "Pakitandaan na maari mong tignan ang mga ulat sa ibat-ibang paraan bilang tag cloud. Upang magamit ito mangyaring gamitin ang mga kontrol na nasa ibaba ng ulat.",
+ "ChooseDate": "Pumili ng petsa",
+ "ChooseLanguage": "pumili ng wika",
+ "ChoosePeriod": "Pumili ng panahon",
+ "ChooseWebsite": "Pumili ng website",
+ "Clear": "Klaro",
+ "ClickHere": "Mag-click dito para sa karagdagang impormasyon.",
+ "ClickToChangePeriod": "I-click muli upang baguhin ang tagal ng period.",
+ "Close": "I-sara",
+ "ColumnActionsPerVisit": "Aksyon sa bawat Pagbisita",
+ "ColumnActionsPerVisitDocumentation": "Ang average na bilang ng mga aksyon (mga page view sa mga paghahanap sa loob ng site download or outlinks) na naganap ng nanatili ang iyong bisita",
+ "ColumnAverageGenerationTime": "Average na. pagbuo",
+ "ColumnAverageGenerationTimeDocumentation": "Ang karaniwang tagal upang ma-generate ang pahinang ito. Ang panukat na ginagamit ay kabilang ang oras kung gaano ito katagal nakuha mula sa server upang mabuo ang bawat pahina ng web. kasama na rin dito ang tagal ng pagdownload ng mga bisita mula sa server. Ang mababang 'Avg. generation time' ay nangangahulugan na mabilis ang iyong website sa iyong mga bisita.",
+ "ColumnAverageTimeOnPage": "Average na. oras sa pahina",
+ "ColumnAverageTimeOnPageDocumentation": "Ang average ng oras na ginugol ng mga bisita sa pahinang ito (tanging ang pahina hindi ang buong website).",
+ "ColumnAvgTimeOnSite": "Average na. Oras sa Website",
+ "ColumnAvgTimeOnSiteDocumentation": "Ang average na tagal ng isang pagbisita.",
+ "ColumnBounceRate": "Bounce Rate",
+ "ColumnBounceRateDocumentation": "Ang porsyento ng mga pagbisita na may isang pageview. Na nangangahulugan na ang mga bumisita sa website ay umalis mula sa pahina kung saan sila pumasok.",
+ "ColumnBounceRateForPageDocumentation": "Porsyento ng mga pagbisita na nagsimula at natapos sa pahinang ito.",
+ "ColumnBounces": "Mga Bounce",
+ "ColumnBouncesDocumentation": "Ang bilang ng mga pagbisita namula at natapos sa pahinang ito. Nangangahulugan ito na umalis ang mga bisita matapos makita ang pahinang ito.",
+ "ColumnConversionRate": "Rate ng Conversion",
+ "ColumnConversionRateDocumentation": "Ang porsyento ng mga pagbisita na nag-trigger sa layunin ng konbersyon.",
+ "ColumnDestinationPage": "Patutunguhang ng pahina",
+ "ColumnEntrances": "Mga Pasukan",
+ "ColumnEntrancesDocumentation": "Bilang ng mga pagbisita na nagsimula sa pahinang ito",
+ "ColumnExitRate": "Exit rate",
+ "ColumnExitRateDocumentation": "Ang porsyento ng mga pagbisita na umalis sa website pagkatapos tingnan ang pahinang ito.",
+ "ColumnExits": "Paglabas",
+ "ColumnExitsDocumentation": "Bilang ng bumisita sa pahinang ito.",
+ "ColumnGenerationTime": "Generation time",
+ "ColumnKeyword": "Keyword",
+ "ColumnLabel": "Tatak",
+ "ColumnMaxActions": "Maximum na mga aksyon sa isang pagbisita",
+ "ColumnNbActions": "Mga Aksyon",
+ "ColumnNbActionsDocumentation": "Ang bilang ng mga aksyon na ginawa ng iyong bisita. Ang mga aksyon na ito ay magiging mga page view paghahanap sa loob ng site download or outlinks",
+ "ColumnNbUniqVisitors": "Mga natatanging bisita",
+ "ColumnNbUniqVisitorsDocumentation": "Ang bilang ng mga bumisita sa iyong website na walang katulad. Ang bawat user ay may isang beses lamang na bilang kahit na maraming beses nyang bisitahin ang iyong website araw-araw",
+ "ColumnNbUsers": "Users",
+ "ColumnNbUsersDocumentation": "Ang bilang ng mga gumagamit na naka-log in sa iyong website. Ito ay ang mga bilang ng mga natatanging aktibong mga users na may mga User ID set (sa pamamagitan ng Tracking code function 'setUserId')",
+ "ColumnNbVisits": "Mga Pagbisita",
+ "ColumnNbVisitsDocumentation": "Kung ang bumisita sa iyong website ay ngayon pa lang makakapunta o kung bumisita sya sa isang pahina ng mahigit 30 minuto mula sa huli nyang pag bisita.",
+ "ColumnPageBounceRateDocumentation": "Ang porsyento ng mga bumisita na nagsimula sa pahinang ito na umalis ka-agad.",
+ "ColumnPageviews": "Mga Pageview",
+ "ColumnPageviewsDocumentation": "Bilang kung ilang beses binisita ang pahinang ito.",
+ "ColumnRevenue": "Kita",
+ "ColumnSumVisitLength": "Kabuuang oras na itinagal ng bisita (sa segundo)",
+ "ColumnTotalPageviews": "kabuuang mga Pageview",
+ "ColumnUniqueEntrances": "Mga natatanging pag-pasok",
+ "ColumnUniqueExits": "Natatanging mga pag labas",
+ "ColumnUniquePageviews": "Mga natatanging pageview",
+ "ColumnUniquePageviewsDocumentation": "Ang bilang ng mga pagbisita na kasama ang pahinang ito. Kung ang isang pahina ay na tinignan ng maraming beses sa pahanong ng pagbisita ito ay binibilang lamang nang isang beses",
+ "ColumnValuePerVisit": "Kita ng bawat pagbisita",
+ "ColumnViewedAfterSearch": "Na-click mula sa search results",
+ "ColumnViewedAfterSearchDocumentation": "Ang bilang ng numer na bumisita sa pahinang ito matapos maghanap sa iyong website at nag-click sa pahinang ito sa mga lumabas na resulta",
+ "ColumnVisitDuration": "Tagal ng pagbisita(sa segudon)",
+ "ColumnVisitsWithConversions": "Mga pagbisitang may mga Conversion",
+ "ConfigFileIsNotWritable": "Ang Piwik configuration file %s ay hindi writable Ang iba sa iyong mga binago ay maaring hindi ma saved. %s Mangyaring baguhin ang permiso sa config upang maging writable ito.",
+ "Continue": "Ipagpatuloy",
+ "ContinueToPiwik": "Magpatuloy sa Piwik",
+ "CurrentMonth": "Kasalukuyang buwan",
+ "CurrentWeek": "Kasalukuyang linggo",
+ "CurrentYear": "Kasalukuyang taon",
+ "Daily": "Araw-araw",
+ "DailyReport": "araw-araw",
+ "DailyReports": "Araw-araw na ulat",
+ "DailySum": "araw-araw na halaga",
+ "DashboardForASpecificWebsite": "Dashboard para sa isang partikular na website.",
+ "DataForThisGraphHasBeenPurged": "Ang data para sa mga graph na ito ay higit sa %s na buwang gulang at na-purge.",
+ "DataForThisTagCloudHasBeenPurged": "Ang datos para sa tag cloud ay higit pa sa %s buwang gulang at na-purged",
+ "Date": "Petsa",
+ "DateRange": "Date range:",
+ "DateRangeFrom": "Mula",
+ "DateRangeInPeriodList": "Saklaw ng petsa",
+ "DateRangeTo": "To",
+ "DayFr": "Fr",
+ "DayMo": "Mo",
+ "DaySa": "Sa",
+ "DaysHours": "%1$s araw %2$s oras",
+ "DaysSinceFirstVisit": "Mula sa mga araw ng unang pagbisita",
+ "DaysSinceLastEcommerceOrder": "Mga araw mula nang huling order sa Ecommerce.",
+ "DaysSinceLastVisit": "Araw mula noong huling pagbisita",
+ "DaySu": "Su",
+ "DayTh": "Th",
+ "DayTu": "Tulong",
+ "DayWe": "Kami",
+ "Default": "Default",
+ "DefaultAppended": "(default)",
+ "Delete": "Alisin",
+ "Description": "Description",
+ "Desktop": "Desktop",
+ "Details": "Mga Detalye",
+ "Discount": "Diskuwento",
+ "DisplaySimpleTable": "Ipakita ang mga simpleng table",
+ "DisplayTableWithGoalMetrics": "Ipakita ang isang table na may mga sukatan ng Layunin",
+ "DisplayTableWithMoreMetrics": "Ipakita ang isang table na may higit pang mga panukat",
+ "Documentation": "Dokumentasyon",
+ "Donate": "Donasyon",
+ "Done": "Tapos na",
+ "Download": "I-download",
+ "DownloadFail_FileExists": "Meron ng ganitong file %s:",
+ "DownloadFail_FileExistsContinue": "Subukan na ipagpatuloy ang pag-download para sa %s",
+ "DownloadFail_HttpRequestFail": "Hindi ma download ang file! May maaring naging problema sa website na iyong pinagkukuhaan. Maari mo itong subukan muli mamaya o ikaw na mismo ang kumuha.",
+ "DownloadFullVersion": "%1$s Mag-download ng %2$s ang buong bersyon! Tingnan ang %3$s",
+ "DownloadPleaseRemoveExisting": "Kung gusto mo itong palitan mangyaring tanggalin ang natitirang file.",
+ "Downloads": "Mga download",
+ "EcommerceOrders": "Order sa Ecommerce",
+ "EcommerceVisitStatusDesc": "Bisitahin ang estado ng Ecommerce sa katapusan ng pagbisita",
+ "EcommerceVisitStatusEg": "Halimbawa upang piliin ang lahat ng mga pagbisita ng mga umorder sa Ecommerce ang API request ay naglalaman ng %s.",
+ "Edit": "I-edit",
+ "EncryptedSmtpTransport": "Ipasok ang kinakailangan na transport layer encryption na kinakailangan ng iyong SMTP server.",
+ "EnglishLanguageName": "Tagalog",
+ "Error": "Mali",
+ "ErrorRequest": "Oops? nagkaroon ng problema habang isinasagawa ang iyong request. Marahil may isang pansamantalang isyu sa server o marahil na iyong nirerequest ang ulat ng mga kasamang maraming data. Mangyaring subukan ito mul. Kung ang error na ito ay patuloy pa rin ng paulit-ulit mangyarin %s kontakin ang iyong Piwik admnistrator %s para sa mga tulong.",
+ "EvolutionOverPeriod": "Ebolusyon sa paglipas ng panahon",
+ "ExceptionCheckUserHasSuperUserAccessOrIsTheUser": "Ang user ay kailangang maging alinman sa Super User o user '%s' mismo.",
+ "ExceptionFileIntegrity": "Nabigo ang integrity check: %s",
+ "ExceptionIncompatibleClientServerVersions": "Ang iyong %1$s bersyon ng client ay %2$s kung saan ay hindi tugma sa bersyon ng server %3$s.",
+ "ExceptionInvalidAggregateReportsFormat": "Ang pinagsama-samang mga hindi wastong format '%s'. Subukan ang alinman sa mga sumusunod sa halip: %s.",
+ "ExceptionInvalidArchiveTimeToLive": "Ngayon ang oras ng archive upang mabuhay ay dapat bilang ng segundo na higit pa sa zero",
+ "ExceptionInvalidDateFormat": "Ang format ng petsa ay dapat na: %s o anumang keyword na suportado ng function na %s (tingnan ang %s para sa karagdagang impormasyon).",
+ "ExceptionInvalidDateRange": "Ang petsa '%s' ay wala sa wastong hanay ng petsa. Dapat itong magkaroon ng mga sumusunod na format: %s.",
+ "ExceptionInvalidPeriod": "Ang period ng '%s' ay hindi suportado. Sa halip ay subukan ang alinman sa mga sumusunod: %s",
+ "ExceptionInvalidReportRendererFormat": "%s' ay hindi wastong format ng ulat. Sa halip ay subukan ang alinman sa mga sumusunod: %s.",
+ "ExceptionInvalidToken": "Token ay hindi wasto.",
+ "ExceptionLanguageFileNotFound": "Hindi nahanap ang file Wika na '%s'.",
+ "ExceptionMissingFile": "Nawawalang file: %s",
+ "ExceptionNonceMismatch": "Hindi ma-verify ang security token sa form na ito.",
+ "ExceptionPrivilege": "Hindi mo maaaring i-access ang resource na ito dahil nangangailangan ito ng access ng %s.",
+ "ExceptionPrivilegeAtLeastOneWebsite": "Hindi mo maaaring i-access ang resources na ito dahil ito ay nangangailangan ng %s access na hindi bababa sa isa.",
+ "ExceptionReportNotEnabled": "Ang hinihiling na ulat ay hindi gumagana. Ibig sabihin nito na marahil ang plugin na nag sasagawa ng report ay hindi gumagana o kaya ikaw ay walang permiso upang ma-access ang report na ito.",
+ "ExceptionReportNotFound": "Wala pang ganitong ulat na iyong ni-rerequest.",
+ "ExceptionUnableToStartSession": "Hindi masimulan ang session.",
+ "ExceptionUndeletableFile": "Hindi matanggal ang %s",
+ "ExceptionUnreadableFileDisabledMethod": "Ang configuration file {%s} ay hindi mabasa. Maaring hindi pinagana ng iyong host ang %s.",
+ "ExceptionWidgetNotFound": "Wala pang ganitong widget na iyong ni-rerequest.",
+ "ExpandDataTableFooter": "Baguhin ang itsura o i-configure ang ulat",
+ "Export": "Export",
+ "ExportAsImage": "I-export bilang larawan",
+ "ExportThisReport": "I-export ang dataset sa iba pang mga format.",
+ "Faq": "FAQ",
+ "FileIntegrityWarningExplanation": "Pag pagsusuri sa integridad ng file ay nabigo at may ilang ulat sa mga errors. Ito ay dahil sa hindi kumpleto o nabigong pag uupload ng ilang files sa Piwik. Na dapat mong i-upload uli ang lahat ng Piwik file sa BINARY mode at i-refresh ang pahinang ito hanggang hindi ito nagpapakita ng error.",
+ "First": "Una",
+ "Flatten": "Patagin",
+ "ForExampleShort": "hal.",
+ "Forums": "Mga Forum",
+ "FromReferrer": "mula",
+ "GeneralInformation": "Pangkalahatang Impormasyon",
+ "GeneralSettings": "Pangkalahatang mga Setting",
+ "GetStarted": "Magsimula",
+ "GiveUsYourFeedback": "Bigyan kami ng Feedback!",
+ "Goal": "Layunin",
+ "GoTo": "Pumunta sa %s",
+ "GraphHelp": "Iba pang impormasyon tungkol sa pagpapakita ng mga graph sa Piwik.",
+ "HelloUser": "Hello %s!",
+ "Help": "Tulong",
+ "HelpTranslatePiwik": "Gusto mo bang %1$s tulungan kaming mapabuti ang Piwik translation %2$s?",
+ "Hide": "magtago",
+ "HoursMinutes": "%1$s oras %2$s min",
+ "Id": "Id",
+ "IfArchivingIsFastYouCanSetupCronRunMoreOften": "Sabihin natin na ang pag setup ng archiving ay mabilis maaari mong setup ang crontab upang patakbuhin nang mas madalas.",
+ "InfoFor": "Impormasyon para sa %s",
+ "Installed": "Naka-install",
+ "InvalidDateRange": "Hindi wastong Hanay ng Petsa Mangyaring Subukan Muli",
+ "InvalidResponse": "Ang mga natanggap na data ay hindi wasto.",
+ "IP": "IP",
+ "JsTrackingTag": "JavaScript Tracking Code",
+ "Language": "Lenggwahe",
+ "LastDays": "Huling araw ng %s (kasama ang araw ngayon)",
+ "LastDaysShort": "Huling araw ng %s",
+ "LayoutDirection": "ltr",
+ "LearnMore": "%1$s matutunan ng higit pa %2$s",
+ "Live": "Live",
+ "Loading": "Nagloload...",
+ "LoadingData": "Nilo-load ang data ...",
+ "LoadingPopover": "Nilo-load ang %s ...",
+ "Locale": "tl_PH.UTF-8",
+ "Logout": "Mag-sign out",
+ "LongDay_1": "Lunes",
+ "LongDay_2": "Martes",
+ "LongDay_3": "Miyerkules",
+ "LongDay_4": "Huwebes",
+ "LongDay_5": "Biyernes",
+ "LongDay_6": "Sabado",
+ "LongDay_7": "Linggo",
+ "LongMonth_1": "janeiro",
+ "LongMonth_10": "outubro",
+ "LongMonth_11": "novembro",
+ "LongMonth_12": "dezembro",
+ "LongMonth_2": "fevereiro",
+ "LongMonth_3": "março",
+ "LongMonth_4": "abril",
+ "LongMonth_5": "maio",
+ "LongMonth_6": "junho",
+ "LongMonth_7": "julho",
+ "LongMonth_8": "agosto",
+ "LongMonth_9": "setembro",
+ "MainMetrics": "Pangunahing sukatan",
+ "Matches": "Matches",
+ "Metadata": "Metadata",
+ "Metric": "Metrik",
+ "Metrics": "Mga Sukatan",
+ "MetricsToPlot": "Mga Sukatan upang i-plot",
+ "MetricToPlot": "Sukatan upang i-plot",
+ "MinutesSeconds": "%1$s min %2$ss",
+ "Mobile": "Mobile",
+ "Monthly": "Buwan-buwan",
+ "MonthlyReport": "Buwan-buwan",
+ "MonthlyReports": "Buwanang ulat",
+ "More": "Mas marami",
+ "MoreDetails": "Higit pang mga detalye",
+ "MoreLowerCase": "Mas marami",
+ "Name": "Pangalan",
+ "NbActions": "Bilang ng aksyon",
+ "NbSearches": "Bilang ng panloob na paghahanap",
+ "NDays": "%s mga araw",
+ "Never": "Hindi kailanman",
+ "NewReportsWillBeProcessedByCron": "Kapag ang Piwik-archive ay hindi na-trigger ng browser mga bagong ulat ay ipoproseso ng mga crontab.",
+ "NewUpdatePiwikX": "Bagong Update: Piwik %s",
+ "NewVisitor": "Bagong bisita",
+ "NewVisits": "bagong mga pagbisita",
+ "Next": "Susunod",
+ "NMinutes": "%s minuto",
+ "No": "Hindi",
+ "NoDataForGraph": "Walang data para sa graph na ito.",
+ "NoDataForTagCloud": "Walang data para sa tag cloud.",
+ "NotDefined": "%s ay hindi natukoy",
+ "Note": "Tandaan",
+ "NotInstalled": "Hindi naka-install",
+ "NotRecommended": "(hindi inirerekumenda)",
+ "NotValid": "%s ay hindi tama",
+ "NSeconds": "%s segundo",
+ "NumberOfVisits": "Bilang ng mga bumisita",
+ "NUsers": "%s mga user",
+ "NVisits": "%s na mga pagbisita",
+ "Ok": "Ok",
+ "OnlyEnterIfRequired": "Ipasok lamang ang iyong username kung kinakailangan ito ng iyong SMTP server.",
+ "OnlyEnterIfRequiredPassword": "Ipasok lamang ang iyong password kung kinakailangan ito ng iyong SMTP server.",
+ "OnlyUsedIfUserPwdIsSet": "Gamitin kung ang username\/password ay naka set magtanong sa iyong provider kung ikaw ay hindi sigurado sa method na gagamitin.",
+ "OpenSourceWebAnalytics": "Libreng analytics platform",
+ "OperationAtLeast": "Kahit",
+ "OperationAtMost": "Pinakamalaki",
+ "OperationContains": "naglalaman",
+ "OperationDoesNotContain": "Ay hindi naglalaman",
+ "OperationEquals": "Equals",
+ "OperationGreaterThan": "Mas mataas sa",
+ "OperationIs": "ay",
+ "OperationLessThan": "Mas Maliit sa",
+ "OperationNotEquals": "hindi katumbas",
+ "OptionalSmtpPort": "Opsyonal. Ang mga default sa 25 ay para sa hindi na-encrypt at TLS SMTP at 465 para sa SSL SMTP.",
+ "Options": "Mga Pagpipilian",
+ "OrCancel": "o %s Kanselahin ang %s",
+ "OriginalLanguageName": "Tagalog",
+ "Others": "Iba",
+ "Outlink": "Outlink",
+ "Outlinks": "Mga Outlink",
+ "OverlayRowActionTooltip": "Tingnan ang mga datos ng analytics nang direkta sa iyong website (magbubukas ng bagong tab).",
+ "OverlayRowActionTooltipTitle": "Buksan ang Overlay ng Pahina",
+ "Overview": "Overview",
+ "Pages": "pahina",
+ "ParameterMustIntegerBetween": "Ang parameter %s ay dapat na isang integer value sa pagitan ng %s at %s.",
+ "Password": "Password",
+ "Period": "Panahon",
+ "Piechart": "Piechart",
+ "PiwikXIsAvailablePleaseNotifyPiwikAdmin": "%1$s ay magagamit. Mangyaring i-notify ang %2$s Piwik administrator %3$s.",
+ "PiwikXIsAvailablePleaseUpdateNow": "Ang Piwik %1$s ay available. %2$s Mangyaring i-update ngayon! %3$s (tingnan ang %4$s na pagbabago %5$s).",
+ "PleaseSpecifyValue": "Mangyaring i-specify ang value para sa '%s'.",
+ "PleaseUpdatePiwik": "Mangyaring i-update ang iyong Piwik",
+ "Plugin": "Plugin",
+ "Plugins": "Mga Plugin",
+ "PoweredBy": "Powered by",
+ "Previous": "Nakaraan",
+ "PreviousDays": "ang nakaraang %s mga araw (hindi kasama ang ngayon).",
+ "PreviousDaysShort": "Nakaraang mga %s araw",
+ "Price": "Presyo",
+ "ProductConversionRate": "Rate ng Conversion ng Produkto",
+ "ProductRevenue": "Kinita ng Produkto",
+ "PurchasedProducts": "Nabiling Produkto",
+ "Quantity": "Dami",
+ "RangeReports": "Mga saklaw ng Custom na petsa",
+ "ReadThisToLearnMore": "%1$sBasahin ito upang matuto ng higit pa. %2$s",
+ "Recommended": "(inirerekomenda)",
+ "RecordsToPlot": "Mga naka tala sa plot",
+ "Refresh": "Refresh",
+ "RefreshPage": "I-refresh ang pahina",
+ "RelatedReport": "Mga Kaugnay na ulat",
+ "RelatedReports": "Mga nakaugnay na ulat",
+ "Remove": "Tanggalin",
+ "Report": "Ulat",
+ "ReportGeneratedFrom": "Ang ulat na ito ay binuo gamit ang data mula sa %s",
+ "Reports": "Mga Ulat",
+ "ReportsContainingTodayWillBeProcessedAtMostEvery": "Mga ulat para sa ngayon (o anumang iba pang Hanay ng Petsa kabilang ngayon) ay ipoproseso kada-araw.",
+ "ReportsWillBeProcessedAtMostEveryHour": "Sa gayon ang mga ulat ay mapoproseso sa bawat oras.",
+ "RequestTimedOut": "Ang kahilingan ng data sa %s ay nag-time out. Pakisubukang muli.",
+ "Required": "Kinakailangan ang %s",
+ "ReturningVisitor": "Bumalik na mga bisita",
+ "ReturningVisitorAllVisits": "Tingnan ang lahat ng mga pagbisita",
+ "RowEvolutionRowActionTooltip": "Tingnan kung paano nagbago sa paglipas ng panahon ang mga sukatan para sa hanay na ito",
+ "RowEvolutionRowActionTooltipTitle": "Buksan ang row Ebolusyon",
+ "Rows": "Mga Hilera",
+ "RowsToDisplay": "Mga row na ipapakita",
+ "Save": "I-save",
+ "SaveImageOnYourComputer": "Upang i-save ang larawan sa iyong computer i-right click sa imahe at piliin ang \"I-save ang Imahe Bilang ...\"",
+ "Search": "Hanapin",
+ "SearchNoResults": "Walang mga resulta",
+ "Seconds": "%ss",
+ "SeeAll": "tingnan lahat",
+ "SeeTheOfficialDocumentationForMoreInformation": "Tingan ang %s opisyal na dokumentasyon %s para sa karagdagang impormasyon.",
+ "SeeThisFaq": "Tingnan ang %1$s this faq %2$s.",
+ "Segment": "Bahagi",
+ "SelectYesIfYouWantToSendEmailsViaServer": "Piliin ang \"Oo\" kung gusto mo o magpadala ng e-mail sa pamamagitan ng isang server sa halip na ang mga lokal na mail function.",
+ "ShortMonth_1": "jan",
+ "ShortMonth_10": "out",
+ "ShortMonth_11": "nov",
+ "ShortMonth_12": "dez",
+ "ShortMonth_2": "fev",
+ "ShortMonth_3": "mar",
+ "ShortMonth_4": "abr",
+ "ShortMonth_5": "mai",
+ "ShortMonth_6": "jun",
+ "ShortMonth_7": "jul",
+ "ShortMonth_8": "ago",
+ "ShortMonth_9": "set",
+ "Table": "Talahanayan",
+ "Today": "hoje",
+ "TranslatorEmail": "hello@piwik.org",
+ "TranslatorName": "<a href=\"http:\/\/levante.se\/\">Levante.se<\/a>",
+ "View": "Tingnan",
+ "Visitors": "Mga Bisita",
+ "Website": "Website",
+ "XFromY": "%1$s mula %2$s",
+ "Yesterday": "ontem"
+ },
+ "Mobile": {
+ "AboutPiwikMobile": "Tungkol sa Piwik Mobile",
+ "AccessUrlLabel": "Piwik Access Url",
+ "Account": "Account",
+ "Accounts": "Mga Account",
+ "AddAccount": "Mag dag-dag ng account",
+ "AddPiwikDemo": "Magdagdag ng Piwik Demo",
+ "Advanced": "Advanced",
+ "AnonymousAccess": "Anonymous access",
+ "AnonymousTracking": "Anonymous tracking",
+ "AskForAnonymousTrackingPermission": "Kapag gumana na ang Piwik Mobile magpapadala ng hindi nakikilalang data ng paggamit sa piwik.org. Ang intensyon ng paraang ito ay upang matulungan ang Piwik Mobile Developers na mas lalong maunawaan kung paano ginagamit ang app na ito. Ang informasyon na pinapadala ay: mga menu at mga setting ng nag-click sa pangalan ng OS at version ng kahit anong error ipapakita ng Piwik Mobile. HINDI namin susubaybayan ang kahit na anumang sa iyong analytikong datus. Ang lahat ng hindi nakikilalang data ay hindi ipapasa publiko. Maaari mong huwag paganahin \/ paganahin ang mga hindi kilalang pagsubaybay sa Mga Setting anumang oras.",
+ "ChooseHttpTimeout": "Pumili ng HTTP timout value",
+ "ChooseMetric": "Pumili ng sukatan",
+ "ChooseReport": "Pumili ng ulat",
+ "ChooseSegment": "Pumili ng segment",
+ "ConfirmRemoveAccount": "Gusto mo bang alisin ang account na ito?",
+ "DefaultReportDate": "Ang petsa ng ulat",
+ "EmailUs": "I-email kami",
+ "EnableGraphsLabel": "Display graphs",
+ "EvolutionGraph": "Historical Graph",
+ "HelpUsToImprovePiwikMobile": "Gusto mo bang i-enable ang hindi pagsubaybay ng hindi kilalang paggamit sa Piwik Mobile?",
+ "HowtoDeleteAnAccount": "Pindutin ng matagal upang mag-alis ng account.",
+ "HowtoDeleteAnAccountOniOS": "I-swipe pakanan papuntang kaliwa upang mag-tanggal ng account.",
+ "HowtoLoginAnonymous": "Iwanan ang username at password na walang laman para sa hindi kilalang pag-login",
+ "HttpIsNotSecureWarning": "Ang iyong Piwik authorization token(token_auth) ay ipinadala na may malinaw na teksto kung iyong ginamit ang 'HTTP'. Dahil dito mas nirerekomenda namin na gumamit ng HTTPS para sa mas secure na paglipat ng data sa internet. Gusto mo bang ituloy?",
+ "HttpTimeout": "HTTP Timeout",
+ "IgnoreSslError": "Huwag pansinin ang SSL Error",
+ "IncompatiblePiwikVersion": "Ang Piwik bersyon na iyong ginagamit ay hindi tugma sa Piwik Mobile 2. I-update ang iyong pag-install Piwik at subukang muli o i-install Piwik Mobile 1.",
+ "LastUpdated": "Huling nai-update: %s",
+ "LoadingReport": "Nilo-load ang %s",
+ "LoginCredentials": "Kredensyal",
+ "LoginToPiwikToChangeSettings": "Mag-login sa iyong piwik server upang makagawa at makapag-update ng websites mga user o baguhin ang Panngkalahatang settings tulad ng \"upang i-load ang default na pang Ulat\".",
+ "LoginUseHttps": "Gumamit ng https",
+ "MultiChartLabel": "Ipakita ang sparklines",
+ "NavigationBack": "Balik",
+ "NetworkError": "Error sa Network",
+ "NetworkErrorWithStatusCode": "Nagkaroon ng error \"%s\". Ang iyong request ay bumalik na may kasamang status \"%s\". URL ay \"%s\". Mangyaring suriin ang ipinasok na URL at ang mga nakalagay na error sa server na ito upang makakita pa ng higit pang impormasyon tungkol sa error at paanu ito malulutas.",
+ "NetworkErrorWithStatusCodeShort": "Network Error sa %s",
+ "NetworkNotReachable": "Hindi maabot ang network",
+ "NoAccountIsSelected": "Kailangan mong pumili ng isang account. Magdagdag ng isang bagong account kung hindi ka pa nakaka pag configure ng kahit na isa.",
+ "NoDataShort": "Walang Datos",
+ "NoPiwikAccount": "Walang Piwik Account?",
+ "NoReportsShort": "Walang mga ulat",
+ "NoVisitorFound": "Walang natagpuang bisita",
+ "NoVisitorsShort": "Walang mga Bisita",
+ "NoWebsiteFound": "Walang nahanap na website",
+ "NoWebsitesShort": "Walang mga website",
+ "PossibleSslError": "Mga posibleng error sa SSL certificate.",
+ "PossibleSslErrorExplanation": "May error na nakita na dahilan ng hindi wasto o self-sign sertipiko: \"%s\". Maari mong mapagana ang login kung hindi papansin ang SSL verification ngunit ito ay lalong ligtas. Maari mong baguhin ang SSL validation sa anumang oras sa settings.",
+ "PullDownToRefresh": "Hilahin pababa upang i-refresh ...",
+ "RatingDontRemindMe": "Huwag ipaalala sa akin",
+ "RatingNotNow": "Hindi ngayon",
+ "RatingNow": "OK I-rarate ko na ito ngayon",
+ "RatingPleaseRateUs": "Ang Piwik Mobile App ay Libreng Software kami ay lubos na nagagalak sa pag-gugul ng 1 minuto upang e-rate ang na to sa %s. Kung meroon kayong suhesyon sa mga bagong features o di kaya may mga nakitang bug mangyaring makipag-ugnayan sa %s",
+ "ReleaseToRefresh": "I-release upang i-refresh ...",
+ "Reloading": "Muling pag-load ...",
+ "RequestTimedOutShort": "Network Timeout Error",
+ "RestrictedCompatibility": "Restricted compatibility",
+ "RestrictedCompatibilityExplanation": "Ang Piwik version %s na iyong ginagamit ay hindi ganap na suportado ng Piwik Mobile 2. Maari kang makaranas ng mga i-ilang bugs. Aming inirerekomenda na mag upgrade sa pinakabagong version o gamitin ang Piwik Mobile 1.",
+ "SaveSuccessError": "Ang Piwik URL o pinagsamang username at password ay mali.",
+ "SearchWebsite": "Maghanap ng mga website",
+ "ShowAll": "Ipakita lahat",
+ "ShowLess": "Ipakita ang mas maliit",
+ "StaticGraph": "Overview Graph",
+ "TopVisitedWebsites": "Nangungunang mga website",
+ "TryIt": "Subukan ito!",
+ "UseSearchBarHint": "Ang unang %s websites ay ipinapakita dito. Mangyaring gamitin ang search bar upang ma-access ang iyong websites.",
+ "ValidateSslCertificate": "I-validate ang Certificate SSL",
+ "VerifyAccount": "Ang pag-verify ang Account",
+ "VerifyLoginData": "Siguraduhing ang iyong pinagsamang username at password ay tama.",
+ "YouAreOffline": "Sorry ikaw ay kasalukuyang offline"
+ },
+ "RowEvolution": {
+ "AvailableMetrics": "Magagamit na mga sukatan",
+ "CompareDocumentation": "I-click ang link sa ibaba at buksan ang popup na ito sa ibang hilera mula sa kaparehas na table upang mapag-kumpara ang mga records.<br\/>Mag shift-click upang markahan ang hilera para makumpara ng hindi nag bubuksa ng bagong popup.",
+ "CompareRows": "Ihambing ang mga talaan",
+ "ComparingRecords": "Paghahambing ng %s mga row",
+ "Documentation": "I-click ang sukatan upang ipakita ang mga ito sa malaking graph. Gamitin ang shift-click upang ipakita ang maramihang mga sukatan nang sabay-sabay.",
+ "MetricBetweenText": "mula %s sa %s",
+ "MetricChangeText": "pagbabago ng %s sa paglipas ng panahon",
+ "MetricMinMax": "%1$s ay nasa pagitan ng %2$s at %3$s sa paglipas ng panahon",
+ "MetricsFor": "Mga sukatan para sa %s",
+ "MultiRowEvolutionTitle": "Ebolusyon ng maramihang mga row",
+ "PickAnotherRow": "Pumili ng isa pang row upang ihambing",
+ "PickARow": "Pumili ng row upang ihambing"
+ }
+} \ No newline at end of file
diff --git a/libs/PiwikTracker/PiwikTracker.php b/libs/PiwikTracker/PiwikTracker.php
index 39eb82b6bd..c998e1913d 100644
--- a/libs/PiwikTracker/PiwikTracker.php
+++ b/libs/PiwikTracker/PiwikTracker.php
@@ -219,6 +219,8 @@ class PiwikTracker
$this->doBulkRequests = false;
$this->storedTrackingActions = array();
+ $this->sendImageResponse = true;
+
$this->visitorCustomVar = $this->getCustomVariablesFromCookie();
}
@@ -501,6 +503,14 @@ class PiwikTracker
}
/**
+ * If image response is disabled Piwik will respond with a HTTP 204 header instead of responding with a gif.
+ */
+ public function disableSendImageResponse()
+ {
+ $this->sendImageResponse = false;
+ }
+
+ /**
* Fix-up domain
*/
static protected function domainFixup($domain)
@@ -1524,6 +1534,7 @@ class PiwikTracker
(!empty($this->city) ? '&city=' . urlencode($this->city) : '') .
(!empty($this->lat) ? '&lat=' . urlencode($this->lat) : '') .
(!empty($this->long) ? '&long=' . urlencode($this->long) : '') .
+ (!$this->sendImageResponse ? '&send_image=0' : '') .
// DEBUG
$this->DEBUG_APPEND_URL;
diff --git a/libs/UserAgentParser/README.md b/libs/UserAgentParser/README.md
deleted file mode 100644
index 110e533f17..0000000000
--- a/libs/UserAgentParser/README.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# UserAgentParser
-
-UserAgentParser is a php library to parse user agents,
-and extracts browser name & version and operating system.
-
-UserAgentParser is NOT designed to parse bots user agent strings;
-UserAgentParser will only be accurate when parsing user agents
-coming from Javascript Enabled browsers!
-
-UserAgentParser is designed for simplicity, to accurately detect the
-most used web browsers, and be regularly updated to detect new OS and browsers.
-
-Potential limitations:
-
- * it does NOT detect sub sub versions, ie. the "5" in 1.4.5; this is a design decision to simplify the version number
- * it does NOT detect search engine, bots, etc. user agents; it's designed to detect browsers with javascript enabled
- * it does NOT detect nested UA strings caused by some browser add-ons
-
-Feature request:
-
- * it could have the notion of operating system "types", ie "Windows". It currently only has "Windows XP", "Windows Vista", etc.
-
-Feedback, patches: hello@piwik.org
diff --git a/libs/UserAgentParser/UserAgentParser.php b/libs/UserAgentParser/UserAgentParser.php
deleted file mode 100644
index 009bc5a785..0000000000
--- a/libs/UserAgentParser/UserAgentParser.php
+++ /dev/null
@@ -1,729 +0,0 @@
-<?php
-/**
- * Copyright 2009, 2010 Matthieu Aubry & Piwik team
- * All rights reserved.
- *
- * @link https://github.com/piwik/piwik/tree/master/libs/UserAgentParser
- * @license http://www.opensource.org/licenses/bsd-license.php BSD License
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * * Neither the name of Matthieu Aubry nor the names of its contributors
- * may be used to endorse or promote products derived from this
- * software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/**
- * Example usage
- *
- * Browser info:
- * var_dump(UserAgentParser::getBrowser($_SERVER['HTTP_USER_AGENT']));
- *
- * Outputs:
- * array
- * 'id' => 'FF'
- * 'name' => 'Firefox'
- * 'short_name' => 'Firefox'
- * 'version' => '3.0'
- * 'major_number' => '3'
- * 'minor_number' => '0'
- *
- * Operating System info:
- * var_dump(UserAgentParser::getOperatingSystem($_SERVER['HTTP_USER_AGENT']));
- *
- * Outputs:
- * array
- * 'id' => 'WXP'
- * 'name' => 'Windows XP'
- * 'short_name' => 'Win XP'
- *
- */
-class UserAgentParser
-{
- // browser regex => browser ID
- // if there are aliases, the common name should be last
- static protected $browsers = array(
- 'abrowse' => 'AB',
- 'amaya' => 'AM',
- 'amigavoyager' => 'AV',
- 'amiga-aweb' => 'AW',
- 'arora' => 'AR',
- 'beonex' => 'BE',
-
- // BlackBerry smartphones and tablets
- 'blackberry' => 'BB', // BlackBerry 6 and PlayBook adopted webkit
- 'bb10' => 'B2', // BlackBerry 10
- 'playbook' => 'BP',
-
- 'browsex' => 'BX',
-
- // Camino (and earlier incarnation)
- 'chimera' => 'CA',
- 'camino' => 'CA',
-
- 'cheshire' => 'CS',
-
- // Chrome, Chromium, and ChromePlus
- 'crmo' => 'CH',
- 'chrome' => 'CH',
-
- // Chrome Frame
- 'chromeframe' => 'CF',
-
- 'cometbird' => 'CO',
- 'dillo' => 'DI',
- 'elinks' => 'EL',
- 'epiphany' => 'EP',
- 'fennec' => 'FE',
-
- // Dolfin (or Dolphin)
- 'dolfin' => 'DF',
-
- // Firefox (in its many incarnations and rebranded versions)
- 'phoenix' => 'PX',
- 'mozilla firebird' => 'FB',
- 'firebird' => 'FB',
- 'bonecho' => 'FF',
- 'minefield' => 'FF',
- 'namoroka' => 'FF',
- 'shiretoko' => 'FF',
- 'granparadiso' => 'FF',
- 'iceweasel' => 'FF',
- 'icecat' => 'FF',
- 'firefox' => 'FF',
-
- 'thunderbird' => 'TB',
-
- 'flock' => 'FL',
- 'fluid' => 'FD',
- 'galeon' => 'GA',
- 'google earth' => 'GE',
- 'hana' => 'HA',
- 'hotjava' => 'HJ',
- 'ibrowse' => 'IB',
- 'icab' => 'IC',
-
- // IE (including shells: Acoo, AOL, Avant, Crazy Browser, Green Browser, KKMAN, Maxathon)
- 'msie' => 'IE',
- 'trident' => 'IE',
- 'microsoft internet explorer' => 'IE',
- 'internet explorer' => 'IE',
-
- 'iron' => 'IR',
- 'kapiko' => 'KP',
- 'kazehakase' => 'KZ',
- 'k-meleon' => 'KM',
- 'konqueror' => 'KO',
- 'links' => 'LI',
- 'lynx' => 'LX',
- 'midori' => 'MI',
-
- // SeaMonkey (formerly Mozilla Suite) (and rebranded versions)
- 'mozilla' => 'MO',
- 'gnuzilla' => 'SM',
- 'iceape' => 'SM',
- 'seamonkey' => 'SM',
-
- // NCSA Mosaic (and incarnations)
- 'mosaic' => 'MC',
- 'ncsa mosaic' => 'MC',
-
- // Netscape Navigator
- 'navigator' => 'NS',
- 'netscape6' => 'NS',
- 'netscape' => 'NS',
-
- 'nx' => 'NF',
- 'netfront' => 'NF',
-
- 'omniweb' => 'OW',
-
- // Opera
- 'nitro) opera' => 'OP',
- 'opera' => 'OP',
-
- 'rekonq' => 'RK',
-
- // Safari
- 'safari' => 'SF',
- 'applewebkit' => 'SF',
-
- 'titanium' => 'TI',
-
- 'webos' => 'WO',
- 'webpro' => 'WP',
- );
-
- // browser family (by layout engine)
- static protected $browserType = array(
- 'ie' => array('IE'),
- 'gecko' => array('NS', 'PX', 'FF', 'FB', 'CA', 'GA', 'KM', 'MO', 'SM', 'CO', 'FE', 'KP', 'KZ', 'TB'),
- 'khtml' => array('KO'),
- 'webkit' => array('SF', 'CH', 'OW', 'AR', 'EP', 'FL', 'WO', 'AB', 'IR', 'CS', 'FD', 'HA', 'MI', 'GE', 'DF', 'BB', 'BP', 'TI', 'CF', 'RK', 'B2', 'NF'),
- 'opera' => array('OP'),
- );
-
- // WebKit version numbers to Apple Safari version numbers (if Version/X.Y.Z not present)
- static protected $safariVersions = array(
- '536.25' => array('6', '0'),
- '534.48' => array('5', '1'),
- '533.16' => array('5', '0'),
- '533.4' => array('4', '1'),
- '526.11.2' => array('4', '0'),
- '525.26' => array('3', '2'),
- '525.13' => array('3', '1'),
- '522.11' => array('3', '0'),
- '412' => array('2', '0'),
- '312' => array('1', '3'),
- '125' => array('1', '2'),
- '100' => array('1', '1'),
- '85' => array('1', '0'),
- '73' => array('0', '9'),
- '48' => array('0', '8'),
- );
-
- // OmniWeb build numbers to OmniWeb version numbers (if Version/X.Y.Z not present)
- static protected $omniWebVersions = array(
- '622.15' => array('5', '11'),
- '622.10' => array('5', '10'),
- '622.8' => array('5', '9'),
- '622.3' => array('5', '8'),
- '621' => array('5', '7'),
- '613' => array('5', '6'),
- '607' => array('5', '5'),
- '563.34' => array('5', '1'),
- '558.36' => array('5', '0'),
- '496' => array('4', '5'),
- );
-
- // OS regex => OS ID
- static protected $operatingSystems = array(
- 'Android' => 'AND',
- 'Maemo' => 'MAE',
- 'CrOS ' => 'LIN',
- 'Linux' => 'LIN',
-
- 'Xbox' => 'XBX',
-
- // workaround for vendors who changed the WinPhone 7 user agent
- 'WP7' => 'WPH',
-
- 'CYGWIN_NT-6.2' => 'WI8',
- 'Windows NT 6.2' => 'WI8',
- 'Windows NT 6.3' => 'WI8',
- 'Windows 8' => 'WI8',
- 'CYGWIN_NT-6.1' => 'WI7',
- 'Windows NT 6.1' => 'WI7',
- 'Windows 7' => 'WI7',
- 'CYGWIN_NT-6.0' => 'WVI',
- 'Windows NT 6.0' => 'WVI',
- 'Windows Vista' => 'WVI',
- 'CYGWIN_NT-5.2' => 'WS3',
- 'Windows NT 5.2' => 'WS3',
- 'Windows Server 2003 / XP x64' => 'WS3',
- 'CYGWIN_NT-5.1' => 'WXP',
- 'Windows NT 5.1' => 'WXP',
- 'Windows XP' => 'WXP',
- 'CYGWIN_NT-5.0' => 'W2K',
- 'Windows NT 5.0' => 'W2K',
- 'Windows 2000' => 'W2K',
- 'CYGWIN_NT-4.0' => 'WNT',
- 'Windows NT 4.0' => 'WNT',
- 'WinNT' => 'WNT',
- 'Windows NT' => 'WNT',
- 'CYGWIN_ME-4.90' => 'WME',
- 'Win 9x 4.90' => 'WME',
- 'Windows ME' => 'WME',
- 'CYGWIN_98-4.10' => 'W98',
- 'Win98' => 'W98',
- 'Windows 98' => 'W98',
- 'CYGWIN_95-4.0' => 'W95',
- 'Win32' => 'W95',
- 'Win95' => 'W95',
- 'Windows 95' => 'W95',
-
- // Windows Phone OS 7 and above
- 'Windows Phone OS' => 'WPH',
-
- // Windows Mobile 6.x and some later versions of Windows Mobile 5
- 'IEMobile' => 'WMO', // fallback
- 'Windows Mobile' => 'WMO',
-
- // Windows CE, Pocket PC, and Windows Mobile 5 are indistinguishable without vendor/device specific detection
- 'Windows CE' => 'WCE',
-
- 'iPod' => 'IPD',
- 'iPad' => 'IPA',
- 'iPhone' => 'IPH',
-// 'iOS' => 'IOS',
- 'Darwin' => 'MAC',
- 'Macintosh' => 'MAC',
- 'Power Macintosh' => 'MAC',
- 'Mac_PowerPC' => 'MAC',
- 'Mac PPC' => 'MAC',
- 'PPC' => 'MAC',
- 'Mac PowerPC' => 'MAC',
- 'Mac OS' => 'MAC',
-
- 'webOS' => 'WOS',
- 'Palm webOS' => 'WOS',
- 'PalmOS' => 'POS',
- 'Palm OS' => 'POS',
-
- 'BB10' => 'BBX',
- 'BlackBerry' => 'BLB',
- 'RIM Tablet OS' => 'QNX',
- 'QNX' => 'QNX',
-
- 'SymbOS' => 'SYM',
- 'Symbian OS' => 'SYM',
- 'SymbianOS' => 'SYM',
-
- 'bada' => 'SBA',
-
- 'SunOS' => 'SOS',
- 'AIX' => 'AIX',
- 'HP-UX' => 'HPX',
- 'OpenVMS' => 'VMS',
-
- 'FreeBSD' => 'BSD',
- 'NetBSD' => 'NBS',
- 'OpenBSD' => 'OBS',
- 'DragonFly' => 'DFB',
- 'Syllable' => 'SYL',
-
- 'Nintendo WiiU' => 'WIU',
- 'Nintendo Wii' => 'WII',
- 'Nitro' => 'NDS',
- 'Nintendo DSi' => 'DSI',
- 'Nintendo DS' => 'NDS',
- 'Nintendo 3DS' => '3DS',
-
- 'PlayStation Vita' => 'PSV',
- 'PlayStation Portable' => 'PSP',
- 'PlayStation 3' => 'PS3',
-
- 'IRIX' => 'IRI',
- 'OSF1' => 'T64',
- 'OS/2' => 'OS2',
- 'BEOS' => 'BEO',
- 'Amiga' => 'AMI',
- 'AmigaOS' => 'AMI',
- );
-
- // os family
- // NOTE: The keys in this array are used by plugins/UserSettings/functions.php . Any changes
- // made here should also be made in that file.
- static protected $osType = array(
- 'Windows' => array('WI8', 'WI7', 'WVI', 'WS3', 'WXP', 'W2K', 'WNT', 'WME', 'W98', 'W95'),
- 'Linux' => array('LIN'),
- 'Mac' => array('MAC'),
- 'iOS' => array('IPD', 'IPA', 'IPH'),
- 'Android' => array('AND'),
- 'Windows Mobile' => array('WPH', 'WMO', 'WCE'),
- 'Gaming Console' => array('WII', 'WIU', 'PS3', 'XBX'),
- 'Mobile Gaming Console' => array('PSP', 'PSV', 'NDS', 'DSI', '3DS'),
- 'Unix' => array('SOS', 'AIX', 'HP-UX', 'BSD', 'NBS', 'OBS', 'DFB', 'SYL', 'IRI', 'T64'),
- 'Other Mobile' => array('MAE', 'WOS', 'POS', 'BLB', 'QNX', 'SYM', 'SBA'),
- 'Other' => array('VMS', 'OS2', 'BEOS', 'AMI')
- );
-
- static protected $browserIdToName;
- static protected $browserIdToShortName;
- static protected $operatingSystemsIdToName;
- static protected $operatingSystemsIdToShortName;
- static private $init = false;
-
- /**
- * Returns an array of the OS for the submitted user agent
- * 'id' => '',
- * 'name' => '',
- * 'short_name' => '',
- *
- * @param string $userAgent
- * @return string false if OS couldn't be identified, or 3 letters ID (eg. WXP)
- * @see UserAgentParser/OperatingSystems.php for the list of OS (also available in self::$operatingSystems)
- */
- static public function getOperatingSystem($userAgent)
- {
- $userAgent = self::cleanupUserAgent($userAgent);
- self::init();
- $info = array(
- 'id' => '',
- 'name' => '',
- 'short_name' => '',
- );
- foreach (self::$operatingSystems as $key => $value) {
- if (stristr($userAgent, $key) !== false) {
- $info['id'] = $value;
- break;
- }
- }
- if (empty($info['id'])) {
- return false;
- }
- $info['name'] = self::getOperatingSystemNameFromId($info['id']);
- $info['short_name'] = self::getOperatingSystemShortNameFromId($info['id']);
- return $info;
- }
-
- static protected function cleanupUserAgent($userAgent)
- {
- // in case value is URL encoded
- return urldecode($userAgent);
- }
-
- /**
- * Returns the browser information array, given a user agent string.
- *
- * @param string $userAgent
- * @return array false if the browser is "unknown", or
- * array( 'id' => '', // 2 letters ID, eg. FF
- * 'name' => '', // 2 letters ID, eg. FF
- * 'short_name' => '', // 2 letters ID, eg. FF
- * 'major_number' => '', // 2 in firefox 2.0.12
- * 'minor_number' => '', // 0 in firefox 2.0.12
- * 'version' => '', // major_number.minor_number
- * );
- * @see self::$browsers for the list of OS
- */
- static public function getBrowser($userAgent)
- {
- $userAgent = self::cleanupUserAgent($userAgent);
-
- self::init();
-
- $info = array(
- 'id' => '',
- 'name' => '',
- 'short_name' => '',
- 'major_number' => '',
- 'minor_number' => '',
- 'version' => '',
- );
-
- $browsers = self::$browsers;
-
- // derivative browsers often clone the base browser's useragent
- unset($browsers['firefox']);
- unset($browsers['mozilla']);
- unset($browsers['safari']);
- unset($browsers['applewebkit']);
-
- $browsersPattern = str_replace(')', '\)', implode('|', array_keys($browsers)));
-
- $results = array();
-
- // Misbehaving IE add-ons
- $userAgent = preg_replace('/[; ]Mozilla\/[0-9.]+ \([^)]+\)/', '', $userAgent);
-
- // Clean-up BlackBerry device UAs
- $userAgent = preg_replace('~^BlackBerry\d+/~', 'BlackBerry/', $userAgent);
-
- if (preg_match_all("/($browsersPattern)[\/\sa-z(]*([0-9]+)([\.0-9a-z]+)?/i", $userAgent, $results)
- || (strpos($userAgent, 'Shiira') === false && preg_match_all("/(firefox|thunderbird|safari)[\/\sa-z(]*([0-9]+)([\.0-9a-z]+)?/i", $userAgent, $results))
- || preg_match_all("/(applewebkit)[\/\sa-z(]*([0-9]+)([\.0-9a-z]+)?/i", $userAgent, $results)
- || preg_match_all("/^(mozilla)\/([0-9]+)([\.0-9a-z-]+)?(?: \[[a-z]{2}\])? (?:\([^)]*\))$/i", $userAgent, $results)
- || preg_match_all("/^(mozilla)\/[0-9]+(?:[\.0-9a-z-]+)?\s\(.* rv:([0-9]+)([.0-9a-z]+)\) gecko(\/[0-9]{8}|$)(?:.*)/i", $userAgent, $results)
- || (strpos($userAgent, 'Nintendo 3DS') !== false && preg_match_all("/^(mozilla).*version\/([0-9]+)([.0-9a-z]+)?/i", $userAgent, $results))
- ) {
- // browser code (usually the first match)
- $count = 0;
- $info['id'] = self::$browsers[strtolower($results[1][0])];
-
- // sometimes there's a better match at the end
- if (strpos($userAgent, 'chromeframe') !== false) {
- $count = count($results[0]) - 1;
- $info['id'] = 'CF';
- } elseif (($info['id'] == 'IE' || $info['id'] == 'LX') && (count($results[0]) > 1)) {
- $count = count($results[0]) - 1;
- $info['id'] = self::$browsers[strtolower($results[1][$count])];
- }
-
- // Netscape fix
- if ($info['id'] == 'MO' && $count == 0) {
- if (stripos($userAgent, 'PlayStation') !== false) {
- return false;
- }
- if (strpos($userAgent, 'Nintendo 3DS') !== false) {
- $info['id'] = 'NF';
- } elseif (count($results) == 4) {
- $info['id'] = 'NS';
- }
- } // BlackBerry devices
- elseif (strpos($userAgent, 'BlackBerry') !== false) {
- $info['id'] = 'BB';
- } elseif (strpos($userAgent, 'RIM Tablet OS') !== false) {
- $info['id'] = 'BP';
- } elseif (strpos($userAgent, 'BB10') !== false) {
- $info['id'] = 'B2';
- } elseif (strpos($userAgent, 'Playstation Vita') !== false) {
- $info['id'] = 'NF';
-
- if (preg_match_all("/(silk)[\/\sa-z(]*([0-9]+)([\.0-9a-z]+)?/i", $userAgent, $newResults)) {
- $results = $newResults;
- $count = count($results[0]) - 1;
- }
- }
-
- // Version/X.Y.Z override
- if (preg_match_all("/(version)[\/\sa-z(]*([0-9]+)([\.0-9a-z]+)?/i", $userAgent, $newResults)) {
- $results = $newResults;
- $count = count($results[0]) - 1;
- }
-
- // major version number (1 in mozilla 1.7)
- $info['major_number'] = $results[2][$count];
-
- // is an minor version number ? If not, 0
- $match = array();
-
- preg_match('/([.\0-9]+)?([\.a-z0-9]+)?/i', $results[3][$count], $match);
-
- if (isset($match[1])) {
- // find minor version number (7 in mozilla 1.7, 9 in firefox 0.9.3)
- $dot = strpos(substr($match[1], 1), '.');
- if ($dot !== false) {
- $info['minor_number'] = substr($match[1], 1, $dot);
- } else {
- $info['minor_number'] = substr($match[1], 1);
- }
- } else {
- $info['minor_number'] = '0';
- }
- $info['version'] = $info['major_number'] . '.' . $info['minor_number'];
-
- // IE compatibility mode
- if ($info['id'] == 'IE'
- && (strncmp($userAgent, 'Mozilla/4.0', 11) == 0 || strncmp($userAgent, 'Mozilla/5.0', 11) == 0)
- && preg_match('~ Trident/([0-9]+)\.[0-9]+~', $userAgent, $tridentVersion)
- ) {
- $info['major_number'] = $tridentVersion[1] + 4;
- $info['minor_number'] = '0';
- $info['version'] = $info['major_number'] . '.' . $info['minor_number'];
- }
-
- // Safari fix
- if ($info['id'] == 'SF') {
- foreach (self::$safariVersions as $buildVersion => $productVersion) {
- if (version_compare($info['version'], $buildVersion) >= 0) {
- $info['major_number'] = $productVersion[0];
- $info['minor_number'] = $productVersion[1];
- $info['version'] = $info['major_number'] . '.' . $info['minor_number'];
- break;
- }
- }
- }
-
- // OmniWeb fix
- if ($info['id'] == 'OW') {
- foreach (self::$omniWebVersions as $buildVersion => $productVersion) {
- if (version_compare($info['version'], $buildVersion) >= 0) {
- $info['major_number'] = $productVersion[0];
- $info['minor_number'] = $productVersion[1];
- $info['version'] = $info['major_number'] . '.' . $info['minor_number'];
- break;
- }
- }
- }
-
- // SeaMonkey fix
- if ($info['id'] == 'MO' && $info['version'] == '1.9') {
- $info['id'] = 'SM';
- }
-
- $info['name'] = self::getBrowserNameFromId($info['id']);
- $info['short_name'] = self::getBrowserShortNameFromId($info['id']);
-
- return $info;
- }
-
- return false;
- }
-
- static protected function init()
- {
- if (self::$init) {
- return;
- }
- self::$init = true;
-
- // init browser names and short names
- self::$browserIdToName = array_map('ucwords', array_flip(self::$browsers));
- self::$browserIdToName['AB'] = 'ABrowse';
- self::$browserIdToName['AV'] = 'AmigaVoyager';
- self::$browserIdToName['AW'] = 'Amiga AWeb';
- self::$browserIdToName['BB'] = 'BlackBerry';
- self::$browserIdToName['BP'] = 'PlayBook';
- self::$browserIdToName['B2'] = 'BlackBerry';
- self::$browserIdToName['BX'] = 'BrowseX';
- self::$browserIdToName['CF'] = 'Chrome Frame';
- self::$browserIdToName['CO'] = 'CometBird';
- self::$browserIdToName['EL'] = 'ELinks';
- self::$browserIdToName['FF'] = 'Firefox';
- self::$browserIdToName['HJ'] = 'HotJava';
- self::$browserIdToName['IB'] = 'IBrowse';
- self::$browserIdToName['IC'] = 'iCab';
- self::$browserIdToName['KM'] = 'K-Meleon';
- self::$browserIdToName['MC'] = 'NCSA Mosaic';
- self::$browserIdToName['NF'] = 'NetFront';
- self::$browserIdToName['OW'] = 'OmniWeb';
- self::$browserIdToName['SF'] = 'Safari';
- self::$browserIdToName['SM'] = 'SeaMonkey';
- self::$browserIdToName['WO'] = 'Palm webOS';
- self::$browserIdToName['WP'] = 'WebPro';
-
- self::$browserIdToShortName = self::$browserIdToName;
- self::$browserIdToShortName['AW'] = 'AWeb';
- self::$browserIdToShortName['FB'] = 'Firebird';
- self::$browserIdToShortName['IE'] = 'IE';
- self::$browserIdToShortName['MC'] = 'Mosaic';
- self::$browserIdToShortName['BP'] = 'PlayBook';
- self::$browserIdToShortName['WO'] = 'webOS';
-
- // init OS names and short names
- $operatingSystemsIdToName = array(
- 'IPD' => 'iPod',
- 'IPA' => 'iPad',
- 'WME' => 'Windows Me',
- 'BEO' => 'BeOS',
- 'T64' => 'Tru64',
- 'NDS' => 'Nintendo DS',
- 'WIU' => 'Nintendo Wii U',
- '3DS' => 'Nintendo 3DS',
-
- // These are for BC purposes only
- 'W75' => 'WinPhone 7.5',
- 'WP7' => 'WinPhone 7',
- 'W65' => 'WinMo 6.5',
- 'W61' => 'WinMo 6.1',
-
- );
- self::$operatingSystemsIdToName = array_merge(array_flip(self::$operatingSystems), $operatingSystemsIdToName);
- $operatingSystemsIdToShortName = array(
- 'PS3' => 'PS3',
- 'PSP' => 'PSP',
- 'WII' => 'Wii',
- 'WIU' => 'Wii U',
- 'NDS' => 'DS',
- 'DSI' => 'DSi',
- '3DS' => '3DS',
- 'PSV' => 'PS Vita',
- 'WI8' => 'Win 8',
- 'WI7' => 'Win 7',
- 'WVI' => 'Win Vista',
- 'WS3' => 'Win S2003',
- 'WXP' => 'Win XP',
- 'W98' => 'Win 98',
- 'W2K' => 'Win 2000',
- 'WNT' => 'Win NT',
- 'WME' => 'Win Me',
- 'W95' => 'Win 95',
- 'WPH' => 'WinPhone',
- 'WMO' => 'WinMo',
- 'WCE' => 'Win CE',
- 'WOS' => 'webOS',
- 'UNK' => 'Unknown',
- );
- self::$operatingSystemsIdToShortName = array_merge(self::$operatingSystemsIdToName, $operatingSystemsIdToShortName);
- }
-
- static public function getBrowserNameFromId($browserId)
- {
- self::init();
- if (isset(self::$browserIdToName[$browserId])) {
- return self::$browserIdToName[$browserId];
- }
- if(class_exists('DeviceDetector\\Parser\\Client\\Browser')) {
- $browsers = DeviceDetector\Parser\Client\Browser::getAvailableBrowsers();
- if( array_key_exists($browserId, $browsers)) {
- return $browsers[$browserId];
- }
- }
- return false;
- }
-
- static public function getBrowserShortNameFromId($browserId)
- {
- self::init();
- if (isset(self::$browserIdToShortName[$browserId])) {
- return self::$browserIdToShortName[$browserId];
- }
- return false;
- }
-
- static public function getBrowserFamilyFromId($browserId)
- {
- self::init();
- $familyNameToUse = 'unknown';
- foreach (self::$browserType as $familyName => $aBrowsers) {
- if (in_array($browserId, $aBrowsers)) {
- $familyNameToUse = $familyName;
- break;
- }
- }
- return $familyNameToUse;
- }
-
- static public function getOperatingSystemNameFromId($osId)
- {
- self::init();
- if (isset(self::$operatingSystemsIdToName[$osId])) {
- return self::$operatingSystemsIdToName[$osId];
- }
-
- if(class_exists('DeviceDetector\\Parser\\OperatingSystem')) {
- if ($osId == 'BOT') {
- return 'Bot';
- }
- return DeviceDetector\Parser\OperatingSystem::getNameFromId($osId);
- }
- return false;
- }
-
- static public function getOperatingSystemShortNameFromId($osId)
- {
- self::init();
- if (isset(self::$operatingSystemsIdToShortName[$osId])) {
- return self::$operatingSystemsIdToShortName[$osId];
- }
- return false;
- }
-
- static public function getOperatingSystemIdFromName($osName)
- {
- return isset(self::$operatingSystems[$osName]) ? self::$operatingSystems[$osName] : false;
- }
-
- static public function getOperatingSystemFamilyFromId($osId)
- {
- self::init();
- foreach (self::$osType as $familyName => $aSystems) {
- if (in_array($osId, $aSystems)) {
- return $familyName;
- }
- }
- return 'unknown';
- }
-}
diff --git a/libs/UserAgentParser/UserAgentParser.test.php b/libs/UserAgentParser/UserAgentParser.test.php
deleted file mode 100644
index 5d59eed198..0000000000
--- a/libs/UserAgentParser/UserAgentParser.test.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-if (!isset($_GET['setUserAgent']) && !isset($_SERVER['HTTP_USER_AGENT'])) die;
-
-require_once dirname(__FILE__) . '/UserAgentParser.php';
-echo "<h2>UserAgentParser php library test</h2>";
-$testUserAgent = array(
- 'my user agent' => '',
- 'ie8 on win7' => 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET CLR 3.0.04506; .NET CLR 3.5.21022; InfoPath.2; SLCC1; Zune 3.0)',
- 'ie8 on vista (compatibility view)' => 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0)',
- 'ie8 on vista' => 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)',
- 'chrome on winxp' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.48 Safari/525.19',
- 'IE6 on winxp' => 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648)',
- 'safari on winxp' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Version/3.1.2 Safari/525.21',
- 'FF3 on winxp' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6',
- 'opera 9.63 on winxp' => 'Opera/9.63 (Windows NT 5.1; U; en) Presto/2.1.1',
- 'Blackberry' => 'BlackBerry8700/4.1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1',
- 'opera 9.30 on Nintendo Wii' => 'Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)',
- 'iphone' => 'Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5G77 Safari/525.20',
- 'iPod touch' => 'Mozilla/5.0 (iPod; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3A100a Safari/419.3',
- 'iPod' => 'Mozilla/5.0 (iPod; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11a Safari/525.20',
- 'Android' => 'Mozilla/5.0 (Linux; U; Android 1.1; en-us; dream) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2',
- 'PalmOS' => 'Mozilla/5.0 [en] (PalmOS; U; WebPro/3.5; Palm-Zi72) ',
- 'safari on mac os X' => 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; en-us) AppleWebKit/527.3+ (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1',
- 'opera 9.64 on win ME' => 'Opera/9.64 (Windows ME; U; en) Presto/2.1.1',
- 'opera 10.00 on XP' => 'Opera/9.80 (Windows NT 5.1; U; en) Presto/2.2.15 Version/10.00',
- 'iron on win7' => 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/531.0 (KHTML, like Gecko) Iron/3.0.189.0 Safari/531.0',
- 'firefox 3.6 alpha on vista' => 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.2a2pre) Gecko/20090826 Namoroka/3.6a2pre',
- 'firefox 3.5 alpha on win7' => 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1b4pre) Gecko/20090420 Shiretoko/3.5b4pre (.NET CLR 3.5.30729)',
- 'firefox nightly build' => 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:2.0a1pre) Gecko/2008060602 Minefield/4.0a1pre',
- 'thunderbird 14.0 with lightning 1.6' => 'Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120713 Thunderbird/14.0 Lightning/1.6',
- 'Windows 8' => 'Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko',
-);
-echo "Test with another user agent: ";
-foreach ($testUserAgent as $name => $userAgent) {
- echo "<a href='?setUserAgent=" . urlencode($userAgent) . "'>$name</a>, ";
-}
-echo "<hr>";
-
-if (isset($_GET['setUserAgent']) && !empty($_GET['setUserAgent'])) {
- echo "User Agent:";
- $userAgent = urldecode($_GET['setUserAgent']);
-} else {
- echo "Your user agent:";
- $userAgent = $_SERVER['HTTP_USER_AGENT'];
-}
-echo " <b>" . htmlentities($userAgent) . "</b><br><br>";
-
-echo "Browser info:<pre>";
-var_dump(UserAgentParser::getBrowser($userAgent));
-echo "</pre>";
-
-echo "Operating System info:<pre>";
-var_dump(UserAgentParser::getOperatingSystem($userAgent));
-echo "</pre>";
-
-echo "<br><br><i>UserAgentParser doesn't detect your Operating System or Browser properly? <br>Please submit your user agent string and the expected result to hello at piwik.org. Patches are also welcome :-) Thanks!</i>";
diff --git a/misc/log-analytics/import_logs.py b/misc/log-analytics/import_logs.py
index 90a7f4f709..6674e2f2fa 100755
--- a/misc/log-analytics/import_logs.py
+++ b/misc/log-analytics/import_logs.py
@@ -1162,7 +1162,7 @@ class Recorder(object):
# We have to do this so visits from the same IP will be added in the right order.
hits_by_client = [[] for r in cls.recorders]
for hit in all_hits:
- hits_by_client[abs(hash(hit.ip)) % len(cls.recorders)].append(hit)
+ hits_by_client[hit.get_visitor_id_hash() % len(cls.recorders)].append(hit)
for i, recorder in enumerate(cls.recorders):
recorder.queue.put(hits_by_client[i])
@@ -1351,6 +1351,17 @@ class Hit(object):
if config.options.force_lowercase_path:
self.full_path = self.full_path.lower()
+ def get_visitor_id_hash(self):
+ visitor_id = self.ip
+
+ if config.options.replay_tracking:
+ for param_name_to_use in ['uid', 'cid', '_id', 'cip']:
+ if param_name_to_use in self.args:
+ visitor_id = self.args[param_name_to_use]
+ break
+
+ return abs(hash(visitor_id))
+
class Parser(object):
"""
The Parser parses the lines in a specified file and inserts them into
diff --git a/misc/others/api_rest_call.php b/misc/others/api_rest_call.php
index c85d5c193e..67c3f9e4ba 100644
--- a/misc/others/api_rest_call.php
+++ b/misc/others/api_rest_call.php
@@ -20,11 +20,11 @@ if (!$content) {
print("Error, content fetched = " . $fetched);
}
-print("<h1>Keywords for the last month</h1>");
+print("<h1>Keywords for the last month</h1>\n");
foreach ($content as $row) {
$keyword = htmlspecialchars(html_entity_decode(urldecode($row['label']), ENT_QUOTES), ENT_QUOTES);
$hits = $row['nb_visits'];
- print("<b>$keyword</b> ($hits hits)<br>");
+ print("<b>$keyword</b> ($hits hits)<br>\n");
}
diff --git a/misc/others/geoipUpdateRows.php b/misc/others/geoipUpdateRows.php
index 5f36ed5e7d..09ae69d3d4 100755
--- a/misc/others/geoipUpdateRows.php
+++ b/misc/others/geoipUpdateRows.php
@@ -10,7 +10,7 @@ use Piwik\Plugins\UserCountry\LocationProvider\GeoIp\Php;
require_once './cli-script-bootstrap.php';
-ini_set("memory_limit", "512M");
+@ini_set("memory_limit", "512M");
$query = "SELECT count(*) FROM " . Common::prefixTable('log_visit');
$count = Db::fetchOne($query);
@@ -87,7 +87,7 @@ if (!Common::isPhpCliMode()) {
function geoipUpdateError($message)
{
Log::error($message);
- Common::sendHeader('HTTP/1.1 500 Internal Server Error', $replace = true, $responseCode = 500);
+ Common::sendResponseCode(500);
exit;
}
diff --git a/piwik.js b/piwik.js
index c593488d33..0eb59e8cc6 100644
--- a/piwik.js
+++ b/piwik.js
@@ -32,7 +32,7 @@ function bF(cf,cc,cb,ce,ca,cd){if(ao){return}var b9;if(cb){b9=new Date();b9.setT
}};ca.src=aa+(aa.indexOf("?")<0?"?":"&")+b9}function bG(ca,cd,b9){if(!w(b9)||null===b9){b9=true}try{var cc=G.XMLHttpRequest?new G.XMLHttpRequest():G.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;cc.open("POST",aa,true);cc.onreadystatechange=function(){if(this.readyState===4&&!(this.status>=200&&this.status<300)&&b9){b8(ca,cd)}else{if(typeof cd==="function"){cd()}}};cc.setRequestHeader("Content-Type",aK);cc.send(ca)}catch(cb){if(b9){b8(ca,cd)}}}function bY(ca){var b9=new Date();var cb=b9.getTime()+ca;if(!j||cb>j){j=cb}}function aD(cd){var ca=new Date();var b9=ca.getTime();if(a8&&b9<a8){var cb=a8-b9;setTimeout(cd,cb);bY(cb+50);a8+=50;return}if(a8===false){var cc=800;a8=b9+cc}cd()}function aZ(ca,b9,cb){if(!bV&&ca){aD(function(){if(br==="POST"){bG(ca,cb)}else{b8(ca,cb)}bY(b9)})}}function ba(b9){if(bV){return false}return(b9&&b9.length)}function ap(cb,b9){if(!ba(cb)){return}var ca='{"requests":["?'+cb.join('","?')+'"]}';aD(function(){bG(ca,null,false);bY(b9)})}function bE(b9){return b1+b9+"."+bR+"."+bx
}function ae(){if(ao){return"0"}if(!w(e.cookieEnabled)){var b9=bE("testcookie");bF(b9,"1");return av(b9)==="1"?"1":"0"}return e.cookieEnabled?"1":"0"}function bj(){bx=aX((aq||bL)+(b2||"/")).slice(0,4)}function ar(){var ca=bE("cvar"),b9=av(ca);if(b9.length){b9=JSON2.parse(b9);if(J(b9)){return b9}}return{}}function Z(){if(ag===false){ag=ar()}}function bQ(){var b9=new Date();bs=b9.getTime()}function Y(){var ca=new Date(),b9=Math.round(ca.getTime()/1000),cc=av(bE("id")),cb;if(cc){cb=cc.split(".");cb.unshift("0")}else{if(!a2){a2=aX((e.userAgent||"")+(e.platform||"")+JSON2.stringify(bS)+ca.getTime()+Math.random()).slice(0,16)}cb=["1",a2,b9,0,b9,"",""]}return cb}function aL(){var cd=new Date(),ca=cd.getTime(),cc=Y();var b9=parseInt(cc[2],10);var cb=(b9*1000)+aw-ca;return cb}function am(cd,ca,b9,cc,cb,cf){var ce=aL();bF(bE("id"),cd+"."+ca+"."+b9+"."+cc+"."+cb+"."+cf,ce,b2,aq)}function X(){var b9=av(bE("ref"));if(b9.length){try{b9=JSON2.parse(b9);if(J(b9)){return b9}}catch(ca){}}return["","",0,""]
}function W(){var b9=ao;ao=false;bF(bE("id"),"",-86400,b2,aq);bF(bE("ses"),"",-86400,b2,aq);bF(bE("cvar"),"",-86400,b2,aq);bF(bE("ref"),"",-86400,b2,aq);ao=b9}function bP(cd){if(!cd||!J(cd)){return}var cc=[];var cb;for(cb in cd){if(Object.prototype.hasOwnProperty.call(cd,cb)){cc.push(cb)}}var ce={};cc.sort();var b9=cc.length;var ca;for(ca=0;ca<b9;ca++){ce[cc[ca]]=cd[cc[ca]]}return ce}function aT(cb,cz,cA,cc){var cx,ca=new Date(),cj=Math.round(ca.getTime()/1000),cD,cy,ce,cp,cu,ci,cs,cf,cw,cd=1024,cF,cm,ct=ag,ck=bE("ses"),cl=bE("ref"),cG=bE("cvar"),cq=Y(),co=av(ck),cv=X(),cC=a6||b3,cg,b9;if(ao){W()}if(bV){return""}cD=cq[0];cy=cq[1];cp=cq[2];ce=cq[3];cu=cq[4];ci=cq[5];if(!w(cq[6])){cq[6]=""}cs=cq[6];if(!w(cc)){cc=""}var cn=u.characterSet||u.charset;if(!cn||cn.toLowerCase()==="utf-8"){cn=null}cg=cv[0];b9=cv[1];cf=cv[2];cw=cv[3];if(!co){var cB=az/1000;if(!ci||(cj-ci)>cB){ce++;ci=cu}if(!a4||!cg.length){for(cx in aY){if(Object.prototype.hasOwnProperty.call(aY,cx)){cg=I(cC,aY[cx]);if(cg.length){break
-}}}for(cx in aP){if(Object.prototype.hasOwnProperty.call(aP,cx)){b9=I(cC,aP[cx]);if(b9.length){break}}}}cF=b(bt);cm=cw.length?b(cw):"";if(cF.length&&!bq(cF)&&(!a4||!cm.length||bq(cm))){cw=bt}if(cw.length||cg.length){cf=cj;cv=[cg,b9,cf,bX(cw.slice(0,cd))];bF(cl,JSON2.stringify(cv),a9,b2,aq)}}cb+="&idsite="+bR+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+ca.getHours()+"&m="+ca.getMinutes()+"&s="+ca.getSeconds()+"&url="+l(bX(cC))+(bt.length?"&urlref="+l(bX(bt)):"")+(aJ.length?"&uid="+l(aJ):"")+"&_id="+cy+"&_idts="+cp+"&_idvc="+ce+"&_idn="+cD+(cg.length?"&_rcn="+l(cg):"")+(b9.length?"&_rck="+l(b9):"")+"&_refts="+cf+"&_viewts="+ci+(String(cs).length?"&_ects="+cs:"")+(String(cw).length?"&_ref="+l(bX(cw.slice(0,cd))):"")+(cn?"&cs="+l(cn):"");for(cx in bS){if(Object.prototype.hasOwnProperty.call(bS,cx)){cb+="&"+cx+"="+bS[cx]}}if(cz){cb+="&data="+l(JSON2.stringify(cz))}else{if(an){cb+="&data="+l(JSON2.stringify(an))}}function ch(cH,cI){var cJ=JSON2.stringify(cH);if(cJ.length>2){return"&"+cI+"="+l(cJ)
+}}}for(cx in aP){if(Object.prototype.hasOwnProperty.call(aP,cx)){b9=I(cC,aP[cx]);if(b9.length){break}}}}cF=b(bt);cm=cw.length?b(cw):"";if(cF.length&&!bq(cF)&&(!a4||!cm.length||bq(cm))){cw=bt}if(cw.length||cg.length){cf=cj;cv=[cg,b9,cf,bX(cw.slice(0,cd))];bF(cl,JSON2.stringify(cv),a9,b2,aq)}}cb+="&idsite="+bR+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+ca.getHours()+"&m="+ca.getMinutes()+"&s="+ca.getSeconds()+"&url="+l(bX(cC))+(bt.length?"&urlref="+l(bX(bt)):"")+(aJ.length?"&uid="+l(aJ):"")+"&_id="+cy+"&_idts="+cp+"&_idvc="+ce+"&_idn="+cD+(cg.length?"&_rcn="+l(cg):"")+(b9.length?"&_rck="+l(b9):"")+"&_refts="+cf+"&_viewts="+ci+(String(cs).length?"&_ects="+cs:"")+(String(cw).length?"&_ref="+l(bX(cw.slice(0,cd))):"")+(cn?"&cs="+l(cn):"")+"&send_image=0";for(cx in bS){if(Object.prototype.hasOwnProperty.call(bS,cx)){cb+="&"+cx+"="+bS[cx]}}if(cz){cb+="&data="+l(JSON2.stringify(cz))}else{if(an){cb+="&data="+l(JSON2.stringify(an))}}function ch(cH,cI){var cJ=JSON2.stringify(cH);if(cJ.length>2){return"&"+cI+"="+l(cJ)
}return""}var cE=bP(bf);var cr=bP(ab);cb+=ch(cE,"cvar");cb+=ch(cr,"e_cvar");if(ag){cb+=ch(ag,"_cvar");for(cx in ct){if(Object.prototype.hasOwnProperty.call(ct,cx)){if(ag[cx][0]===""||ag[cx][1]===""){delete ag[cx]}}}if(a5){bF(cG,JSON2.stringify(ag),az,b2,aq)}}if(a1){if(aI){cb+="&gt_ms="+aI}else{if(f&&f.timing&&f.timing.requestStart&&f.timing.responseEnd){cb+="&gt_ms="+(f.timing.responseEnd-f.timing.requestStart)}}}am(cy,cp,ce,cj,ci,w(cc)&&String(cc).length?cc:cs);bF(ck,"*",az,b2,aq);cb+=O(cA);if(bn.length){cb+="&"+bn}if(q(au)){cb=au(cb)}return cb}function bI(cc,cb,cg,cd,b9,cj){var ce="idgoal=0",cf,ca=new Date(),ch=[],ci;if(String(cc).length){ce+="&ec_id="+l(cc);cf=Math.round(ca.getTime()/1000)}ce+="&revenue="+cb;if(String(cg).length){ce+="&ec_st="+cg}if(String(cd).length){ce+="&ec_tx="+cd}if(String(b9).length){ce+="&ec_sh="+b9}if(String(cj).length){ce+="&ec_dt="+cj}if(bD){for(ci in bD){if(Object.prototype.hasOwnProperty.call(bD,ci)){if(!w(bD[ci][1])){bD[ci][1]=""}if(!w(bD[ci][2])){bD[ci][2]=""
}if(!w(bD[ci][3])||String(bD[ci][3]).length===0){bD[ci][3]=0}if(!w(bD[ci][4])||String(bD[ci][4]).length===0){bD[ci][4]=1}ch.push(bD[ci])}}ce+="&ec_items="+l(JSON2.stringify(ch))}ce=aT(ce,an,"ecommerce",cf);aZ(ce,bm)}function bH(b9,cd,cc,cb,ca,ce){if(String(b9).length&&w(cd)){bI(b9,cd,cc,cb,ca,ce)}}function b0(b9){if(w(b9)){bI("",b9,"","","","")}}function bd(cc,cd){var b9=new Date(),cb=aT("action_name="+l(V(cc||aS)),cd,"log");aZ(cb,bm);if(aj&&aG&&!bv){bv=true;U(u,"click",bQ);U(u,"mouseup",bQ);U(u,"mousedown",bQ);U(u,"mousemove",bQ);U(u,"mousewheel",bQ);U(G,"DOMMouseScroll",bQ);U(G,"scroll",bQ);U(u,"keypress",bQ);U(u,"keydown",bQ);U(u,"keyup",bQ);U(G,"resize",bQ);U(G,"focus",bQ);U(G,"blur",bQ);bs=b9.getTime();setTimeout(function ca(){var ce;b9=new Date();if((bs+aG)>b9.getTime()){if(aj<b9.getTime()){ce=aT("ping=1",cd,"ping");aZ(ce,bm)}setTimeout(ca,aG)}},aG)}}function aH(cb,ca){var cc,b9="(^| )(piwik[_-]"+ca;if(cb){for(cc=0;cc<cb.length;cc++){b9+="|"+cb[cc]}}b9+=")( |$)";return new RegExp(b9)
}function bB(b9){return(aa&&b9&&0===String(b9).indexOf(aa))}function bO(cc,b9,cd){if(bB(b9)){return 0}var cb=aH(be,"download"),ca=aH(aC,"link"),ce=new RegExp("\\.("+aU+")([?&#]|$)","i");if(ca.test(cc)){return"link"}if(cb.test(cc)||ce.test(b9)){return"download"}if(cd){return 0}return"link"}function a7(ca){var b9;b9=ca.parentNode;while(b9!==null&&w(b9)){if(Q.isLinkElement(ca)){break}ca=b9;b9=ca.parentNode}return ca}function bh(cd){cd=a7(cd);if(!Q.hasNodeAttribute(cd,"href")){return}if(!w(cd.href)){return}var cc=Q.getAttributeValueFromNode(cd,"href");if(bB(cc)){return}var ce=cd.hostname||b(cd.href);var cf=ce.toLowerCase();var ca=cd.href.replace(ce,cf);var cb=new RegExp("^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto):","i");if(!cb.test(ca)){var b9=bO(cd.className,ca,bq(cf));if(b9){return{type:b9,href:ca}}}}function b5(b9,ca,cb,cc){var cd=m.buildInteractionRequestParams(b9,ca,cb,cc);if(!cd){return}return aT(cd,null,"contentInteraction")}function b4(cb,cc,cg,b9,ca){if(!w(cb)){return
diff --git a/plugins/API/lang/tl.json b/plugins/API/lang/tl.json
new file mode 100644
index 0000000000..0780d8a566
--- /dev/null
+++ b/plugins/API/lang/tl.json
@@ -0,0 +1,13 @@
+{
+ "API": {
+ "GenerateVisits": "Kung wala kang data para sa araw na ito maaari ka munang bumuo ng ilang data gamit ang %s na plugin. Maaari mong i-enable ang %s na plugin, at pagkatapos ay i-click ang 'Tagabuo ng Bisita' na menu sa Piwik Admin area.",
+ "KeepTokenSecret": "Ang token_auth na ito ay isang lihim gaya ng iyong login at password, %s huwag itong ibahagi sa iba %s!",
+ "LoadedAPIs": "Matagumpay na nai-load ang %s APIs",
+ "MoreInformation": "Para sa karagdagang impormasyon tungkol sa Piwik API, mangyaring tumingin sa %s Panimula sa Piwik API %s at ang %s Piwik API Reference %s.",
+ "PluginDescription": "Lahat ng mga data sa Piwik ay available sa pamamagitan ng simpleng API. Ang plugin na ito ay ang web service entry point, na maaari mong tawagin upang makuha ang iyong Web Analytics data sa xml, json, php, csv, atbp.",
+ "QuickDocumentationTitle": "Mabilis na dokumentasyon ng API",
+ "TopLinkTooltip": "I-access ang iyong data ng Web Analytics programmatically sa pamamagitan ng isang simpleng API sa json, xml, atbp.",
+ "UserAuthentication": "Pagpapatunay sa User",
+ "UsingTokenAuth": "Kung nais mong %s mag-request ng data sa loob ng isang script, crontab, atbp. %s kailangan mong idagdag ang parameter na %s sa mga tumatawag ng API na URL na nangangailangan ng pagpapatunay."
+ }
+} \ No newline at end of file
diff --git a/plugins/Actions/Reports/Base.php b/plugins/Actions/Reports/Base.php
index fb1158e6a9..36fd1d67c6 100644
--- a/plugins/Actions/Reports/Base.php
+++ b/plugins/Actions/Reports/Base.php
@@ -66,7 +66,9 @@ abstract class Base extends \Piwik\Plugin\Report
));
// prettify avg_time_on_page column
- $getPrettyTimeFromSeconds = '\Piwik\MetricsFormatter::getPrettyTimeFromSeconds';
+ $getPrettyTimeFromSeconds = function ($time) {
+ return MetricsFormatter::getPrettyTimeFromSeconds($time, $timeAsSentence = false);
+ };
$view->config->filters[] = array('ColumnCallbackReplace', array('avg_time_on_page', $getPrettyTimeFromSeconds));
// prettify avg_time_generation column
diff --git a/plugins/Actions/lang/sl.json b/plugins/Actions/lang/sl.json
index ee47432bb0..3646d6434f 100644
--- a/plugins/Actions/lang/sl.json
+++ b/plugins/Actions/lang/sl.json
@@ -44,7 +44,9 @@
"WidgetPagesEntry": "Vstopne strani",
"WidgetPagesExit": "Izhodne strani",
"WidgetPageTitles": "Naslovi strani",
+ "WidgetPageUrlsFollowingSearch": "Strani obiskane po iskanju na strani",
"WidgetSearchCategories": "Kategorije za iskanje",
- "WidgetSearchKeywords": "Ključne besede"
+ "WidgetSearchKeywords": "Ključne besede",
+ "WidgetSearchNoResultKeywords": "Ključne besede brez zadetkov"
}
} \ No newline at end of file
diff --git a/plugins/Actions/lang/tl.json b/plugins/Actions/lang/tl.json
new file mode 100644
index 0000000000..01aa6cbe53
--- /dev/null
+++ b/plugins/Actions/lang/tl.json
@@ -0,0 +1,64 @@
+{
+ "Actions": {
+ "ColumnClickedURL": "Na-click na URL",
+ "ColumnClicks": "Mga Click",
+ "ColumnClicksDocumentation": "Kung ilang beses na na-click ang link na ito.",
+ "ColumnDownloadURL": "URL para ma-download",
+ "ColumnEntryPageTitle": "Pamagat ng Entry Page",
+ "ColumnEntryPageURL": "URL ng Entry Page",
+ "ColumnExitPageTitle": "Pamagat ng Exit Page",
+ "ColumnExitPageURL": "URL ng Exit Page",
+ "ColumnNoResultKeyword": "Keyword na Walang Resulta sa Paghahanap",
+ "ColumnPageName": "Pangalan ng Pahina",
+ "ColumnPagesPerSearch": "Mga pahina ng mga Resulta sa Paghahanap",
+ "ColumnPagesPerSearchDocumentation": "Dokumentasyon ng bawat nahahanap na pahina",
+ "ColumnPageURL": "URL ng Pahina",
+ "ColumnSearchCategory": "Kategorya ng Paghahanap",
+ "ColumnSearches": "Mga Paghahanap",
+ "ColumnSearchesDocumentation": "Ang bilang ng mga bisita na naghanap para sa keyword na ito sa engine ng paghahanap ng iyong website.",
+ "ColumnSearchExits": "% Mga Exit sa Paghahanap",
+ "ColumnSearchExitsDocumentation": "Ang porsyento ng mga pagbisita na iniwanan ang website pagkatapos maghanap ng Keyword na ito sa iyong engine ng paghahanap sa iyong site.",
+ "ColumnSearchResultsCount": "Bilang ng Mga Resulta sa Paghahanap",
+ "ColumnSiteSearchKeywords": "Natatanging mga Keyword",
+ "ColumnUniqueClicks": "Natatanging mga Pag-click",
+ "ColumnUniqueClicksDocumentation": "Ang bilang ng pagbisita na nakapaloob sa pag-click sa link na ito. Kung ang isang link ay na-click ng maraming beses sa panahon ng isang pagbisita, ito ay binibilang lamang nang isang beses.",
+ "ColumnUniqueDownloads": "Natatanging mga Download",
+ "ColumnUniqueOutlinks": "Natatanging mga Outlink",
+ "DownloadsReportDocumentation": "Sa ulat na ito, maaari mong makita kung aling mga file ang i-dinownload ng iyong mga bisita . %s Ang binibilang ng Piwik bilang download ay ang pag-click sa download link. Kung ang pag-download ay natapos o hindi ito ay hindi na nalalaman ng Piwik.",
+ "EntryPagesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga 'entry page' na ginamit sa tuwing natukoy na panahon. Ang isang 'entry page' ay ang unang pahina na natanaw ng isang user sa panahon ng kanyang pagbisita. %s Ang mga 'entry URL' ay ipinapakita bilang isang 'folder structure'.",
+ "EntryPageTitles": "Mga pamagat ng entry page",
+ "EntryPageTitlesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga pamagat ng mga 'entry page' na ginamit sa tinukoy na panahon.",
+ "ExitPagesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga 'exit page' na naganap sa loob ng tinukoy na panahon. Ang isang 'exit page' ay ang huling pahina na tinanaw ng isang user sa panahon ng kanyang pagbisita. %s Ang mga exit URL ay ipinapakita bilang isang 'folder structure'.",
+ "ExitPageTitles": "Mga pamagat ng exit page",
+ "ExitPageTitlesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga pamagat ng mga 'exit page' na ginamit sa tinukoy na panahon.",
+ "LearnMoreAboutSiteSearchLink": "Matuto nang higit pa tungkol sa Pagsubaybay sa kung paano ginagamit ng iyong mga bisita ang iyong engine ng Paghahanap",
+ "OneSearch": "1 paghahanap",
+ "OutlinkDocumentation": "Ang isang outlink ay isang link na naghahatid sa isang bisita nang palayo mula sa iyong website (sa isa pang domain).",
+ "OutlinksReportDocumentation": "Ipinapakita ng ulat na ito ang hirerkiya na listahan ng mga outlink URL na na-click ng iyong mga bisita.",
+ "PagesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga URL ng pahina na binisita mo. %s ang talahanayan ay nakaayos ng hierarchically, ang mga URL ay ipinapakita bilang isang istraktura ng folder.",
+ "PageTitlesReportDocumentation": "Ang ulat na ito ay naglalaman ng impormasyon tungkol sa mga pamagat ng mga pahina na binisita na. %s Ang pamagat ng pahina ay ang HTML %s Tag na karaniwang pinapakita ng ng karamihan sa mga browser sa kanilang mga window bilang pamagat.",
+ "PageUrls": "Mga URL ng Pahina",
+ "PluginDescription": "Dokumentasyon ng bilang ng mga bumisita sa pahina, mga outlink at download na ginawa",
+ "SiteSearchCategories1": "Inililista ng ulat na ito ang mga kategorya na napili ng mga bisita kapag ginawa nila ang isang Paghahanap sa iyong website.",
+ "SiteSearchCategories2": "Halimbawa, ang mga Ecommerce website ay karaniwang may tagapili ng \"Kategorya\" upang ang mga bisita ay maaaring malimitahan ang kanilang mga paghahanap sa lahat ng produkto sa isang espesipikong Kategorya.",
+ "SiteSearchFollowingPagesDoc": "Kapag naghanap ang mga bisita sa iyong website, ang mga ito ay naghahanap para sa isang partikular na pahina, nilalaman, produkto, o serbisyo. Inililista ng ulat na ito ang mga pahina na pinakana-click pagkatapos ng isang internal na paghahanap. Sa isang salita, ang listahan ng mga pahina ang pinaka-hinanap ng mga bisita na sa iyong website.",
+ "SiteSearchIntro": "Ang pagsubaybay sa mga paghahanap ng mga bisita sa iyong website ay isang napaka-epektibong paraan upang matuto nang higit pa tungkol sa kung ano ang hinahanap ng iyong mga tagasubaybay, ito ay makakatulong na makahanap ng mga ideya para sa mga bagong nilalaman, mga bagong produkto ng Ecommerce na maaaring hinahanap ng potensyal na customer, at sa pangkalahatan ay mapahusay ang karanasan ng mga bisita sa iyong website.",
+ "SiteSearchKeyword": "Keyword (Paghahanap sa Site)",
+ "SiteSearchKeywordsDocumentation": "Inililista ng ulat na ito ang mga Keyword sa Paghahanap na hinanap ng mga bisita sa iyong panloob na Engine ng Paghahanap",
+ "SiteSearchKeywordsNoResultDocumentation": "Inililista ng ulat na ito ang mga Keyword sa Paghahanap na hindi nagpapakita ng anumang resulta ng paghahanap: maari na ang algorithm ng search engine ay pinabuti, o maaring ang iyong mga bisita ay naghahanap ng bagay na wala (pa) sa iyong website?",
+ "SubmenuPagesEntry": "Mga entry page",
+ "SubmenuPagesExit": "Mga exit page",
+ "SubmenuPageTitles": "Mga pamagat ng pahina",
+ "SubmenuSitesearch": "Paghahanap sa Site",
+ "WidgetEntryPageTitles": "Mga pamagat ng entry page",
+ "WidgetExitPageTitles": "Mga pamagat ng exit page",
+ "WidgetPagesEntry": "Mga entry page",
+ "WidgetPagesExit": "Mga exit page",
+ "WidgetPageTitles": "Mga pamagat ng pahina",
+ "WidgetPageTitlesFollowingSearch": "Mga Pamagat ng Pahina Pagkatapos ng isang Paghahanap sa Site",
+ "WidgetPageUrlsFollowingSearch": "Mga Pahina Pagkatapos ng isang Paghahanap sa Site",
+ "WidgetSearchCategories": "Mga Kategorya ng Paghahanap",
+ "WidgetSearchKeywords": "Mga Keyword ng Paghahanap sa Site",
+ "WidgetSearchNoResultKeywords": "Paghahanap ng mga Keyword na Walang mga Resulta"
+ }
+} \ No newline at end of file
diff --git a/plugins/Annotations/lang/tl.json b/plugins/Annotations/lang/tl.json
new file mode 100644
index 0000000000..51f31b9999
--- /dev/null
+++ b/plugins/Annotations/lang/tl.json
@@ -0,0 +1,22 @@
+{
+ "Annotations": {
+ "AddAnnotationsFor": "Magdagdag ng mga anotasyon para sa %s ...",
+ "AnnotationOnDate": "Anotasyon sa %1$s: %2$s",
+ "Annotations": "Mga anotasyon",
+ "ClickToDelete": "I-Click upang alisin ang anotasyong ito",
+ "ClickToEdit": "I-Click upang baguhin ang anotasyong ito",
+ "ClickToEditOrAdd": "I-Click upang baguhin o dagdagan ang anotasyong ito",
+ "ClickToStarOrUnstar": "I-Click upang lagyan ng bituin o hindi ang anotasyong ito",
+ "CreateNewAnnotation": "Gumawa ng bagong anotasyon…",
+ "EnterAnnotationText": "Ipasok ang iyong paalala...",
+ "HideAnnotationsFor": "Itago ang mga anotasyon para sa %s…",
+ "IconDesc": "Tingnan ang mga paalala para sa hanay ng petsa na ito.",
+ "IconDescHideNotes": "Itago ang mga paalala para sa hanay ng petsa na ito.",
+ "InlineQuickHelp": "Maaari kang lumikha ng mga anotasyon upang markahan ang mga espesyal na mga kaganapan (tulad ng isang bagong post sa blog, o pagbabago ng disenyo ng website), upang i-save ang iyong pag-aaral ng datos o i-save ang anumang bagay na sa tingin mo ay mahalaga.",
+ "LoginToAnnotate": "Mag-login upang gumawa ng isang anotasyon.",
+ "NoAnnotations": "Walang mga anotasyon para sa hanay ng petsa na ito.",
+ "PluginDescription": "Pinapayagan kang mag-attach ng mga tala sa iba't ibang araw upang markahan ang mga pagbabagong ginawa sa iyong website, i-save ang pinag-aaralan na gagawin mo tungkol sa iyong datos at ibahagi ang iyong mga pananaw sa iyong mga kasamahan. Sa pamamagitan ng annotating ng iyong data, tiyak na iyong maaalala kung bakit ganito ang itsura ng iyong mga datos.",
+ "ViewAndAddAnnotations": "Tingnan at magdagdag ng mga anotasyon para sa %s…",
+ "YouCannotModifyThisNote": "Hindi mo maaaring baguhin ang anotasyon na ito, dahil ito ay hindi mo nilikha, at wala ka ring admin access para sa site na ito."
+ }
+} \ No newline at end of file
diff --git a/plugins/Contents/lang/fr.json b/plugins/Contents/lang/fr.json
index 3d03a8af80..230b57b32e 100644
--- a/plugins/Contents/lang/fr.json
+++ b/plugins/Contents/lang/fr.json
@@ -1,5 +1,12 @@
{
"Contents": {
- "Contents": "Contenus"
+ "ContentName": "Nom du contenu",
+ "ContentPiece": "Partie du contenu",
+ "Contents": "Contenus",
+ "ContentTarget": "Cible du contenu",
+ "Impressions": "Impressions",
+ "Interaction": "Interaction",
+ "InteractionRate": "Taux d'interaction",
+ "Interactions": "Interactions"
}
} \ No newline at end of file
diff --git a/plugins/Contents/lang/tl.json b/plugins/Contents/lang/tl.json
new file mode 100644
index 0000000000..df78c43854
--- /dev/null
+++ b/plugins/Contents/lang/tl.json
@@ -0,0 +1,12 @@
+{
+ "Contents": {
+ "ContentName": "Pangalan ng Nilalaman",
+ "ContentPiece": "Piraso ng Nilalaman",
+ "Contents": "Mga Nilalaman",
+ "ContentTarget": "Target ng Nilalaman",
+ "Impressions": "Mga Impresyon",
+ "Interaction": "Pakikipag-ugnayan",
+ "InteractionRate": "Rate ng Pakikipag-ugnayan",
+ "Interactions": "Mga Pakikipag-ugnayan"
+ }
+} \ No newline at end of file
diff --git a/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_day.xml b/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_day.xml
index 857c554b17..0a76c67ee3 100644
--- a/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_day.xml
+++ b/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_day.xml
@@ -44,8 +44,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -69,14 +77,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -144,8 +144,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -169,14 +177,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_month.xml b/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_month.xml
index 857c554b17..0a76c67ee3 100644
--- a/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_month.xml
+++ b/plugins/Contents/tests/System/expected/test_Contents__Live.getLastVisitsDetails_month.xml
@@ -44,8 +44,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -69,14 +77,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -144,8 +144,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -169,14 +177,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/Contents/tests/System/expected/test_Contents_contentInteractionMatch__Live.getLastVisitsDetails_day.xml b/plugins/Contents/tests/System/expected/test_Contents_contentInteractionMatch__Live.getLastVisitsDetails_day.xml
index 857c554b17..0a76c67ee3 100644
--- a/plugins/Contents/tests/System/expected/test_Contents_contentInteractionMatch__Live.getLastVisitsDetails_day.xml
+++ b/plugins/Contents/tests/System/expected/test_Contents_contentInteractionMatch__Live.getLastVisitsDetails_day.xml
@@ -44,8 +44,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -69,14 +77,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -144,8 +144,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -169,14 +177,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/Contents/tests/System/expected/test_Contents_contentTargetMatch__Live.getLastVisitsDetails_day.xml b/plugins/Contents/tests/System/expected/test_Contents_contentTargetMatch__Live.getLastVisitsDetails_day.xml
index 857c554b17..0a76c67ee3 100644
--- a/plugins/Contents/tests/System/expected/test_Contents_contentTargetMatch__Live.getLastVisitsDetails_day.xml
+++ b/plugins/Contents/tests/System/expected/test_Contents_contentTargetMatch__Live.getLastVisitsDetails_day.xml
@@ -44,8 +44,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -69,14 +77,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -144,8 +144,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -169,14 +177,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/Contents/tests/System/expected/test_ContentscontentNameOrPieceMatch__Live.getLastVisitsDetails_day.xml b/plugins/Contents/tests/System/expected/test_ContentscontentNameOrPieceMatch__Live.getLastVisitsDetails_day.xml
index 857c554b17..0a76c67ee3 100644
--- a/plugins/Contents/tests/System/expected/test_ContentscontentNameOrPieceMatch__Live.getLastVisitsDetails_day.xml
+++ b/plugins/Contents/tests/System/expected/test_ContentscontentNameOrPieceMatch__Live.getLastVisitsDetails_day.xml
@@ -44,8 +44,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -69,14 +77,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -144,8 +144,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -169,14 +177,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/CoreAdminHome/Controller.php b/plugins/CoreAdminHome/Controller.php
index af45ccc327..55452ad5db 100644
--- a/plugins/CoreAdminHome/Controller.php
+++ b/plugins/CoreAdminHome/Controller.php
@@ -22,6 +22,7 @@ use Piwik\Plugins\CorePluginsAdmin\UpdateCommunication;
use Piwik\Plugins\CustomVariables\CustomVariables;
use Piwik\Plugins\LanguagesManager\API as APILanguagesManager;
use Piwik\Plugins\LanguagesManager\LanguagesManager;
+use Piwik\Plugins\PrivacyManager\DoNotTrackHeaderChecker;
use Piwik\Plugins\SitesManager\API as APISitesManager;
use Piwik\Settings\Manager as SettingsManager;
use Piwik\Site;
@@ -235,7 +236,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
// get currencies for each viewable site
$view->currencySymbols = APISitesManager::getInstance()->getCurrencySymbols();
- $view->serverSideDoNotTrackEnabled = \Piwik\Plugins\PrivacyManager\DoNotTrackHeaderChecker::isActive();
+ $dntChecker = new DoNotTrackHeaderChecker();
+ $view->serverSideDoNotTrackEnabled = $dntChecker->isActive();
return $view->render();
}
diff --git a/plugins/CoreAdminHome/lang/fr.json b/plugins/CoreAdminHome/lang/fr.json
index 47ffb0e1a6..587e0a5f59 100644
--- a/plugins/CoreAdminHome/lang/fr.json
+++ b/plugins/CoreAdminHome/lang/fr.json
@@ -28,6 +28,7 @@
"JSTracking_CodeNote": "Assurez-vous que ce code est sur toutes les pages de votre site web avant la balise %1$s.",
"JSTracking_CustomCampaignQueryParam": "Utilisez des paramètres de requête personnalisés pour le nom et le mot-clé de la campagne",
"JSTracking_CustomCampaignQueryParamDesc": "Note : %1$sPiwik détectera automatiquement les paramètres de Google Analytics.%2$s",
+ "JSTracking_DisableCookies": "Désactiver tous les cookies de tracking",
"JSTracking_EnableDoNotTrack": "Activer la détection côté client de \"ne pas suivre\"",
"JSTracking_EnableDoNotTrack_AlreadyEnabled": "Note : Le support de la détection côté serveur de \"ne pas suivre\" est activé, cette option n'aura donc aucun effet.",
"JSTracking_EnableDoNotTrackDesc": "Donc les requêtes de suivi ne seront pas envoyées si les visiteurs ne souhaitent pas être suivis.",
diff --git a/plugins/CoreAdminHome/lang/tl.json b/plugins/CoreAdminHome/lang/tl.json
new file mode 100644
index 0000000000..9a3da1fcb7
--- /dev/null
+++ b/plugins/CoreAdminHome/lang/tl.json
@@ -0,0 +1,86 @@
+{
+ "CoreAdminHome": {
+ "Administration": "Administrasyon",
+ "ArchivingSettings": "Mga setting ng pag-archive",
+ "BrandingSettings": "Mga setting ng branding",
+ "CheckReleaseGetVersion": "Habang tumitingin ng bagong bersyon ng Piwik, laging kunin",
+ "ClickHereToOptIn": "I-click ito upang mag-opt in.",
+ "ClickHereToOptOut": "I-click ito upang mag-opt out.",
+ "CustomLogoFeedbackInfo": "Kung pinasadya mo ang logo ng Piwik, maaaring interesado ka rin upang itago ang %s na link sa itaas ng menu. Upang gawin ito, maaari mong i-disable ang Feedback plugin sa %s Manage Plugin %s na pahina.",
+ "CustomLogoHelpText": "Maaari mong i-customize ang Piwik logo na ipapakita sa user interface at mga report sa email.",
+ "DevelopmentProcess": "Habang ang aming %s proseso ng development %s ay nakapaloob ang libu-libong automated tests, ang mga Beta Tester ay may pangunahing papel sa archiving ng \"No bug policy\" sa Piwik.",
+ "EmailServerSettings": "Mga setting sa email server",
+ "FaviconUpload": "Pumili ng Favicon upang i-upload",
+ "ForBetaTestersOnly": "Pagsusubaybay ng Imahe",
+ "ImageTracking": "Pagsubaybay ng Imahe",
+ "ImageTrackingIntro1": "Kapag ang bisita ay dinisable ang JavaScript, o kapag hindi magamit ang JavaScript, maaari mong gamitin ang link sa pagsubaybay ng imahe, para masundan ang mga bisita",
+ "ImageTrackingIntro2": "Buuhin ang link sa ibaba at kopyahin at i-paste ang nabuong HTML sa pahina. Kung ginagamit mo ito bilang isang fallback para sa pagsubaybay ng JavaScript, maaari mo itong palibutan ng %1$s na tag.",
+ "ImageTrackingLink": "Pag-import ng mga Tala sa Server",
+ "ImportingServerLogs": "Pag-import ng Log ng Server",
+ "ImportingServerLogsDesc": "Ang isang alternatibo sa pagsusubaybay sa mga bisita sa pamamagitan ng browser (alinman sa pamamagitan ng JavaScript o link ng isang imahe) ay ang patuloy na pag-import ng mga tala sa server. Matuto nang higit pa tungkol sa %1$sServer na Tala File Analytic%2$s.",
+ "InvalidPluginsWarning": "Ang sumusunod na mga plugin ay hindi tugma sa %1$s at hindi kayang i-load: %2$s",
+ "InvalidPluginsYouCanUninstall": "Maaaring i-update o i-uninstall ang mga plugin sa %1$sPamahalaan ang mga Plugin%2$s na pahina.",
+ "JavaScriptTracking": "Pagsubaybay ng JavaScript",
+ "JSTracking_CampaignKwdParam": "Keyword na Parametero ng Kampanya",
+ "JSTracking_CampaignNameParam": "Pangalang Parametero ng Kampanya",
+ "JSTracking_CodeNote": "Siguraduhin na ang code na ito ay nasa bawat pahina ng iyong website bago ang %1$s na tag.",
+ "JSTracking_CustomCampaignQueryParam": "Gamitin ang custom query na parametro ng mga pangalan para sa pangalan ng kampanya at keyword",
+ "JSTracking_CustomCampaignQueryParamDesc": "Tandaan: Awtomatikong makikita ng %1$sPiwik ang mga parametro ng Google Analytics. %2$s",
+ "JSTracking_DisableCookies": "I-disable ang lahat ng mga cookies na sumusubaybay.",
+ "JSTracking_DisableCookiesDesc": "I-disable lahat ng unang party cookies. Lahat ng Piwik cookies para sa website na ito ay mabubura sa susunod na pagtingin sa pahina",
+ "JSTracking_EnableDoNotTrack": "Paganahin ang client side DoNotTrack detection",
+ "JSTracking_EnableDoNotTrack_AlreadyEnabled": "Tandaan: Ang side ng server na DoNotTrack support ay naka-enable, kaya ang pagpipiliang ito ay hindi magkakaroon ng epekto.",
+ "JSTracking_EnableDoNotTrackDesc": "Kung kaya't ang mga kahilingan sa pagsubaybay ay hindi ipapadala kung hindi nais ng bisita na masubaybayan.",
+ "JSTracking_GroupPageTitlesByDomain": "I-prepend ang site domain sa pamagat ng pahina kapag nagsusubaybay.",
+ "JSTracking_GroupPageTitlesByDomainDesc1": "Kung kaya't kapag may bumisita sa pahina na 'About' ng blog.%1$s ito ay itatala bilang 'blog \/ About'. Ito ay ang pinakamadaling paraan upang makakuha ng isang pangkalahatang ideya ng iyong trapiko sa bawat sub-domain.",
+ "JSTracking_MergeAliases": "Sa \"Outlinks\" na ulat, itago ang mga pag-click sa mga kilalang alias URL ng",
+ "JSTracking_MergeAliasesDesc": "Kung kaya't ang mga click sa mga link sa Alias ​​na mga URL (hal.%s) ay hindi mabibilang bilang \"Outlink\".",
+ "JSTracking_MergeSubdomains": "Subaybayan ang mga bisita sa lahat ng mga subdomain ng",
+ "JSTracking_MergeSubdomainsDesc": "Kaya kung ang bisita ay bumisita sa %1$s at %2$s, ang mga ito ay mabibilang bilang isang unique na bisita.",
+ "JSTracking_PageCustomVars": "Subaybayan ang isang custom na variable para sa bawat pagtingin sa isang pahina",
+ "JSTracking_PageCustomVarsDesc": "Halimbawa, mayroong pangalan ng variable na \"Category\" at value na White Papers\"\".\"",
+ "JSTracking_VisitorCustomVars": "Subaybayan ang mga custom na variable para sa bisitang ito",
+ "JSTracking_VisitorCustomVarsDesc": "Halimbawa, mayroong pangalan ng variable na \"Type\" at value na \"Customer\"",
+ "JSTrackingIntro1": "Maaari mong subaybayan ang mga bisita sa iyong website sa iba't ibang paraan. Ang inirekomendang paraan upang gawin ito ay sa pamamagitan ng JavaScript. Upang magamit ang pamamaraang ito dapat mong tiyakin na ang bawat webpage sa iyong website ay may code ng JavaScript, na maaari mong gawin dito.",
+ "JSTrackingIntro2": "Sa oras na mayroon ka nang JavaScript tracking code para sa iyong website, kopyahin at i-paste ito sa lahat ng pahina na gusto mong subaybayan gamit ang Piwik.",
+ "JSTrackingIntro3": "Maaari mong gamitin sa karamihan ng website, blog, CMS, atbp. ang isang pre-made na plugin upang gawin ang mga teknikal na trabaho para sa iyo. (Tingnan ang aming %1$s na listahan ng mga plugin na ginamit upang i-integrate ang Piwik %2$s.) Kung walang plugin na nag-eexist maaari mong i-edit ang template ng iyong website at idagdag ang code na ito sa \"footer\" file.",
+ "JSTrackingIntro4": "Kung ayaw mong gamitin ang JavaScript upang masubaybayan ang mga bisita,%1$s gumawa ng link upang sumubaybay sa image sa ibaba %2$s.",
+ "JSTrackingIntro5": "Kung gusto mong gawin nang higit pa kaysa sa pagsubaybay ng page view, mangyaring tingnan ang %1$s Tracking Piwik Javascript na dokumentasyon %2$s para sa listahan ng mga available na function. Sa paggamit ng mga function na ito maaari mong subaybayan ang mga layunin, mga custom variable, mga ecommerce order, mga inabandunang cart at marami pa.",
+ "LatestBetaRelease": "Ang pinakabagong beta release",
+ "LatestStableRelease": "Ang pinakabagong matatag na release",
+ "LogoNotWriteableInstruction": "Upang gamitin ang iyong pasadyang logo sa halip na ang default na Piwik logo, bigyan ng pahintulot na magsulat sa direktoryong ito: %1$s kailangan ng Piwik ng write access para sa iyong mga logo na naka-imbak sa mga file ng %2$s.",
+ "LogoUpload": "Piliin ang Logo na i-upload",
+ "LogoUploadHelp": "Mangyaring mag-upload ng isang file sa format na %s na may pinakamababang taas na %s na pixel.",
+ "MenuDevelopment": "Pag-unlad",
+ "MenuDiagnostic": "Dyagnostiko",
+ "MenuGeneralSettings": "Pangkalahatang mga setting",
+ "MenuManage": "Pamahalaan",
+ "OptOutComplete": "Ang pag-opt-out ay kumpleto na; ang iyong mga pagbisita sa website na ito ay hindi maitatala sa Web Analytics na tool.",
+ "OptOutCompleteBis": "Tandaan na kung tinanggal mo ang iyong cookies, burahin ang opt-out cookie, o kapag nagbago ka ng computer o Web browser, kailangan mong isagawang muli ang opt-out cookie",
+ "OptOutExplanation": "Ang Piwik ay nakatuon sa pagbibigay ng privacy sa Internet. Upang bigyan ang iyong bisita ng pagpipilian na pag-opt-out ng Piwik Web Analytics, maaari mong idagdag ang sumusunod na HTML code sa isa sa iyong mga pahina ng website, halimbawa sa isang pahina ng Privacy Policy.",
+ "OptOutExplanationBis": "Ang code na ito ay magpapakita ng isang Iframe na naglalaman ng isang link para makapag-opt-out ang iyong mga bisita sa Piwik sa pamamagitan ng pagtatakda ng isang opt-out na cookie sa kanilang mga browser. %s I-click dito%s upang tingnan ang nilalaman na ipapakita sa iFrame.",
+ "OptOutForYourVisitors": "Piwik opt-out para sa iyong mga bisita",
+ "PiwikIsInstalledAt": "Ang Piwik ay naka-install sa",
+ "PluginDescription": "Lugar ng Pangangasiwa ng Piwik",
+ "PluginSettingChangeNotAllowed": "Hindi ka pinapahintulutang baguhin ang halaga ng setting \"%s\" sa plugin \"%s\"",
+ "PluginSettingReadNotAllowed": "Hindi ka pinapahintulutang basahin ang halaga ng setting \"%s\" sa plugin \"%s\"",
+ "PluginSettings": "Mga setting ng plugin",
+ "PluginSettingsIntro": "Dito maaaring baguhin ang mga setting para sa mga sumusunod na 3rd party na mga plugin:",
+ "PluginSettingsValueNotAllowed": "Ang halaga para sa field \"%s\" sa plugin na \"%s\" ay hindi pinapahintulutan.",
+ "SendPluginUpdateCommunication": "Magpadala sa akin ng isang notification sa email kapag may bagong update sa plugin",
+ "SendPluginUpdateCommunicationHelp": "Isang email ang ipapadala sa mga Super User kapag may bagong bersyon na maaaring magamit para sa isang plugin.",
+ "StableReleases": "Kung ang Piwik ay isang kritikal na bahagi ng iyong negosyo, inirerekomenda namin na gamitin mo ang pinakabagong matatag na release. Kung gagamitin mo ang pinakabagong beta at nakakita ka ng bug o mayroong suhestiyon, mangyaring %s tingnan dito %s.",
+ "TrackAGoal": "Subaybayan ang isang gol",
+ "TrackingCode": "Tracking Code",
+ "TrustedHostConfirm": "Sigurado ka ba na gusto mong baguhin ang pinagkakatiwalaang Piwik na hostname?",
+ "TrustedHostSettings": "Pinagkakatiwalaang Piwik na Hostname",
+ "UpdateSettings": "I-Update ang mga setting",
+ "UseCustomLogo": "Gamitin ang isang custom na logo",
+ "ValidPiwikHostname": "Wastong Piwik na Hostname",
+ "WithOptionalRevenue": "may opsyonal na kita",
+ "YouAreOptedIn": "Kasalukuyan kang naka-opt-in",
+ "YouAreOptedOut": "Kasalukuyan kang naka-opt-out",
+ "YouMayOptOut": "Maaari mong piliin na huwag magkaroon ng isang natatanging web analytic na 'cookie identification number' na itatalaga sa iyong computer upang maiwasan ang pagsasama-sama at pag-aaral ng data na nakolekta sa website na ito.",
+ "YouMayOptOutBis": "Upang magawa ang napili mo, paki-click sa ibaba upang matanggap ang opt-out cookie."
+ }
+} \ No newline at end of file
diff --git a/plugins/CoreConsole/Commands/GitCommit.php b/plugins/CoreConsole/Commands/GitCommit.php
index 5b3dc4ca30..451ecb72ff 100644
--- a/plugins/CoreConsole/Commands/GitCommit.php
+++ b/plugins/CoreConsole/Commands/GitCommit.php
@@ -11,6 +11,7 @@ namespace Piwik\Plugins\CoreConsole\Commands;
use Piwik\Development;
use Piwik\Plugin\ConsoleCommand;
+use Piwik\SettingsPiwik;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
@@ -21,7 +22,7 @@ class GitCommit extends ConsoleCommand
{
public function isEnabled()
{
- return Development::isEnabled();
+ return Development::isEnabled() && SettingsPiwik::isGitDeployment();
}
protected function configure()
diff --git a/plugins/CoreConsole/Commands/GitPull.php b/plugins/CoreConsole/Commands/GitPull.php
index 65151e2e3c..e69c13bf10 100644
--- a/plugins/CoreConsole/Commands/GitPull.php
+++ b/plugins/CoreConsole/Commands/GitPull.php
@@ -11,6 +11,7 @@ namespace Piwik\Plugins\CoreConsole\Commands;
use Piwik\Development;
use Piwik\Plugin\ConsoleCommand;
+use Piwik\SettingsPiwik;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@@ -20,7 +21,7 @@ class GitPull extends ConsoleCommand
{
public function isEnabled()
{
- return Development::isEnabled();
+ return SettingsPiwik::isGitDeployment();
}
protected function configure()
diff --git a/plugins/CoreConsole/Commands/GitPush.php b/plugins/CoreConsole/Commands/GitPush.php
index 25c838e08c..006becaa5c 100644
--- a/plugins/CoreConsole/Commands/GitPush.php
+++ b/plugins/CoreConsole/Commands/GitPush.php
@@ -11,6 +11,7 @@ namespace Piwik\Plugins\CoreConsole\Commands;
use Piwik\Development;
use Piwik\Plugin\ConsoleCommand;
+use Piwik\SettingsPiwik;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@@ -20,7 +21,7 @@ class GitPush extends ConsoleCommand
{
public function isEnabled()
{
- return Development::isEnabled();
+ return Development::isEnabled() && SettingsPiwik::isGitDeployment();
}
protected function configure()
diff --git a/plugins/CoreHome/lang/fr.json b/plugins/CoreHome/lang/fr.json
index 78b14e3f9a..7ee1d79e0c 100644
--- a/plugins/CoreHome/lang/fr.json
+++ b/plugins/CoreHome/lang/fr.json
@@ -3,6 +3,7 @@
"CategoryNoData": "Aucune donnée pour cette catégorie. Essayez \"d'inclure toute la population\".",
"CheckForUpdates": "Vérifier les mises à jour",
"CheckPiwikOut": "Vérifiez sur Piwik!",
+ "ClickRowToExpandOrContract": "Cliquez sur cette rangée pour afficher ou masquer le sous-tableau",
"CloseWidgetDirections": "Vous pouvez fermer ce gadget en cliquant sur l'icône en forme de \"X\" en haut du gadget.",
"DataForThisReportHasBeenPurged": "Les données pour ce rapport ont plus de %s mois et ont été purgées.",
"DataTableExcludeAggregateRows": "Les lignes agrégées sont affichées %s Les cacher",
diff --git a/plugins/CoreHome/lang/tl.json b/plugins/CoreHome/lang/tl.json
new file mode 100644
index 0000000000..02c90848a3
--- /dev/null
+++ b/plugins/CoreHome/lang/tl.json
@@ -0,0 +1,62 @@
+{
+ "CoreHome": {
+ "CategoryNoData": "Walang data sa kategoryang ito. Subukan ang \"Isama ang lahat ng populasyon\".",
+ "CheckForUpdates": "Suriin kung may mga update",
+ "CheckPiwikOut": "Suriin ang Piwik!",
+ "ClickRowToExpandOrContract": "I-click ang hanay na ito, upang palawakin o ikontrata ang subtable",
+ "CloseWidgetDirections": "Maaari mong isara ang widget na ito sa pamamagitan ng pag-click sa icon na 'X' na nasa tuktok ng widget.",
+ "DataForThisReportHasBeenPurged": "Ang data para sa ulat na ito ay higit sa %s na buwang gulang at ito ay na-purge na.",
+ "DataTableExcludeAggregateRows": "Ang pinagsama-samang mga hilera ay ipinapakita %s Itago ang mga ito",
+ "DataTableIncludeAggregateRows": "Ang pinagsama-samang mga hilera ay nakatago %s Ipakita ang mga ito",
+ "DateFormat": "%longAraw% %araw% %longBuwan% %longTaon%",
+ "Default": "default",
+ "DonateCall1": "Ang Piwik ay palaging magdudulot sa iyo ng walang gastos, ngunit hindi ibig sabihin ay magdudulot ito sa amin upang walang gawin.",
+ "DonateCall2": "Kailangan ng Piwik ang iyong patuloy na suporta upang lumago at maging maunlad ito.",
+ "DonateCall3": "Kung sa tingin mo ay nagdagdag ang Piwik ng makabuluhang halaga sa iyong negosyo o gawain, %1$s mangyaring isaalang-alang ang pagbibigay ng donasyon! %2$s",
+ "DonateFormInstructions": "Mag click sa slider upang pumili ng halaga, pagkatapos ay i-click ang subscribe upang magbigay ng donasyon.",
+ "ExcludeRowsWithLowPopulation": "Ang lahat ng mga hilera ay ipinapakita %s Ibukod ang mababang populasyon",
+ "ExternalHelp": "Tulong (bubukas sa bagong tab)",
+ "FlattenDataTable": "Ang ulat ay naka-herarkiya %s Gawin itong patag",
+ "HowMuchIsPiwikWorth": "Magkano ang halaga ng Piwik sa iyo?",
+ "IncludeRowsWithLowPopulation": "Ang mga hilera na may mababang populasyon ay nakatago %s Ipakita ang lahat ng mga hilera",
+ "InjectedHostEmailBody": "Hello, sinubukan kong i-access ang Piwik ngayon at nakaranas ako ng hindi kilalang hostname warning.",
+ "InjectedHostEmailSubject": "Ang Piwik ay na-access gamit ang isang hindi kilalang hostname: %s",
+ "InjectedHostNonSuperUserWarning": "%1$sI-click ito upang ma-access ang Piwik nang ligtas%2$s at alisin ang babalang ito. Baka gusto mo ring makipag-ugnay sa iyong administrator sa Piwik at ipaalam sa kanila ang isyung ito (%3$si-click dito upang mag-email%4$s).",
+ "InjectedHostSuperUserWarning": "Ang Piwik ay maaaring na-configure ng mali (halimbawa, kung inilipat kamakailan ang Piwik sa bagong server o URL). Maaari mong %1$s i-click dito at magdagdag ng %2$s bilang wastong Piwik hostname (kung pinagkakatiwalaan mo ito) %3$s, o %4$s i-click dito at pumunta sa %5$s upang ma-access ang Piwik ng ligtas %6$s.",
+ "InjectedHostWarningIntro": "Ina-access mo na ngayon Piwik mula sa %1$s, ngunit ang Piwik ay na-configure upang tumakbo sa address na ito: %2$s.",
+ "JavascriptDisabled": "Dapat mong i-enable ang Javascrip upang iyong magamit ang Piwik sa standard view. <br\/> tila ang JavaScript ay disabled o hindi suportado ng iyong browser. <br\/> Upang magamit ang standard view, paganahin ang JavaScript sa pamamagitan ng pagbabago ng iyong mga pagpipilian sa browser, pagkatapos ay %1$s subukang muli %2$s. <br\/>",
+ "LongMonthFormat": "%mahabangTaon%, %mahabangBuwan%",
+ "LongWeekFormat": "%arawMula% %longBuwanMula% - %arawHanggang% %longBuwanHanggang% %longTaonHanggang%",
+ "MakeADifference": "Gumawa ng isang pagkakaiba: %1$sMagbigay ng donasyon ngayon%2$s upang pondohan ang Piwik 2.0!",
+ "MakeOneTimeDonation": "Ang widget na ito ay ipinapakita lamang sa mga user na may Super User na access.",
+ "NoPrivilegesAskPiwikAdmin": "Ikaw ay naka-log-in bilang '%s' ngunit mukhang wala kang anumang pahintulot na naka-set sa Piwik. %s Tanungin ang iyong Piwik administrator (i-click upang i-email) %s upang bigyan ka ng 'view' access sa website.",
+ "OnlyForSuperUserAccess": "Ang widget na ito ay ipanapakita lamang sa mga user na mayroong Super User access",
+ "PageOf": "%1$s ng %2$s",
+ "PeriodDay": "Araw",
+ "PeriodDays": "mga araw",
+ "PeriodMonth": "Buwan",
+ "PeriodMonths": "mga buwan",
+ "PeriodRange": "Pagitan",
+ "PeriodWeek": "Linggo",
+ "PeriodWeeks": "mga linggo",
+ "PeriodYear": "Taon",
+ "PeriodYears": "mga taon",
+ "PivotBySubtable": "Ang ulat na ito ay hindi umiikot %s Paikutin ng %s",
+ "PluginDescription": "Istraktura ng mga Ulat ng Analitiko ng Web",
+ "ReportGeneratedOn": "Ang ulat ay ginawa sa %s",
+ "ReportGeneratedXAgo": "Ang ulat ay ginawa %s na ang nakalilipas",
+ "SharePiwikLong": "Hi! Nakakita ako ng isang magandang piraso ng libreng software: Piwik!\n\nHahayaan ka ng Piwil na subaybayan ang mga bisita sa iyong website ng libre. Dapat mo talagang tingan ito!",
+ "SharePiwikShort": "Piwik! Libreng web analytics. Maging may-ari ng iyong data",
+ "ShareThis": "Ibahagi ito",
+ "ShowJSCode": "Ipakita ang Javascript code upang ipasok",
+ "SubscribeAndBecomePiwikSupporter": "Magpatuloy sa isang secure na pahina sa pagbabayad gamit ang credit card (PayPal) upang maging isang Piwik Supporter!",
+ "SupportPiwik": "Suportahan ang Piwik!",
+ "TableNoData": "Walang data para sa talahanayang ito.",
+ "ThereIsNoDataForThisReport": "Walang data para sa ulat na ito.",
+ "UndoPivotBySubtable": "Ang ulat na ito ay napaikot %s I-undo ang pagpaikot",
+ "UnFlattenDataTable": "Ang ulat ay flat %s Gawin itong hierarchical",
+ "ViewAllPiwikVideoTutorials": "Tingnan ang lahat Piwik Video Tutorials",
+ "WebAnalyticsReports": "Mga Ulat ng Analitiko ng Web",
+ "YouAreUsingTheLatestVersion": "Ginagamit mo ang pinaka bagong bersyon ng Piwik"
+ }
+} \ No newline at end of file
diff --git a/plugins/CorePluginsAdmin/Controller.php b/plugins/CorePluginsAdmin/Controller.php
index 02020c710d..0a7a497d46 100644
--- a/plugins/CorePluginsAdmin/Controller.php
+++ b/plugins/CorePluginsAdmin/Controller.php
@@ -205,17 +205,6 @@ class Controller extends Plugin\ControllerAdmin
return $view->render();
}
- public function extend()
- {
- static::dieIfMarketplaceIsDisabled();
-
- $view = $this->configureView('@CorePluginsAdmin/extend');
- $view->installNonce = Nonce::getNonce(static::INSTALL_NONCE);
- $view->isSuperUser = Piwik::hasUserSuperUserAccess();
-
- return $view->render();
- }
-
private function createPluginsOrThemesView($template, $themesOnly)
{
Piwik::checkUserHasSuperUserAccess();
diff --git a/plugins/CorePluginsAdmin/Menu.php b/plugins/CorePluginsAdmin/Menu.php
index 8279afcc73..bda9caa9db 100644
--- a/plugins/CorePluginsAdmin/Menu.php
+++ b/plugins/CorePluginsAdmin/Menu.php
@@ -55,7 +55,7 @@ class Menu extends \Piwik\Plugin\Menu
if ($this->isAllowedToSeeMarketPlace()) {
$menu->addPlatformItem('CorePluginsAdmin_Marketplace',
- $this->urlForAction('extend', array('activated' => '')),
+ $this->urlForAction('browsePlugins', array('activated' => '')),
$order = 5);
}
diff --git a/plugins/CorePluginsAdmin/PluginInstaller.php b/plugins/CorePluginsAdmin/PluginInstaller.php
index d848e5c427..e95f7f1d74 100644
--- a/plugins/CorePluginsAdmin/PluginInstaller.php
+++ b/plugins/CorePluginsAdmin/PluginInstaller.php
@@ -166,8 +166,14 @@ class PluginInstaller
if (!empty($missingDependencies)) {
$message = '';
foreach ($missingDependencies as $dep) {
- $params = array(ucfirst($dep['requirement']), $dep['actualVersion'], $dep['requiredVersion']);
- $message .= Piwik::translate('CorePluginsAdmin_MissingRequirementsNotice', $params);
+ if (empty($dep['actualVersion'])) {
+ $params = array(ucfirst($dep['requirement']), $dep['requiredVersion'], $metadata->name);
+ $message .= Piwik::translate('CorePluginsAdmin_MissingRequirementsPleaseInstallNotice', $params);
+ } else {
+ $params = array(ucfirst($dep['requirement']), $dep['actualVersion'], $dep['requiredVersion']);
+ $message .= Piwik::translate('CorePluginsAdmin_MissingRequirementsNotice', $params);
+ }
+
}
throw new PluginInstallerException($message);
diff --git a/plugins/CorePluginsAdmin/javascripts/pluginExtend.js b/plugins/CorePluginsAdmin/javascripts/pluginExtend.js
index 5c93452dee..ecaf872504 100644
--- a/plugins/CorePluginsAdmin/javascripts/pluginExtend.js
+++ b/plugins/CorePluginsAdmin/javascripts/pluginExtend.js
@@ -7,7 +7,7 @@
$(document).ready(function () {
- $('.extendPlatform .uploadPlugin').click(function (event) {
+ $('.pluginslistActionBar .uploadPlugin').click(function (event) {
event.preventDefault();
piwikHelper.modalConfirm('#installPluginByUpload', {
diff --git a/plugins/CorePluginsAdmin/lang/am.json b/plugins/CorePluginsAdmin/lang/am.json
index e620ec322f..ff8fcc5d3d 100644
--- a/plugins/CorePluginsAdmin/lang/am.json
+++ b/plugins/CorePluginsAdmin/lang/am.json
@@ -5,7 +5,6 @@
"Active": "ገባሪ",
"Deactivate": "አቦዝን",
"Inactive": "ያልተመረጠ",
- "MainDescription": "ተሰኪዎች የፒዊክን አገልግሎት ያራዝማሉ ያሰፋሉ። ተሰኪዎች አንዴ ከተጫኑ እዚሁ ጋር መገበርም ማቦዘንም ይቻላል።",
"PluginHomepage": "የተሰኪ መነሻ ገፅ",
"PluginsManagement": "ተሰኪዎች መመነጅ",
"Status": "ሁኔታ",
diff --git a/plugins/CorePluginsAdmin/lang/ar.json b/plugins/CorePluginsAdmin/lang/ar.json
index 5dd97ff974..28ecd3ec66 100644
--- a/plugins/CorePluginsAdmin/lang/ar.json
+++ b/plugins/CorePluginsAdmin/lang/ar.json
@@ -14,15 +14,12 @@
"BackToExtendPiwik": "العودة الي سوق العرض",
"Deactivate": "تعطيل",
"Developer": "المطور",
- "EnjoyAnotherLookAndFeelOfThemes": "إستمتع بالمظهر الجديد",
"FeaturedPlugin": "إضافات مميزة",
- "GetNewFunctionality": "إحصل علي وظيفة جديدة",
"History": "التاريخ",
"Inactive": "معطل",
"LastCommitTime": "(اخر تحديث %s)",
"LastUpdated": "أخر تحديث",
"LicenseHomepage": "صفحة الرخصة",
- "MainDescription": "التطبيقات تزيد من إمكانيات Piwik. ما أن يتم تنصيب تطبيق، يمكنك تفعيل أو تعطيل التطبيق من هنا.",
"Marketplace": "سوق العرض",
"MarketplaceSellPluginSubject": "سوق العرض - بيع إضافة",
"MenuPlatform": "المنصة",
diff --git a/plugins/CorePluginsAdmin/lang/be.json b/plugins/CorePluginsAdmin/lang/be.json
index 5840d5e953..711ef5001a 100644
--- a/plugins/CorePluginsAdmin/lang/be.json
+++ b/plugins/CorePluginsAdmin/lang/be.json
@@ -7,7 +7,6 @@
"Deactivate": "Дэактываваць",
"Inactive": "Неактыўныя",
"LicenseHomepage": "Хатняя старонка ліцэнзіі",
- "MainDescription": "Плагіны пашыраюць функцыянальнасць Piwik. Пасля ўсталёўкі плагіна Вы можаце актываваць ці дэактываваць яго тут.",
"PluginDescription": "Інтэрфейс адміністравання плагінаў",
"PluginHomepage": "Хатняя старонка плагіна",
"PluginsManagement": "Кіраванне плагінамі",
diff --git a/plugins/CorePluginsAdmin/lang/bg.json b/plugins/CorePluginsAdmin/lang/bg.json
index 17267d3202..b8184bee90 100644
--- a/plugins/CorePluginsAdmin/lang/bg.json
+++ b/plugins/CorePluginsAdmin/lang/bg.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Връщане към магазина за приложения",
"BeCarefulUsingPlugins": "Бъдете внимателни с добавките, които не са създадени от екипа на Piwik: те не са проверени.",
"BeCarefulUsingThemes": "Бъдете внимателни с тапетите, които не са създадени от екипа на Piwik: те не са проверени.",
- "ByDesigningOwnTheme": "чрез %sсъздаване на ваш собствен тапет%s",
- "ByInstallingNewPluginFromMarketplace": "чрез %sинсталиране на нова добавка от магазина за приложения%s",
- "ByInstallingNewThemeFromMarketplace": "чрез %sинсталиране на нов тапет от магазина за приложения%s",
- "ByWritingOwnPlugin": "като %sсъздадете ваша собствена добавка%s",
"ByXDevelopers": "от %s разработчици",
"Changelog": "Списък с промените",
"ChangeSettingsPossible": "Промяна на %sнастройките%s за тази добавка.",
@@ -25,12 +21,9 @@
"Deactivate": "Деактивирай",
"Developer": "Разработчик",
"DoMoreContactPiwikAdmins": "За да се инсталира нова добавка или нова тема, трябва да се свържете с вашия администратор, който отговаря за Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Можете автоматично да свалите и инсталирате нови добавки от %sмагазина за приложения%s.",
"EmailToEnquireUpdatedVersion": "Моля, пишете до %1$s и изискайте актуална версия на %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Насладете се на друг изглед и усещане",
"FeaturedPlugin": "Препоръчана добавка",
"GetEarlyAccessForPaidPlugins": "Забележка: всички от наличните добавки са безплатни за използване; в бъдеще ще има платена секция в магазина за приложения (%sсвържете се с нас%s за предварителен достъп).",
- "GetNewFunctionality": "Сдобийте се с нова функционалност",
"History": "История",
"Inactive": "Неактивна",
"InfoPluginUpdateIsRecommended": "Обновете вашите добавки, за да се възползвате от най-новите подобрения.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(последен принос %s)",
"LastUpdated": "Последно обновена",
"LicenseHomepage": "Начало на лиценз",
- "MainDescription": "Добавките разширяват функционалността на Piwik. Веднъж инсталирана, добавката може да бъде активирана (пускана) или деактивирана (спирана).",
"Marketplace": "Магазин",
"MarketplaceSellPluginSubject": "Магазин – Продайте добавка",
"MenuPlatform": "Платформа",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Моля, изберете zip файл.",
"NumDownloadsLatestVersion": "Последна версия:%s сваляния",
"NumUpdatesAvailable": "Налични са обновления %s",
- "OrByUploadingAPlugin": "или чрез %sкачване на добавка%s",
- "OrByUploadingATheme": "или чрез %sкачване на тапет%s",
"Origin": "Произход",
"OriginCore": "Ядро",
"OriginThirdParty": "Трета страна",
diff --git a/plugins/CorePluginsAdmin/lang/ca.json b/plugins/CorePluginsAdmin/lang/ca.json
index 7ac8265a20..aa08ce09a1 100644
--- a/plugins/CorePluginsAdmin/lang/ca.json
+++ b/plugins/CorePluginsAdmin/lang/ca.json
@@ -10,7 +10,6 @@
"Deactivate": "Desactiva",
"Inactive": "Inactiu",
"LicenseHomepage": "Pàgina de la llicència",
- "MainDescription": "Els connectors augmenten la funcionalitat del Piwik. Un cop hi ha un connector instal·lat, podeu activar-lo i desactivar-lo aquí.",
"PluginDescription": "Interfíce d'administració d'extensions.",
"PluginHomepage": "Pàgina web",
"PluginsManagement": "Gestiona els connectors",
diff --git a/plugins/CorePluginsAdmin/lang/cs.json b/plugins/CorePluginsAdmin/lang/cs.json
index 1a239900a4..a13f4374f1 100644
--- a/plugins/CorePluginsAdmin/lang/cs.json
+++ b/plugins/CorePluginsAdmin/lang/cs.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Zpět na obchod",
"BeCarefulUsingPlugins": "Zásuvné moduly které nejsou tvořeny týmem Piwiku musí být používány opatrně: nekontrolovali jsme je.",
"BeCarefulUsingThemes": "Šablony které nejsou tvořeny týmem Piwiku musí být používány opatrně: nekontrolovali jsme je.",
- "ByDesigningOwnTheme": "Vytvoření %svlastní šablony%s",
- "ByInstallingNewPluginFromMarketplace": "Instalováním %snového zásuvného modulu z obchodu%s",
- "ByInstallingNewThemeFromMarketplace": "Instalováním %snové šablony z obchodu%s",
- "ByWritingOwnPlugin": "%sNapsáním vlastního zásuvného modulu%s",
"ByXDevelopers": "Od %s vývojářů",
"Changelog": "Protokol změn",
"ChangeSettingsPossible": "Pro tento zásuvný modul můžete změnit %snastavení%s.",
@@ -25,12 +21,9 @@
"Deactivate": "Zakázat",
"Developer": "Vývojář",
"DoMoreContactPiwikAdmins": "Pokud chcete nainstalovat nový zásuvný modul nebo šablonu,, kontaktujte vaše administrátory Piwiku.",
- "DownloadAndInstallPluginsFromMarketplace": "Můžete automaticky stáhnout a nainstalovat zásuvné moduly z %sobchodu%s.",
"EmailToEnquireUpdatedVersion": "Napište e-mail %1$s a požádejte o novější verzi %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Vychutnejte si novývzhled",
"FeaturedPlugin": "Doporučovaný zásuvný modul",
"GetEarlyAccessForPaidPlugins": "Poznámka: Momentálně jsou všechny zásuvné moduly v obchodě zdarma. V budoucnu máme v plánu povolit placené zásuvné moduly. %sKontaktujte nás%s pro včasný přístup.",
- "GetNewFunctionality": "Získat novou funkcionalitu",
"History": "Historie",
"Inactive": "Zakázán",
"InfoPluginUpdateIsRecommended": "Aktualizujte vaše zásuvné moduly nyní, abyste mohli využít všechna vylepšení.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(Poslední změna %s)",
"LastUpdated": "Naposledy aktualizován",
"LicenseHomepage": "Licencovat domovskou stránku",
- "MainDescription": "Zásuvné moduly rozšiřují funkce Piwiku. Po instalaci zásuvného modulu jej můžete povolit nebo zakázat zde.",
"Marketplace": "Obchod",
"MarketplaceSellPluginSubject": "Obchod - prodat zásuvný modul",
"MenuPlatform": "Platforma",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Prosím vyberte soubor .zip.",
"NumDownloadsLatestVersion": "Poslední verze: %s Stažení",
"NumUpdatesAvailable": "%s Dostupné aktualizace",
- "OrByUploadingAPlugin": "nebo %snahráním zásuvného modulu%s",
- "OrByUploadingATheme": "nebo %snahráním šablony%s",
"Origin": "Původ",
"OriginCore": "Jádro",
"OriginThirdParty": "Třetí strana",
diff --git a/plugins/CorePluginsAdmin/lang/da.json b/plugins/CorePluginsAdmin/lang/da.json
index cbe5dde8a4..f6e7441402 100644
--- a/plugins/CorePluginsAdmin/lang/da.json
+++ b/plugins/CorePluginsAdmin/lang/da.json
@@ -14,39 +14,34 @@
"BackToExtendPiwik": "Tilbage til markedspladsen",
"BeCarefulUsingPlugins": "Programudvidelser, der ikke er forfattet af Piwik holdet skal anvendes med forsigtighed: vi har ikke kontrolleret dem.",
"BeCarefulUsingThemes": "Temaer, der ikke er forfattet af Piwik holdet skal anvendes med forsigtighed: vi har ikke kontrolleret dem.",
- "ByDesigningOwnTheme": "ved %sdesign af dit eget tema%s",
- "ByInstallingNewPluginFromMarketplace": "ved at %sinstallere en ny programudvidelse fra markedspladsen%s",
- "ByInstallingNewThemeFromMarketplace": "%sved at installere et nyt tema fra marketpladsen%s",
- "ByWritingOwnPlugin": "ved at %sskrive din egen programudvidelse%s",
"ByXDevelopers": "af %s udviklere",
"Changelog": "Ændringslog",
"ChangeSettingsPossible": "Du kan ændre %sindstillinger%s for denne programudvidelse",
"CorePluginTooltip": "Kerne programudvidelser har ingen version, da de distribuereter med Piwik.",
"Deactivate": "Deaktiver",
"Developer": "Udvikler",
+ "DevelopersLearnHowToDevelopPlugins": "Udviklere: Lær hvordan du kan udvide og tilpasse Piwik ved at %sudvikle udvidelser eller temaer%s.",
"DoMoreContactPiwikAdmins": "For at installere en ny programudvidelse eller et nyt tema, kontakt Piwik administratoren.",
- "DownloadAndInstallPluginsFromMarketplace": "Du kan automatisk hente og installere nye programudvidelser fra %smarkedspladsen%s.",
"EmailToEnquireUpdatedVersion": "Send e-mail til %1$s og forespørg om en opdateret version af %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Nyd et andet udseende",
"FeaturedPlugin": "Udvalgte programudvidelser",
"GetEarlyAccessForPaidPlugins": "Bemærk: alle programudvidelser er tilgængelige gratis på nuværende tidspunkt; i fremtiden vil vi sætte betalte programudvidelser på markedspladsen (%skontakt os%s for tidlig adgang).",
- "GetNewFunctionality": "Få ny funktionalitet",
"History": "Historik",
"Inactive": "Inaktiv",
"InfoPluginUpdateIsRecommended": "Opdater dine programudvidelser nu og drag fordel af de seneste forbedringer.",
"InfoThemeIsUsedByOtherUsersAsWell": "Bemærk: Den anden %1$s bruger der er registreret i denne Piwik bruger også temaet %2$s.",
"InfoThemeUpdateIsRecommended": "Opdater dine temaer for at nyde den nyeste version.",
+ "InstallingNewPluginViaMarketplaceOrUpload": "De kan automatisk installere udvidelser fra markedspladsen eller %soverføre en udvidelse%s i .zip format.",
"InstallingPlugin": "Installerer %s",
"InstallNewPlugins": "Installer nye udvidelser",
"InstallNewThemes": "Installer nye temaer",
"LastCommitTime": "(last bidrag %s)",
"LastUpdated": "Sidst opdateret",
"LicenseHomepage": "Licens hjemmeside",
- "MainDescription": "Udvidelsesmoduler udvider funktionaliteten i Piwik. Når et udvidelsesmodul er installeret, kan det aktiveres eller deaktiveres her.",
"Marketplace": "Markedsplads",
"MarketplaceSellPluginSubject": "Markedspladsen - Sælg programudvidelser",
"MenuPlatform": "Platform",
"MissingRequirementsNotice": "Husk at opdatere %1$s %2$s til en nyere version, %1$s %3$s er påkrævet.",
+ "MissingRequirementsPleaseInstallNotice": "Installer %1$s %2$s, da det kræves af %3$s.",
"NoPluginsFound": "Ingen udvidelsesmoduler fundet",
"NotAllowedToBrowseMarketplacePlugins": "Du kan gennemse listen over programudvidelser, der kan installeres for at tilpasse eller udvide din Piwik platform. Kontakt din administrator, hvis du har brug for nogen af ​​disse installeret.",
"NotAllowedToBrowseMarketplaceThemes": "Du kan gennemse listen over temaer, der kan installeres for at tilpasse udseendet af Piwik platformen. Kontakt din administrator for at få nogen af ​​disse installeret.",
@@ -54,8 +49,7 @@
"NoZipFileSelected": "Vælg venligst en ZIP-fil.",
"NumDownloadsLatestVersion": "Nyeste version: %s Overførsler",
"NumUpdatesAvailable": "%s opdateringer tilgængelige",
- "OrByUploadingAPlugin": "eller ved %soverføre en programudvidelse%s",
- "OrByUploadingATheme": "eller ved at %soverføre et tema%s",
+ "OncePluginIsInstalledYouMayActivateHere": "Når en udvidelse er installeret, kan den aktiveres eller deaktiveres her.",
"Origin": "Kilde",
"OriginCore": "Kernen",
"OriginThirdParty": "Tredjeparts",
@@ -65,6 +59,7 @@
"PluginNotCompatibleWith": "%1$s udvidelsesmodul er ikke kompatibelt med %2$s.",
"PluginNotWorkingAlternative": "Hvis du har brugt programudvidelsen,kan du måske finde en nyere version på markedspladen. Hvis ikke, kan du afinstallere den.",
"PluginRequirement": "%1$s kræver %2$s",
+ "PluginsExtendPiwik": "Programudvidelser udbygger og udvider funktionaliteten af Piwik.",
"PluginsManagement": "Udvidelsesmodul administration",
"PluginUpdateAvailable": "Du bruger version %s en ny version %s er tilgængelig.",
"PluginVersionInfo": "%1$s fra %2$s",
diff --git a/plugins/CorePluginsAdmin/lang/de.json b/plugins/CorePluginsAdmin/lang/de.json
index 64e34bd3fc..3e54d75ace 100644
--- a/plugins/CorePluginsAdmin/lang/de.json
+++ b/plugins/CorePluginsAdmin/lang/de.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Zurück zum Marketplace",
"BeCarefulUsingPlugins": "Bitte setzen Sie Plugins, die nicht vom Piwik Team entwickelt wurden mit Bedacht ein: Diese wurden nicht von uns überprüft.",
"BeCarefulUsingThemes": "Bitte setzen Sie Themes, die nicht vom Piwik Team entwickelt wurden mit Bedacht ein: Diese wurden nicht von uns überprüft.",
- "ByDesigningOwnTheme": "indem Sie %seigene Themes designen%s",
- "ByInstallingNewPluginFromMarketplace": "indem Sie %sein neues Plugin aus dem Marketplace installieren%s",
- "ByInstallingNewThemeFromMarketplace": "indem Sie %sein neues Theme aus dem Marketplace installieren%s",
- "ByWritingOwnPlugin": "indem Sie %seigene Plugins schreiben%s",
"ByXDevelopers": "von %s Entwicklern",
"Changelog": "Änderungsprotokoll",
"ChangeSettingsPossible": "Sie können die %sEinstellungen%s für dieses Plugin ändern.",
@@ -25,28 +21,26 @@
"Deactivate": "Deaktivieren",
"Developer": "Entwickler",
"DoMoreContactPiwikAdmins": "Um ein neues Plugin oder Theme zu installieren, treten Sie bitte in Kontakt mit Ihren Piwik-Admins.",
- "DownloadAndInstallPluginsFromMarketplace": "Sie können neue Plugins automatisch aus dem %sMarketplace%s herunterladen und installieren.",
"EmailToEnquireUpdatedVersion": "Bitte schreiben Sie eine E-Mail and %1$s und fragen Sie nach einer aktualisierten Version von %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Verändern Sie das Erscheinungsbild",
"FeaturedPlugin": "Top-Plugin",
"GetEarlyAccessForPaidPlugins": "Hinweis: Derzeit sind alle Plugins kostenlos erhältlich; In Zukunft werden wir auch bezahlte Plugins im Marketplace aktivieren (%sKontaktieren Sie uns%s für vorzeitigen Zugriff).",
- "GetNewFunctionality": "Funktionalität erweitern",
"History": "Entwicklung",
"Inactive": "Inaktiv",
"InfoPluginUpdateIsRecommended": "Aktualisieren Sie Ihre Plugins jetzt, um von den neuesten Verbesserungen zu profitieren.",
"InfoThemeIsUsedByOtherUsersAsWell": "Hinweis: Die anderen %1$s Benutzer, die in diesem Piwik registriert sind, nutzen ebenfalls das Theme %2$s.",
"InfoThemeUpdateIsRecommended": "Aktualisieren Sie Ihre Themes, um die neueste Version zu geniessen.",
+ "InstallingNewPluginViaMarketplaceOrUpload": "Sie können Plugins aus dem Marketplace automatisiert installieren oder ein Plugin im .zip Format %shochladen%s.",
"InstallingPlugin": "Installiere %s",
"InstallNewPlugins": "Neue Plugins installieren",
"InstallNewThemes": "Neue Themes installieren",
"LastCommitTime": "(letzter Commit %s)",
"LastUpdated": "Letzte Aktualisierung",
"LicenseHomepage": "Lizenz-Webseite",
- "MainDescription": "Plugins erweitern die Funktionalität von Piwik. Wenn ein Plugin installiert wurde, können Sie es hier aktivieren oder deaktivieren.",
"Marketplace": "Marketplace",
"MarketplaceSellPluginSubject": "Marketplace - Plugin verkaufen",
"MenuPlatform": "Plattform",
"MissingRequirementsNotice": "Bitte aktualisieren Sie %1$s %2$s auf eine neuere Version, %1$s %3$s wird benötigt.",
+ "MissingRequirementsPleaseInstallNotice": "Bitte installiere %1$s %2$s da es von %3$s benötigt wird.",
"NoPluginsFound": "Keine Plugins gefunden",
"NotAllowedToBrowseMarketplacePlugins": "Sie können die Liste der installierbaren Plugins durchforsten, um sie für Ihre Plattform anzupassen oder zu erweitern. Bitte kontaktieren Sie Ihren Administrator, wenn Sie eines dieser Plugins installiert haben möchten.",
"NotAllowedToBrowseMarketplaceThemes": "Sie können die Liste der installierbaren Themes durchforsten, um das Erscheinungsbild Ihrer Plattform anzupassen. Bitte kontaktieren Sie Ihren Administrator wenn Sie eines dieser Themes installiert haben möchten.",
@@ -54,8 +48,7 @@
"NoZipFileSelected": "Bitte wählen Sie eine ZIP Datei.",
"NumDownloadsLatestVersion": "Letzte Version: %s Downloads",
"NumUpdatesAvailable": "%s Aktualisierung(en) verfügbar",
- "OrByUploadingAPlugin": "oder durch das %szur Verfügung stellen eines Plugins%s",
- "OrByUploadingATheme": "oder indem Sie selber %sein Theme zur Verfügung stellen%s",
+ "OncePluginIsInstalledYouMayActivateHere": "Sobald ein Plugin installiert wurde, können Sie es hier aktivieren bzw. deaktivieren.",
"Origin": "Quelle",
"OriginCore": "Core",
"OriginThirdParty": "Dritt-Anbieter",
diff --git a/plugins/CorePluginsAdmin/lang/el.json b/plugins/CorePluginsAdmin/lang/el.json
index 712bf24fee..ba32257721 100644
--- a/plugins/CorePluginsAdmin/lang/el.json
+++ b/plugins/CorePluginsAdmin/lang/el.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Πίσω στην Αγορά",
"BeCarefulUsingPlugins": "Πρόσθετα που δεν έχουν αναπτυχθεί από την ομάδα του Piwik πρέπει να χρησιμοποιούνται με προσοχή: δεν τα ελέγξαμε.",
"BeCarefulUsingThemes": "Θέματα που δεν έχουν αναπτυχθεί από την ομάδα του Piwik πρέπει να χρησιμοποιούνται με προσοχή: δεν τα ελέγξαμε.",
- "ByDesigningOwnTheme": "%sσχεδιάζοντας το δικό σας θέμα%s",
- "ByInstallingNewPluginFromMarketplace": "%sεγκαθιστώντας ένα νέο πρόσθετο από την Αγορά%s",
- "ByInstallingNewThemeFromMarketplace": "%sεγκαθιστώντας ένα νέο θέμα από την Αγορά%s",
- "ByWritingOwnPlugin": "%sδημιουργώντας το δικό σας πρόσθετο%s",
"ByXDevelopers": "από %s προγραμματιστές",
"Changelog": "Αρχείο αλλαγών",
"ChangeSettingsPossible": "Μπορείτε να αλλάξετε τις %sρυθμίσεις%s για αυτό το πρόσθετο.",
@@ -25,12 +21,9 @@
"Deactivate": "Απενεργοποίηση",
"Developer": "Προγραμματιστής",
"DoMoreContactPiwikAdmins": "Για να εγκαταστήσετε ένα νέο πρόσθετο ή θέμα, ελάτε σε επαφή με τους διαχειριστές του Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Μπορείτε να κατεβάζετε αυτόματα και να εγκαθιστάτε νέα πρόσθετα από την %sΑγορά%s.",
"EmailToEnquireUpdatedVersion": "Παρακαλούμε στείλτε email στο %1$s και ζητήστε ενημέρωση της έκδοσης για το %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Χαρείτε μια άλλη όψη & αίσθηση",
"FeaturedPlugin": "Προβαλλόμενο πρόσθετο",
"GetEarlyAccessForPaidPlugins": "Σημείωση: όλα τα πρόσθετα διατίθενται δωρεάν αυτή τη στιγμή, στο μέλλον θα ενεργοποιήσουμε τα Επί Πληρωμή Πρόσθετα στην Αγορά (%sΕλάτε σε επικοινωνία μαζί μας%s για νωρίτερη πρόσβαση).",
- "GetNewFunctionality": "Αποκτήστε νέα λειτουργικότητα",
"History": "Ιστορικό",
"Inactive": "Ανενεργό",
"InfoPluginUpdateIsRecommended": "Ενημερώστε τα πρόσθετά σας για να κερδίσετε από τις τελευταίες βελτιώσεις.",
@@ -42,11 +35,11 @@
"LastCommitTime": "(τελευταία οριστικοποίηση %s)",
"LastUpdated": "Τελευταία Ενημέρωση",
"LicenseHomepage": "Ιστοσελίδα Άδειας",
- "MainDescription": "Τα πρόσθετα (Plugins) επεκτείνουν και διευρύνουν την λειτουργικότητα του Piwik. Αφού εγκατασταθεί ένα πρόσθετο, μπορείτε να το ενεργοποιήσετε ή να το απενεργοποιήσετε εδώ.",
"Marketplace": "Αγορά",
"MarketplaceSellPluginSubject": "Αγορά - Πουλήστε ένα πρόσθετο",
"MenuPlatform": "Πλατφόρμα",
"MissingRequirementsNotice": "Παρακαλούμε αναβαθμίστε το %1$s %2$s σε νεότερη έκδοση, απαιτείται το %1$s %3$s.",
+ "MissingRequirementsPleaseInstallNotice": "Παρακαλούμε εγκαταστήστε τα %1$s %2$s καθώς απαιτούνται από το %3$s.",
"NoPluginsFound": "Δε βρέθηκαν πρόσθετα",
"NotAllowedToBrowseMarketplacePlugins": "Μπορείτε να δείτε τη λίστα των πρόσθετων που μπορούν να εγκατασταθούν για να προσαρμόσετε ή να επεκτείνετε την πλατφόρμα του Piwik. Παρακαλούμε επικοινωνήστε με τον διαχειριστή σας αν χρειάζεστε κάποιο από αυτά να εγκατασταθεί.",
"NotAllowedToBrowseMarketplaceThemes": "Μπορείτε να δείτε τη λίστα των θεμάτων που μπορούν να εγκατασταθούν για να προσαρμόσετε την εμφάνιση της πλατφόρμας του Piwik. Παρακαλούμε επικοινωνήστε με τον διαχειριστή σας αν χρειάζεστε κάποιο από αυτά να εγκατασταθεί.",
@@ -54,8 +47,6 @@
"NoZipFileSelected": "Επιλέξτε ένα αρχείο ZIP.",
"NumDownloadsLatestVersion": "Τελευταία έκδοση: %s λήψεις",
"NumUpdatesAvailable": "%s διαθέσιμες ενημερώσεις",
- "OrByUploadingAPlugin": "ή με %sανέβασμα ενός πρόσθετου%s",
- "OrByUploadingATheme": "ή με %sανέβασμα ενός θέματος%s",
"Origin": "Προέλευση",
"OriginCore": "Πυρήνας",
"OriginThirdParty": "Από τρίτες πηγές",
diff --git a/plugins/CorePluginsAdmin/lang/en.json b/plugins/CorePluginsAdmin/lang/en.json
index a6e8fcbef8..6ce90f0e0f 100644
--- a/plugins/CorePluginsAdmin/lang/en.json
+++ b/plugins/CorePluginsAdmin/lang/en.json
@@ -14,23 +14,17 @@
"BackToExtendPiwik": "Back to Marketplace",
"BeCarefulUsingPlugins": "Plugins that are not authored by Piwik team must be used with care: we did not review them.",
"BeCarefulUsingThemes": "Themes that are not authored by Piwik team must be used with care: we did not review them.",
- "ByDesigningOwnTheme": "by %sdesigning your own theme%s",
- "ByInstallingNewPluginFromMarketplace": "by %sinstalling a new plugin from the Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "by %sinstalling a new theme from the Marketplace%s",
- "ByWritingOwnPlugin": "by %swriting your own plugin%s",
"ByXDevelopers": "by %s developers",
"Changelog": "Changelog",
"ChangeSettingsPossible": "You can change %ssettings%s for this plugin.",
"CorePluginTooltip": "Core plugins have no version since they are distributed with Piwik.",
"Deactivate": "Deactivate",
"Developer": "Developer",
+ "DevelopersLearnHowToDevelopPlugins": "Developers: Learn how you can extend and customize Piwik by %sdeveloping plugins or themes%s.",
"DoMoreContactPiwikAdmins": "To install a new plugin or a new theme, please get in touch with your Piwik admins.",
- "DownloadAndInstallPluginsFromMarketplace": "You may automatically download and install new Plugins from the %sMarketplace%s.",
"EmailToEnquireUpdatedVersion": "Please email %1$s and enquire an updated version of %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Enjoy another look & feel",
"FeaturedPlugin": "Featured plugin",
"GetEarlyAccessForPaidPlugins": "Note: all plugins are available for free at present; in the future we will enable Paid Plugins in the Marketplace (%scontact us%s for early access).",
- "GetNewFunctionality": "Get new functionality",
"History": "History",
"Inactive": "Inactive",
"InfoPluginUpdateIsRecommended": "Update your plugins now to benefit from the latest improvements.",
@@ -42,11 +36,13 @@
"LastCommitTime": "(last commit %s)",
"LastUpdated": "Last Updated",
"LicenseHomepage": "License Homepage",
- "MainDescription": "Plugins extend and expand the functionality of Piwik. Once a plugin is installed, you may activate it or deactivate it here.",
+ "PluginsExtendPiwik": "Plugins extend and expand the functionality of Piwik.",
+ "OncePluginIsInstalledYouMayActivateHere": "Once a plugin is installed, you may activate it or deactivate it here.",
"Marketplace": "Marketplace",
"MarketplaceSellPluginSubject": "Marketplace - Sell Plugin",
"MenuPlatform": "Platform",
"MissingRequirementsNotice": "Please update %1$s %2$s to a newer version, %1$s %3$s is required.",
+ "MissingRequirementsPleaseInstallNotice": "Please install %1$s %2$s as it is required by %3$s.",
"NoPluginsFound": "No plugins found",
"NotAllowedToBrowseMarketplacePlugins": "You can browse the list of plugins that can be installed to customize or extend your Piwik platform. Please contact your administrator if you need any of these installed.",
"NotAllowedToBrowseMarketplaceThemes": "You can browse the list of themes that can be installed to customize the appearance of the Piwik platform. Please contact your administrator to get any of these installed for you.",
@@ -54,8 +50,6 @@
"NoZipFileSelected": "Please select a ZIP file.",
"NumDownloadsLatestVersion": "Latest version: %s Downloads",
"NumUpdatesAvailable": "%s Update(s) available",
- "OrByUploadingAPlugin": "or by %suploading a plugin%s",
- "OrByUploadingATheme": "or by %suploading a theme%s",
"Origin": "Origin",
"OriginCore": "Core",
"OriginThirdParty": "Third-party",
@@ -90,6 +84,7 @@
"TeaserExtendPiwikByPlugin": "Extend Piwik by installing a new plugin",
"TeaserExtendPiwikByTheme": "Enjoy another look & feel by installing a new theme",
"TeaserExtendPiwikByUpload": "Extend Piwik by uploading a ZIP file",
+ "InstallingNewPluginViaMarketplaceOrUpload": "You may automatically install plugins from the Marketplace or %supload a plugin%s in .zip format.",
"Theme": "Theme",
"Themes": "Themes",
"ThemesDescription": "Themes can change the appearance of Piwik user interface, and provide a completely new visual experience to enjoy your analytics reports.",
diff --git a/plugins/CorePluginsAdmin/lang/es.json b/plugins/CorePluginsAdmin/lang/es.json
index deedc61b33..3d8250b172 100644
--- a/plugins/CorePluginsAdmin/lang/es.json
+++ b/plugins/CorePluginsAdmin/lang/es.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Volver al Marketplace",
"BeCarefulUsingPlugins": "Los plugins que no han sido creados por el team de Piwik deben ser utilizados con cuidado puesto que no los hemos revisado.",
"BeCarefulUsingThemes": "Los temas que no han sido creados por el team de Piwik deben ser utilizado con cuidado puesto que no los hemos revisado.",
- "ByDesigningOwnTheme": "de %sdiseña tu tema%s",
- "ByInstallingNewPluginFromMarketplace": "mediante %sla instalación de un nuevo plugin del Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "mediante %sla instalación de un nuevo tema del Marketplace%s",
- "ByWritingOwnPlugin": "mediante %sla creación de tus propios plugins%s",
"ByXDevelopers": "mediante %sdesarrolladores",
"Changelog": "Changelog",
"ChangeSettingsPossible": "Puedes cambiar la %sconfiguración%s de este plugin.",
@@ -25,12 +21,9 @@
"Deactivate": "Desactivar",
"Developer": "Desarrollador",
"DoMoreContactPiwikAdmins": "Para instalar un nuevo plugin o un nuevo tema, pónte en contacto con el administrador de Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Puedes bajar e instalar automáticamente nuevos plugins del %sMarketplace%s.",
"EmailToEnquireUpdatedVersion": "Por favor envía un email a %1$s para pedir más información sobre una versión actualizada de %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Prueba un estilo diferente",
"FeaturedPlugin": "Plugin principal",
"GetEarlyAccessForPaidPlugins": "Nota: por el momento todos los plugins son disponibles gratuitamente, en el futuro habilitaremos la sección Plugins de Pago en el Marketplace %scontáctenos %s para tener acceso en primicia).",
- "GetNewFunctionality": "Consigue nuevas funciones",
"History": "Historial",
"Inactive": "Inactivo",
"InfoPluginUpdateIsRecommended": "Actualiza tus plugins y aprovecha de los nuevos mejoramientos.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(último cambio %s)",
"LastUpdated": "Última actualización",
"LicenseHomepage": "Licencia de la Wrb",
- "MainDescription": "Los plugins extienden y amplían las funcionalidades de Piwik. Una vez que el plugin esté instalado, usted puede activarlo o desactivarlo desde aquí.",
"Marketplace": "Marketplace",
"MarketplaceSellPluginSubject": "Marketplace - Vender Plugin",
"MenuPlatform": "Plataforma",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Por favor selecciona un archivo ZIP.",
"NumDownloadsLatestVersion": "Última versión: %s Descargas",
"NumUpdatesAvailable": "%s Actualizaciones(s) disponibles",
- "OrByUploadingAPlugin": "o %ssubiendo un plugin%s",
- "OrByUploadingATheme": "o %ssubiendo un tema%s",
"Origin": "Origen",
"OriginCore": "Core",
"OriginThirdParty": "Tercero",
diff --git a/plugins/CorePluginsAdmin/lang/et.json b/plugins/CorePluginsAdmin/lang/et.json
index 2250803990..a72557e5e0 100644
--- a/plugins/CorePluginsAdmin/lang/et.json
+++ b/plugins/CorePluginsAdmin/lang/et.json
@@ -11,17 +11,11 @@
"AuthorHomepage": "Autori veebileht",
"Authors": "Autorid",
"BackToExtendPiwik": "Tagasi Marketisse",
- "ByDesigningOwnTheme": "%sluues oma disainiga kujunduse%s",
- "ByInstallingNewPluginFromMarketplace": "%spaigaldades uut lisatarkvara marketist%s",
- "ByInstallingNewThemeFromMarketplace": "%spaigaldades uut kujundust marketist%s",
- "ByWritingOwnPlugin": "%skirjutades oma lisatarkvara%s",
"ByXDevelopers": "arendajate %s poolt",
"Changelog": "Muudatuste logi",
"Deactivate": "Lülita välja",
"Developer": "Arendaja",
- "EnjoyAnotherLookAndFeelOfThemes": "Naudi uut kujundust",
"FeaturedPlugin": "Esiletõstetud lisatarkvara",
- "GetNewFunctionality": "Saa uut funktsionaalsust",
"History": "Ajalugu",
"Inactive": "Mitteaktiivne",
"InstallingPlugin": "Paigaldan %s",
@@ -30,7 +24,6 @@
"LastCommitTime": "(viimane muudatus %s)",
"LastUpdated": "Viimati uuendatud",
"LicenseHomepage": "Litsentsi koduleht",
- "MainDescription": "Plugins võimendavad ja suurendavad Piwik-i funktsionaalsust. Kui plugin on installeeritud ja aktiveeritud saad seda sisse ja välja lülitada siin.",
"Marketplace": "Market",
"MarketplaceSellPluginSubject": "Market - müü lisatarkvara",
"MenuPlatform": "Platvorm",
@@ -39,8 +32,6 @@
"NoZipFileSelected": "Palun vali ZIP fail.",
"NumDownloadsLatestVersion": "Viimane versioon: %s allalaadimist",
"NumUpdatesAvailable": "%s uuendus(t) saadaval",
- "OrByUploadingAPlugin": "või %slaadides üles uut lisatarkvara%s",
- "OrByUploadingATheme": "või %slaadides üles uue kujunduse%s",
"Origin": "Päritolu",
"OriginCore": "Tuumik",
"OriginThirdParty": "Kolmanda osapoole",
diff --git a/plugins/CorePluginsAdmin/lang/eu.json b/plugins/CorePluginsAdmin/lang/eu.json
index 2931080a5a..fa4cc96271 100644
--- a/plugins/CorePluginsAdmin/lang/eu.json
+++ b/plugins/CorePluginsAdmin/lang/eu.json
@@ -5,7 +5,6 @@
"Active": "Gaituta",
"Deactivate": "Ezgaitu",
"Inactive": "Ezgaituta",
- "MainDescription": "Piwik-en funtzionaltasunak hedatu eta zabaltzen dituzte pluginek. Plugin bat instalatu ondoren, hemendik gaitu edo ezgaitu dezakezu.",
"PluginHomepage": "Pluginaren hasiera-orria",
"PluginsManagement": "Pluginen kudeaketa",
"Status": "Egoera",
diff --git a/plugins/CorePluginsAdmin/lang/fa.json b/plugins/CorePluginsAdmin/lang/fa.json
index 9b6d1e841a..07f8215874 100644
--- a/plugins/CorePluginsAdmin/lang/fa.json
+++ b/plugins/CorePluginsAdmin/lang/fa.json
@@ -14,8 +14,6 @@
"BackToExtendPiwik": "بازگشت به بازار",
"BeCarefulUsingPlugins": "پلاگین هایی که توسط Piwik تهیه نشده اند قابل اعتماد نبوده و باید با احتیاط استفاده گردند : ما آنها را چک نمی کنیم.",
"BeCarefulUsingThemes": "زمینه هایی که توسط Piwik تهیه نشده اند قابل اعتماد نبوده و باید با احتیاط استفاده گردند : ما آنها را چک نمی کنیم.",
- "ByDesigningOwnTheme": "توسط %sdesign خود را theme%s",
- "ByInstallingNewThemeFromMarketplace": "توسط %sinstalling یک زمینه جدید از بازار%s",
"ByXDevelopers": "توسط %s برنامه نویس",
"Changelog": "لاگ تغییرات",
"ChangeSettingsPossible": "شما می توانید %ssettings%s را برای این پلاگین تغییر دهید.",
@@ -23,10 +21,7 @@
"Deactivate": "غیر فعال کردن",
"Developer": "توسعه دهنده ها",
"DoMoreContactPiwikAdmins": "لطفا برای نصب قالب یا افزونه های جدید با تیم مدیریت پیویک تان در ارتباط باشید.",
- "DownloadAndInstallPluginsFromMarketplace": "شما می توانید به صورت اتوماتیک پلاگین های جدید را از %sMarketplace%s دانلود و نصب نمایید.",
- "EnjoyAnotherLookAndFeelOfThemes": "لذت بردن از نگاه و احساس دیگر",
"FeaturedPlugin": "افزونه ویژه",
- "GetNewFunctionality": "دریافت قابلیت های جدید",
"History": "تاریخچه",
"Inactive": "غیر فعال",
"InfoPluginUpdateIsRecommended": "پلاگین هایتان را به روز رسانی نمایید تا از آخرین پیشرفت های آن ها استفاده نمایید.",
@@ -37,7 +32,6 @@
"LastCommitTime": "(آخرین ارسال %s)",
"LastUpdated": "آخرین بروزرسانی",
"LicenseHomepage": "صفحه خانگی مجوز",
- "MainDescription": "افزونه ها عملکرد و کارایی پیویک را گسترش می دهند. هنگامی که یک افزونه نصب شد , شما می توانید آنها را در اینجا فعال یا غیر فعال کنید.",
"Marketplace": "بازار",
"MarketplaceSellPluginSubject": "بازار - فروش پلاگین",
"MenuPlatform": "بستر های نرم افزاری",
@@ -47,8 +41,6 @@
"NoZipFileSelected": "لطفا یک فایل Zip را انتخاب کنید.",
"NumDownloadsLatestVersion": "آخرین نسخه: %s دانلودها",
"NumUpdatesAvailable": "%s آپدیت(ها) موجود است",
- "OrByUploadingAPlugin": "یا توسط %suploading یک plugin%s",
- "OrByUploadingATheme": "یا توسط %suploading یک theme%s",
"Origin": "مبدا",
"OriginCore": "هسته",
"OriginThirdParty": "شخص ثالث",
diff --git a/plugins/CorePluginsAdmin/lang/fi.json b/plugins/CorePluginsAdmin/lang/fi.json
index a0b87e8008..456709b0cb 100644
--- a/plugins/CorePluginsAdmin/lang/fi.json
+++ b/plugins/CorePluginsAdmin/lang/fi.json
@@ -14,9 +14,6 @@
"BackToExtendPiwik": "Takaisin kauppaan",
"BeCarefulUsingPlugins": "Käytä harkitusti liitännäisiä, jotka eivät ole Piwikin luomia: emme ole tarkastaneet niitä.",
"BeCarefulUsingThemes": "Käytä harkitusti teemoja, jotka eivät ole Piwikin luomia: emme ole tarkastaneet niitä.",
- "ByDesigningOwnTheme": "%sluomalla oman teeman%s",
- "ByInstallingNewPluginFromMarketplace": "%sasentamalla uuden liitännäisen kaupasta%s",
- "ByInstallingNewThemeFromMarketplace": "%sasentamalla uuden teeman kaupasta%s",
"ByXDevelopers": "%s ohjelmoijalta",
"Changelog": "Muutokset",
"ChangeSettingsPossible": "Voit muuttaa tämän liitännäisen %sasetuksia%s",
@@ -24,11 +21,8 @@
"Deactivate": "Poistettu käytöstä",
"Developer": "Kehittäjä",
"DoMoreContactPiwikAdmins": "Asentaaksesi uuden liitännäisen tai uuden teeman, ota yhteyttä Piwikin ylläpitäjiin.",
- "DownloadAndInstallPluginsFromMarketplace": "Voit ladata ja asentaa uusia liitännäisiä automaattisesti %sKaupasta%s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Nauti uudesta lookista",
"FeaturedPlugin": "Valittu liitännäinen",
"GetEarlyAccessForPaidPlugins": "Huomio: kaikki liitännäiset ovat tällä hetkellä ilmaisia; tulevaisuudessa sallimme maksulliset liitännäiset kauppatorilla (%sota yhteyttä%s saadaksesi aikainen pääsy).",
- "GetNewFunctionality": "Hae uutta toimivuutta",
"History": "Historia",
"Inactive": "Ei käytössä",
"InfoPluginUpdateIsRecommended": "Päivitä liitännäisesi nyt hyötyäksesi uusimmista parannuksista.",
@@ -40,7 +34,6 @@
"LastCommitTime": "(viimeisin lähetys %s)",
"LastUpdated": "Edellinen päivitys",
"LicenseHomepage": "Lisenssisivu",
- "MainDescription": "Lisäosilla voi laajentaa ja parantaa Piwikin toiminnallisuutta. Kun lisäosa on asennettu, voit aktivoida ja poistaa käytöstä sen täällä.",
"Marketplace": "Kauppatori",
"MarketplaceSellPluginSubject": "Kauppatori - myy liitännäisiä",
"MenuPlatform": "Sovellusalusta",
@@ -52,8 +45,6 @@
"NoZipFileSelected": "Ole hyvä ja valitse ZIP-tiedosto.",
"NumDownloadsLatestVersion": "Viimeisin versio: %s latausta",
"NumUpdatesAvailable": "%s päivitys\/päivityksiä saaatavilla",
- "OrByUploadingAPlugin": "tai %slisäämällä liitännäinen%s",
- "OrByUploadingATheme": "tai %slisäämällä teema%s",
"Origin": "Lähde",
"OriginCore": "Ydin",
"OriginThirdParty": "Kolmas osapuoli",
diff --git a/plugins/CorePluginsAdmin/lang/fr.json b/plugins/CorePluginsAdmin/lang/fr.json
index 17310355b0..3f539f15fc 100644
--- a/plugins/CorePluginsAdmin/lang/fr.json
+++ b/plugins/CorePluginsAdmin/lang/fr.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Retour au Marché",
"BeCarefulUsingPlugins": "Les composants qui ne sont pas conçus par l'équipe de Piwik doivent être utilisés avec précaution : nous le les avons pas vérifiés.",
"BeCarefulUsingThemes": "Les thèmes qui ne sont pas conçus par l'équipe de Piwik doivent être utilisés avec précaution : nous les avons pas vérifiés.",
- "ByDesigningOwnTheme": "en %sconçevant votre propre thème%s",
- "ByInstallingNewPluginFromMarketplace": "en %sinstallant un nouveau composant depuis le marché%s",
- "ByInstallingNewThemeFromMarketplace": "en %sinstallant un nouveau thème depuis le Marché%s",
- "ByWritingOwnPlugin": "en %sdéveloppant votre propre composant%s",
"ByXDevelopers": "par %s développeurs",
"Changelog": "Historique des changements",
"ChangeSettingsPossible": "Vous pouvez modifier les %sparamètres%s de ce composant.",
@@ -25,12 +21,9 @@
"Deactivate": "Désactiver",
"Developer": "Développeur",
"DoMoreContactPiwikAdmins": "Pour installer un nouveau composant additionnel ou thème, veuillez contacter votre administrateur Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Vous pouvez télécharger et installer automatiquement des composants additionnels depuis le %sMarché%s.",
"EmailToEnquireUpdatedVersion": "Veuillez envoyer un e-mail à %1$s et renseighner une version mise à jour de %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Profitez d'une nouvelle charte graphique",
"FeaturedPlugin": "Composant mis en avant",
"GetEarlyAccessForPaidPlugins": "Note : tous les composants sont disponibles gratuitement à présent, dans le futur nous fourniront la possibilité de publier des composants payants sur le Marché (%scontactez-nous%s pour bénéficier d'un accès en avance)",
- "GetNewFunctionality": "Obtenir la nouvelle fonctionnalité",
"History": "Historique",
"Inactive": "Inactif",
"InfoPluginUpdateIsRecommended": "Mettez à jour vos composants pour bénéficier des dernières améliorations.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(dernier archivage %s)",
"LastUpdated": "A jour",
"LicenseHomepage": "Page de la licence",
- "MainDescription": "Les plugins étendent et ajoutent des fonctionnalités à Piwik. Une fois un plugin installé, vous pouvez l'activer ou le désactiver ici.",
"Marketplace": "Marché",
"MarketplaceSellPluginSubject": "Marché - Vendre un composant",
"MenuPlatform": "Plate-forme",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Veuillez sélectionner un fichier ZIP.",
"NumDownloadsLatestVersion": "Dernière version : %s téléchargements.",
"NumUpdatesAvailable": "%s Mise(s) à jour disponible(s)",
- "OrByUploadingAPlugin": "or en %stéléchargeant un composant%s",
- "OrByUploadingATheme": "ou en %stéléchargeant un thème%s",
"Origin": "Origine",
"OriginCore": "Principal",
"OriginThirdParty": "Tierce-Partie",
diff --git a/plugins/CorePluginsAdmin/lang/he.json b/plugins/CorePluginsAdmin/lang/he.json
index a4ab81b430..8ffbd1a0a2 100644
--- a/plugins/CorePluginsAdmin/lang/he.json
+++ b/plugins/CorePluginsAdmin/lang/he.json
@@ -11,7 +11,6 @@
"Deactivate": "כבה",
"Inactive": "לא פעיל",
"LicenseHomepage": "אתר רישון השימוש",
- "MainDescription": "תוספים מרחיבים את היכולות של Piwik. ברגע שתוסף מותקן, ניתן להפעילו או לבטלו כאן.",
"MenuPlatform": "פלטפורמה",
"PluginDescription": "ממשק ניהול תוספים.",
"PluginHomepage": "אתר התוסף",
diff --git a/plugins/CorePluginsAdmin/lang/hi.json b/plugins/CorePluginsAdmin/lang/hi.json
index 2a008f7fea..bb02a5ec21 100644
--- a/plugins/CorePluginsAdmin/lang/hi.json
+++ b/plugins/CorePluginsAdmin/lang/hi.json
@@ -7,7 +7,6 @@
"Deactivate": "निष्क्रिय करें",
"Inactive": "निष्क्रिय",
"LicenseHomepage": "लाइसेंस होमपेज",
- "MainDescription": "प्लगइन्स Piwik का विस्तार और कार्यक्षमता का विस्तार करते है, एक प्लगइन स्थापित हो जाने के बाद, आप इसे सक्रिय करने या यहाँ इसे निष्क्रिय कर सकते हैं.",
"MenuPlatform": "मंच",
"PluginDescription": "प्लगइन्स प्रशासन इंटरफ़ेस.",
"PluginHomepage": "प्लगइन होमपेज",
diff --git a/plugins/CorePluginsAdmin/lang/hu.json b/plugins/CorePluginsAdmin/lang/hu.json
index 78b88e4fe1..0349e9a6ec 100644
--- a/plugins/CorePluginsAdmin/lang/hu.json
+++ b/plugins/CorePluginsAdmin/lang/hu.json
@@ -7,7 +7,6 @@
"Deactivate": "Kikapcsol",
"Inactive": "Kikapcsolt",
"LicenseHomepage": "Licencinformációk",
- "MainDescription": "A bővítmények kiterjesztik a Piwik alapfunkcióit. A már telepített bővítményeket itt kapcsolhatod ki vagy be.",
"PluginDescription": "Bővítmény-adminisztrációs felület",
"PluginHomepage": "Bővítmény honlapja",
"PluginsManagement": "Bővítménykezelés",
diff --git a/plugins/CorePluginsAdmin/lang/id.json b/plugins/CorePluginsAdmin/lang/id.json
index 1f39b2524e..19ff43807c 100644
--- a/plugins/CorePluginsAdmin/lang/id.json
+++ b/plugins/CorePluginsAdmin/lang/id.json
@@ -7,7 +7,6 @@
"Deactivate": "Dimatikan",
"Inactive": "Tak Aktif",
"LicenseHomepage": "Alamat Lisensi",
- "MainDescription": "Pengaya menambah dan memperluas kegunaan dari Piwik. Sekali pengaya terinstal, Anda dapat mengaktifkan dan mematikan di sini.",
"PluginDescription": "Antarmuka Pengaturan Pengaya.",
"PluginHomepage": "Alamat Pengaya",
"PluginsManagement": "Pengatur Pengaya",
diff --git a/plugins/CorePluginsAdmin/lang/is.json b/plugins/CorePluginsAdmin/lang/is.json
index f68234f93c..458e52313a 100644
--- a/plugins/CorePluginsAdmin/lang/is.json
+++ b/plugins/CorePluginsAdmin/lang/is.json
@@ -7,7 +7,6 @@
"Deactivate": "Slökkva",
"Inactive": "Slökkt",
"LicenseHomepage": "Heimasíða hugbúnaðarleyfis",
- "MainDescription": "Íbætur auka og víkka virknina í Piwik. Hérna geturðu kveikteða slökkt á íbót þegar búið er að setja hana inn í kerfið.",
"PluginDescription": "Viðmót fyrir Íbótastjórnun",
"PluginHomepage": "Heimasíða íbótar",
"PluginsManagement": "Íbótastjórnun",
diff --git a/plugins/CorePluginsAdmin/lang/it.json b/plugins/CorePluginsAdmin/lang/it.json
index 566a3753ad..7605f5be48 100644
--- a/plugins/CorePluginsAdmin/lang/it.json
+++ b/plugins/CorePluginsAdmin/lang/it.json
@@ -14,39 +14,34 @@
"BackToExtendPiwik": "Torna al Marketplace",
"BeCarefulUsingPlugins": "I plugin che non sono stati sviluppati dal team di Piwik devono essere utilizzati con cautela: non li abbiamo verificati.",
"BeCarefulUsingThemes": "I temi che non sono stati sviluppati dal team di Piwik devono essere utilizzati con cautela: non li abbiamo verificati.",
- "ByDesigningOwnTheme": "tramite %sprogetta il tuo tema%s",
- "ByInstallingNewPluginFromMarketplace": "tramite %sinstallazione di un nuovo plugin dal Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "tramite %sinstalla un nuovo tema dal Marketplace%s",
- "ByWritingOwnPlugin": "tramite %sscrivi il tuo plugin%s",
"ByXDevelopers": "tramite %s sviluppatori",
"Changelog": "Changelog",
"ChangeSettingsPossible": "Puoi cambiare le %simpostazioni%s per questo plugin.",
"CorePluginTooltip": "I plugins di base non hanno versione dato che sono distribuiti con Piweik.",
"Deactivate": "Disattiva",
"Developer": "Sviluppatore",
+ "DevelopersLearnHowToDevelopPlugins": "Sviluppatori: Impara come ampliare e personalizzare Piwik %ssviluppando plugins e temi%s.",
"DoMoreContactPiwikAdmins": "Per installare un nuovo plugin o un nuovo tema, rimani in contatto con il tuo amministratore di Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Puoi scaricare automaticamente e installare nuovi Plugin dal %sMarketplace%s",
"EmailToEnquireUpdatedVersion": "Manda un'email a %1$s per informarti su una versione aggiornata di %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Prova un altro aspetto",
"FeaturedPlugin": "Plugin rappresentativo",
"GetEarlyAccessForPaidPlugins": "Nota: al momento tutti i plugin sono disponibili gratuitamente; in futuro abiliteremo sul Marketplace la sezione Plugin a Pagamento (%scontattaci%s per accedere anticipatamente).",
- "GetNewFunctionality": "Ottieni nuove funzioni",
"History": "Storia",
"Inactive": "Inattivo",
"InfoPluginUpdateIsRecommended": "Aggiorna i tuoi plugin per beneficiare dei nuovi miglioramenti.",
"InfoThemeIsUsedByOtherUsersAsWell": "Nota: gli altri %1$s utenti che si sono registrati a questo Piwik stanno utilizzando il tema %2$s.",
"InfoThemeUpdateIsRecommended": "Aggiorna i tuoi temi per godere dell'ultima versione.",
+ "InstallingNewPluginViaMarketplaceOrUpload": "Puoi installare automaticamente dei plugins dal Market o %scaricare un plugin%s in formato .zip.",
"InstallingPlugin": "Sto installando %s",
"InstallNewPlugins": "Installa nuovi plugin",
"InstallNewThemes": "Intalla nuovi temi",
"LastCommitTime": "ultima consegna %s",
"LastUpdated": "Ultimo aggiornamento",
"LicenseHomepage": "Homepage della Licenza",
- "MainDescription": "I plugin estendono le funzionalità di Piwik. Una volta installati, è possibile attivarli o disattivarli qui (non tutti sono in italiano).",
"Marketplace": "Marketplace",
"MarketplaceSellPluginSubject": "Marketplace - Vendita Plugin",
"MenuPlatform": "Piattaforma",
"MissingRequirementsNotice": "Aggiorna %1$s %2$s a una versione più recente, è richiesto %1$s %3$s.",
+ "MissingRequirementsPleaseInstallNotice": "Si prega di installare %1$s %2$s come richiesto da %3$s.",
"NoPluginsFound": "Non sono stati trovati plugin",
"NotAllowedToBrowseMarketplacePlugins": "Puoi esplorare la lista dei plugin che possono essere installati per personalizzare o espandere la tua piattaforma Piwik. Contatta il tuo amministratore se desideri installarne qualcuno.",
"NotAllowedToBrowseMarketplaceThemes": "Puoi esplorare la lista dei temi che possono essere installati per personalizzare l'aspetto della tua piattaforma Piwik. Contatta il tuo amministratore se desideri che ne installi qualcuno.",
@@ -54,8 +49,7 @@
"NoZipFileSelected": "Seleziona un file ZIP.",
"NumDownloadsLatestVersion": "Ultima versione: %s Downloads",
"NumUpdatesAvailable": "%s Aggiornamenti disponibili",
- "OrByUploadingAPlugin": "o %scaricando un plugin%s",
- "OrByUploadingATheme": "o %scaricando un tema%s",
+ "OncePluginIsInstalledYouMayActivateHere": "Una volta installato un plugin, qui puoi attivarlo o disattivarlo.",
"Origin": "Origine",
"OriginCore": "Core",
"OriginThirdParty": "Terze-parti",
@@ -65,6 +59,7 @@
"PluginNotCompatibleWith": "Il plugin %1$s non è compatibile con %2$s.",
"PluginNotWorkingAlternative": "Se hai utilizzato questo plugin puoi trovare una versione più recente nel Marketplace. Se no, puoi volere installarlo.",
"PluginRequirement": "%1$s richiede %2$s.",
+ "PluginsExtendPiwik": "I plugins estendono e ampliano la funzionalità di Piwik.",
"PluginsManagement": "Amministra Plugin",
"PluginUpdateAvailable": "Stai utilizzando la versione %s ed è disponibile la nuova versione %s.",
"PluginVersionInfo": "%1$s da %2$s",
diff --git a/plugins/CorePluginsAdmin/lang/ja.json b/plugins/CorePluginsAdmin/lang/ja.json
index accf6c7ef9..6fa682edab 100644
--- a/plugins/CorePluginsAdmin/lang/ja.json
+++ b/plugins/CorePluginsAdmin/lang/ja.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "マーケットプレイスへ戻る",
"BeCarefulUsingPlugins": "Piwik チームが作成していないプラグインは注意して使用して下さい:私たちはそれらを確認していません",
"BeCarefulUsingThemes": "Piwik チームが作成していないテーマは注意して使用して下さい:私たちはそれらを確認していません",
- "ByDesigningOwnTheme": "by %sdesigning your own theme%s",
- "ByInstallingNewPluginFromMarketplace": "by %sinstalling a new plugin from the Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "by %sinstalling a new theme from the Marketplace%s",
- "ByWritingOwnPlugin": "by %swriting your own plugin%s",
"ByXDevelopers": "%s の開発者",
"Changelog": "変更履歴",
"ChangeSettingsPossible": "このプラグインのために、 %ssettings%s を変更できます。",
@@ -25,12 +21,9 @@
"Deactivate": "無効化",
"Developer": "開発者",
"DoMoreContactPiwikAdmins": "新しいプラグインやテーマをインストールするには、 Piwik の管理者に連絡をしてください",
- "DownloadAndInstallPluginsFromMarketplace": "%sMarketplace%s から新しいプラグインを自動的にダウンロードし、インストールすることができます。",
"EmailToEnquireUpdatedVersion": "%1$s をメールで送付の上、%2$s の最新バージョンをお問い合わせください。",
- "EnjoyAnotherLookAndFeelOfThemes": "別の外観と操作感をお楽しみください",
"FeaturedPlugin": "注目のプラグイン",
"GetEarlyAccessForPaidPlugins": "注 : 現在、全てのプラグインは無料で利用できます。今後マーケットプレイスでは有料プラグインが有効になります。 (有料プラグインについて、誰よりも早く知りたい方は、%scontact us%s )",
- "GetNewFunctionality": "新しい機能の取得",
"History": "履歴",
"Inactive": "無効",
"InfoPluginUpdateIsRecommended": "最新の改良による恩恵を受けるには、今すぐプラグインをアップデートしてください。",
@@ -42,7 +35,6 @@
"LastCommitTime": "(最終更新 %s)",
"LastUpdated": "最終更新日",
"LicenseHomepage": "ライセンスのホームページ",
- "MainDescription": "プラグインは Piwik の機能性を拡張します。 プラグインをインストールすると、ここで有効化と無効化を行うことができます。",
"Marketplace": "マーケットプレイス",
"MarketplaceSellPluginSubject": "マーケットプレイス - プラグインの販売",
"MenuPlatform": "プラットフォーム",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "ZIP ファイルを選択してください。",
"NumDownloadsLatestVersion": "最新バージョン:%s のダウンロード",
"NumUpdatesAvailable": "%s アップデートがあります",
- "OrByUploadingAPlugin": "または、by %suploading a plugin%s",
- "OrByUploadingATheme": "または、by %suploading a plugin%s",
"Origin": "開発元",
"OriginCore": "コア",
"OriginThirdParty": "サードパーティ",
diff --git a/plugins/CorePluginsAdmin/lang/ka.json b/plugins/CorePluginsAdmin/lang/ka.json
index e6f72f8c0a..03d20017b0 100644
--- a/plugins/CorePluginsAdmin/lang/ka.json
+++ b/plugins/CorePluginsAdmin/lang/ka.json
@@ -7,7 +7,6 @@
"Deactivate": "გამორთვა",
"Inactive": "არააქტიური",
"LicenseHomepage": "ლიცენზირების სათაო გვერდი",
- "MainDescription": "პლაგინები აფართოვებენ და ამრავალფეროვნებენ Piwik–ის ფუნქციებს. აქედან შესაძლებელია ერთხელ დაინსტალირებული პლაგინის ჩართვა და გამორთვა.",
"PluginDescription": "პლაგინების ადმინისტრირების ინტერფეისი",
"PluginHomepage": "პლაგინის სათაო გვერდი",
"PluginsManagement": "პლაგინების მენეჯმენტი",
diff --git a/plugins/CorePluginsAdmin/lang/ko.json b/plugins/CorePluginsAdmin/lang/ko.json
index 6625d21e25..3539d67146 100644
--- a/plugins/CorePluginsAdmin/lang/ko.json
+++ b/plugins/CorePluginsAdmin/lang/ko.json
@@ -7,7 +7,6 @@
"Deactivate": "비활성화",
"Inactive": "비활성",
"LicenseHomepage": "라이센스 홈페이지",
- "MainDescription": "플러그인 확장과 Piwik의 기능성 확장페이지입니다. 플러그인이 한번 설치되면 이곳에서 활성화하거나 비활성화할 수 있습니다.",
"PluginDescription": "플러그인 관리 인터페이스입니다.",
"PluginHomepage": "플러그인 홈페이지",
"PluginsManagement": "플러그인 관리",
diff --git a/plugins/CorePluginsAdmin/lang/lt.json b/plugins/CorePluginsAdmin/lang/lt.json
index 5415a3fefc..53964a93f5 100644
--- a/plugins/CorePluginsAdmin/lang/lt.json
+++ b/plugins/CorePluginsAdmin/lang/lt.json
@@ -5,7 +5,6 @@
"Active": "Aktyvus",
"Deactivate": "Pasyvinti",
"Inactive": "Pasyvus",
- "MainDescription": "Papildiniai suteikia Piwik papildomų galimybių. Įdiegę papildinį, čia galite jį aktyvinti arba pasyvinti",
"PluginDescription": "Papildinių administravimo sąsaja.",
"PluginHomepage": "Papildinio svetainė",
"PluginsManagement": "Papildinių valdymas",
diff --git a/plugins/CorePluginsAdmin/lang/lv.json b/plugins/CorePluginsAdmin/lang/lv.json
index f2d895c5b2..df5b9fb7ca 100644
--- a/plugins/CorePluginsAdmin/lang/lv.json
+++ b/plugins/CorePluginsAdmin/lang/lv.json
@@ -7,7 +7,6 @@
"Deactivate": "Deaktivizēt",
"Inactive": "Neaktīvs",
"LicenseHomepage": "Licences vietne",
- "MainDescription": "Spraudņi paplašina Piwik funkcionalitāti. Pēc spraudņa instalācijas, Jūs to varat aktivizēt (vai deaktivizēt) šeit.",
"PluginDescription": "Spraudņu administrācijas skats",
"PluginHomepage": "Spraudņa vietne",
"PluginsManagement": "Spraudņu pārvaldība",
diff --git a/plugins/CorePluginsAdmin/lang/nb.json b/plugins/CorePluginsAdmin/lang/nb.json
index 0bd1a4d08d..7f1233f81b 100644
--- a/plugins/CorePluginsAdmin/lang/nb.json
+++ b/plugins/CorePluginsAdmin/lang/nb.json
@@ -8,17 +8,14 @@
"Active": "På",
"Activity": "Aktivitet",
"BackToExtendPiwik": "Tilbake til markedsplassen",
- "ByInstallingNewPluginFromMarketplace": "ved å %sinstallere ett nytt tillegg fra markedsplassen%s",
"ByXDevelopers": "av %s utviklere",
"Changelog": "Endringslogg",
"Deactivate": "Slå av",
"Developer": "Utvikler",
- "GetNewFunctionality": "Få ny funksjonalitet",
"History": "Historikk",
"Inactive": "Av",
"InstallingPlugin": "Installerer %s",
"LastUpdated": "Sist oppdatert",
- "MainDescription": "Tillegg kan utvide eller begrense funksjonaliteten i Piwik. Når et tillegg har blitt installert, kan du slå det av eller på her.",
"Marketplace": "Markedsplass",
"NumDownloadsLatestVersion": "Siste versjon: %s nedlastinger",
"NumUpdatesAvailable": "%s oppdatering(er) tilgjengelig",
diff --git a/plugins/CorePluginsAdmin/lang/nl.json b/plugins/CorePluginsAdmin/lang/nl.json
index e8c426fe69..c4ba550415 100644
--- a/plugins/CorePluginsAdmin/lang/nl.json
+++ b/plugins/CorePluginsAdmin/lang/nl.json
@@ -12,20 +12,13 @@
"AuthorHomepage": "Auteur Startpagina",
"Authors": "Auteurs",
"BackToExtendPiwik": "Terug naar de Marktplaats",
- "ByDesigningOwnTheme": "door %sje eigen thema te ontwerpen%s",
- "ByInstallingNewPluginFromMarketplace": "door %seen nieuwe plugin te installeren van de marktplaats%s",
- "ByInstallingNewThemeFromMarketplace": "door %seen nieuw thema te installeren van de marktplaats%s",
- "ByWritingOwnPlugin": "door %seen eigen plugin te schrijven%s",
"ByXDevelopers": "door %s ontwikkelaars",
"Changelog": "Wijzigingen",
"ChangeSettingsPossible": "U kunt %sinstellingen%s aanpassen voor deze plugin.",
"CorePluginTooltip": "Kern plugins hebben geen versie omdat deze met Piwik gedistribueerd worden.",
"Deactivate": "Uitschakelen",
"Developer": "Ontwikkelaar",
- "DownloadAndInstallPluginsFromMarketplace": "U mag automatisch nieuwe Plugins downloaden en installeren van de %sMarktplaats%s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Geniet van een andere uitstraling.",
"FeaturedPlugin": "Aanbevolen plugin",
- "GetNewFunctionality": "Krijg nieuwe functionaliteit",
"History": "Historie",
"Inactive": "Uitgeschakeld",
"InfoPluginUpdateIsRecommended": "Update nu uw plugins om van de laatste verbeteringen te profiteren.",
@@ -35,7 +28,6 @@
"InstallNewThemes": "Nieuwe thema's installeren",
"LastUpdated": "Laatst Bijgewerkt",
"LicenseHomepage": "Licentie Startpagina",
- "MainDescription": "Met plugins breidt u de functionaliteit van piwik uit. Wanneer een plugin geïnstalleerd is, kan deze hier aan- en uitgeschakeld worden.",
"Marketplace": "Marktplaats",
"MarketplaceSellPluginSubject": "Marktplaats - Verkoop Plugin",
"MenuPlatform": "Platform",
@@ -45,8 +37,6 @@
"NoZipFileSelected": "Selecteer een ZIP-bestand.",
"NumDownloadsLatestVersion": "Laatste versie: %s Downloads",
"NumUpdatesAvailable": "%s Update(s) beschikbaar",
- "OrByUploadingAPlugin": "of door %seen plugin te uploaden%s",
- "OrByUploadingATheme": "of door %seen thema te uploaden%s",
"Origin": "Herkomst",
"OriginCore": "Kern",
"OriginThirdParty": "Derden",
diff --git a/plugins/CorePluginsAdmin/lang/nn.json b/plugins/CorePluginsAdmin/lang/nn.json
index 52de511ecd..84adb114be 100644
--- a/plugins/CorePluginsAdmin/lang/nn.json
+++ b/plugins/CorePluginsAdmin/lang/nn.json
@@ -7,7 +7,6 @@
"Deactivate": "Slå av",
"Inactive": "Av",
"LicenseHomepage": "Lisensen til innstikket",
- "MainDescription": "Innstikk utvidar funksjonane til Piwik. Når eit innstikk er lagt til, kan du slå det av og på her.",
"PluginDescription": "Administrasjon av innstikk.",
"PluginHomepage": "Nettsida til innstikket",
"PluginsManagement": "Innstikkstyring",
diff --git a/plugins/CorePluginsAdmin/lang/pl.json b/plugins/CorePluginsAdmin/lang/pl.json
index 0f652dd21a..ea8b93860f 100644
--- a/plugins/CorePluginsAdmin/lang/pl.json
+++ b/plugins/CorePluginsAdmin/lang/pl.json
@@ -14,7 +14,6 @@
"BackToExtendPiwik": "Wróć do Marketu",
"BeCarefulUsingPlugins": "Pluginy nie będące autorstwa zespołu Piwik'a powinny być używane z ostrożnością: nie sprawdzamy ich.",
"BeCarefulUsingThemes": "Szablonym, których autorem nie jest grupa Piwik, powinny by używane z rozwagą: nie sprawdzaliśmy ich.",
- "ByWritingOwnPlugin": "przez %snapisanie swojego własnego plugin'u%s",
"ByXDevelopers": "przez %s deweloperów",
"Changelog": "Log zmian",
"ChangeSettingsPossible": "Możesz zmienić %sustawienia%s dla tego plugin'u.",
@@ -22,12 +21,9 @@
"Deactivate": "Wyłącz",
"Developer": "Deweloper",
"DoMoreContactPiwikAdmins": "Aby zainstalować nowy plugin lub nową skórę, skontaktuj się z administratorami Piwik'a.",
- "DownloadAndInstallPluginsFromMarketplace": "Możesz automatycznie pobrać i zainstalować nowe Plugin'y z %sMarketplace%s.",
"EmailToEnquireUpdatedVersion": "Proszę napiac do %1$s i zapytać o zaktualizowanie wersji %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Wypróbuj inny wygląd i odczucia",
"FeaturedPlugin": "Wyróżniony plugin",
"GetEarlyAccessForPaidPlugins": "Uwaga: wszystkie pluginy są obecnie dostępne za darmo; w przyszłości uruchomimy w Sklepie Płatne Pluginy (%sskontaktuj się%s dla wczesnego dostępu).",
- "GetNewFunctionality": "Uzyskaj nową funkcjonalność",
"History": "Historia",
"Inactive": "Nieaktywna",
"InfoPluginUpdateIsRecommended": "Zaktualizuj swoje pluginy teraz, w celu uzyskania korzyści z najnowszych ulepszeń.",
@@ -39,7 +35,6 @@
"LastCommitTime": "(ostatnia aktualizacja %s)",
"LastUpdated": "Ostatnia aktualizacja",
"LicenseHomepage": "Licencja strony głównej",
- "MainDescription": "Wtyczki zwiększają i rozszerzają funkcjonalność statystyk Piwik. Po instalacji wtyczki, możesz ją tutaj włączyć lub wyłączyć.",
"Marketplace": "Sklep",
"MarketplaceSellPluginSubject": "Sklep - Sprzedaj Plugin",
"MenuPlatform": "Platforma",
@@ -51,7 +46,6 @@
"NoZipFileSelected": "Proszę wybrać plik ZIP.",
"NumDownloadsLatestVersion": "Ostatnia wersja: %s Pobrań",
"NumUpdatesAvailable": "%s aktualizacji dostępnych",
- "OrByUploadingAPlugin": "albo poprzez %swgrywanie wtyczki%s",
"Origin": "Pochodzenie",
"OriginCore": "Jądro",
"OriginThirdParty": "osoba trzecia",
diff --git a/plugins/CorePluginsAdmin/lang/pt-br.json b/plugins/CorePluginsAdmin/lang/pt-br.json
index 8ded0a6152..00bc5bb493 100644
--- a/plugins/CorePluginsAdmin/lang/pt-br.json
+++ b/plugins/CorePluginsAdmin/lang/pt-br.json
@@ -20,7 +20,6 @@
"Deactivate": "Desativar",
"Developer": "Desenvolvedor",
"DoMoreContactPiwikAdmins": "Para instalar um novo plugin ou um novo tema, por favor, entrar em contato com os administradores do servidor Piwik.",
- "EnjoyAnotherLookAndFeelOfThemes": "Aproveite um outro look & feel",
"GetEarlyAccessForPaidPlugins": "Nota: Atualmente todos os plugins estão disponíveis gratuitamente; no futuro Plugins pagos serão permitidos no Marketplace (%sentre em contato conosco%s para acesso antecipado).",
"History": "Histórico",
"Inactive": "Inativo",
@@ -32,7 +31,6 @@
"LastCommitTime": "(último commit %s)",
"LastUpdated": "Última Atualização",
"LicenseHomepage": "Página de licenciamento",
- "MainDescription": "Plugins estendem e expandem a funcionalidade do Piwik. Uma vez que um plugin for instalado, você pode ativá-lo ou desativá-lo aqui.",
"Marketplace": "Marketplace",
"MenuPlatform": "Plataforma",
"MissingRequirementsNotice": "Por favor, atualize %1$s %2$s para uma nova versão, %1$s %3$s é necessária.",
diff --git a/plugins/CorePluginsAdmin/lang/pt.json b/plugins/CorePluginsAdmin/lang/pt.json
index 714bfdb504..660d400a9c 100644
--- a/plugins/CorePluginsAdmin/lang/pt.json
+++ b/plugins/CorePluginsAdmin/lang/pt.json
@@ -7,7 +7,6 @@
"Deactivate": "Desactivar",
"Inactive": "Inactivo",
"LicenseHomepage": "Homepage da licença",
- "MainDescription": "Plugins estendem e expandem a funcionalidade de Piwik. Quando um plugin é instalado, pode activá-lo ou desactivá-lo aqui.",
"PluginDescription": "Interface de Administração de Plugins.",
"PluginHomepage": "Homepage do Plugin",
"PluginsManagement": "Gestão de Plugins",
diff --git a/plugins/CorePluginsAdmin/lang/ro.json b/plugins/CorePluginsAdmin/lang/ro.json
index ea813052bb..0e2437c7ef 100644
--- a/plugins/CorePluginsAdmin/lang/ro.json
+++ b/plugins/CorePluginsAdmin/lang/ro.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Inapoi la Marketplace",
"BeCarefulUsingPlugins": "Pluginurile care nu au drept autor echipa Piwik trebuie folosite cu atentie: noi nu le-am verificat.",
"BeCarefulUsingThemes": "Temele al caror autor nu este Piwik trebuie utilizate cu precautie: noi nu le-am testat.",
- "ByDesigningOwnTheme": "%sfacand tema ta proprie%s",
- "ByInstallingNewPluginFromMarketplace": "%sinstaland un nou plugin din Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "%sinstaland o noua tema din Marketplace%s",
- "ByWritingOwnPlugin": "%sscriind pluginul tau propriu%s",
"ByXDevelopers": "de către %s programatori",
"Changelog": "Changelog",
"ChangeSettingsPossible": "Poti schimba %ssetarile%s pentru acest plugin.",
@@ -25,12 +21,9 @@
"Deactivate": "Dezactivare",
"Developer": "Dezvoltator",
"DoMoreContactPiwikAdmins": "Pentru a instala un nou plugin sau o tema noua, va rugam luati legatura cu administratorii Dvs. ai Piwik.",
- "DownloadAndInstallPluginsFromMarketplace": "Puteti downloada si instala automat Pluginuri noi de la %sMarketplace%s.",
"EmailToEnquireUpdatedVersion": "Va rugam sa trimiteti email %1$s si intrebati de o versiune mai noua a %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Bucura-te de alt look & feel",
"FeaturedPlugin": "Plugin promovat",
"GetEarlyAccessForPaidPlugins": "Nota: toate pluginurile sunt disponibile gratuit in acest moment; pe viitor activa sectiunea Pluginuri cu Plata in Marketplace (%scontacteaza-ne%s pentru a putea accesa mai devreme).",
- "GetNewFunctionality": "Beneficiaza de o noua functionalitate",
"History": "Istoric",
"Inactive": "Inactiv",
"InfoPluginUpdateIsRecommended": "Updateaza-ti pluginurile acum pentru a beneficia de ultimele imbunatatiri.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(ultima data folosit %s)",
"LastUpdated": "Ultima data updatat",
"LicenseHomepage": "Pagina Licenţa",
- "MainDescription": "Pluginurile extind functionaliatatea lui Piwik. Orice plugin instalat , poate fi activat sau dezactivat aici.",
"Marketplace": "Marketplace",
"MarketplaceSellPluginSubject": "Marketplace - Vinde Plugin",
"MenuPlatform": "Platformă",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Va rugam selectati un fisier ZIP.",
"NumDownloadsLatestVersion": "Ultima versiune: %s descărcări",
"NumUpdatesAvailable": "%s Update(uri) disponibile",
- "OrByUploadingAPlugin": "sau %suploadand un plugin%s",
- "OrByUploadingATheme": "sau %suploadand o tema%s",
"Origin": "Origine",
"OriginCore": "Baza",
"OriginThirdParty": "Parti terte",
diff --git a/plugins/CorePluginsAdmin/lang/ru.json b/plugins/CorePluginsAdmin/lang/ru.json
index fb360de261..60a3dac874 100644
--- a/plugins/CorePluginsAdmin/lang/ru.json
+++ b/plugins/CorePluginsAdmin/lang/ru.json
@@ -14,20 +14,13 @@
"BackToExtendPiwik": "Вернуться к Marketplace",
"BeCarefulUsingPlugins": "Плагины, которые разработаны не командой Piwik должны использоваться с осторожностью: мы не просматриваем их.",
"BeCarefulUsingThemes": "Темы, которые разработаны не командой Piwik должны использоваться с осторожностью: мы не просматриваем их.",
- "ByDesigningOwnTheme": "%sразработав свою союственную тему%s",
- "ByInstallingNewPluginFromMarketplace": "%sустановив новый плагин из Marketplace%s",
- "ByInstallingNewThemeFromMarketplace": "%sустановив новую тему из Marketplace%s",
- "ByWritingOwnPlugin": "%sнаписав свой собственный плагин%s",
"Changelog": "История изменений",
"ChangeSettingsPossible": "Вы можете %sизменить настройки%s для этого плагина.",
"CorePluginTooltip": "Основные плагины не имеют версию, так как они распространяются с Piwik.",
"Deactivate": "Деактивировать",
"Developer": "Разработчик",
- "DownloadAndInstallPluginsFromMarketplace": "Вы можете автоматически загрузить и установить новые плагины из %sMarketplace%s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Насладитесь другим внешним видом",
"FeaturedPlugin": "Набирающий популярность плагин",
"GetEarlyAccessForPaidPlugins": "Примечание: в настоящее время все плагины доступны бесплатно, в будущем мы включим платные плагины на Marketplace (%sсвяжитесь с нами%s для раннего доступа).",
- "GetNewFunctionality": "Получите новый функционал",
"History": "История",
"Inactive": "Неактивный",
"InfoPluginUpdateIsRecommended": "Обновите плагины что бы воспользоваться последними улучшениями.",
@@ -38,7 +31,6 @@
"InstallNewThemes": "Установить новые темы",
"LastUpdated": "Последнее обновление",
"LicenseHomepage": "Дом. страница лицензии",
- "MainDescription": "Плагины расширяют функциональность Piwik. После установки плагина Вы можете активировать или деактивировать его здесь.",
"Marketplace": "Маркет",
"MarketplaceSellPluginSubject": "Маркет - Продать плагин",
"MenuPlatform": "Платформа",
@@ -48,8 +40,6 @@
"NoZipFileSelected": "Выберете ZIP файл",
"NumDownloadsLatestVersion": "Последняя версия скачена: %s раз",
"NumUpdatesAvailable": "%s Обновлений доступно",
- "OrByUploadingAPlugin": "или %sзагрузив файл плагина%s",
- "OrByUploadingATheme": "или %sзагрузив файл темы%s",
"Origin": "Происхождение",
"OriginCore": "Основные",
"OriginThirdParty": "Сторонние",
diff --git a/plugins/CorePluginsAdmin/lang/sk.json b/plugins/CorePluginsAdmin/lang/sk.json
index 01a0f2cc1f..843c7d132b 100644
--- a/plugins/CorePluginsAdmin/lang/sk.json
+++ b/plugins/CorePluginsAdmin/lang/sk.json
@@ -5,7 +5,6 @@
"Active": "Aktívny",
"Deactivate": "Deaktivovať",
"Inactive": "Neaktívny",
- "MainDescription": "Moduly rozširujú funkcionalitu projektu Piwik. Po nainštalovaní modulu ho tu môžete aktivovať, alebo deaktivovať.",
"PluginDescription": "Pluginy v administračnom rozhraní.",
"PluginHomepage": "Domovská stránka modulu",
"PluginsManagement": "Správa modulov",
diff --git a/plugins/CorePluginsAdmin/lang/sl.json b/plugins/CorePluginsAdmin/lang/sl.json
index 688c48441c..bde6a588f1 100644
--- a/plugins/CorePluginsAdmin/lang/sl.json
+++ b/plugins/CorePluginsAdmin/lang/sl.json
@@ -10,7 +10,6 @@
"Deactivate": "Onemogoči",
"Inactive": "Neaktivno",
"LicenseHomepage": "Spletna stran licence",
- "MainDescription": "Vtičniki razširjajo Piwik-ovo funkcionalnost. Ko je vtičnik enkrat nameščen, ga lahko tukaj aktivirate oziroma deaktivirate.",
"PluginHomepage": "Spletna stran vtičnika",
"PluginsManagement": "Urejanje Vtičnikov",
"Status": "Status",
diff --git a/plugins/CorePluginsAdmin/lang/sq.json b/plugins/CorePluginsAdmin/lang/sq.json
index fb95357ddd..1f4608ba56 100644
--- a/plugins/CorePluginsAdmin/lang/sq.json
+++ b/plugins/CorePluginsAdmin/lang/sq.json
@@ -7,7 +7,6 @@
"Deactivate": "Çaktivizoje",
"Inactive": "Jovepruese",
"LicenseHomepage": "Faqja Hyrëse e Lejes",
- "MainDescription": "Shtojcat zgjerojnë dhe thellojnë funksionet e Piwik-ut. Pasi një shtojcë të jetë instaluar, mund ta aktivizoni ose çaktivizoni prej këtu.",
"PluginDescription": "Ndërfaqe Administrimi Shtojcash.",
"PluginHomepage": "Faqe Hyrëse e Shtojcës",
"PluginsManagement": "Administrim Shtojcash",
diff --git a/plugins/CorePluginsAdmin/lang/sr.json b/plugins/CorePluginsAdmin/lang/sr.json
index 185049c29f..454efedf9b 100644
--- a/plugins/CorePluginsAdmin/lang/sr.json
+++ b/plugins/CorePluginsAdmin/lang/sr.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Natrag na Market",
"BeCarefulUsingPlugins": "Dodatke koji nisu autorizovani od strane Piwik tima treba koristiti sa oprezom: mi ih nismo isprobali.",
"BeCarefulUsingThemes": "Teme koje nisu autorizovane od strane Piwik tima treba koristiti sa oprezom: mi ih nismo isprobali.",
- "ByDesigningOwnTheme": "%sdizajniranjem sopstvene teme%s",
- "ByInstallingNewPluginFromMarketplace": "%sinstaliranjem novog dodatka sa Marketa%s",
- "ByInstallingNewThemeFromMarketplace": "%sinstaliranjem nove teme sa Marketa%s",
- "ByWritingOwnPlugin": "%spisanjem sopstvenog dodatka%s",
"ByXDevelopers": "%s razvojnom timu",
"Changelog": "Dnevnik promena",
"ChangeSettingsPossible": "Možete izmeniti %spodešavanja%s za ovaj dodatak.",
@@ -25,12 +21,9 @@
"Deactivate": "Deaktivirati",
"Developer": "Programer",
"DoMoreContactPiwikAdmins": "Ukoliko želite da instalirate novi dodatak ili temu, kontaktirajte vašeg Piwik administratora.",
- "DownloadAndInstallPluginsFromMarketplace": "Možete automatski preuzeti i instalirati nove dodatke sa %sMarketa%s.",
"EmailToEnquireUpdatedVersion": "Molimo vas da pošaljete mejl na %1$s i da zatražite novu verziju %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Uživajte u novom izgledu",
"FeaturedPlugin": "Istaknuti dodatak",
"GetEarlyAccessForPaidPlugins": "Svi dodaci su u ovom trenutku dostupni potpuno besplatno; u budućnosti ćemo na Marketu omogućiti i dodatke koji se plaćaju (%skontaktirajte na%s za rani pristup).",
- "GetNewFunctionality": "Obezbedite nove funkcionalnosti",
"History": "Istorijat",
"Inactive": "Neaktivno",
"InfoPluginUpdateIsRecommended": "Ažurirajte dodatke kako biste iskoristili najnovija poboljšanja.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(poslednja promena %s)",
"LastUpdated": "Poslednje ažuriranje",
"LicenseHomepage": "Podaci o licenci",
- "MainDescription": "Dodaci proširuju funkcionalnost Piwik-a. Jednom instaliran dodatak se ovde može aktivirati ili deaktivirati.",
"Marketplace": "Market",
"MarketplaceSellPluginSubject": "Market - prodaja dodatka",
"MenuPlatform": "Platforma",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Molimo vas da izaberete ZIP datoteku.",
"NumDownloadsLatestVersion": "Poslednja verzija: %s preuzimanja",
"NumUpdatesAvailable": "Ažuriranja na raspolaganju: %s",
- "OrByUploadingAPlugin": "ili %spostavljanjem dodatka%s",
- "OrByUploadingATheme": "ili %spostavljanjem teme%s",
"Origin": "Izvor",
"OriginCore": "Srž",
"OriginThirdParty": "Treća strana",
diff --git a/plugins/CorePluginsAdmin/lang/sv.json b/plugins/CorePluginsAdmin/lang/sv.json
index f900cce6c4..edabd93bdf 100644
--- a/plugins/CorePluginsAdmin/lang/sv.json
+++ b/plugins/CorePluginsAdmin/lang/sv.json
@@ -14,10 +14,6 @@
"BackToExtendPiwik": "Tillbaka till Annonssidan",
"BeCarefulUsingPlugins": "Plugin som inte är gjorda av Piwiks team bör användas med försiktighet: vi utvärderar dem inte.",
"BeCarefulUsingThemes": "Teman som inte gjorts av Piwik bör användas med försiktighet då vi inte utvärderar dessa.",
- "ByDesigningOwnTheme": "Genom att %sdesigna dina egna teman%s",
- "ByInstallingNewPluginFromMarketplace": "Genom att %sinstallera ett nytt plugin från butiken%s",
- "ByInstallingNewThemeFromMarketplace": "Genom att %sinstallera ett nytt tema från butiken%s",
- "ByWritingOwnPlugin": "Genom att %sskriva dina egna plugin%s",
"ByXDevelopers": "av %s utvecklare",
"Changelog": "Logg över förändring",
"ChangeSettingsPossible": "Du kan ändra %sinställningar%s för det här pluginet.",
@@ -25,12 +21,9 @@
"Deactivate": "Inaktivera",
"Developer": "Utvecklare",
"DoMoreContactPiwikAdmins": "För att installera ett nytt plugin eller tema, gå till dina Piwik admins.",
- "DownloadAndInstallPluginsFromMarketplace": "Du kan automatiskt ladda ner och installera nya Plugins från %sButiken%s.",
"EmailToEnquireUpdatedVersion": "Skicka ett mejl till %1$s och meddela om en uppdaterad version av %2$s.",
- "EnjoyAnotherLookAndFeelOfThemes": "Njut av ytterligare en se & känn",
"FeaturedPlugin": "Utvalda plugin",
"GetEarlyAccessForPaidPlugins": "Observera: Just nu är alla plugin gratis; framöver kommer det finnas Plugin som kostar i butiken. (%skontakta oss%s för tidig tillgång)",
- "GetNewFunctionality": "Få ny funktionalitet",
"History": "Historik",
"Inactive": "Inaktiverad",
"InfoPluginUpdateIsRecommended": "Uppdatera dina plugin så du kan ta del av de senaste förbättringarna.",
@@ -42,7 +35,6 @@
"LastCommitTime": "(senaste överföringen %s)",
"LastUpdated": "Senast uppdaterad",
"LicenseHomepage": "Licens Hemsida",
- "MainDescription": "Plugins breddar och utökar funktionerna i Piwik. När en plugin är installerad kan du aktivera eller inaktivera den här.",
"Marketplace": "Annonsplats",
"MarketplaceSellPluginSubject": "Butik- Sälj Plugin",
"MenuPlatform": "Plattform",
@@ -54,8 +46,6 @@
"NoZipFileSelected": "Var vänlig och välj en ZIP fil.",
"NumDownloadsLatestVersion": "Sista versionen: %s Nedladdningar",
"NumUpdatesAvailable": "%s uppdatering(s) tillgänglig",
- "OrByUploadingAPlugin": "Eller genom att %sladda upp ett plugin%s",
- "OrByUploadingATheme": "eller genom att %sladda upp ett tema%s",
"Origin": "Ursprung",
"OriginCore": "Kärna",
"OriginThirdParty": "Tredje-part",
diff --git a/plugins/CorePluginsAdmin/lang/ta.json b/plugins/CorePluginsAdmin/lang/ta.json
index 815e7c4cfc..85a25ddf0c 100644
--- a/plugins/CorePluginsAdmin/lang/ta.json
+++ b/plugins/CorePluginsAdmin/lang/ta.json
@@ -6,7 +6,6 @@
"Deactivate": "செயலிழக்க",
"Inactive": "செயலற்ற",
"LicenseHomepage": "உரிம முகப்பு",
- "MainDescription": "சொருகிகள் பிவிக்-ன் செயல்பாடுகளை விரிவுபடுத்தவும், மேம்படுத்தவும் பயன்படுகின்றன. ஒரு சொருகியை நிறுவியவுடன், இங்கு அதனை செயல்படுத்த அல்லது செயலிழக்க வைக்க முடியும்.",
"NoZipFileSelected": "தயவு செய்து ZIP கோப்பை தெரிவு செய்யுங்கள்.",
"PluginDescription": "சொருகிகள் ஆளுமை இடைமுகம்.",
"PluginHomepage": "சொருகி முகப்பு",
diff --git a/plugins/CorePluginsAdmin/lang/th.json b/plugins/CorePluginsAdmin/lang/th.json
index d0400bb433..889f374b84 100644
--- a/plugins/CorePluginsAdmin/lang/th.json
+++ b/plugins/CorePluginsAdmin/lang/th.json
@@ -7,7 +7,6 @@
"Deactivate": "ปิดใช้งาน",
"Inactive": "ไม่ทำงาน",
"LicenseHomepage": "หน้าแรกใบอนุญาต",
- "MainDescription": "อธิบายการใช้งานปลั้กอินและแสดงการทำงานของ Piwik เมื่อปลั๊กอินที่ติดตั้งอยู่คุณสามารถเปิดใช้งานหรือยกเลิกการใช้งานได้ ที่นี่",
"PluginDescription": "การจัดการระบบปลั๊กอิน",
"PluginHomepage": "หน้าหลักของปลั๊กอิน",
"PluginsManagement": "จัดการปลั้กอิน",
diff --git a/plugins/CorePluginsAdmin/lang/tl.json b/plugins/CorePluginsAdmin/lang/tl.json
new file mode 100644
index 0000000000..47774be25b
--- /dev/null
+++ b/plugins/CorePluginsAdmin/lang/tl.json
@@ -0,0 +1,95 @@
+{
+ "CorePluginsAdmin": {
+ "ActionActivatePlugin": "I-activate ang plugin",
+ "ActionActivateTheme": "I-activate ang theme",
+ "ActionInstall": "I-install",
+ "ActionUninstall": "I-uninstall",
+ "Activate": "I-activate",
+ "Activated": "Na activate na",
+ "Active": "Aktibo",
+ "Activity": "Aktibidad",
+ "AllowedUploadFormats": "Maaari kang mag-upload ng plugin o theme sa .zip format sa pamamagitan ng pahinang ito.",
+ "AuthorHomepage": "Homepage ng Gumawa",
+ "Authors": "Mga Gumawa",
+ "BackToExtendPiwik": "Bumalik sa Marketplace",
+ "BeCarefulUsingPlugins": "Ang plugin na hindi nilikha ng Piwik team ay kailangang gamitin ng may kasamang pag-iingat, hindi namin nasuri ang mga ito.",
+ "BeCarefulUsingThemes": "Ang mga Theme na hindi nilikha ng Piwik team ay kailangang gamitin ng may pag-iingat, hindi namin nasuri ang mga ito.",
+ "ByXDevelopers": "sa %s mga nagdevelop",
+ "Changelog": "Baguhin ang log",
+ "ChangeSettingsPossible": "Maaari mong baguhin ang mga %s setting %s para sa plugin na ito.",
+ "CorePluginTooltip": "Ang core plugin ay walang bersyon mula ng sila ay ipinamahagi sa Piwik.",
+ "Deactivate": "I-deactivate",
+ "Developer": "Nagdevelop",
+ "DoMoreContactPiwikAdmins": "Para ma-install ang bagong plugin o bagong theme, mangyaring makipag ugnayan sa mga admin ng Piwik",
+ "EmailToEnquireUpdatedVersion": "Paki-email ang %1$s at magtanong ng bagong na bersyon ng %2$s.",
+ "FeaturedPlugin": "Feature na plugin",
+ "GetEarlyAccessForPaidPlugins": "Tandaan: lahat ng mga plugin ay magagamit ng libre sa kasalukuyan; sa hinaharap ay i-eenable namin ang Bayad na Plugin sa Marketplace (%s makipag-ugnayan sa amin %s para sa maagang pag-access).",
+ "History": "Kasaysayan",
+ "Inactive": "Hindi aktibo",
+ "InfoPluginUpdateIsRecommended": "I-update ang iyong mga plugin ngayon, upang makinabang mula sa mga bagong pagpapabuti.",
+ "InfoThemeIsUsedByOtherUsersAsWell": "Tandaan: ang iba pang %1$s user na nakarehistro sa Piwik ay ginagamit din ang theme %2$s.",
+ "InfoThemeUpdateIsRecommended": "I-update ang iyong theme upang maranasan ang mga pinakabagong bersyon.",
+ "InstallingPlugin": "Nag-iinstall %s",
+ "InstallNewPlugins": "Mag-install ng mga bagong plugin",
+ "InstallNewThemes": "Mag-install ng mga bagong theme",
+ "LastCommitTime": "(huling gumawa ng %s)",
+ "LastUpdated": "Huling In-update",
+ "LicenseHomepage": "Homepage ng Lisensya",
+ "Marketplace": "Marketplace",
+ "MarketplaceSellPluginSubject": "Marketplace - Magbenta ng Plugin",
+ "MenuPlatform": "Plataporma",
+ "MissingRequirementsNotice": "Paki-update ang %1$s %2$s sa bagong bersyon, %1$s %3$s ay kailangan.",
+ "NoPluginsFound": "Walang nakitang mga plugin",
+ "NotAllowedToBrowseMarketplacePlugins": "Maaari mong i-browse ang listahan ng mga plugin na maaaring i-install upang i-customize o palawakin ang iyong Piwik platform. Mangyaring makipag-ugnayan sa iyong administrator kung kailangan mo ng alinman sa mga naka-install.",
+ "NotAllowedToBrowseMarketplaceThemes": "Maaari mong i-browse ang listahan ng mga theme na maaaring i-install upang i-customize ang hitsura ng Piwik platform. Mangyaring makipag-ugnayan sa iyong administrator upang makakuha ng alinman sa mga naka-install para sa iyo.",
+ "NoThemesFound": "Walang nakitang mga theme",
+ "NoZipFileSelected": "Pumili ng ZIP file",
+ "NumDownloadsLatestVersion": "Pinakabagong bersyon: %s na mga download",
+ "NumUpdatesAvailable": "%s na (mga) Update ang available",
+ "Origin": "Pinagmulan",
+ "OriginCore": "Core",
+ "OriginThirdParty": "Third-Party",
+ "PluginDescription": "Administration Interface ng mga Plugin",
+ "PluginHomepage": "Homepage ng Plugin",
+ "PluginKeywords": "Mga Keyword",
+ "PluginNotCompatibleWith": "%1$s ang plugin na to ay hindi compatible sa %2$s.",
+ "PluginNotWorkingAlternative": "Kung ginagamit nag plugin na ito, maari mong makita ang pinakabagong bersyon nito sa Marketplace. Kung hindi, maaari mong i-uninstall ito.",
+ "PluginRequirement": "%1$s kailangan %2$s.",
+ "PluginsManagement": "Pamamahala ng plugin",
+ "PluginUpdateAvailable": "Iyong ginagamit ang bersyon %s at ang pinaka bagong bersyon %s ay available.",
+ "PluginVersionInfo": "%1$s mula %2$s",
+ "PluginWebsite": "Plugin Website",
+ "Screenshots": "Screenshots",
+ "SortByAlpha": "alpha",
+ "SortByNewest": "pinakabago",
+ "SortByPopular": "sikat",
+ "Status": "Status",
+ "StepDownloadingPluginFromMarketplace": "Dina-download ang plugin mula sa Marketplace",
+ "StepDownloadingThemeFromMarketplace": "Dina-download ang theme mula sa Marketplace",
+ "StepPluginSuccessfullyInstalled": "Matagumpay mong na-install ang plugin ng %1$s %2$s.",
+ "StepPluginSuccessfullyUpdated": "Matagumpay mong na-update ang plugin ng %1$s %2$s.",
+ "StepReplaceExistingPlugin": "Pagpapalit ng umiiral na plugin",
+ "StepReplaceExistingTheme": "Pagpapalit ng umiiral na theme",
+ "StepThemeSuccessfullyInstalled": "Matagumpay mong na-install ang theme %1$s %2$s.",
+ "StepThemeSuccessfullyUpdated": "Matagumpay mong na-update ang theme %1$s %2$s.",
+ "StepUnzippingPlugin": "Unzipping plugin",
+ "StepUnzippingTheme": "Unzipping theme",
+ "SuccessfullyActicated": "Matagumpay mong na-activate ang <strong> %s <\/ strong>.",
+ "Support": "Suporta",
+ "TeaserExtendPiwik": "Palawakin ang Piwik sa Social na Plugin at Themes",
+ "TeaserExtendPiwikByPlugin": "Palawakin ang Piwik sa pamamagitan ng pag-install ng isang bagong plugin",
+ "TeaserExtendPiwikByTheme": "Tangkilikin ang isa pang itsura sa pamamagitan ng pag install ng bagong theme",
+ "TeaserExtendPiwikByUpload": "Palawakin ang Piwik sa pamamagitan ng pag-upload ng ZIP File",
+ "Theme": "Theme",
+ "Themes": "Themes",
+ "ThemesDescription": "Ang theme ay maaring palitan ang anyo ng iyong Piwik user inteface, at magbigay ng isang ganap na bagong visual experience para mas kaaya-aya ang iyong ulat na pang analytics.",
+ "ThemesManagement": "Pamamahala ng theme",
+ "UninstallConfirm": "Iyong i-uninstall ang isang plugin %s. Ang plugin ay ganap na tatanggalin mula sa iyong platform at hindi na ito maibabalik. Sigurado ka bang gusto mong gawin ito?",
+ "Updated": "Updated",
+ "UpdatingPlugin": "Nag-uupdate %s",
+ "UploadZipFile": "Mag upload ng zip file",
+ "Version": "Bersyon",
+ "ViewRepositoryChangelog": "Tignan ang mga pagbabago",
+ "Websites": "Websites"
+ }
+} \ No newline at end of file
diff --git a/plugins/CorePluginsAdmin/lang/tr.json b/plugins/CorePluginsAdmin/lang/tr.json
index 6c3b60d277..33e6008a2c 100644
--- a/plugins/CorePluginsAdmin/lang/tr.json
+++ b/plugins/CorePluginsAdmin/lang/tr.json
@@ -18,7 +18,6 @@
"Deactivate": "Devre dışı",
"Developer": "Geliştirici",
"DoMoreContactPiwikAdmins": "Yeni bir eklenti yada tema kurmak için lütfen Piwik yöneticileri iletişime geçiniz.",
- "GetNewFunctionality": "Yeni fonskiyonlara sahip olun",
"History": "Geçmiş",
"Inactive": "Pasif",
"InfoPluginUpdateIsRecommended": "Son gelişmelerden faydalanmak için şimdi eklentileri güncelleyin.",
diff --git a/plugins/CorePluginsAdmin/lang/uk.json b/plugins/CorePluginsAdmin/lang/uk.json
index 9997b08848..d5670dff36 100644
--- a/plugins/CorePluginsAdmin/lang/uk.json
+++ b/plugins/CorePluginsAdmin/lang/uk.json
@@ -7,7 +7,6 @@
"Deactivate": "Деактивувати",
"Inactive": "Неактивний",
"LicenseHomepage": "Сторінка ліцензії",
- "MainDescription": "Плагіни розширюють та примножують функціонал Piwik. Як тільки плагін встановлено його можна автивувати або деактивувати тут.",
"PluginDescription": "Інтерфейс Адміністрування Плагінів",
"PluginHomepage": "Домашня сторінка плагіна",
"PluginsManagement": "Керування плагінами",
diff --git a/plugins/CorePluginsAdmin/lang/vi.json b/plugins/CorePluginsAdmin/lang/vi.json
index f65a7dfb6b..9196c7afb0 100644
--- a/plugins/CorePluginsAdmin/lang/vi.json
+++ b/plugins/CorePluginsAdmin/lang/vi.json
@@ -18,9 +18,7 @@
"Deactivate": "Ngừng hoạt động",
"Developer": "Người phát triển",
"DoMoreContactPiwikAdmins": "Để cài thêm tiện ích hay giao diện mời, xin vui lòng liên lạc với quản lý Piwik của bạn.",
- "DownloadAndInstallPluginsFromMarketplace": "Bạn có thể tải và cài đặt các Tiện ích mời từ %sMarketplace%s.",
"GetEarlyAccessForPaidPlugins": "Lưu ý: hiện nay, mọi tiện ích đều được cung cấp miễn phí; Chúng tôi sẽ thêm Tiện ích trả phí tại Marketplace trong thời gian tới ((%sliên hệ%s để được sử dụng sớm).",
- "GetNewFunctionality": "Cài tính năng mới",
"History": "Lịch sử",
"Inactive": "Không hoạt động",
"InfoPluginUpdateIsRecommended": "Cập nhập tiện ích của bạn ngay để hưởng lợi từ những thay đổi mới nhất.",
@@ -31,15 +29,12 @@
"InstallNewThemes": "Cài đặt các theme mới",
"LastUpdated": "Lần cập nhật cuối",
"LicenseHomepage": "Cấp giấy phép Trang chủ",
- "MainDescription": "Bổ sung mở rộng và mở rộng các chức năng của Piwik. Khi một plugin được cài đặt, bạn có thể kích hoạt hay ngừng kích hoạt nó tại đây.",
"Marketplace": "Chợ ứng dụng",
"MenuPlatform": "Nền tảng",
"NoPluginsFound": "Tiện ích không tìm thấy",
"NoThemesFound": "Giao diện không tìm thấy",
"NoZipFileSelected": "Hãy chọn một tập tin ZIP.",
"NumDownloadsLatestVersion": "Phiên bản mới nhất: %s lượt tải",
- "OrByUploadingAPlugin": "hoặc %stải lên tiện ích%s",
- "OrByUploadingATheme": "hoặc %stải lên giao diện%s",
"Origin": "Nguồn gốc",
"OriginCore": "Lõi",
"OriginThirdParty": "Bên thứ ba",
diff --git a/plugins/CorePluginsAdmin/lang/zh-cn.json b/plugins/CorePluginsAdmin/lang/zh-cn.json
index 90395dc07e..de3eaf264b 100644
--- a/plugins/CorePluginsAdmin/lang/zh-cn.json
+++ b/plugins/CorePluginsAdmin/lang/zh-cn.json
@@ -11,10 +11,6 @@
"AuthorHomepage": "作者主页",
"Authors": "作者",
"BackToExtendPiwik": "返回商城",
- "ByDesigningOwnTheme": "%s自己设计布景%s",
- "ByInstallingNewPluginFromMarketplace": "%s从商城安装新的插件%s",
- "ByInstallingNewThemeFromMarketplace": "%s从商城安装新的布景%s",
- "ByWritingOwnPlugin": "%s自己编写插件%s",
"Changelog": "修改日志",
"Deactivate": "停用",
"Developer": "程序员",
@@ -26,7 +22,6 @@
"LastCommitTime": "(最后提交 %s)",
"LastUpdated": "最后更新",
"LicenseHomepage": "许可首页",
- "MainDescription": "插件延伸并扩展了 Piwik 的功能。 当一个插件安装了以后,您可以在这里启用或停用它。",
"Marketplace": "商城",
"MarketplaceSellPluginSubject": "商城 - 销售插件",
"MenuPlatform": "平台",
@@ -35,8 +30,6 @@
"NoZipFileSelected": "请选择一个ZIP文件",
"NumDownloadsLatestVersion": "最新版本: %s次下载",
"NumUpdatesAvailable": "%s 有更新",
- "OrByUploadingAPlugin": "或者通过 %s上传插件%s",
- "OrByUploadingATheme": "或者通过 %s上传布景%s",
"Origin": "原始",
"OriginCore": "核心",
"OriginThirdParty": "第三方",
diff --git a/plugins/CorePluginsAdmin/lang/zh-tw.json b/plugins/CorePluginsAdmin/lang/zh-tw.json
index 20222fdaf0..dc26c93952 100644
--- a/plugins/CorePluginsAdmin/lang/zh-tw.json
+++ b/plugins/CorePluginsAdmin/lang/zh-tw.json
@@ -5,7 +5,6 @@
"Active": "啟用中",
"Deactivate": "停用",
"Inactive": "停用中",
- "MainDescription": "外掛延伸並擴展了 Piwik 的功能。 當一個外掛安裝了以後,您可以在這裏啟用或停用它。",
"PluginDescription": "外掛管理介面。",
"PluginHomepage": "外掛首頁",
"PluginsManagement": "外掛管理",
diff --git a/plugins/CorePluginsAdmin/stylesheets/marketplace.less b/plugins/CorePluginsAdmin/stylesheets/marketplace.less
index 7146c84217..119634da9d 100644
--- a/plugins/CorePluginsAdmin/stylesheets/marketplace.less
+++ b/plugins/CorePluginsAdmin/stylesheets/marketplace.less
@@ -214,6 +214,13 @@
}
}
+.pluginFooterMessage {
+ float:left;
+ margin-top:30px;
+ line-height: 2em;
+ font-style: italic;
+}
+
.pluginslistNonSuperUserHint {
margin-top: 30px;
margin-bottom: 30px;
@@ -239,6 +246,7 @@
.infoBox {
margin: 0px 0px 20px 0px;
+ line-height: 1.5em;
}
}
diff --git a/plugins/CorePluginsAdmin/templates/browsePlugins.twig b/plugins/CorePluginsAdmin/templates/browsePlugins.twig
index 63845bf73d..9259081a0c 100644
--- a/plugins/CorePluginsAdmin/templates/browsePlugins.twig
+++ b/plugins/CorePluginsAdmin/templates/browsePlugins.twig
@@ -10,6 +10,9 @@
>{{ 'CorePluginsAdmin_TeaserExtendPiwikByPlugin'|translate }}</h2>
<div class="infoBox">
+ {{ 'CorePluginsAdmin_PluginsExtendPiwik'|translate }}
+ {{ 'CorePluginsAdmin_InstallingNewPluginViaMarketplaceOrUpload'|translate('<a href="#" class="uploadPlugin">','</a>')|raw }}
+ <br/>
{{ 'CorePluginsAdmin_BeCarefulUsingPlugins'|translate }}
</div>
@@ -47,4 +50,11 @@
{{ 'CorePluginsAdmin_NoPluginsFound'|translate }}
{% endif %}
</div>
+
+ <div class="pluginFooterMessage">
+ {% set marketplaceSellPluginSubject = 'CorePluginsAdmin_MarketplaceSellPluginSubject'|translate %}
+ {{ 'CorePluginsAdmin_GetEarlyAccessForPaidPlugins'|translate("<a href='mailto:hello@piwik.org?subject=" ~ marketplaceSellPluginSubject ~ "'>", "</a>")|raw }}
+ <br/>
+ {{ 'CorePluginsAdmin_DevelopersLearnHowToDevelopPlugins'|translate('<a href="?module=Proxy&action=redirect&url=http://developer.piwik.org/plugins" target="_blank">', '</a>')|raw }}
+ </div>
{% endblock %}
diff --git a/plugins/CorePluginsAdmin/templates/browsePluginsActions.twig b/plugins/CorePluginsAdmin/templates/browsePluginsActions.twig
index be1a69c798..1ccbafb057 100644
--- a/plugins/CorePluginsAdmin/templates/browsePluginsActions.twig
+++ b/plugins/CorePluginsAdmin/templates/browsePluginsActions.twig
@@ -1,3 +1,18 @@
+<div class="ui-confirm" id="installPluginByUpload">
+ <h2>{{ 'CorePluginsAdmin_TeaserExtendPiwikByUpload'|translate }}</h2>
+
+ <p class="description"> {{ 'CorePluginsAdmin_AllowedUploadFormats'|translate }} </p>
+
+ <form enctype="multipart/form-data"
+ method="post"
+ id="uploadPluginForm"
+ action="{{ linkTo({'action':'uploadPlugin', 'nonce': installNonce}) }}">
+ <input type="file" name="pluginZip">
+ <br />
+ <input class="startUpload" type="submit" value="{{ 'CorePluginsAdmin_UploadZipFile'|translate }}">
+ </form>
+</div>
+
<div class="sort">
<a href="{{ linkTo({'sort': 'popular', 'query': ''}) }}" {% if 'popular' == sort %}class="active"{% endif %}>{{ 'CorePluginsAdmin_SortByPopular'|translate }}</a>
|
diff --git a/plugins/CorePluginsAdmin/templates/browseThemes.twig b/plugins/CorePluginsAdmin/templates/browseThemes.twig
index 2f834247a0..685ef4ebb3 100644
--- a/plugins/CorePluginsAdmin/templates/browseThemes.twig
+++ b/plugins/CorePluginsAdmin/templates/browseThemes.twig
@@ -9,6 +9,9 @@
>{{ 'CorePluginsAdmin_TeaserExtendPiwikByTheme'|translate }}</h2>
<div class="infoBox">
+ {{ 'CorePluginsAdmin_ThemesDescription'|translate }}
+ {{ 'CorePluginsAdmin_InstallingNewPluginViaMarketplaceOrUpload'|translate('<a href="#" class="uploadPlugin">','</a>')|raw }}
+ <br/>
{{ 'CorePluginsAdmin_BeCarefulUsingThemes'|translate }}
</div>
diff --git a/plugins/CorePluginsAdmin/templates/extend.twig b/plugins/CorePluginsAdmin/templates/extend.twig
deleted file mode 100644
index b95b6018c8..0000000000
--- a/plugins/CorePluginsAdmin/templates/extend.twig
+++ /dev/null
@@ -1,70 +0,0 @@
-{% extends 'admin.twig' %}
-
-{% import '@CorePluginsAdmin/macros.twig' as plugins %}
-
-{% block content %}
- <div class="extendPlatform">
-
- <div class="ui-confirm" id="installPluginByUpload">
- <h2>{{ 'CorePluginsAdmin_TeaserExtendPiwikByUpload'|translate }}</h2>
-
- <p class="description"> {{ 'CorePluginsAdmin_AllowedUploadFormats'|translate }} </p>
-
- <form enctype="multipart/form-data"
- method="post"
- id="uploadPluginForm"
- action="{{ linkTo({'action':'uploadPlugin', 'nonce': installNonce}) }}">
- <input type="file" name="pluginZip">
- <br />
- <input class="startUpload" type="submit" value="{{ 'CorePluginsAdmin_UploadZipFile'|translate }}">
- </form>
- </div>
-
- <div class="introduction">
-
- <h2 piwik-enriched-headline
- feature-name="{{ 'CorePluginsAdmin_Marketplace'|translate }}"
- >{{ 'CorePluginsAdmin_TeaserExtendPiwik'|translate }}</h2>
-
- <p>{{ 'CorePluginsAdmin_DownloadAndInstallPluginsFromMarketplace'|translate("<a href='?module=Proxy&action=redirect&url=http://plugins.piwik.org/' target='_blank'>", "</a>")|raw }}</p>
-
- {% set marketplaceSellPluginSubject = 'CorePluginsAdmin_MarketplaceSellPluginSubject'|translate %}
- <em>{{ 'CorePluginsAdmin_GetEarlyAccessForPaidPlugins'|translate("<a href='mailto:hello@piwik.org?subject=" ~ marketplaceSellPluginSubject ~ "'>", "</a>")|raw }}</em>
- </div>
-
- <div>
- <div class="byPlugins">
- <h3 class="header">{{ 'CorePluginsAdmin_GetNewFunctionality'|translate }}</h3>
- <span class="callToAction">{{ 'CorePluginsAdmin_ByInstallingNewPluginFromMarketplace'|translate("<a href=" ~ linkTo({'action':'browsePlugins', 'sort': ''}) ~ ">", "</a>")|raw }}</span>
-
- <p>
- <a href="{{ linkTo({'action':'browsePlugins', 'sort': ''}) }}"><img class="teaserImage" title="{{ 'CorePluginsAdmin_InstallNewPlugins'|translate }}" alt="{{ 'CorePluginsAdmin_InstallNewPlugins'|translate }}" src="plugins/CorePluginsAdmin/images/plugins.png"/></a>
- </p>
-
- <span class="callToAction">
- {{ 'CorePluginsAdmin_ByWritingOwnPlugin'|translate('<a href="http://developer.piwik.org/guides/getting-started-part-1" target="_blank">', '</a>')|raw }}
- {% if isSuperUser %}
- <br/>{{ 'CorePluginsAdmin_OrByUploadingAPlugin'|translate('<a href="#" class="uploadPlugin">', '</a>')|raw }}
- {% endif %}
- </span>
-
- </div>
-
- <div class="byThemes">
- <h3 class="header">{{ 'CorePluginsAdmin_EnjoyAnotherLookAndFeelOfThemes'|translate }}</h3>
- <span class="callToAction">{{ 'CorePluginsAdmin_ByInstallingNewThemeFromMarketplace'|translate("<a href=" ~ linkTo({'action':'browseThemes', 'sort': ''}) ~ ">", "</a>")|raw }}</span>
-
- <p>
- <a href="{{ linkTo({'action':'browseThemes', 'sort': ''}) }}"><img class="teaserImage" alt="{{ 'CorePluginsAdmin_InstallNewThemes'|translate }}" title="{{ 'CorePluginsAdmin_InstallNewThemes'|translate }}" src="plugins/CorePluginsAdmin/images/themes.png"/></a>
- </p>
-
- <span class="callToAction">
- {{ 'CorePluginsAdmin_ByDesigningOwnTheme'|translate('<a href="http://developer.piwik.org/guides/theming" target="_blank">', '</a>')|raw }}
- {% if isSuperUser %}
- <br />{{ 'CorePluginsAdmin_OrByUploadingATheme'|translate('<a href="#" class="uploadPlugin">', '</a>')|raw }}
- {% endif %}
- </span>
- </div>
- </div>
- </div>
-{% endblock %}
diff --git a/plugins/CorePluginsAdmin/templates/plugins.twig b/plugins/CorePluginsAdmin/templates/plugins.twig
index 4eeb7ee032..4c4b6b1192 100644
--- a/plugins/CorePluginsAdmin/templates/plugins.twig
+++ b/plugins/CorePluginsAdmin/templates/plugins.twig
@@ -15,7 +15,8 @@
<h2 piwik-enriched-headline>{{ 'CorePluginsAdmin_PluginsManagement'|translate }}</h2>
- <p>{{ 'CorePluginsAdmin_MainDescription'|translate }}
+ <p>{{ 'CorePluginsAdmin_PluginsExtendPiwik'|translate }}
+ {{ 'CorePluginsAdmin_OncePluginIsInstalledYouMayActivateHere'|translate }}
{% if not isPluginsAdminEnabled %}
<br/>{{ 'CorePluginsAdmin_DoMoreContactPiwikAdmins'|translate }}
diff --git a/plugins/CoreUpdater/lang/fr.json b/plugins/CoreUpdater/lang/fr.json
index b616864f19..f69376aab3 100644
--- a/plugins/CoreUpdater/lang/fr.json
+++ b/plugins/CoreUpdater/lang/fr.json
@@ -34,7 +34,7 @@
"NotificationSubjectAvailableCoreUpdate": "Piwik %s est maintenant disponible",
"NotificationSubjectAvailablePluginUpdate": "Mises à jour disponibles pour vos plugins Piwik",
"PiwikHasBeenSuccessfullyUpgraded": "Piwik a été mis à jour avec succès !",
- "PiwikUpdatedSuccessfully": "Piwik a été mis à jour avec succès!",
+ "PiwikUpdatedSuccessfully": "Piwik a été mis à jour avec succès !",
"PiwikWillBeUpgradedFromVersionXToVersionY": "La base de données de Piwik sera mise à jour depuis la version %1$s vers la version %2$s.",
"PluginDescription": "Mécanisme de mise à jour Piwik",
"ReadyToGo": "Prêt à démarrer?",
diff --git a/plugins/CoreUpdater/lang/tl.json b/plugins/CoreUpdater/lang/tl.json
new file mode 100644
index 0000000000..60cb5eba4d
--- /dev/null
+++ b/plugins/CoreUpdater/lang/tl.json
@@ -0,0 +1,60 @@
+{
+ "CoreUpdater": {
+ "ClickHereToViewSqlQueries": "I-click dito upang makita at ma kopya ang listahan ng mga SQL query na isasagawa",
+ "CriticalErrorDuringTheUpgradeProcess": "Kritikal Error habang ginagawa ang pag-uupdate:",
+ "DatabaseUpgradeRequired": "Ang pag upgrade ng database ay nangangailangan",
+ "DisablingIncompatiblePlugins": "Hindi pinapagana ang mga hindi tugmang plugins: %s",
+ "DownloadingUpdateFromX": "Dina-download ang update mula sa %s",
+ "DownloadX": "Download %s",
+ "EmptyDatabaseError": "Ang database %s ay walang laman. Kelangan mong i-edit o tanggalin ang iyong Piwik configuration file.",
+ "ErrorDIYHelp": "Kung ikaw ay isang advance na user at nakatagpo ng isang error sa pag-uupgrade ng database:",
+ "ErrorDIYHelp_1": "kilalanin at i-tama ang mga pinagmulan ng problema(hal. memory_limit o max_execution time)",
+ "ErrorDIYHelp_2": "isagawa ang mga natitirang mga query sa update na ang failed",
+ "ErrorDIYHelp_3": "I-manu-manong i-update 'option' table sa iyong Piwik database, e-set ang value ng iyong version_core sa version ng failed update",
+ "ErrorDIYHelp_4": "muling paganahin ang update (sa pamamagitan ng browser o command-line) upang maituloy ang natitirang mga pag-update.",
+ "ErrorDIYHelp_5": "Iulat ang problema (at solusyon) upang mapagbuti ang Piwik.",
+ "ErrorDuringPluginsUpdates": "Error habang nag ina-update ang plugin:",
+ "ExceptionAlreadyLatestVersion": "Ang iyong Piwik bersyon %s ay napapanahon.",
+ "ExceptionArchiveEmpty": "Walang lamang archive.",
+ "ExceptionArchiveIncompatible": "Di-tugmang archive: %s",
+ "ExceptionArchiveIncomplete": "Hindi nakumpleto ang pag-archive: ang ilang mga file ay nawawala (hal. %s.)",
+ "FeedbackRequest": "Huwag mag-atubiling ibahagi ang iyong mga ideya at suhestiyon sa Piwik Team dito:",
+ "HelpMessageContent": "e-check ang %1$s Piwik FAQ %2$s na nagpapaliwanag ng mga pinakapangkaraniwang error habang nag-uupdate. %3$s Magtanong sa inyong system administrator - maaari ka nilang tulungan sa mga error kung saan ito ay may ugnay sa iyong server O MySQL setup.",
+ "HelpMessageIntroductionWhenError": "Sa itaas ay ang core error message. Ito ay tumutulong upang ipaliwanag ang mga dahilan ng error ngunit kung kailangan mo ng karagdagang tulong mangyaring:",
+ "HelpMessageIntroductionWhenWarning": "Kumplete na ang pag-uupdate gayunpaman meron mga issues habang ito ay sinasagawa. Mangyaring basahin ang mga nasataas para sa mga detalye. Para sa mga karagdatang tulong:",
+ "HighTrafficPiwikServerEnableMaintenance": "Kung ikaw ay may pinamamahalaang Piwik server na may mataas na traffic aming nirerekomenda na %s panandaliang alisin ang visitor Tracking at ilagay ang Piwik User Interface sa maintenance mode %s.",
+ "IncompatbilePluginsWillBeDisabledInfo": "Tandaan: ang ilang mga plugin ay hindi tugma sa Piwik %s. Ang mga ito ay hindi pinagana kapag nag-upgrade ka:",
+ "InstallingTheLatestVersion": "Ini-install ang pinakabagong bersyon",
+ "MajorUpdateWarning1": "Ito ay isang mahalagang update! Ito ay mas matagal kaysa sa karaniwan.",
+ "MajorUpdateWarning2": "Ang mga sumusunod na payo ay mahalaga para sa mga malalaking pag-install.",
+ "NoteForLargePiwikInstances": "Mga mahalagang paalala para sa malalaking installation sa Piwik",
+ "NoteItIsExpectedThatQueriesFail": "Tandaan: Kung e mamanu-mano ang pag execute sa mga queries na ito asahan na ang iba sa mga ito ay hindi matuloy. Sa kasong ganito mangyaring balewalain lamang ang mga errors na ito at ituloy ang susunod sa iyong listahan.",
+ "NotificationClickToUpdatePlugins": "Mag-click dito upang i-update ang iyong mga plugin ngayon.",
+ "NotificationClickToUpdateThemes": "Mag-click dito upang i-update ang iyong tema ngayon:",
+ "NotificationSubjectAvailableCoreUpdate": "Bagong Piwik %s ay maaring magamit",
+ "NotificationSubjectAvailablePluginUpdate": "Mayroong bagong update para sa plugin ng iyong Piwik.",
+ "PiwikHasBeenSuccessfullyUpgraded": "Ang Piwik ay matagumpay na na-update!",
+ "PiwikUpdatedSuccessfully": "Matagumpay na na-update Piwik!",
+ "PiwikWillBeUpgradedFromVersionXToVersionY": "Ang Piwik database ay maa-upgrade mula sa bersyon %1$s sa bagong bersyon %2$s.",
+ "PluginDescription": "Mekanismo ng pag-uupdate ng Piwik",
+ "ReadyToGo": "Handa nang umalis?",
+ "TheFollowingDimensionsWillBeUpgradedX": "Ang sumusunod na dimensyon ay i-uupdate: %s",
+ "TheFollowingPluginsWillBeUpgradedX": "Ang mga sumusunod na plug-in ay iuupdate: %s",
+ "ThereIsNewPluginVersionAvailableForUpdate": "Ang ilang mga plugin na iyong ginamit ay na-update sa Marketplace.",
+ "ThereIsNewVersionAvailableForUpdate": "Mayroong bagong bersyon ng Piwik na available para sa pag-update",
+ "TheUpgradeProcessMayTakeAWhilePleaseBePatient": "Ang proseso ng pag-upgrade ng database ay maaaring matagalan kaya mangyaring maging mapagpasensya.",
+ "UnpackingTheUpdate": "Pag-unpack sa update",
+ "UpdateAutomatically": "Awtomatikong update",
+ "UpdateHasBeenCancelledExplanation": "Nakansela ang Piwik One Click Update. Kung hindi mo maayos ang mensaheng may error sa itaas Ito ay nirerekomenda na manu-mano mong i-update ang Piwik. %1$s Mangyaring tignan ang %2$s updated documentaion %3$s upang makapagsimula!",
+ "UpdateTitle": "I-update",
+ "UpgradeComplete": "Kumpleto na ang pag-upgrade!",
+ "UpgradePiwik": "I-upgrade ang Piwik",
+ "VerifyingUnpackedFiles": "Bine-verify ang naka-unpack na file",
+ "WarningMessages": "Mga babala mensahe:",
+ "WeAutomaticallyDeactivatedTheFollowingPlugins": "Awtomatiko naming idineactivate ang mga sumusunod na plugin: %s",
+ "YouCanUpgradeAutomaticallyOrDownloadPackage": "Maaari mong awtomatikong i-update sa bersyon %s o i-download ang package at mano-manong i-install ito:",
+ "YouCouldManuallyExecuteSqlQueries": "Kung ikaw ay hindi makakagamit ng command line updater at kung ang Piwik ay bigo sa pag-upgrade(dahil sa pag-timeout ng database ng nag-timeout ang browser o kahit anong isyu maari mong e-manu-mano upang paganahin ang mga SQL queries upang ma-update ang Piwik",
+ "YouMustDownloadPackageOrFixPermissions": "Ang piwik ay hindi magawang palitan ang iyong kasaluyang installation. Maari mong ayusin ang directory\/file permissions. o mag-download ng package at i-install ang version %s ng manu-mano.",
+ "YourDatabaseIsOutOfDate": "Ang iyong Piwik database ay out-of-date at dapat mo na itong e-upgrade bago ka makatuloy sa susunod na proseso."
+ }
+} \ No newline at end of file
diff --git a/plugins/CustomAlerts b/plugins/CustomAlerts
-Subproject 711780c37fa0eb6d562a67434dd1a69c2153c1e
+Subproject 4d2e05871965cfc3ff1fe295b5dae024ba52d75
diff --git a/plugins/CustomVariables/Archiver.php b/plugins/CustomVariables/Archiver.php
index 47e1363dc4..704038b0a1 100644
--- a/plugins/CustomVariables/Archiver.php
+++ b/plugins/CustomVariables/Archiver.php
@@ -154,7 +154,7 @@ class Archiver extends \Piwik\Plugin\Archiver
if (substr($value, -2) != '"]') {
$value .= '"]';
}
- $decoded = @Common::json_decode($value);
+ $decoded = json_decode($value);
if (is_array($decoded)) {
$count = 0;
foreach ($decoded as $category) {
diff --git a/plugins/CustomVariables/Model.php b/plugins/CustomVariables/Model.php
index ce5ffe8843..d9a0623b40 100644
--- a/plugins/CustomVariables/Model.php
+++ b/plugins/CustomVariables/Model.php
@@ -166,7 +166,7 @@ class Model
$model->addCustomVariable();
}
} catch (\Exception $e) {
- Log::warning('Failed to add custom variable: ' . $e->getMessage());
+ Log::error('Failed to add custom variable: ' . $e->getMessage());
}
}
}
diff --git a/plugins/CustomVariables/lang/tl.json b/plugins/CustomVariables/lang/tl.json
new file mode 100644
index 0000000000..9bbbcc286c
--- /dev/null
+++ b/plugins/CustomVariables/lang/tl.json
@@ -0,0 +1,11 @@
+{
+ "CustomVariables": {
+ "ColumnCustomVariableName": "Pangalan ng Custom na Variable",
+ "ColumnCustomVariableValue": "Halaga ng Custom na Variable",
+ "CustomVariables": "Mga Custom na Variable",
+ "CustomVariablesReportDocumentation": "Ang ulat na ito ay naglalaman ng mga impormasyon tunkol sa iyong mga Custom Variable. E-click ang pangalan ng variable upang makita ang pagkakabahagi ng mga laman nito. %s Upang makita ang pangkalahatang impormasyon tungkol sa Custom Variables basahin ang %sCustom Variables documentation sa piwi.org%s.",
+ "PluginDescription": "Custom Variables ay pangalan ang value pairs na pwede e-set sa isang pagbisita gamit ang Javascript API setVisitCustomVariables() function. At ang piwik ay magbibigay ng ulat kung gaano karami ang iyong bisita pahina conversion bawat isa sa mga custom names at values.",
+ "ScopePage": "saklaw na pahina",
+ "ScopeVisit": "Saklaw ng pagbisita"
+ }
+} \ No newline at end of file
diff --git a/plugins/CustomVariables/tests/System/expected/test_CustomVariablesSystemTest__Live.getLastVisitsDetails_day.xml b/plugins/CustomVariables/tests/System/expected/test_CustomVariablesSystemTest__Live.getLastVisitsDetails_day.xml
index 91f9066c9b..1fbae717c6 100644
--- a/plugins/CustomVariables/tests/System/expected/test_CustomVariablesSystemTest__Live.getLastVisitsDetails_day.xml
+++ b/plugins/CustomVariables/tests/System/expected/test_CustomVariablesSystemTest__Live.getLastVisitsDetails_day.xml
@@ -117,8 +117,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -142,14 +150,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/plugins/DBStats/lang/tl.json b/plugins/DBStats/lang/tl.json
new file mode 100644
index 0000000000..2720809061
--- /dev/null
+++ b/plugins/DBStats/lang/tl.json
@@ -0,0 +1,21 @@
+{
+ "DBStats": {
+ "DatabaseUsage": "Paggamit ng Database",
+ "DataSize": "Laki ng datos",
+ "DBSize": "laki ng DB",
+ "EstimatedSize": "Tinantyang laki",
+ "IndexSize": "Laki ng index",
+ "LearnMore": "Upang malaman kung paano pina-process ng Piwik ang data at kung papano paganahin ang Piwik ng may katam-taman at mataas na website traffic tignan ang dokumentasyon na ito: %s.",
+ "MainDescription": "Nilalagay ng Piwik ang lahat ng iyong web analytics sa MySQL database. Sa kasalukuyan Piwik tables ay mayroong %s na espasyo.",
+ "MetricDataByYear": "Talaan ng sukatan ayon sa taon",
+ "MetricTables": "Table ng sukatan",
+ "OtherTables": "Iba pang mga table",
+ "PluginDescription": "Inulat ng plugin ang MySQL database sa paggamit ng talahayanan ng Piwik.",
+ "ReportDataByYear": "Ulat talahaan ayon sa taon",
+ "ReportTables": "Talaan ng mga table",
+ "RowCount": "Bilang ng row",
+ "Table": "Talahanayan",
+ "TotalSize": "Kabuuang laki",
+ "TrackerTables": "Tracker Tables"
+ }
+} \ No newline at end of file
diff --git a/plugins/Dashboard/Controller.php b/plugins/Dashboard/Controller.php
index c7a89a75a5..4c7d0c53f4 100644
--- a/plugins/Dashboard/Controller.php
+++ b/plugins/Dashboard/Controller.php
@@ -39,7 +39,7 @@ class Controller extends \Piwik\Plugin\Controller
$view = new View($template);
$this->setGeneralVariablesView($view);
- $view->availableWidgets = Common::json_encode(WidgetsList::get());
+ $view->availableWidgets = json_encode(WidgetsList::get());
$view->availableLayouts = $this->getAvailableLayouts();
$view->dashboardId = Common::getRequestVar('idDashboard', 1, 'int');
@@ -75,7 +75,7 @@ class Controller extends \Piwik\Plugin\Controller
$this->checkTokenInUrl();
Json::sendHeaderJSON();
- return Common::json_encode(WidgetsList::get());
+ return json_encode(WidgetsList::get());
}
public function getDashboardLayout($checkToken = true)
@@ -148,7 +148,7 @@ class Controller extends \Piwik\Plugin\Controller
$dashboards = $this->dashboard->getAllDashboards($login);
Json::sendHeaderJSON();
- return Common::json_encode($dashboards);
+ return json_encode($dashboards);
}
/**
@@ -175,7 +175,7 @@ class Controller extends \Piwik\Plugin\Controller
$nextId = $this->getModel()->createNewDashboardForUser($login, $name, $layout);
Json::sendHeaderJSON();
- return Common::json_encode($nextId);
+ return json_encode($nextId);
}
public function copyDashboardToUser()
@@ -197,7 +197,7 @@ class Controller extends \Piwik\Plugin\Controller
$nextId = $this->getModel()->createNewDashboardForUser($user, $name, $layout);
Json::sendHeaderJSON();
- return Common::json_encode($nextId);
+ return json_encode($nextId);
}
}
diff --git a/plugins/Dashboard/Dashboard.php b/plugins/Dashboard/Dashboard.php
index 1ff5a98182..bfb3fc9870 100644
--- a/plugins/Dashboard/Dashboard.php
+++ b/plugins/Dashboard/Dashboard.php
@@ -81,7 +81,7 @@ class Dashboard extends \Piwik\Plugin
],
[
{"uniqueId":"widgetUserCountryMapvisitorMap","parameters":{"module":"UserCountryMap","action":"visitorMap"}},
- {"uniqueId":"widgetUserSettingsgetBrowser","parameters":{"module":"UserSettings","action":"getBrowser"}},
+ {"uniqueId":"widgetDevicesDetecionGetBrowser","parameters":{"module":"DevicesDetection","action":"getBrowsers"}},
{"uniqueId":"widgetReferrersgetSearchEngines","parameters":{"module":"Referrers","action":"getSearchEngines"}},
{"uniqueId":"widgetVisitTimegetVisitInformationPerServerTime","parameters":{"module":"VisitTime","action":"getVisitInformationPerServerTime"}},
{"uniqueId":"widgetExampleRssWidgetrssPiwik","parameters":{"module":"ExampleRssWidget","action":"rssPiwik"}}
@@ -193,12 +193,12 @@ class Dashboard extends \Piwik\Plugin
$layout = str_replace("\\\"", "\"", $layout);
$layout = str_replace("\n", "", $layout);
- return Common::json_decode($layout, $assoc = false);
+ return json_decode($layout, $assoc = false);
}
public function encodeLayout($layout)
{
- return Common::json_encode($layout);
+ return json_encode($layout);
}
public function getJsFiles(&$jsFiles)
diff --git a/plugins/Dashboard/Model.php b/plugins/Dashboard/Model.php
index 39dcb06557..790076c1a9 100644
--- a/plugins/Dashboard/Model.php
+++ b/plugins/Dashboard/Model.php
@@ -10,6 +10,7 @@ namespace Piwik\Plugins\Dashboard;
use Piwik\Common;
use Piwik\Db;
use Piwik\DbHelper;
+use Piwik\WidgetsList;
class Model
{
@@ -144,4 +145,101 @@ class Model
{
Db::dropTables(Common::prefixTable(self::$rawPrefix));
}
+
+ /**
+ * Replaces widgets on the given dashboard layout with other ones
+ *
+ * It uses the given widget definitions to find the old and to create the new widgets
+ * Each widget is defined with an array containing the following information
+ * array (
+ * 'module' => string
+ * 'action' => string
+ * 'params' => array()
+ * )
+ *
+ * if $newWidget does not contain a widget definition at the current position,
+ * the old widget will simply be removed
+ *
+ * @param array $oldWidgets array containing widget definitions
+ * @param array $newWidgets array containing widget definitions
+ */
+ public static function replaceDashboardWidgets($dashboardLayout, $oldWidgets, $newWidgets)
+ {
+ if (empty($dashboardLayout) || !isset($dashboardLayout->columns)) {
+ return $dashboardLayout;
+ }
+
+ $newColumns = array();
+
+ foreach ($dashboardLayout->columns as $id => $column) {
+
+ $newColumn = array();
+
+ foreach ($column as $widget) {
+
+ foreach ($oldWidgets AS $pos => $oldWidgetData) {
+
+ $oldWidgetId = WidgetsList::getWidgetUniqueId($oldWidgetData['module'], $oldWidgetData['action'], $oldWidgetData['params']);
+
+ if (empty($newWidgets[$pos])) {
+ continue 2;
+ }
+
+ $newWidget = $newWidgets[$pos];
+
+ if ($widget->uniqueId == $oldWidgetId) {
+
+ $newWidgetId = WidgetsList::getWidgetUniqueId($newWidget['module'], $newWidget['action'], $newWidget['params']);
+
+ // is new widget already is on dashboard just remove the old one
+ if (self::layoutContainsWidget($dashboardLayout, $newWidgetId)) {
+ continue 2;
+ }
+
+ $widget->uniqueId = $newWidgetId;
+ $widget->parameters->module = $newWidget['module'];
+ $widget->parameters->action = $newWidget['action'];
+ foreach ($newWidget['params'] as $key => $value) {
+ $widget->parameters->{$key} = $value;
+ }
+ }
+ }
+
+
+ $newColumn[] = $widget;
+ }
+
+ $newColumns[] = $newColumn;
+ }
+
+ $dashboardLayout->columns = $newColumns;
+
+ return $dashboardLayout;
+ }
+
+ /**
+ * Checks if a given dashboard layout contains a given widget
+ *
+ * @param $dashboardLayout
+ * @param $widgetId
+ * @return bool
+ */
+ protected static function layoutContainsWidget($dashboardLayout, $widgetId)
+ {
+ if (!isset($dashboardLayout->columns)) {
+ return false;
+ }
+
+ foreach ($dashboardLayout->columns as $id => $column) {
+
+ foreach ($column as $widget) {
+
+ if ($widget->uniqueId == $widgetId) {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
}
diff --git a/plugins/Dashboard/lang/tl.json b/plugins/Dashboard/lang/tl.json
new file mode 100644
index 0000000000..9b7be58310
--- /dev/null
+++ b/plugins/Dashboard/lang/tl.json
@@ -0,0 +1,37 @@
+{
+ "Dashboard": {
+ "AddAWidget": "Magdagdag ng widget",
+ "AddPreviewedWidget": "I-click upang magdagdag ng widget sa dashboard",
+ "ChangeDashboardLayout": "Baguhin ang layout ng dashboard",
+ "CopyDashboardToUser": "Kopyahin ang dashboard sa user",
+ "CreateNewDashboard": "Lumikha ng bagong dashboard",
+ "Dashboard": "Dashboard",
+ "DashboardCopied": "Matagumpay na nakopya ang kasalukuyang dashboard sa napiling user.",
+ "DashboardEmptyNotification": "Ang iyong dashboard ay hindi nag lalaman ng kahit anong widgets. Umpisahan sa pagdag-dag ng mga widget o i-rest ang dashboard sa pangunahing widget selection.",
+ "DashboardName": "Pangalan ng dashboard:",
+ "DashboardOf": "Dashboard ng %s",
+ "DefaultDashboard": "Default dashboard - Paggamit ng default na pagpili ng widget at mga hanay ng layout",
+ "DeleteWidgetConfirm": "Sigurado ka bang gusto mong burahin itong widget mula sa dashboard?",
+ "EmptyDashboard": "Alisin ang laman ng dashboard - Pumili ng iyong mga paboritong widget",
+ "LoadingWidget": "Ni-loload ang widget mangyaring maghintay sandali.",
+ "ManageDashboard": "pamahalaan ang dashboard",
+ "Maximise": "I-maximise",
+ "Minimise": "I-minimise",
+ "NotUndo": "Hindi mo magagawang i-undo ang operasyon na ito.",
+ "PluginDescription": "Ang iyong Web Analytics Dashboard. Maaari mong i-customize ang iyong Dashboard: magdagdag ng mga bagong widget baguhin ang ayos ng iyong widget. Bawat user ay maaring i-access ang kanyang sariling custom Dashboard.",
+ "RemoveDashboard": "Alisin dashboard",
+ "RemoveDashboardConfirm": "Sigurado ko bang gusto mong tanggalin ang dashboard \"%s\"?",
+ "RenameDashboard": "Palitan ang pangalan ng dashboard",
+ "ResetDashboard": "I-reset ang dashboard",
+ "ResetDashboardConfirm": "Sigurado ka bang gusto mong i-reset ang iyong layout dashboard sa default na pagpipilian Widget?",
+ "SelectDashboardLayout": "Mangyaring piliin ang iyong bagong layout dashboard.",
+ "SelectWidget": "Pumili ng widget na idadagdag sa inyong dashboard.",
+ "SetAsDefaultWidgets": "Itakda ang default na pagpipilian ng mga widget bilang.",
+ "SetAsDefaultWidgetsConfirm": "Sigurado ka bang gusto mong e-set ang kasalukuyang mga widget at layout ng dashboard ng template bilang default dashboard?",
+ "SetAsDefaultWidgetsConfirmHelp": "Ang mga widget na pagpilian at dashboard column layout ay magagamit kapag ang sinumang user na guwama ng bagong dashboard o kapag ang \"%s\" feature ay ginamit.",
+ "TopLinkTooltip": "Tignan ang Ulat ng Web Analytics para sa %s.",
+ "WidgetNotFound": "Hindi nakita ang Widget",
+ "WidgetPreview": "preview ng widget",
+ "WidgetsAndDashboard": "Mga Widget at Dashboard"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/API.php b/plugins/DevicesDetection/API.php
index b54b79c635..b6c58388b9 100644
--- a/plugins/DevicesDetection/API.php
+++ b/plugins/DevicesDetection/API.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\DevicesDetection;
+use DeviceDetector\Parser\Device\DeviceParserAbstract;
use Piwik\Archive;
use Piwik\DataTable;
use Piwik\Metrics;
@@ -50,11 +51,36 @@ class API extends \Piwik\Plugin\API
public function getType($idSite, $period, $date, $segment = false)
{
$dataTable = $this->getDataTable('DevicesDetection_types', $idSite, $period, $date, $segment);
+ // ensure all device types are in the list
+ $this->ensureDefaultRowsInTable($dataTable);
$dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getDeviceTypeLogo'));
$dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getDeviceTypeLabel'));
return $dataTable;
}
+ protected function ensureDefaultRowsInTable($dataTable)
+ {
+ $requiredRows = array_fill(0, count(DeviceParserAbstract::getAvailableDeviceTypes()), Metrics::INDEX_NB_VISITS);
+
+ $dataTables = array($dataTable);
+
+ if (!($dataTable instanceof DataTable\Map)) {
+ foreach ($dataTables as $table) {
+ if ($table->getRowsCount() == 0) {
+ continue;
+ }
+ foreach ($requiredRows as $requiredRow => $key) {
+ $row = $table->getRowFromLabel($requiredRow);
+ if (empty($row)) {
+ $table->addRowsFromSimpleArray(array(
+ array('label' => $requiredRow, $key => 0)
+ ));
+ }
+ }
+ }
+ }
+ }
+
/**
* Gets datatable displaying number of visits by device manufacturer name
* @param int $idSite
@@ -97,8 +123,8 @@ class API extends \Piwik\Plugin\API
public function getOsFamilies($idSite, $period, $date, $segment = false)
{
$dataTable = $this->getDataTable('DevicesDetection_os', $idSite, $period, $date, $segment);
- $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getOSFamilyFullNameExtended'));
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getOsFamilyLogoExtended'));
+ $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getOSFamilyFullName'));
+ $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getOsFamilyLogo'));
return $dataTable;
}
@@ -113,9 +139,9 @@ class API extends \Piwik\Plugin\API
public function getOsVersions($idSite, $period, $date, $segment = false)
{
$dataTable = $this->getDataTable('DevicesDetection_osVersions', $idSite, $period, $date, $segment);
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getOsLogoExtended'));
- $dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getOsFullNameExtended'));
-
+ $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getOsLogo'));
+ // use GroupBy filter to avoid duplicate rows if old (UserSettings) and new (DevicesDetection) reports were combined
+ $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getOsFullName'));
return $dataTable;
}
@@ -126,12 +152,27 @@ class API extends \Piwik\Plugin\API
* @param string $date
* @param bool|string $segment
* @return DataTable
+ *
+ * @deprecated since 2.9.0 Use {@link getBrowsers} instead.
*/
public function getBrowserFamilies($idSite, $period, $date, $segment = false)
{
+ return $this->getBrowsers($idSite, $period, $date, $segment);
+ }
+
+ /**
+ * Gets datatable displaying number of visits by Browser (Without version)
+ * @param int $idSite
+ * @param string $period
+ * @param string $date
+ * @param bool|string $segment
+ * @return DataTable
+ */
+ public function getBrowsers($idSite, $period, $date, $segment = false)
+ {
$dataTable = $this->getDataTable('DevicesDetection_browsers', $idSite, $period, $date, $segment);
- $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getBrowserFamilyFullNameExtended'));
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getBrowserFamilyLogoExtended'));
+ $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getBrowserName'));
+ $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getBrowserFamilyLogo'));
return $dataTable;
}
@@ -146,8 +187,8 @@ class API extends \Piwik\Plugin\API
public function getBrowserVersions($idSite, $period, $date, $segment = false)
{
$dataTable = $this->getDataTable('DevicesDetection_browserVersions', $idSite, $period, $date, $segment);
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getBrowserLogoExtended'));
- $dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getBrowserNameExtended'));
+ $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getBrowserLogo'));
+ $dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getBrowserNameWithVersion'));
return $dataTable;
}
diff --git a/plugins/DevicesDetection/Archiver.php b/plugins/DevicesDetection/Archiver.php
index e91a1be0fe..0d6f40c062 100644
--- a/plugins/DevicesDetection/Archiver.php
+++ b/plugins/DevicesDetection/Archiver.php
@@ -26,7 +26,7 @@ class Archiver extends \Piwik\Plugin\Archiver
const DEVICE_BRAND_FIELD = "config_device_brand";
const DEVICE_MODEL_FIELD = "config_device_model";
const OS_FIELD = "config_os";
- const OS_VERSION_FIELD = "CONCAT(log_visit.config_os, ';', log_visit.config_os_version)";
+ const OS_VERSION_FIELD = "CONCAT(log_visit.config_os, ';', COALESCE(log_visit.config_os_version, ''))";
const BROWSER_FIELD = "config_browser_name";
const BROWSER_ENGINE_FIELD = "config_browser_engine";
const BROWSER_VERSION_DIMENSION = "CONCAT(log_visit.config_browser_name, ';', log_visit.config_browser_version)";
diff --git a/plugins/DevicesDetection/Columns/BrowserName.php b/plugins/DevicesDetection/Columns/BrowserName.php
index 1237d6676b..16b0897199 100644
--- a/plugins/DevicesDetection/Columns/BrowserName.php
+++ b/plugins/DevicesDetection/Columns/BrowserName.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\DevicesDetection\Columns;
use Piwik\Piwik;
+use Piwik\Plugins\DevicesDetection\Segment;
use Piwik\Tracker\Request;
use Piwik\Tracker\Visitor;
use Piwik\Tracker\Action;
@@ -16,10 +17,20 @@ use Piwik\Tracker\Action;
class BrowserName extends Base
{
protected $columnName = 'config_browser_name';
+ protected $columnType = 'VARCHAR(10) NOT NULL';
+
+ protected function configureSegments()
+ {
+ $segment = new Segment();
+ $segment->setSegment('browserCode');
+ $segment->setName('UserSettings_ColumnBrowser');
+ $segment->setAcceptedValues('FF, IE, CH, SF, OP, etc.');
+ $this->addSegment($segment);
+ }
public function getName()
{
- return Piwik::translate('UserSettings_BrowserFamilies');
+ return Piwik::translate('UserSettings_ColumnBrowser');
}
/**
diff --git a/plugins/DevicesDetection/Columns/BrowserVersion.php b/plugins/DevicesDetection/Columns/BrowserVersion.php
index 1fa60f3ab2..14e3221a0f 100644
--- a/plugins/DevicesDetection/Columns/BrowserVersion.php
+++ b/plugins/DevicesDetection/Columns/BrowserVersion.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\DevicesDetection\Columns;
use Piwik\Piwik;
+use Piwik\Plugins\DevicesDetection\Segment;
use Piwik\Tracker\Request;
use Piwik\Tracker\Visitor;
use Piwik\Tracker\Action;
@@ -16,10 +17,20 @@ use Piwik\Tracker\Action;
class BrowserVersion extends Base
{
protected $columnName = 'config_browser_version';
+ protected $columnType = 'VARCHAR(20) NOT NULL';
+
+ protected function configureSegments()
+ {
+ $segment = new Segment();
+ $segment->setSegment('browserVersion');
+ $segment->setName('DevicesDetection_BrowserVersion');
+ $segment->setAcceptedValues('1.0, 8.0, etc.');
+ $this->addSegment($segment);
+ }
public function getName()
{
- return Piwik::translate('DevicesDetection_BrowserVersions');
+ return Piwik::translate('DevicesDetection_BrowserVersion');
}
/**
diff --git a/plugins/DevicesDetection/Columns/Os.php b/plugins/DevicesDetection/Columns/Os.php
index 599edb3285..62d1a5cb71 100644
--- a/plugins/DevicesDetection/Columns/Os.php
+++ b/plugins/DevicesDetection/Columns/Os.php
@@ -9,6 +9,7 @@
namespace Piwik\Plugins\DevicesDetection\Columns;
use Piwik\Piwik;
+use Piwik\Plugins\DevicesDetection\Segment;
use Piwik\Tracker\Request;
use Piwik\Tracker\Settings;
use Piwik\Tracker\Visitor;
@@ -17,10 +18,20 @@ use Piwik\Tracker\Action;
class Os extends Base
{
protected $columnName = 'config_os';
+ protected $columnType = 'CHAR(3) NOT NULL';
+
+ protected function configureSegments()
+ {
+ $segment = new Segment();
+ $segment->setSegment('operatingSystemCode');
+ $segment->setName('UserSettings_ColumnOperatingSystem');
+ $segment->setAcceptedValues('WXP, WI7, MAC, LIN, AND, IPD, etc.');
+ $this->addSegment($segment);
+ }
public function getName()
{
- return Piwik::translate('DevicesDetection_OperatingSystemFamilies');
+ return Piwik::translate('UserSettings_OperatingSystemFamily');
}
/**
diff --git a/plugins/DevicesDetection/Controller.php b/plugins/DevicesDetection/Controller.php
index 78ed29fa93..cf072bb973 100644
--- a/plugins/DevicesDetection/Controller.php
+++ b/plugins/DevicesDetection/Controller.php
@@ -14,10 +14,10 @@ use Piwik\Db;
use Piwik\Piwik;
use Piwik\Plugin\ControllerAdmin;
use Piwik\Plugins\DevicesDetection\Reports\GetBrand;
-use Piwik\Plugins\DevicesDetection\Reports\GetBrowserFamilies;
use Piwik\Plugins\DevicesDetection\Reports\GetBrowserEngines;
+use Piwik\Plugins\DevicesDetection\Reports\GetBrowsers;
use Piwik\Plugins\DevicesDetection\Reports\GetModel;
-use Piwik\Plugins\DevicesDetection\Reports\GetOsFamilies;
+use Piwik\Plugins\DevicesDetection\Reports\GetOsVersions;
use Piwik\Plugins\DevicesDetection\Reports\GetType;
use Piwik\View;
@@ -30,8 +30,8 @@ class Controller extends \Piwik\Plugin\Controller
$view->deviceTypes = $this->renderReport(new GetType());
$view->deviceBrands = $this->renderReport(new GetBrand());
$view->deviceModels = $this->renderReport(new GetModel());
- $view->osReport = $this->renderReport(new GetOsFamilies());
- $view->browserReport = $this->renderReport(new GetBrowserFamilies());
+ $view->osReport = $this->renderReport(new GetOsVersions());
+ $view->browserReport = $this->renderReport(new GetBrowsers());
$view->browserEngineReport = $this->renderReport(new GetBrowserEngines());
return $view->render();
}
@@ -53,14 +53,14 @@ class Controller extends \Piwik\Plugin\Controller
$view->browser_name = $uaParser->getClient('name');
$view->browser_short_name = $uaParser->getClient('short_name');
$view->browser_version = $uaParser->getClient('version');
- $view->browser_logo = getBrowserLogoExtended($uaParser->getClient('short_name'));
+ $view->browser_logo = getBrowserLogo($uaParser->getClient('short_name'));
$view->browser_family = \DeviceDetector\Parser\Client\Browser::getBrowserFamily($uaParser->getClient('short_name'));
- $view->browser_family_logo = getBrowserFamilyLogoExtended($view->browser_family);
+ $view->browser_family_logo = getBrowserFamilyLogo($view->browser_family);
$view->os_name = $uaParser->getOs('name');
- $view->os_logo = getOsLogoExtended($uaParser->getOs('short_name'));
+ $view->os_logo = getOsLogo($uaParser->getOs('short_name'));
$view->os_short_name = $uaParser->getOs('short_name');
$view->os_family = \DeviceDetector\Parser\OperatingSystem::getOsFamily($uaParser->getOs('short_name'));
- $view->os_family_logo = getOsFamilyLogoExtended($view->os_family);
+ $view->os_family_logo = getOsFamilyLogo($view->os_family);
$view->os_version = $uaParser->getOs('version');
$view->device_type = getDeviceTypeLabel($uaParser->getDeviceName());
$view->device_type_logo = getDeviceTypeLogo($uaParser->getDeviceName());
@@ -96,7 +96,7 @@ class Controller extends \Piwik\Plugin\Controller
$availableBrowsers = \DeviceDetector\Parser\Client\Browser::getAvailableBrowsers();
foreach ($availableBrowsers as $short => $name) {
- $list[$name] = getBrowserLogoExtended($short);
+ $list[$name] = getBrowserLogo($short);
}
break;
@@ -104,7 +104,7 @@ class Controller extends \Piwik\Plugin\Controller
$availableBrowserFamilies = \DeviceDetector\Parser\Client\Browser::getAvailableBrowserFamilies();
foreach ($availableBrowserFamilies as $name => $browsers) {
- $list[$name] = getBrowserFamilyLogoExtended($name);
+ $list[$name] = getBrowserFamilyLogo($name);
}
break;
@@ -112,7 +112,7 @@ class Controller extends \Piwik\Plugin\Controller
$availableOSs = \DeviceDetector\Parser\OperatingSystem::getAvailableOperatingSystems();
foreach ($availableOSs as $short => $name) {
- $list[$name] = getOsLogoExtended($short);
+ $list[$name] = getOsLogo($short);
}
break;
@@ -120,7 +120,7 @@ class Controller extends \Piwik\Plugin\Controller
$osFamilies = \DeviceDetector\Parser\OperatingSystem::getAvailableOperatingSystemFamilies();
foreach ($osFamilies as $name => $oss) {
- $list[$name] = getOsFamilyLogoExtended($name);
+ $list[$name] = getOsFamilyLogo($name);
}
break;
diff --git a/plugins/DevicesDetection/DevicesDetection.php b/plugins/DevicesDetection/DevicesDetection.php
index 004fc96721..312bca614f 100644
--- a/plugins/DevicesDetection/DevicesDetection.php
+++ b/plugins/DevicesDetection/DevicesDetection.php
@@ -49,13 +49,16 @@ class DevicesDetection extends \Piwik\Plugin
$instance = new Visitor($details);
$visitor['deviceType'] = $instance->getDeviceType();
+ $visitor['operatingSystem'] = $instance->getOperatingSystem();
+ $visitor['operatingSystemCode'] = $instance->getOperatingSystemCode();
+ $visitor['operatingSystemIcon'] = $instance->getOperatingSystemIcon();
$visitor['browserFamily'] = $instance->getBrowserEngine();
$visitor['browserFamilyDescription'] = $instance->getBrowserEngineDescription();
-
- if (!PluginManager::getInstance()->isPluginActivated('UserSettings')) {
- $instance = new UserSettings();
- $instance->extendVisitorDetails($visitor, $details);
- }
+ $visitor['browser'] = $instance->getBrowser();
+ $visitor['browserName'] = $instance->getBrowserName();
+ $visitor['browserIcon'] = $instance->getBrowserIcon();
+ $visitor['browserCode'] = $instance->getBrowserCode();
+ $visitor['browserVersion'] = $instance->getBrowserVersion();
}
}
diff --git a/plugins/DevicesDetection/Reports/GetBrowserVersions.php b/plugins/DevicesDetection/Reports/GetBrowserVersions.php
index 22105ff8ac..0e26223d30 100644
--- a/plugins/DevicesDetection/Reports/GetBrowserVersions.php
+++ b/plugins/DevicesDetection/Reports/GetBrowserVersions.php
@@ -18,23 +18,23 @@ class GetBrowserVersions extends Base
{
parent::init();
$this->dimension = new BrowserVersion();
- $this->name = Piwik::translate('DevicesDetection_BrowserVersions');
+ $this->name = Piwik::translate('DevicesDetection_BrowserVersion');
$this->documentation = ''; // TODO
- $this->order = 6;
- $this->widgetTitle = 'DevicesDetection_BrowserVersions';
+ $this->order = 2;
+ $this->widgetTitle = 'DevicesDetection_BrowserVersion';
}
public function configureView(ViewDataTable $view)
{
$view->config->show_search = false;
$view->config->show_exclude_low_population = false;
- $view->config->addTranslation('label', Piwik::translate("UserSettings_ColumnBrowserVersion"));
+ $view->config->addTranslation('label', $this->dimension->getName());
}
public function getRelatedReports()
{
return array(
- new GetBrowserFamilies()
+ new GetBrowsers()
);
}
}
diff --git a/plugins/DevicesDetection/Reports/GetBrowserFamilies.php b/plugins/DevicesDetection/Reports/GetBrowsers.php
index 0c2c5cd621..07be06d4ba 100644
--- a/plugins/DevicesDetection/Reports/GetBrowserFamilies.php
+++ b/plugins/DevicesDetection/Reports/GetBrowsers.php
@@ -12,16 +12,16 @@ use Piwik\Piwik;
use Piwik\Plugin\ViewDataTable;
use Piwik\Plugins\DevicesDetection\Columns\BrowserName;
-class GetBrowserFamilies extends Base
+class GetBrowsers extends Base
{
protected function init()
{
parent::init();
$this->dimension = new BrowserName();
- $this->name = Piwik::translate('UserSettings_BrowserFamilies');
- $this->documentation = ''; // TODO
- $this->order = 5;
- $this->widgetTitle = 'UserSettings_BrowserFamilies';
+ $this->name = Piwik::translate('UserSettings_WidgetBrowsers');
+ $this->documentation = Piwik::translate('UserSettings_WidgetBrowsersDocumentation', '<br />');
+ $this->order = 1;
+ $this->widgetTitle = 'UserSettings_WidgetBrowsers';
}
public function configureView(ViewDataTable $view)
@@ -29,7 +29,7 @@ class GetBrowserFamilies extends Base
$view->config->title = $this->name;
$view->config->show_search = false;
$view->config->show_exclude_low_population = false;
- $view->config->addTranslation('label', Piwik::translate("DevicesDetection_dataTableLabelBrowserFamily"));
+ $view->config->addTranslation('label', $this->dimension->getName());
}
public function getRelatedReports()
diff --git a/plugins/DevicesDetection/Reports/GetOsFamilies.php b/plugins/DevicesDetection/Reports/GetOsFamilies.php
index 703b42830e..5f9418f75e 100644
--- a/plugins/DevicesDetection/Reports/GetOsFamilies.php
+++ b/plugins/DevicesDetection/Reports/GetOsFamilies.php
@@ -29,7 +29,7 @@ class GetOsFamilies extends Base
$view->config->title = $this->name;
$view->config->show_search = false;
$view->config->show_exclude_low_population = false;
- $view->config->addTranslation('label', Piwik::translate("UserSettings_OperatingSystemFamily"));
+ $view->config->addTranslation('label', $this->dimension->getName());
}
public function getRelatedReports()
diff --git a/plugins/DevicesDetection/Visitor.php b/plugins/DevicesDetection/Visitor.php
index 478b76deea..aa5b16c2ae 100644
--- a/plugins/DevicesDetection/Visitor.php
+++ b/plugins/DevicesDetection/Visitor.php
@@ -24,6 +24,21 @@ class Visitor
return getDeviceTypeLabel($this->details['config_device_type']);
}
+ public function getOperatingSystemCode()
+ {
+ return $this->details['config_os'];
+ }
+
+ public function getOperatingSystem()
+ {
+ return getOsFullName($this->details['config_os']);
+ }
+
+ public function getOperatingSystemIcon()
+ {
+ return getOsLogo($this->details['config_os']);
+ }
+
public function getBrowserEngineDescription()
{
return getBrowserEngineName($this->getBrowserEngine());
@@ -33,4 +48,29 @@ class Visitor
{
return $this->details['config_browser_engine'];
}
+
+ public function getBrowserCode()
+ {
+ return $this->details['config_browser_name'];
+ }
+
+ public function getBrowserVersion()
+ {
+ return $this->details['config_browser_version'];
+ }
+
+ public function getBrowser()
+ {
+ return getBrowserNameWithVersion($this->details['config_browser_name'] . ";" . $this->details['config_browser_version']);
+ }
+
+ public function getBrowserName()
+ {
+ return getBrowserName($this->details['config_browser_name'] . ";" . $this->details['config_browser_version']);
+ }
+
+ public function getBrowserIcon()
+ {
+ return getBrowserLogo($this->details['config_browser_name'] . ";" . $this->details['config_browser_version']);
+ }
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/functions.php b/plugins/DevicesDetection/functions.php
index 12f18b19d1..d158253344 100644
--- a/plugins/DevicesDetection/functions.php
+++ b/plugins/DevicesDetection/functions.php
@@ -25,7 +25,7 @@ function getBrandLogo($label)
}
}
-function getBrowserFamilyFullNameExtended($label)
+function getBrowserFamilyFullName($label)
{
foreach (BrowserParser::getAvailableBrowserFamilies() as $name => $family) {
if (in_array($label, $family)) {
@@ -35,16 +35,16 @@ function getBrowserFamilyFullNameExtended($label)
return Piwik::translate('General_Unknown');
}
-function getBrowserFamilyLogoExtended($label)
+function getBrowserFamilyLogo($label)
{
$browserFamilies = BrowserParser::getAvailableBrowserFamilies();
if (!empty($label) && array_key_exists($label, $browserFamilies)) {
- return getBrowserLogoExtended($browserFamilies[$label][0]);
+ return getBrowserLogo($browserFamilies[$label][0]);
}
- return getBrowserLogoExtended($label);
+ return getBrowserLogo($label);
}
-function getBrowserNameExtended($label)
+function getBrowserNameWithVersion($label)
{
$short = substr($label, 0, 2);
$ver = substr($label, 3, 10);
@@ -56,6 +56,17 @@ function getBrowserNameExtended($label)
}
}
+function getBrowserName($label)
+{
+ $short = substr($label, 0, 2);
+ $browsers = BrowserParser::getAvailableBrowsers();
+ if (array_key_exists($short, $browsers)) {
+ return trim(ucfirst($browsers[$short]));
+ } else {
+ return Piwik::translate('General_Unknown');
+ }
+}
+
/**
* Returns the path to the logo for the given browser
*
@@ -67,7 +78,7 @@ function getBrowserNameExtended($label)
*
* @return string path to image
*/
-function getBrowserLogoExtended($short)
+function getBrowserLogo($short)
{
$path = 'plugins/UserSettings/images/browsers/%s.gif';
@@ -82,7 +93,7 @@ function getBrowserLogoExtended($short)
}
}
- $family = getBrowserFamilyFullNameExtended($short);
+ $family = getBrowserFamilyFullName($short);
$browserFamilies = BrowserParser::getAvailableBrowserFamilies();
@@ -173,28 +184,36 @@ function getModelName($label)
return $label;
}
-function getOSFamilyFullNameExtended($label)
+function getOSFamilyFullName($label)
{
if ($label == \Piwik\Tracker\Settings::OS_BOT) {
return 'Bot';
}
- $label = OperatingSystemParser::getOsFamily($label);
+ $label = OperatingSystemParser::getOsFamily(_mapLegacyOsShortCodes($label));
+
+ if ($label == 'unknown') {
+ $label = Piwik::translate('General_Unknown');
+ } else if ($label == 'Gaming Console') {
+ $label = Piwik::translate('UserSettings_GamingConsole');
+ }
+
if ($label !== false) {
return $label;
}
return Piwik::translate('General_Unknown');
}
-function getOsFamilyLogoExtended($label)
+function getOsFamilyLogo($label)
{
+ $label = _mapLegacyOsShortCodes($label);
$osFamilies = OperatingSystemParser::getAvailableOperatingSystemFamilies();
if (!empty($label) && array_key_exists($label, $osFamilies)) {
- return getOsLogoExtended($osFamilies[$label][0]);
+ return getOsLogo($osFamilies[$label][0]);
}
- return getOsLogoExtended($label);
+ return getOsLogo($label);
}
-function getOsFullNameExtended($label)
+function getOsFullName($label)
{
if (substr($label, 0, 3) == \Piwik\Tracker\Settings::OS_BOT) {
return 'Bot';
@@ -202,7 +221,7 @@ function getOsFullNameExtended($label)
if (!empty($label) && $label != ";") {
$os = substr($label, 0, 3);
$ver = substr($label, 4, 15);
- $name = OperatingSystemParser::getNameFromId($os, $ver);
+ $name = OperatingSystemParser::getNameFromId(_mapLegacyOsShortCodes($os), $ver);
if (!empty($name)) {
return $name;
}
@@ -210,21 +229,39 @@ function getOsFullNameExtended($label)
return Piwik::translate('General_Unknown');
}
+function _mapLegacyOsShortCodes($shortCode)
+{
+ $legacyShortCodes = array(
+ 'IPA' => 'IOS', // iPad => iOS
+ 'IPH' => 'IOS', // iPhone => iOS
+ 'IPD' => 'IOS', // iPod => iOS
+ 'WIU' => 'WII', // WiiU => Nintendo
+ '3DS' => 'NDS', // Nintendo 3DS => Nintendo Mobile
+ 'DSI' => 'NDS', // Nintendo DSi => Nintendo Mobile
+ 'PSV' => 'PSP', // PlayStation Vita => PlayStation Portable
+ 'MAE' => 'SMG', // Maemo => MeeGo
+ //'VMS' => '', // OpenVMS => ??
+ );
+ return array_key_exists($shortCode, $legacyShortCodes) ? $legacyShortCodes[$shortCode] : $shortCode;
+}
+
/**
* Returns the path to the logo for the given OS
*
* First try to find a logo for the given short code
* If none can be found try to find a logo for the os family
- * Return unkown logo otherwise
+ * Return unknown logo otherwise
*
* @param string $short Shortcode or name of OS
*
* @return string path to image
*/
-function getOsLogoExtended($short)
+function getOsLogo($short)
{
$path = 'plugins/UserSettings/images/os/%s.gif';
+ $short = _mapLegacyOsShortCodes($short);
+
// If name is given instead of short code, try to find matching shortcode
if (strlen($short) > 3) {
@@ -235,7 +272,7 @@ function getOsLogoExtended($short)
}
}
- $family = getOsFamilyFullNameExtended($short);
+ $family = getOSFamilyFullName($short);
$osFamilies = OperatingSystemParser::getAvailableOperatingSystemFamilies();
if (!empty($short) &&
diff --git a/plugins/DevicesDetection/lang/am.json b/plugins/DevicesDetection/lang/am.json
new file mode 100644
index 0000000000..a7169d53ea
--- /dev/null
+++ b/plugins/DevicesDetection/lang/am.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "የማሰሻ ቤተሰብ"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/ar.json b/plugins/DevicesDetection/lang/ar.json
new file mode 100644
index 0000000000..f2ee08d578
--- /dev/null
+++ b/plugins/DevicesDetection/lang/ar.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "عائلة المتصفح",
+ "BrowserVersion": "إصدار المتصفح"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/be.json b/plugins/DevicesDetection/lang/be.json
index 7d035a0368..93276a9c32 100644
--- a/plugins/DevicesDetection/lang/be.json
+++ b/plugins/DevicesDetection/lang/be.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Гэты графік паказвае браўзэры наведвальнікаў, разбітыя па сем'ях. %s Найбольш важная інфармацыю для вэб-распрацоўнікаў у тым, што я ны могуць даведацца аб тыпах вэб-рэндэрынгу сваіх наведвальнікаў. Пазнакі ўтрымліваюць імёны рухавікоў найбольш распаўсюджаныя адзначаныя ў браўзэрам дужках."
+ "BrowserEngineDocumentation": "Гэты графік паказвае браўзэры наведвальнікаў, разбітыя па сем'ях. %s Найбольш важная інфармацыю для вэб-распрацоўнікаў у тым, што я ны могуць даведацца аб тыпах вэб-рэндэрынгу сваіх наведвальнікаў. Пазнакі ўтрымліваюць імёны рухавікоў найбольш распаўсюджаныя адзначаныя ў браўзэрам дужках.",
+ "BrowserFamily": "Сямейства браўзэраў",
+ "BrowserVersion": "Версія браўзэра"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/bg.json b/plugins/DevicesDetection/lang/bg.json
index 1ba279dbc3..93ca777067 100644
--- a/plugins/DevicesDetection/lang/bg.json
+++ b/plugins/DevicesDetection/lang/bg.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Тази таблица показва браузърите на вашите потребители ,разделени по фамилии. %s Най-важната информация за уеб разработчиците е какъв тип технология за обработка са използвали посетителите. Етикета показва имената на технологиите, следвани от браузера, който е бил използван, поставен в скоби.",
+ "BrowserFamily": "Фамилия браузъри",
+ "BrowserVersion": "Версия на браузъра",
"BrowserVersions": "Версии на браузъра",
"Camera": "Камера",
"CarBrowser": "Браузър, който се използва в кола",
"Console": "Конзола",
"dataTableLabelBrands": "Марка",
- "dataTableLabelBrowserFamily": "Вид браузър",
"dataTableLabelModels": "Модел",
"dataTableLabelSystemVersion": "Версия на операционната система",
"dataTableLabelTypes": "Тип",
diff --git a/plugins/DevicesDetection/lang/ca.json b/plugins/DevicesDetection/lang/ca.json
index ad7abf4e77..9899fffa9d 100644
--- a/plugins/DevicesDetection/lang/ca.json
+++ b/plugins/DevicesDetection/lang/ca.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Aquest gràfic mostra els navegadors dels vostres visitants dividits en famílies. %s La informació més important per als desenvolupadors web es quin tipus de sistema de renderització estan utilitzant els seus visitants. Les etiquetiquetes contenen els noms dels sistemes, seguit pel navegador més comú utilitzant aquest sistema."
+ "BrowserEngineDocumentation": "Aquest gràfic mostra els navegadors dels vostres visitants dividits en famílies. %s La informació més important per als desenvolupadors web es quin tipus de sistema de renderització estan utilitzant els seus visitants. Les etiquetiquetes contenen els noms dels sistemes, seguit pel navegador més comú utilitzant aquest sistema.",
+ "BrowserFamily": "Família del navegador",
+ "BrowserVersion": "Versió del navegador"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/cs.json b/plugins/DevicesDetection/lang/cs.json
index 9214d12406..141c763064 100644
--- a/plugins/DevicesDetection/lang/cs.json
+++ b/plugins/DevicesDetection/lang/cs.json
@@ -3,12 +3,13 @@
"BrowserEngine": "Vykreslovací jádro",
"BrowserEngineDocumentation": "Tento graf zobrazuje prohlížeče vašich návštěvníků odle prodin prohlížečů. %s Nejdůležitější informací pro webové vývojáře je to, jaká vykreslovací jádra návštěvníci používají. Název vykreslovacího jádra je v popisku následován v závorkách nejčastějším prohlížečem, který ho používá.",
"BrowserEngines": "Vykreslovací jádra",
+ "BrowserFamily": "Rodina Web prohlížeče",
+ "BrowserVersion": "Verze prohlížeče",
"BrowserVersions": "Verze prohlížečů",
"Camera": "Fotoaparát",
"CarBrowser": "Prohlížeč v autě",
"Console": "Konzole",
"dataTableLabelBrands": "Značka",
- "dataTableLabelBrowserFamily": "Rodina prohlížečů",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Verze operačního systému",
"dataTableLabelTypes": "Typ",
diff --git a/plugins/DevicesDetection/lang/da.json b/plugins/DevicesDetection/lang/da.json
index 31ec5a967b..6a61ff9696 100644
--- a/plugins/DevicesDetection/lang/da.json
+++ b/plugins/DevicesDetection/lang/da.json
@@ -2,12 +2,14 @@
"DevicesDetection": {
"BrowserEngine": "Browser",
"BrowserEngineDocumentation": "Diagrammet viser de besøgendes browsere opdelt i grupper. %s De vigtigste oplysninger for web-udviklere er, hvilken slags rendering motor de besøgende bruger. Etiketterne indeholder navnene på motorerne, efterfulgt af de mest almindelige browsere, der benytter motoren i parentes.",
+ "BrowserEngines": "Browser",
+ "BrowserFamily": "Browsertype",
+ "BrowserVersion": "Browserversion",
"BrowserVersions": "Browser-versioner",
"Camera": "Kamera",
"CarBrowser": "Bil browser",
"Console": "Konsol",
"dataTableLabelBrands": "Mærke",
- "dataTableLabelBrowserFamily": "Browser familie",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Operativsystem-version",
"dataTableLabelTypes": "Type",
diff --git a/plugins/DevicesDetection/lang/de.json b/plugins/DevicesDetection/lang/de.json
index 9dfc5b547b..f9ef47bda5 100644
--- a/plugins/DevicesDetection/lang/de.json
+++ b/plugins/DevicesDetection/lang/de.json
@@ -3,12 +3,13 @@
"BrowserEngine": "Browser",
"BrowserEngineDocumentation": "Dieser Graph zeit Ihnen die Browser Ihrer Besucher aufgeteilt nach Browserfamilien. %s Die wichtigste Information für Webentwickler ist, welche Rendering Engine Besucher verwenden. Die Beschriftungen enthalten den Namen der Engine und in Klammern den Namen des bekanntesten Browsers, der diese verwendet.",
"BrowserEngines": "Browser",
+ "BrowserFamily": "Browserfamilie",
+ "BrowserVersion": "Browserversion",
"BrowserVersions": "Browser Versionen",
"Camera": "Digitalcamera",
"CarBrowser": "PKW-Browser",
"Console": "Konsole",
"dataTableLabelBrands": "Marke",
- "dataTableLabelBrowserFamily": "Browser Familie",
"dataTableLabelModels": "Modell",
"dataTableLabelSystemVersion": "Betriebssystem Version",
"dataTableLabelTypes": "Typ",
diff --git a/plugins/DevicesDetection/lang/el.json b/plugins/DevicesDetection/lang/el.json
index 14ab980463..49cfa717cf 100644
--- a/plugins/DevicesDetection/lang/el.json
+++ b/plugins/DevicesDetection/lang/el.json
@@ -3,12 +3,13 @@
"BrowserEngine": "Μηχανή προγράμματος πλοήγησης",
"BrowserEngineDocumentation": "Αυτό το διάγραμμα δείχνει τους φυλλομετρητές των επισκεπτών σε οικογένειες φυλλομετρητών. %s Η πιο σημαντική πληροφορία για τους δημιουργούς ιστοσελίδων είναι οι μηχανές μετάφρασης που χρησιμοποιούν οι επισκέπτες. Οι ετικέτες περιέχουν τα ονόματα των μηχανών και σε εισαγωγικά τον πιο κοινό φυλλομετρητή που τη χρησιμοποιεί.",
"BrowserEngines": "Μηχανές προγράμματος πλοήγησης",
+ "BrowserFamily": "Οικογένεια φυλλομετρητών",
+ "BrowserVersion": "Έκδοση φυλλομετρητή",
"BrowserVersions": "Εκδόσεις προγραμμάτων περιήγησης",
"Camera": "Κάμερα",
"CarBrowser": "Πρόγραμμα περιήγησης αυτοκινήτου",
"Console": "Κονσόλα",
"dataTableLabelBrands": "Μάρκα",
- "dataTableLabelBrowserFamily": "Οικογένεια προγράμματος περιήγησης",
"dataTableLabelModels": "Μοντέλο",
"dataTableLabelSystemVersion": "Έκδοση λειτουργικού συστήματος",
"dataTableLabelTypes": "Τύπος",
diff --git a/plugins/DevicesDetection/lang/en.json b/plugins/DevicesDetection/lang/en.json
index aa3ac99081..1a1a4ec72a 100644
--- a/plugins/DevicesDetection/lang/en.json
+++ b/plugins/DevicesDetection/lang/en.json
@@ -4,11 +4,12 @@
"BrowserEngine": "Browser engine",
"BrowserEngines": "Browser engines",
"BrowserEngineDocumentation": "This report shows your visitors' browsers broken down into browser eninges. %s 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.",
+ "BrowserFamily": "Browser family",
+ "BrowserVersion": "Browser version",
"Camera": "Camera",
"CarBrowser": "Car browser",
"Console": "Console",
"dataTableLabelBrands": "Brand",
- "dataTableLabelBrowserFamily": "Browser family",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Operating System version",
"dataTableLabelTypes": "Type",
diff --git a/plugins/DevicesDetection/lang/es.json b/plugins/DevicesDetection/lang/es.json
index 552c637a5e..aaa2dce225 100644
--- a/plugins/DevicesDetection/lang/es.json
+++ b/plugins/DevicesDetection/lang/es.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Este cuadro muestra los navegadores de internet de los visitantes divididos en sus respectivas familias. %s La información más importante para los desarrolladores de sitios de internet es conocer que motor de interpretador están utilizando los visitantes. Los rótulos contienen los nombres de los motores seguidos por el navegador más usual utilizando dicho motor entre corchetes.",
+ "BrowserFamily": "Buscadores por familia",
+ "BrowserVersion": "Versión del navegador",
"BrowserVersions": "Versiones de navegadores",
"Camera": "Cámara",
"CarBrowser": "Navegador para coche",
"Console": "Consola",
"dataTableLabelBrands": "Marca",
- "dataTableLabelBrowserFamily": "Familia de navegadores",
"dataTableLabelModels": "Modelo",
"dataTableLabelSystemVersion": "Versión del sistema operativo",
"dataTableLabelTypes": "Tipo",
diff --git a/plugins/DevicesDetection/lang/et.json b/plugins/DevicesDetection/lang/et.json
index 78b60385f1..d131d98ea5 100644
--- a/plugins/DevicesDetection/lang/et.json
+++ b/plugins/DevicesDetection/lang/et.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
+ "BrowserFamily": "Sirvija tüüp",
+ "BrowserVersion": "Sirvija versioon",
"BrowserVersions": "Brauseri versioonid",
"Camera": "Kaamera",
"CarBrowser": "Sõiduki sirvik",
"Console": "Konsool",
"dataTableLabelBrands": "Bränd",
- "dataTableLabelBrowserFamily": "Sirvija tüüp",
"dataTableLabelModels": "Mudel",
"dataTableLabelSystemVersion": "Operatsioonisüsteemi versioon",
"dataTableLabelTypes": "Tüüp",
diff --git a/plugins/DevicesDetection/lang/eu.json b/plugins/DevicesDetection/lang/eu.json
new file mode 100644
index 0000000000..41eb078bc1
--- /dev/null
+++ b/plugins/DevicesDetection/lang/eu.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Nabigatzaile-familia"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/fa.json b/plugins/DevicesDetection/lang/fa.json
index abcc556df0..6609ec040a 100644
--- a/plugins/DevicesDetection/lang/fa.json
+++ b/plugins/DevicesDetection/lang/fa.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
+ "BrowserFamily": "خانواده مرورگر",
+ "BrowserVersion": "نسخه مرورگر",
"BrowserVersions": "نسخه مرورگر",
"Camera": "دوربین",
"CarBrowser": "مرورگر خودرو",
"Console": "کنسول",
"dataTableLabelBrands": "مارک",
- "dataTableLabelBrowserFamily": "خانواده مرورگر",
"dataTableLabelModels": "مدل",
"dataTableLabelSystemVersion": "نسخه سیستم عامل",
"dataTableLabelTypes": "نوع",
diff --git a/plugins/DevicesDetection/lang/fi.json b/plugins/DevicesDetection/lang/fi.json
index adc38bf808..a560aaaa1f 100644
--- a/plugins/DevicesDetection/lang/fi.json
+++ b/plugins/DevicesDetection/lang/fi.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Tämä kuvaaja näyttää käyttäjien selaimen nimen mukaan. %s Tärkein tieto verkkosivun kehittäjille on käyttäjien selaimen taustajärjestelmä. Taustajärjestelmä löytyy hakasuluissa nimen perästä.",
+ "BrowserFamily": "Selainperhe",
+ "BrowserVersion": "Selaimen versio",
"BrowserVersions": "Selainversiot",
"Camera": "Kamera",
"CarBrowser": "Auton selain",
"Console": "Konsoli",
"dataTableLabelBrands": "Merkki",
- "dataTableLabelBrowserFamily": "Selainperhe",
"dataTableLabelModels": "Malli",
"dataTableLabelSystemVersion": "Käyttöjärjestelmäversio",
"dataTableLabelTypes": "Tyyppi",
diff --git a/plugins/DevicesDetection/lang/fr.json b/plugins/DevicesDetection/lang/fr.json
index b3cafa684c..5ae5b3a04d 100644
--- a/plugins/DevicesDetection/lang/fr.json
+++ b/plugins/DevicesDetection/lang/fr.json
@@ -3,12 +3,13 @@
"BrowserEngine": "Moteur de rendu HTML",
"BrowserEngineDocumentation": "Ce tableau affiche les navigateurs de vos visiteurs regroupés par famille. %s L'information la plus importante pour les développeurs est quel type de moteur de rendu utilisent leurs visiteurs. Les labels contiennent les noms des moteurs suivis par les principaux navigateurs les utilisant entre parenthèses.",
"BrowserEngines": "Moteurs de rendu HTML",
+ "BrowserFamily": "Famille de navigateurs",
+ "BrowserVersion": "Version du navigateur",
"BrowserVersions": "Versions du navigateur",
"Camera": "Caméra",
"CarBrowser": "Navigateur de voiture",
"Console": "Console",
"dataTableLabelBrands": "Marque",
- "dataTableLabelBrowserFamily": "Famille de navigateurs",
"dataTableLabelModels": "Modèle",
"dataTableLabelSystemVersion": "Version du système d'exploitation",
"dataTableLabelTypes": "Type",
diff --git a/plugins/DevicesDetection/lang/he.json b/plugins/DevicesDetection/lang/he.json
new file mode 100644
index 0000000000..b5f17abc6d
--- /dev/null
+++ b/plugins/DevicesDetection/lang/he.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "משפחת דפדפן",
+ "BrowserVersion": "גרסת דפדפן"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/hi.json b/plugins/DevicesDetection/lang/hi.json
new file mode 100644
index 0000000000..3aec36c3b7
--- /dev/null
+++ b/plugins/DevicesDetection/lang/hi.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "ब्राउज़र परिवार",
+ "BrowserVersion": "ब्राउज़र संस्करण"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/hr.json b/plugins/DevicesDetection/lang/hr.json
new file mode 100644
index 0000000000..fe10ffccb5
--- /dev/null
+++ b/plugins/DevicesDetection/lang/hr.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserVersion": "Verzija pretraživača"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/hu.json b/plugins/DevicesDetection/lang/hu.json
new file mode 100644
index 0000000000..f6378de77d
--- /dev/null
+++ b/plugins/DevicesDetection/lang/hu.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Böngészőcsalád"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/id.json b/plugins/DevicesDetection/lang/id.json
index 8068309b74..ca1554bc9f 100644
--- a/plugins/DevicesDetection/lang/id.json
+++ b/plugins/DevicesDetection/lang/id.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Bagan ini menampilkan peramban pengunjung Anda yang dipecah menjadi keluarga peramban. %s Informasi terpenting untuk pengembang ramatraya adalah jenis mesin pembuat yang pengunung gunakan. Etiket mengandung nama mesin diikuti dengan peramban yang umum menggunakan mesin tersebut dalam tanda kurung."
+ "BrowserEngineDocumentation": "Bagan ini menampilkan peramban pengunjung Anda yang dipecah menjadi keluarga peramban. %s Informasi terpenting untuk pengembang ramatraya adalah jenis mesin pembuat yang pengunung gunakan. Etiket mengandung nama mesin diikuti dengan peramban yang umum menggunakan mesin tersebut dalam tanda kurung.",
+ "BrowserFamily": "Keluarga Peramban",
+ "BrowserVersion": "Versi Perambang"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/is.json b/plugins/DevicesDetection/lang/is.json
new file mode 100644
index 0000000000..b3abd31ab3
--- /dev/null
+++ b/plugins/DevicesDetection/lang/is.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Vafrafjölskylda"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/it.json b/plugins/DevicesDetection/lang/it.json
index 59c1660d8b..d40bccc090 100644
--- a/plugins/DevicesDetection/lang/it.json
+++ b/plugins/DevicesDetection/lang/it.json
@@ -3,12 +3,13 @@
"BrowserEngine": "Motore browser",
"BrowserEngineDocumentation": "Questo grafico mostra i browser dei vostri visitatori suddivisi in famiglie di browser. %s Le informazioni più importanti per gli sviluppatori web sono che tipo di motore di rendering i loro visitatori stanno usando. Le etichette contengono i nomi dei motori seguiti dal browser più comune che utilizza quel motore tra parentesi.",
"BrowserEngines": "Motori browser",
+ "BrowserFamily": "Famiglia del Browser",
+ "BrowserVersion": "Versione del browser",
"BrowserVersions": "Versioni browser",
"Camera": "Fotocamera",
"CarBrowser": "Browser in auto",
"Console": "Console",
"dataTableLabelBrands": "Marca",
- "dataTableLabelBrowserFamily": "Famiglia browser",
"dataTableLabelModels": "Modello",
"dataTableLabelSystemVersion": "Versione Sistema Operativo",
"dataTableLabelTypes": "Tipo",
diff --git a/plugins/DevicesDetection/lang/ja.json b/plugins/DevicesDetection/lang/ja.json
index 75fd4160c4..72438b2e1f 100644
--- a/plugins/DevicesDetection/lang/ja.json
+++ b/plugins/DevicesDetection/lang/ja.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "このチャートは、ビジターのブラウザをブラウザファミリー別に表示します。 %s Web開発者にとって最も重要な情報は、ビジターが使用しているレンダリングエンジンの種類です。ラベルはエンジンの名前で、括弧内にそのエンジンを使う最も一般的なブラウザ名を表示しています。",
+ "BrowserFamily": "ブラウザファミリー",
+ "BrowserVersion": "ブラウザのバージョン",
"BrowserVersions": "ブラウザのバージョン",
"Camera": "カメラ",
"CarBrowser": "車載ブラウザ",
"Console": "コンソール",
"dataTableLabelBrands": "ブランド",
- "dataTableLabelBrowserFamily": "ブラウザファミリー",
"dataTableLabelModels": "モデル",
"dataTableLabelSystemVersion": "オペレーティングシステムのバージョン",
"dataTableLabelTypes": "タイプ",
diff --git a/plugins/DevicesDetection/lang/ka.json b/plugins/DevicesDetection/lang/ka.json
new file mode 100644
index 0000000000..23c637a318
--- /dev/null
+++ b/plugins/DevicesDetection/lang/ka.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "ბრაუზერის ოჯახი"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/ko.json b/plugins/DevicesDetection/lang/ko.json
index 76ef4ee6fd..b029b5c279 100644
--- a/plugins/DevicesDetection/lang/ko.json
+++ b/plugins/DevicesDetection/lang/ko.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "이 차트는 방문자의 브라우저를 제품군별로 표시합니다. %s 웹개발자에게 가장 중요한 정보는 사용자의 렌더링 엔진 종류입니다. 엔진의 이름과 괄호 안에 일반적인 해당 브라우저 이름을 표시하고 있습니다."
+ "BrowserEngineDocumentation": "이 차트는 방문자의 브라우저를 제품군별로 표시합니다. %s 웹개발자에게 가장 중요한 정보는 사용자의 렌더링 엔진 종류입니다. 엔진의 이름과 괄호 안에 일반적인 해당 브라우저 이름을 표시하고 있습니다.",
+ "BrowserFamily": "브라우저 타입",
+ "BrowserVersion": "브라우저 버전"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/lt.json b/plugins/DevicesDetection/lang/lt.json
new file mode 100644
index 0000000000..ce2c7bc397
--- /dev/null
+++ b/plugins/DevicesDetection/lang/lt.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Naršyklių šeimos",
+ "BrowserVersion": "Naršyklės versija"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/lv.json b/plugins/DevicesDetection/lang/lv.json
index df2043b4dc..b35fbb34f6 100644
--- a/plugins/DevicesDetection/lang/lv.json
+++ b/plugins/DevicesDetection/lang/lv.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Šis grafiks rāda apmeklētāju pārlūkus izdalītus pa pārlūku ģimenēm. %s Vissvarīgākā informācija tīkla izstrādātājiem ir kādu atveidojuma dzinēju apmeklētāji izmanto. Etiķetes satur dzinēju nosaukumus, kuriem seko visbiežāk izmantotie dzinēji."
+ "BrowserEngineDocumentation": "Šis grafiks rāda apmeklētāju pārlūkus izdalītus pa pārlūku ģimenēm. %s Vissvarīgākā informācija tīkla izstrādātājiem ir kādu atveidojuma dzinēju apmeklētāji izmanto. Etiķetes satur dzinēju nosaukumus, kuriem seko visbiežāk izmantotie dzinēji.",
+ "BrowserFamily": "Pārlūku ģimene",
+ "BrowserVersion": "Pārlūka versija"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/nb.json b/plugins/DevicesDetection/lang/nb.json
index 02f7219347..ecf797ebfd 100644
--- a/plugins/DevicesDetection/lang/nb.json
+++ b/plugins/DevicesDetection/lang/nb.json
@@ -1,8 +1,9 @@
{
"DevicesDetection": {
+ "BrowserFamily": "Nettleserfamilie",
+ "BrowserVersion": "Nettleserversjon",
"BrowserVersions": "Nettleser-versjoner",
"Camera": "Kamera",
- "dataTableLabelBrowserFamily": "Nettleserfamilie",
"dataTableLabelModels": "Modell",
"Device": "Enhet",
"Smartphone": "Smarttelefon",
diff --git a/plugins/DevicesDetection/lang/nl.json b/plugins/DevicesDetection/lang/nl.json
index a21854d0ad..97b7df0ef6 100644
--- a/plugins/DevicesDetection/lang/nl.json
+++ b/plugins/DevicesDetection/lang/nl.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Deze grafiek toont de browsers van uw bezoekers, verdeeld in browserfamilies. %s De belangrijkste informatie voor webontwikkelaars is wat voor soort renderingengine hun bezoekers gebruiken. De labels bevatten de namen van de engines, gevolgd door de meest voorkomende browsers (tussen haakjes) die deze engine gebruiken.",
+ "BrowserFamily": "Browser per Type",
+ "BrowserVersion": "Browserversie",
"BrowserVersions": "Browser versies",
"Camera": "Fototoestel",
"CarBrowser": "Auto browser",
"Console": "Console",
"dataTableLabelBrands": "Merk",
- "dataTableLabelBrowserFamily": "Browser familie",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Besturingssysteem versie",
"dataTableLabelTypes": "Type",
diff --git a/plugins/DevicesDetection/lang/nn.json b/plugins/DevicesDetection/lang/nn.json
new file mode 100644
index 0000000000..d4ad69e659
--- /dev/null
+++ b/plugins/DevicesDetection/lang/nn.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Nettlesarfamilar"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/pl.json b/plugins/DevicesDetection/lang/pl.json
index 38990dec54..4c3f24ff2a 100644
--- a/plugins/DevicesDetection/lang/pl.json
+++ b/plugins/DevicesDetection/lang/pl.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
+ "BrowserFamily": "Rodzina przeglądarek",
+ "BrowserVersion": "Wersja przeglądarki",
"BrowserVersions": "Wersje przeglądarek",
"Camera": "Aparat fotograficzny",
"CarBrowser": "Przeglądarka samochodowa",
"Console": "Konsola",
"dataTableLabelBrands": "Marka",
- "dataTableLabelBrowserFamily": "Rodzina przeglądarki",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Wersja systemu operacyjnego",
"dataTableLabelTypes": "Typ",
diff --git a/plugins/DevicesDetection/lang/pt-br.json b/plugins/DevicesDetection/lang/pt-br.json
index 9db7809ab4..05d782e027 100644
--- a/plugins/DevicesDetection/lang/pt-br.json
+++ b/plugins/DevicesDetection/lang/pt-br.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Este gráfico mostra os navegadores dos seus visitantes divididos em famílias de navegadores. %s A informação mais importante para os desenvolvedores web é o tipo de motor de renderização que seus visitantes estão usando. As etiquetas contêm os nomes dos motores seguido pelo navegador mais comum usando esse motor entre parênteses.",
+ "BrowserFamily": "Família do Navegador",
+ "BrowserVersion": "Versão do Browser",
"BrowserVersions": "Versões de navegadores",
"Camera": "Câmera",
"Console": "Console",
"dataTableLabelBrands": "Marca",
- "dataTableLabelBrowserFamily": "Família de navegadores",
"dataTableLabelModels": "Modelo",
"dataTableLabelSystemVersion": "Versão do Sistema Operacional",
"dataTableLabelTypes": "Tipo",
diff --git a/plugins/DevicesDetection/lang/pt.json b/plugins/DevicesDetection/lang/pt.json
index 24aff2602c..d9d9ffd92f 100644
--- a/plugins/DevicesDetection/lang/pt.json
+++ b/plugins/DevicesDetection/lang/pt.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Este gráfico mostra os navegadores dos seus visitantes dividido em famílias. %s A informação mais importante para os programadores web é o tipo de motor de renderização que os seus visitantes estão usando. As etiquetas contêm os nomes dos motores seguido pelo navegador mais comum que usa esse motor entre parênteses."
+ "BrowserEngineDocumentation": "Este gráfico mostra os navegadores dos seus visitantes dividido em famílias. %s A informação mais importante para os programadores web é o tipo de motor de renderização que os seus visitantes estão usando. As etiquetas contêm os nomes dos motores seguido pelo navegador mais comum que usa esse motor entre parênteses.",
+ "BrowserFamily": "Família de navegadores",
+ "BrowserVersion": "Versão do Navegador"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/ro.json b/plugins/DevicesDetection/lang/ro.json
index 6f1d541750..66e3981f5e 100644
--- a/plugins/DevicesDetection/lang/ro.json
+++ b/plugins/DevicesDetection/lang/ro.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Acest grafic arată browserele vizitatorilor dvs. defalcate în familii browser. %s Cele mai importante informații pentru dezvoltatori web este ce fel de motor de cautare au utilizat vizitatorii lor . Etichetele conțin numele motoarelor urmate de cele mai comune browsere folosind motorul în paranteze.",
+ "BrowserFamily": "Browser după familie",
+ "BrowserVersion": "Versiunea browser-ului",
"BrowserVersions": "Versiunile browserului",
"Camera": "Camera",
"CarBrowser": "Browser de masina",
"Console": "Consola",
"dataTableLabelBrands": "Brand",
- "dataTableLabelBrowserFamily": "Familia browserului",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Versiunea Sistemului de Operare",
"dataTableLabelTypes": "Tip",
diff --git a/plugins/DevicesDetection/lang/ru.json b/plugins/DevicesDetection/lang/ru.json
index d4d3ffd3b7..52aa6da25c 100644
--- a/plugins/DevicesDetection/lang/ru.json
+++ b/plugins/DevicesDetection/lang/ru.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Этот график показывается информацию о браузерах посетителей, разбитую по типу семейства. %s Наиболее важная информация для веб-разработчиков - на каком движке работают браузеры посетителей. Значки содержат имя движка в зависимости от наиболее популярного браузера, который работает на этом движке.",
+ "BrowserFamily": "Семейство браузеров",
+ "BrowserVersion": "Версия браузера",
"BrowserVersions": "Версии браузеров",
"CarBrowser": "Автомобильный браузер",
"Console": "Консоль",
"dataTableLabelBrands": "Фирма-производитель",
- "dataTableLabelBrowserFamily": "Семейство браузеров",
"dataTableLabelModels": "Модель",
"dataTableLabelSystemVersion": "Версия операционной системы",
"dataTableLabelTypes": "Тип",
diff --git a/plugins/DevicesDetection/lang/sk.json b/plugins/DevicesDetection/lang/sk.json
new file mode 100644
index 0000000000..742e2162fa
--- /dev/null
+++ b/plugins/DevicesDetection/lang/sk.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Rodina prehliadača"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/sl.json b/plugins/DevicesDetection/lang/sl.json
new file mode 100644
index 0000000000..5e1996f207
--- /dev/null
+++ b/plugins/DevicesDetection/lang/sl.json
@@ -0,0 +1,13 @@
+{
+ "DevicesDetection": {
+ "BrowserEngines": "Pogoni brskalnikov",
+ "BrowserFamily": "Družina brskalnika",
+ "BrowserVersion": "Različica brskalnika",
+ "DeviceBrand": "Znamka naprave",
+ "DeviceModel": "Model naprave",
+ "DevicesDetection": "Naprave obiskovalcev",
+ "DeviceType": "Tip naprave",
+ "OperatingSystemFamilies": "Družine operacijskih sistemov",
+ "submenu": "Naprave"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/sq.json b/plugins/DevicesDetection/lang/sq.json
index cbc64bf1b8..a76339d249 100644
--- a/plugins/DevicesDetection/lang/sq.json
+++ b/plugins/DevicesDetection/lang/sq.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Ky grafik tregon shfletuesit e vizitorëve tuaj, grupuar sipas familjesh shfletuesish. %s Informacioni më i rëndësishëm për programuesit web është lloji i mekanizmit vizatues që përdor shfletuesi. Etiketat përmbajnë emrat e mekanizmave, pasuar në kllapa nga shfletuesit më të zakonshëm që përdorin secilin prej tyre."
+ "BrowserEngineDocumentation": "Ky grafik tregon shfletuesit e vizitorëve tuaj, grupuar sipas familjesh shfletuesish. %s Informacioni më i rëndësishëm për programuesit web është lloji i mekanizmit vizatues që përdor shfletuesi. Etiketat përmbajnë emrat e mekanizmave, pasuar në kllapa nga shfletuesit më të zakonshëm që përdorin secilin prej tyre.",
+ "BrowserFamily": "Familje shfletuesi",
+ "BrowserVersion": "Version shfletuesi"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/sr.json b/plugins/DevicesDetection/lang/sr.json
index 41802c9cc7..3722cec91e 100644
--- a/plugins/DevicesDetection/lang/sr.json
+++ b/plugins/DevicesDetection/lang/sr.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Ovaj grafikon prikazuje brauzere vaših posetilaca po porodicama. %s Najvažnija informacija za web dizajnere je koju vrstu endžina koriste njihovi posetioci. Naptisi sadrže imena endžina a u zagradi je najčešća lista brauzera koji koriste taj endžin.",
+ "BrowserFamily": "Porodica brauzera",
+ "BrowserVersion": "Verzija brauzera",
"BrowserVersions": "Verzije pretraživača",
"Camera": "Kamera",
"CarBrowser": "Pretraživač za auto",
"Console": "Konzola",
"dataTableLabelBrands": "Marka",
- "dataTableLabelBrowserFamily": "Porodica brauzera",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "Verzija operativnog sistema",
"dataTableLabelTypes": "Tip",
diff --git a/plugins/DevicesDetection/lang/sv.json b/plugins/DevicesDetection/lang/sv.json
index 7ee9733104..e7d517f843 100644
--- a/plugins/DevicesDetection/lang/sv.json
+++ b/plugins/DevicesDetection/lang/sv.json
@@ -1,12 +1,13 @@
{
"DevicesDetection": {
"BrowserEngineDocumentation": "Detta diagram visar besökarnas webbläsare delas upp i webbläsarfamiljer. %s Den viktigaste informationen för webbutvecklare är vilken typ av renderingsmotorn deras besökare använder. Etiketterna innehåller namnen på de motorer som följt av den vanligaste webbläsaren med den motorn inom parentes.",
+ "BrowserFamily": "Webbläsarfamilj",
+ "BrowserVersion": "Webbläsarversion",
"BrowserVersions": "Version av webbläsare",
"Camera": "Kamera",
"CarBrowser": "Car browser",
"Console": "Konsol",
"dataTableLabelBrands": "Märke",
- "dataTableLabelBrowserFamily": "Webbläsare familj",
"dataTableLabelModels": "Modell",
"dataTableLabelSystemVersion": "Hanterar Systemets version",
"dataTableLabelTypes": "Sort",
diff --git a/plugins/DevicesDetection/lang/te.json b/plugins/DevicesDetection/lang/te.json
new file mode 100644
index 0000000000..ff2cbe1e9e
--- /dev/null
+++ b/plugins/DevicesDetection/lang/te.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "విహారిణి కుటుంబం",
+ "BrowserVersion": "విహారిణి సంచిక"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/th.json b/plugins/DevicesDetection/lang/th.json
new file mode 100644
index 0000000000..f498d40013
--- /dev/null
+++ b/plugins/DevicesDetection/lang/th.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "ตระกูลของเบราว์เซอร์",
+ "BrowserVersion": "รุ่นของโปรแกรมบราวเซอร์"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/tl.json b/plugins/DevicesDetection/lang/tl.json
new file mode 100644
index 0000000000..a67445367a
--- /dev/null
+++ b/plugins/DevicesDetection/lang/tl.json
@@ -0,0 +1,31 @@
+{
+ "DevicesDetection": {
+ "BrowserEngineDocumentation": "Ipinapakita ng chart na ito ang magkaka hiwa-hiwalay na pamilya ng browser na gamit ng iyong bisita. %s Ang pinakamahalagang impormasyon na kinakailangan ng web developers ay kung anong klaseng rendering engine ang ginagamit ng bisita. Ang mga label ay naglalaman ng mga pangalan ng mga engines na sinusundan ng mga pang-karaniwang browser na gumagamit ng parehas na engine alinsunod sa mga sumusunod na nasa brackets.",
+ "BrowserFamily": "Pamilya ng browser",
+ "BrowserVersion": "bersyon ng browser",
+ "BrowserVersions": "mga bersyon ng browser",
+ "Camera": "Camera",
+ "CarBrowser": "Car browser",
+ "Console": "Console",
+ "dataTableLabelBrands": "Tatak",
+ "dataTableLabelModels": "Modelo",
+ "dataTableLabelSystemVersion": "Bersyon ng Operating System",
+ "dataTableLabelTypes": "Uri",
+ "Device": "Aparato",
+ "DeviceBrand": "Brand ng device",
+ "DeviceDetection": "Pag detect ng device",
+ "DeviceModel": "Modelo ng device",
+ "DevicesDetection": "Device ng Bisita",
+ "DeviceType": "Uri ng device",
+ "FeaturePhone": "Feature phone",
+ "OperatingSystemFamilies": "Mga pamilya ng Operating System",
+ "OperatingSystemVersions": "Mga bersyon ng Operating System",
+ "PluginDescription": "Ang plugin na ito ay nagbibigay ng malawak na impormasyon tungkol sa mga mobile devices. tulad ng Brand (tagagawa) Model (device version) mas mahusay na uri ng device (tv consoles smart phones atbp) at higit pa. Ang Plugin na ito ay nagdadagdag ng isang bagong ulat sa 'Mga Bisita> Mga Device'.",
+ "SmartDisplay": "Smart display",
+ "Smartphone": "Smartphone",
+ "submenu": "Mga Device",
+ "Tablet": "Tableta",
+ "TV": "Tv",
+ "UserAgent": "User-Agent"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/tr.json b/plugins/DevicesDetection/lang/tr.json
index 835981aa3b..4b08e2906a 100644
--- a/plugins/DevicesDetection/lang/tr.json
+++ b/plugins/DevicesDetection/lang/tr.json
@@ -1,11 +1,12 @@
{
"DevicesDetection": {
+ "BrowserFamily": "Tarayıcı ailesi",
+ "BrowserVersion": "Tarayıcı sürümü",
"BrowserVersions": "Tarayıcı versiyonları",
"Camera": "Kamera",
"CarBrowser": "Araba tarayıcısı",
"Console": "Konsol",
"dataTableLabelBrands": "Marka",
- "dataTableLabelBrowserFamily": "Tarayıcı ailesi",
"dataTableLabelModels": "Model",
"dataTableLabelSystemVersion": "İşletim Sistemi versiyonu",
"dataTableLabelTypes": "Tip",
diff --git a/plugins/DevicesDetection/lang/uk.json b/plugins/DevicesDetection/lang/uk.json
new file mode 100644
index 0000000000..b1f68505c7
--- /dev/null
+++ b/plugins/DevicesDetection/lang/uk.json
@@ -0,0 +1,5 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "Родина веб-оглядача"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/vi.json b/plugins/DevicesDetection/lang/vi.json
index 72b9f3b211..05aef21424 100644
--- a/plugins/DevicesDetection/lang/vi.json
+++ b/plugins/DevicesDetection/lang/vi.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "Biểu đồ này cho thấy các trình duyệt khách truy cập của bạn chia thành các họ trình duyệt. %s Thông tin quan trọng nhất đối với nhà phát triển web là loại công cụ rendering nào khách truy cập của họ đang sử dụng. Các nhãn chứa tên của các công cụ tiếp theo của trình duyệt phổ biến nhất đang sử dụng công cụ cho trong giấu ngoặc đơn."
+ "BrowserEngineDocumentation": "Biểu đồ này cho thấy các trình duyệt khách truy cập của bạn chia thành các họ trình duyệt. %s Thông tin quan trọng nhất đối với nhà phát triển web là loại công cụ rendering nào khách truy cập của họ đang sử dụng. Các nhãn chứa tên của các công cụ tiếp theo của trình duyệt phổ biến nhất đang sử dụng công cụ cho trong giấu ngoặc đơn.",
+ "BrowserFamily": "Họ trình duyệt",
+ "BrowserVersion": "Phiên bản trình duyệt"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/zh-cn.json b/plugins/DevicesDetection/lang/zh-cn.json
index e6d9d02cd2..4a157f5d82 100644
--- a/plugins/DevicesDetection/lang/zh-cn.json
+++ b/plugins/DevicesDetection/lang/zh-cn.json
@@ -1,5 +1,7 @@
{
"DevicesDetection": {
- "BrowserEngineDocumentation": "本报表显示访客的浏览器分类。%s对网站开发者来说最重要的就是访客使用何种渲染引擎。标签包括引擎名称,加上括号中的使用这种引擎的最常用的浏览器。"
+ "BrowserEngineDocumentation": "本报表显示访客的浏览器分类。%s对网站开发者来说最重要的就是访客使用何种渲染引擎。标签包括引擎名称,加上括号中的使用这种引擎的最常用的浏览器。",
+ "BrowserFamily": "浏览器种类",
+ "BrowserVersion": "浏览器版本"
}
} \ No newline at end of file
diff --git a/plugins/DevicesDetection/lang/zh-tw.json b/plugins/DevicesDetection/lang/zh-tw.json
new file mode 100644
index 0000000000..9006ec8a94
--- /dev/null
+++ b/plugins/DevicesDetection/lang/zh-tw.json
@@ -0,0 +1,6 @@
+{
+ "DevicesDetection": {
+ "BrowserFamily": "瀏覽器家族",
+ "BrowserVersion": "瀏覽器版本"
+ }
+} \ No newline at end of file
diff --git a/plugins/DevicesDetection/templates/detection.twig b/plugins/DevicesDetection/templates/detection.twig
index 6be0302f24..c6c6b9a683 100644
--- a/plugins/DevicesDetection/templates/detection.twig
+++ b/plugins/DevicesDetection/templates/detection.twig
@@ -74,7 +74,7 @@
<td>{{ browser_version }}</td>
</tr>
<tr>
- <td>{{ 'UserSettings_ColumnBrowserFamily'|translate }} <small>(<a href="javascript:showList('browserfamilies');">{{ 'Mobile_ShowAll'|translate }}</a>)</small></td>
+ <td>{{ 'DevicesDetection_BrowserFamily'|translate }} <small>(<a href="javascript:showList('browserfamilies');">{{ 'Mobile_ShowAll'|translate }}</a>)</small></td>
<td><img src="{{ browser_family_logo }}" />{{ browser_family }}</td>
</tr>
</table>
diff --git a/plugins/DevicesDetection/templates/index.twig b/plugins/DevicesDetection/templates/index.twig
index aaba67968b..9c0e97710b 100644
--- a/plugins/DevicesDetection/templates/index.twig
+++ b/plugins/DevicesDetection/templates/index.twig
@@ -8,9 +8,9 @@
</div>
<div id='rightcolumn'>
- <h2 piwik-enriched-headline>{{ "DevicesDetection_OperatingSystemFamilies"|translate }}</h2>
+ <h2 piwik-enriched-headline>{{ "UserSettings_OperatingSystems"|translate }}</h2>
{{ osReport | raw}}
- <h2 piwik-enriched-headline>{{ "UserSettings_BrowserFamilies"|translate }}</h2>
+ <h2 piwik-enriched-headline>{{ "UserSettings_Browsers"|translate }}</h2>
{{ browserReport | raw }}
<h2 piwik-enriched-headline>{{ "DevicesDetection_BrowserEngines"|translate }}</h2>
{{ browserEngineReport | raw }}
diff --git a/plugins/Events/lang/tl.json b/plugins/Events/lang/tl.json
new file mode 100644
index 0000000000..9d5e90c97e
--- /dev/null
+++ b/plugins/Events/lang/tl.json
@@ -0,0 +1,31 @@
+{
+ "Events": {
+ "AvgEventValue": "Average na value ng event ay: %s",
+ "AvgValue": "Average value",
+ "AvgValueDocumentation": "Ang average ng lahat ng mga values para sa event na ito.",
+ "Event": "Resulta",
+ "EventAction": "Event Action",
+ "EventActions": "Event Actions",
+ "EventCategories": "Mga kategorya ng Event",
+ "EventCategory": "Kategorya ng event",
+ "EventName": "Pangalan ng Event",
+ "EventNames": "Event Names",
+ "Events": "Mga Resulta",
+ "EventsWithValue": "Mga event na may value",
+ "EventsWithValueDocumentation": "Bilang ng pangyayari kung saan ang halaga ng Event ay itinakda",
+ "EventValue": "Event Value",
+ "EventValueTooltip": "Ang total event value ay resulta ng %s events values %s sa pagitan ng minimum %s at maximum ng %s.",
+ "MaxValue": "Maximum na halaga",
+ "MaxValueDocumentation": "Ang maximum na halaga para sa kaganapang ito.",
+ "MinValue": "Minimum na halaga",
+ "MinValueDocumentation": "Ang minimum na halaga para sa kaganapang ito.",
+ "SecondaryDimension": "Pangalawang dimensyon ay %s.",
+ "SwitchToSecondaryDimension": "Lumipat sa %s",
+ "TopEvents": "Mga nangungunang events",
+ "TotalEvents": "Total events",
+ "TotalEventsDocumentation": "Kabuuang bilang ng mga event",
+ "TotalValue": "Kabuuang halaga",
+ "TotalValueDocumentation": "Ang kabuuan ng mga value ng event",
+ "ViewEvents": "View Events"
+ }
+} \ No newline at end of file
diff --git a/plugins/ExamplePlugin/tests/Unit/SimpleTest.php b/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
index 4b5341096f..5551b4819d 100644
--- a/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
+++ b/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
@@ -8,13 +8,26 @@
namespace Piwik\Plugins\ExamplePlugin\tests\Unit;
+use Piwik\Tests\Framework\TestCase\UnitTestCase;
+
/**
* @group ExamplePlugin
* @group SimpleTest
* @group Plugins
*/
-class SimpleTest extends \PHPUnit_Framework_TestCase
+class SimpleTest extends UnitTestCase
{
+ public function setUp()
+ {
+ parent::setUp();
+ // set up here if needed
+ }
+
+ public function tearDown()
+ {
+ // tear down here if needed
+ parent::tearDown();
+ }
/**
* All your actual test methods should start with the name "test"
diff --git a/plugins/Feedback/lang/fr.json b/plugins/Feedback/lang/fr.json
index dd6937b59a..ab06a7ad79 100644
--- a/plugins/Feedback/lang/fr.json
+++ b/plugins/Feedback/lang/fr.json
@@ -1,8 +1,8 @@
{
"Feedback": {
"ContactThePiwikTeam": "Contactez l’Équipe Piwik!",
- "DoYouHaveBugReportOrFeatureRequest": "Avez-vous un bug à rapporter ou une fonctionnalité à demander?",
- "GetInTouch": "Nous apprécions vos commentaires et lisons tous les messages. Peut-être voudriez vous nous informer d'une opportunité commerciale, employer un consultant, nous raconter un succès ou simplement dire bonjour!",
+ "DoYouHaveBugReportOrFeatureRequest": "Avez-vous un bug à rapporter ou une fonctionnalité à demander ?",
+ "GetInTouch": "Nous apprécions vos commentaires et lisons tous les messages. Peut-être voudriez vous nous informer d'une opportunité commerciale, employer un consultant, nous raconter un succès ou simplement dire bonjour !",
"HowToCreateTicket": "Veuillez consulter les recommandations sur la rédaction d'un bon %1$srapport de bug%2$s ou %3$sdemande de fonctionnalité%4$s. Puis s'enregistrer ou se connecter sur %5$snotre système de suivit des incidents%6$s et créer un %7$snouvel incident%8$s.",
"IWantTo": "Je veux:",
"LearnWaysToParticipate": "Renseignez vous sur les manières dont vous pouvez %s participer%s",
@@ -15,12 +15,12 @@
"RateFeatureThankYouTitle": "Merci d'avoir noté \"%s\" !",
"RateFeatureTitle": "Est-ce que vous aimez la fonctionnalité \"%s\" ? Notez la et laissez un commentaire",
"SendFeedback": "Envoyer le retour",
- "SpecialRequest": "Avez-vous une demande spéciale pour l’Équipe Piwik?",
+ "SpecialRequest": "Avez-vous une demande spéciale pour l’Équipe Piwik ?",
"ThankYou": "Merci d'avoir aidé à améliorer Piwik!",
"TopLinkTooltip": "Dites nous ce que vous en pensez, ou demandez un Support Professionnel.",
"ViewAnswersToFAQ": "Voir les réponses aux %squestions fréquemment posées%s",
"ViewUserGuides": "Apprenez comment configurer Piwik et comment analyser de manière efficaces vos données avec notre %1$sguide utilisateur%2$s",
"VisitTheForums": "Visitez les %s Forums%s",
- "WantToThankConsiderDonating": "Vous pensez que Piwik est génial et voulez nous remercier?"
+ "WantToThankConsiderDonating": "Vous pensez que Piwik est génial et voulez nous remercier ?"
}
} \ No newline at end of file
diff --git a/plugins/Feedback/lang/tl.json b/plugins/Feedback/lang/tl.json
new file mode 100644
index 0000000000..78ef4a6436
--- /dev/null
+++ b/plugins/Feedback/lang/tl.json
@@ -0,0 +1,26 @@
+{
+ "Feedback": {
+ "ContactThePiwikTeam": "Makipag-ugnay sa team ng Piwik!",
+ "DoYouHaveBugReportOrFeatureRequest": "Mayroon ka bang iuulat na bug o hihilinging feature?",
+ "GetInTouch": "Aming pinahahalagahan ang iyong feedback at laging naming binabasa ang lahat ng mensahe. Kung ikaw ay may maibabahagi na negosyo makipagkasundo sa aming Piwik consultant magkwento sa amin ng isang kwento ng tagumpay o magsabi lamang ng Hello!",
+ "HowToCreateTicket": "Mangyaring basahin ang rekomendasyon sa mahusay na pagsusulat %1$sbug report%2$s o %3$sfeature request%4$s. Pagkatapos magrehistro o mag-login sa %5$sour issue tracker%6$s at gumawa ng %7$snew issue%8$s.",
+ "IWantTo": "Gusto kong:",
+ "LearnWaysToParticipate": "Pag-aralan ang lahat ng daan upang %s makasali sa %s",
+ "ManuallySendEmailTo": "Mangyaring manu-manong ipadala ang iyong mensahe sa.",
+ "PluginDescription": "Padala ang iyong Feedback sa aming Piwik Team. Ibahagi ang iyong mga ideya at mungkahi sa amin!",
+ "PrivacyClaim": "Nirerespeto ng Piwik ang iyong %1$s privacy %2$s at nagbibigay sa iyo ng ganap na kontrol sa iyong data.",
+ "RateFeatureLeaveMessageDislike": "Ikinalulungkot namin na hindi mo ito gustong marinig! Mangyaring ipaalam samin kung paano naman ito mapapabuti.",
+ "RateFeatureLeaveMessageLike": "Kami ay natutuwa na gusto mo ito! Mangyaring ipaalam sa amin kung ano ang gusto mo ang pinaka o kung mayroon kang gustong feature na pwedeng i-dagdag.",
+ "RateFeatureSendFeedbackInformation": "Ang iyong Piwik platform ay aming ipapadala(Ang pangkat ng Piwik) ang email (kasama ang iyong email address) upang pwede ka namin kontakin kung ikaw ay merong mga katanungan.",
+ "RateFeatureThankYouTitle": "Salamat sa pag-rate '%s'!",
+ "RateFeatureTitle": "Gusto mo ba ang '%s' feature? Paki-rate at mag-iwan ng komento",
+ "SendFeedback": "Magpadala ng Feedback",
+ "SpecialRequest": "Meron ka bang espesyal na kahilingan para sa Piwik team?",
+ "ThankYou": "Salamat sa pagtulong sa amin upang maging mas mabuti ang Piwik!",
+ "TopLinkTooltip": "Sabihin sa amin ang iyong iniisip o humiling ng Propesyonal na Suporta.",
+ "ViewAnswersToFAQ": "Ipakita ang sagot sa %s Mga Madalas Itanong %s",
+ "ViewUserGuides": "Alamin kung paano i-configure ang Piwik at kung paano epektibong pag-aralan ang iyong data sa aming %1$suser gabay sa %2$s.",
+ "VisitTheForums": "Bisitahin ang mga %s Forum %s at makakuha ng tulong mula sa komunidad ng mga Piwik user.",
+ "WantToThankConsiderDonating": "Sa tingin mo ba ang Piwik ay mahusay at gusto mo kaming pasalamatan?"
+ }
+} \ No newline at end of file
diff --git a/plugins/Goals/Controller.php b/plugins/Goals/Controller.php
index e7af6d6243..3e61eb06e3 100644
--- a/plugins/Goals/Controller.php
+++ b/plugins/Goals/Controller.php
@@ -168,7 +168,7 @@ class Controller extends \Piwik\Plugin\Controller
$goal['pattern'] = Common::unsanitizeInputValue($goal['pattern']);
}
}
- $view->goalsJSON = Common::json_encode($goals);
+ $view->goalsJSON = json_encode($goals);
$view->userCanEditGoals = Piwik::isUserHasAdminAccess($this->idSite);
$view->ecommerceEnabled = $this->site->isEcommerceEnabled();
diff --git a/plugins/Insights/lang/tl.json b/plugins/Insights/lang/tl.json
new file mode 100644
index 0000000000..6b1fd19c31
--- /dev/null
+++ b/plugins/Insights/lang/tl.json
@@ -0,0 +1,18 @@
+{
+ "Insights": {
+ "DayComparedToPreviousDay": "nakaraang araw",
+ "DayComparedToPreviousWeek": "Sa parehong araw sa nakaraang linggo",
+ "DayComparedToPreviousYear": "Sa parehong araw sa nakaraang taon",
+ "MonthComparedToPreviousMonth": "nakaraang buwan",
+ "MonthComparedToPreviousYear": "Parehong buwan sa nakaraang taon",
+ "TitleConsideredMoversAndShakersChanges": "Masasabing movers kung ito ay tumaas ng mahigit sa %1$s%% pagbisita o bumababa ng higit sa %2$s%% pagbisita ang mga bagong entry kung ang kanilang pagtaas ay mahigit sa %3$s%% pagbisita (%4$s) at kung mawawala ang rows ng mas mababa sa %5$s%% pagbisita (%6$s).",
+ "TitleConsideredMoversAndShakersGrowth": "%1$s ay nagbago mula sa %2$s sa %3$s kumpara sa %4$s. Base sa isang paglaki ng bawat hilera ng%5$s%% ay inaasahan.",
+ "TitleRowChangeDetails": "'%1$s' ay nagbago mula %2$s (%3$s) hanggang %4$s (%5$s) %6$s.",
+ "TitleRowDisappearedDetails": "'%1$s' ay binawasan ng %2$s at nawala sa %3$s kumpara sa %4$s.",
+ "TitleRowMoverAndShaker": "Ang hanay na ito ay nagkaroon ng mas mataas na epekto kaysa karaniwan.",
+ "TitleRowNewDetails": "%1$s ay tumaas ng %2$s at bago kumpara sa %3$s",
+ "WeekComparedToPreviousWeek": "nakaraang linggo",
+ "WidgetCategory": "Mga Pananaw",
+ "YearComparedToPreviousYear": "nakaraang taon"
+ }
+} \ No newline at end of file
diff --git a/plugins/Insights/lang/zh-cn.json b/plugins/Insights/lang/zh-cn.json
new file mode 100644
index 0000000000..a03ef51c8b
--- /dev/null
+++ b/plugins/Insights/lang/zh-cn.json
@@ -0,0 +1,12 @@
+{
+ "Insights": {
+ "Filter": "条件",
+ "FilterOnlyDecreaser": "仅限减少的",
+ "FilterOnlyDisappeared": "仅限消失的",
+ "FilterOnlyIncreaser": "仅限增加的",
+ "FilterOnlyMovers": "仅限移动的",
+ "FilterOnlyNew": "仅限新的",
+ "WeekComparedToPreviousWeek": "上一周",
+ "YearComparedToPreviousYear": "上一年"
+ }
+} \ No newline at end of file
diff --git a/plugins/Installation/Controller.php b/plugins/Installation/Controller.php
index a3c858f08c..28650856d9 100644
--- a/plugins/Installation/Controller.php
+++ b/plugins/Installation/Controller.php
@@ -396,8 +396,6 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
{
$this->checkPiwikIsNotInstalled();
- $this->markInstallationAsCompleted();
-
$view = new View(
'@Installation/finished',
$this->getInstallationSteps(),
@@ -424,6 +422,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
*/
Piwik::postEvent('Installation.defaultSettingsForm.submit', array($form));
+ $this->markInstallationAsCompleted();
+
Url::redirectToUrl('index.php');
} catch (Exception $e) {
$view->errorMessage = $e->getMessage();
@@ -552,8 +552,7 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
\Piwik\Plugins\Login\Controller::clearSession();
$message = Piwik::translate('Installation_InvalidStateError',
array('<br /><strong>',
- '</strong>',
- '<a href=\'' . Common::sanitizeInputValue(Url::getCurrentUrlWithoutFileName()) . '\'>',
+ '</strong><a href=\'' . Common::sanitizeInputValue(Url::getCurrentUrlWithoutFileName()) . '\'>',
'</a>')
);
Piwik::exitWithErrorMessage($message);
@@ -674,7 +673,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
});
}
- private function hasEnoughTablesToReuseDb($tablesInstalled)
+ // should be private but there's a bug in php 5.3.6
+ public function hasEnoughTablesToReuseDb($tablesInstalled)
{
if (empty($tablesInstalled) || !is_array($tablesInstalled)) {
return false;
diff --git a/plugins/Installation/lang/en.json b/plugins/Installation/lang/en.json
index df8fd6e53a..d8e8b972d3 100644
--- a/plugins/Installation/lang/en.json
+++ b/plugins/Installation/lang/en.json
@@ -25,6 +25,7 @@
"InstallationStatus": "Installation status",
"InsufficientPrivilegesHelp": "You can add these privileges by using a tool such as phpMyAdmin or by executing the right SQL queries. If you don't know how to do these things, please ask your sysadmin to grant these privileges for you.",
"InsufficientPrivilegesMain": "Either the Database does not exist (and could not be created), or the specified User has insufficient privileges. Database user must have the following privileges: %s",
+ "InvalidStateError": "Error: Piwik is already installed. %1$s Go back %2$s to Piwik%3$s.",
"JsTagArchivingHelp1": "For medium and high traffic websites there are certain optimizations that should be made to help Piwik run faster (such as %1$ssetting up auto-archiving%2$s).",
"JSTracking_EndNote": "Note: After the installation process, you can generate customized tracking code in the %1$sTracking Code%2$s admin section.",
"JSTracking_Intro": "To track your web traffic with Piwik you need to make sure some extra code is added to each of your webpages.",
diff --git a/plugins/Installation/lang/fr.json b/plugins/Installation/lang/fr.json
index fcf10917c5..797aca29f8 100644
--- a/plugins/Installation/lang/fr.json
+++ b/plugins/Installation/lang/fr.json
@@ -6,25 +6,25 @@
"ConfigurationHelp": "Votre configuration de Piwik semble être erronée. Vous pouvez ou bien supprimer config\/config.inc.php et reprendre l'installation ou corriger les paramètres de connexion.",
"ConfirmDeleteExistingTables": "Êtes vous sûr de vouloir supprimer les tables %s de votre base de données ? ATTENTION : LES DONNÉES SERONT DÉFINITIVEMENT PERDUES !",
"Congratulations": "Félicitations",
- "CongratulationsHelp": "<p>Félicitations! Votre installation de Piwik est terminée.<\/p><p>Assurez-vous que le code JavaScript est présent sur toutes vos pages et attendez vos premiers visiteurs!<\/p>",
+ "CongratulationsHelp": "<p>Félicitations ! Votre installation de Piwik est terminée.<\/p><p>Assurez-vous que le code JavaScript est présent sur toutes vos pages et attendez vos premiers visiteurs !<\/p>",
"DatabaseAbilities": "Capacités de la base de données",
"DatabaseCreation": "Création de la base de données",
"DatabaseErrorConnect": "Erreur lors de la tentative de connexion au serveur de base de données",
"DatabaseServerVersion": "Version du serveur de base de données",
"DatabaseSetup": "Installation de la base de données",
- "DatabaseSetupAdapter": "adaptateur",
- "DatabaseSetupDatabaseName": "nom de la base",
- "DatabaseSetupLogin": "compte",
- "DatabaseSetupServer": "serveur de la base de données",
- "DatabaseSetupTablePrefix": "préfixe des tables",
+ "DatabaseSetupAdapter": "Adaptateur",
+ "DatabaseSetupDatabaseName": "Nom de la base",
+ "DatabaseSetupLogin": "Compte utilisateur",
+ "DatabaseSetupServer": "Serveur de base de données",
+ "DatabaseSetupTablePrefix": "Préfixe des tables",
"DefaultSettings": "Paramétrage par défaut",
"DefaultSettingsHelp": "Piwik est installé avec un paramétrage par défaut. Vous pouvez personnaliser ces réglages maintenant ou le faire plus tard dans l'espace d'administration.",
- "Email": "courriel",
- "Extension": "extension",
+ "Email": "Courriel",
+ "Extension": "Extension",
"Filesystem": "Système de fichiers",
"GetInvolved": "Si vous aimez ce que vous voyez, vous pouvez %1$svous impliquer%2$s.",
"GoBackAndDefinePrefix": "Retournez à la page précédente et définissez le préfixe pour les tables Piwik",
- "HappyAnalysing": "Bonne analyse!",
+ "HappyAnalysing": "Bonne analyse !",
"Installation": "Installation",
"InstallationStatus": "Statut de l'installation",
"InsufficientPrivilegesHelp": "Vous pouvez donner ces droits en utilisant un outils tel que phpMyAdmin ou en exécutant les requêtes SQL appropriées. Si vous ne savez pas comment effectuer cela veuillez demander à votre administrateur système de donner ces droits pour vous.",
@@ -42,11 +42,11 @@
"NoConfigFound": "Le fichier de configuration de Piwik ne peut être trouvé et vous essayez d'accéder à une page de Piwik.<br> <b>  » Vous pouvez <a href='index.php'>installer Piwik maintenant<\/a><\/b><br><small>Si vous avez déjà installé Piwik ne vous inquiétez pas Piwik réutilisera ces tables et leurs données.<\/small>",
"NotSupported": "non supporté",
"Optional": "Optionnel",
- "Password": "mot de passe",
+ "Password": "Mot de passe",
"PasswordDoNotMatch": "Le mot de passe ne concorde pas",
- "PasswordRepeat": "mot de passe (à nouveau)",
- "PercentDone": "%s %% Fait",
- "PiwikOrgNewsletter": "envoyez moi des courriels pour les mises à jour importantes de Piwik",
+ "PasswordRepeat": "Mot de passe (à nouveau)",
+ "PercentDone": "%s %% complété",
+ "PiwikOrgNewsletter": "Envoyez moi des courriels pour les mises à jour importantes de Piwik",
"PiwikProNewsletter": "Je suis intéressé par les services %sPiwik PRO%s (pas plus d'un courriel par mois)",
"PleaseFixTheFollowingErrors": "Merci de corriger les erreurs suivantes",
"PluginDescription": "Procédé d'installation de Piwik. L'installation est effectuée une unique fois. Si le fichier de configuration config\/config.inc.php est supprimé, l'installation recommencera.",
@@ -56,20 +56,20 @@
"SeeBelowForMoreInfo": "Voir ci-dessous pour plus d'informations.",
"SetupWebsite": "Paramétrer un site",
"SetupWebsiteError": "Une erreur a été rencontrée pendant l'ajout du site",
- "SetupWebSiteName": "nom du site web",
- "SetupWebsiteSetupSuccess": "Site %s créé avec succès!",
+ "SetupWebSiteName": "Nom du site web",
+ "SetupWebsiteSetupSuccess": "Site %s créé avec succès !",
"SetupWebSiteURL": "URL du site web",
"SiteSetup": "Veuillez configurer le premier site web que vous voulez suivre et analyser avc Piwik :",
- "SiteSetupFootnote": "Note : une fois que l'installation de Piwik est terminée, vous pourrez ajouter d'autres sites web à suivre!",
+ "SiteSetupFootnote": "Note : une fois que l'installation de Piwik est terminée, vous pourrez ajouter d'autres sites web à suivre !",
"SuperUser": "Super Utilisateur",
- "SuperUserLogin": "login du super user",
+ "SuperUserLogin": "Login du super utilisateur",
"SuperUserSetupError": "Erreur lors de l'ajout du super utilisateur.",
- "SuperUserSetupSuccess": "Super Utilisateur créé avec succès!",
+ "SuperUserSetupSuccess": "Super utilisateur créé avec succès !",
"SystemCheck": "Vérification du système",
"SystemCheckAutoUpdateHelp": "Note : La mise à jour de Piwik en un clic requiert une permission en écriture sur le dossier de Piwik et son contenu.",
"SystemCheckCreateFunctionHelp": "Piwik utilise des fonctions anonymes pour les callbacks.",
"SystemCheckCronArchiveProcess": "Tâche Cron d'archivage",
- "SystemCheckCronArchiveProcessCLI": "Gestion des processus via ligne de commande",
+ "SystemCheckCronArchiveProcessCLI": "Gestion des processus la via ligne de commande",
"SystemCheckDatabaseHelp": "Piwik requiert ou l'extension mysqli ou les extensions pdo et pdo_mysql.",
"SystemCheckDebugBacktraceHelp": "View::factory ne pourra pas créer des vues pour le module appelé.",
"SystemCheckError": "Une erreur s'est produite — elle doit être corrigée avant de pouvoir continuer",
@@ -100,8 +100,8 @@
"SystemCheckPhpPdoAndMysqli": "Plus d'informations sur: %1$sPHP PDO%2$s et %3$sMYSQLI%4$s.",
"SystemCheckSessionAutostart": "Pour éviter certains problèmes veuillez définir le paramètre suivant dans votre fichier php.ini : session.auto_start=0",
"SystemCheckSplHelp": "Vous devez configurer et recompiler PHP avec la librairie standard (par défaut).",
- "SystemCheckSummaryNoProblems": "Génial! Il n'y a aucun problème avec votre installation de Piwik. Donnez vous une tape dans le dos.",
- "SystemCheckSummaryThereWereErrors": "Oh-oh! Piwik a détecté des %1$sproblèmes critiques%2$s avec votre installation de Piwik. %3$sCes problèmes critiques doivent être fixés immédiatement.%4$s",
+ "SystemCheckSummaryNoProblems": "Génial ! Il n'y a aucun problème avec votre installation de Piwik. Donnez-vous une tape dans le dos.",
+ "SystemCheckSummaryThereWereErrors": "Oh-oh ! Piwik a détecté des %1$sproblèmes critiques%2$s avec votre installation de Piwik. %3$sCes problèmes critiques doivent être fixés immédiatement.%4$s",
"SystemCheckSummaryThereWereWarnings": "Il y a des problèmes avec votre système. Piwik va fonctionner, mais vous pourriez rencontrer des problèmes mineurs.",
"SystemCheckTimeLimitHelp": "Sur un site à trafic important, le processus d'archivage peut prendre plus de temps qu'il n'est déjà autorisé.<br \/> Référez-vous à la configuration max_execution_time de votre php.ini si nécessaire.",
"SystemCheckTracker": "Statut du traqueur",
@@ -116,18 +116,18 @@
"SystemCheckWriteDirsHelp": "Pour corriger les erreurs sur votre système Linux essayez de taper les commandes suivantes",
"SystemCheckZlibHelp": "Vous devez reconfigurer et recompiler PHP avec le support zlib, --with-zlib.",
"Tables": "Création des tables",
- "TablesCreatedSuccess": "Tables créées avec succès!",
+ "TablesCreatedSuccess": "Tables créées avec succès !",
"TablesDelete": "Supprimer les tables détectées",
- "TablesDeletedSuccess": "Tables Piwik existantes supprimées avec succès",
+ "TablesDeletedSuccess": "Les tables Piwik existantes ont été supprimées avec succès",
"TablesFound": "Les tables suivantes ont été trouvées dans la base de données",
"TablesReuse": "Réutiliser les tables existantes",
- "TablesUpdatedSuccess": "La base de données a été mise à jour avec succès de la version %1$s à %2$s!",
+ "TablesUpdatedSuccess": "La base de données a été mise à jour avec succès de la version %1$s à %2$s !",
"TablesWarningHelp": "Vous pouvez choisir de réutiliser les tables de la base de données existante ou sélectionner une nouvelle installation pour effacer toutes les données existantes dans la base de données.",
- "TablesWithSameNamesFound": "Environ %1$s tables dans votre base de données %2$s ont le même nom que celles que Piwik essaie de créer.",
- "Timezone": "fuseau horaire du site web",
+ "TablesWithSameNamesFound": "Des %1$s tables dans votre base de données %2$s ont le même nom que celles que Piwik essaie de créer.",
+ "Timezone": "Fuseau horaire du site web",
"WeHopeYouWillEnjoyPiwik": "Nous espérons que vous allez aimer utiliser Piwik autant que nous aimons le concevoir.",
- "Welcome": "Bienvenue!",
+ "Welcome": "Bienvenue !",
"WelcomeHelp": "<p>Piwik est une application d'analyse du web Open Source qui vous permet d'obtenir facilement les informations que vous désirez sur vos visiteurs.<\/p>\t<p>Ce procédé est divisé en %s étapes faciles et vous prendra 5 minutes environ.<\/p>",
- "WelcomeToCommunity": "Bienvenue dans la communauté Piwik!"
+ "WelcomeToCommunity": "Bienvenue dans la communauté Piwik !"
}
} \ No newline at end of file
diff --git a/plugins/Installation/lang/tl.json b/plugins/Installation/lang/tl.json
new file mode 100644
index 0000000000..0a7be090e8
--- /dev/null
+++ b/plugins/Installation/lang/tl.json
@@ -0,0 +1,128 @@
+{
+ "Installation": {
+ "CannotConnectToDb": "Hindi makakonekta sa database",
+ "CannotConnectToDbResolvingExplanation": "Itoy ay maaring panandaliang isyu subukan na %1$s e-refresh ang pahina %2$s. Kung patuloy pa rin ang ganitong problema mangyarin makipag-ugnayan sa iyong Piwik administrator.",
+ "CollaborativeProject": "Ang Piwik ay mga pinagsama-samang mga proyekto na binuo na may pag-ibig sa pamamagitan ng mga tao mula sa buong mundo.",
+ "ConfigurationHelp": "Ang iyong Piwik configuration file ay mukhang hindi tama. Maari mong tanggalin ang config\/config.ini.php at ipagpatuloy ang pag-iinstall o itama ang database connection settings.",
+ "ConfirmDeleteExistingTables": "Sigurado ka bang gusto mong tanggaling ang mga table na ito: %s mula sa iyong database? BABALA: ANG MGA DATUS MULA SA MGA TABLES NA ITO AY HINDI NA MAIBABALIK!",
+ "Congratulations": "Congratulations",
+ "CongratulationsHelp": "Binabati ka namin! Ang pag-iinstall mo sa Piwik ay tapos na<\/P><p>Tiyakin na ang iyong JavaScript code ay nailagay sa mga tamang pahina at maghintay na lamang para sa iyong unang bisita! <\/ p>",
+ "DatabaseAbilities": "kakayahan ng database",
+ "DatabaseCreation": "Pag-gawa ng database",
+ "DatabaseErrorConnect": "Nagkaroon ng error habang sinusubukang kumonekta sa server ng database",
+ "DatabaseServerVersion": "Bersyon database server",
+ "DatabaseSetup": "Database Setup",
+ "DatabaseSetupAdapter": "Adaptor",
+ "DatabaseSetupDatabaseName": "Pangalan ng database",
+ "DatabaseSetupLogin": "Login",
+ "DatabaseSetupServer": "Database Server",
+ "DatabaseSetupTablePrefix": "Table Prefix",
+ "Email": "email",
+ "Extension": "karugtong",
+ "Filesystem": "Sistema ng File",
+ "GetInvolved": "Kung gusto mo ang nakikita mo maari kang %1$s makibahagi %2$s.",
+ "GoBackAndDefinePrefix": "Bumalik at tukuyin ang isang Prefix para sa Piwik Tables",
+ "Installation": "Installation",
+ "InstallationStatus": "Status ng Pag-install",
+ "InsufficientPrivilegesHelp": "Maari kang mag-dagdag ng mga pribilehiyong it sa pamamagitan ng paggamit ng tool tulad ng phpMyAdmin o sa pag e-execute ng tamang SQL quiries. Kung hindi alam kung paano gagawing mga ito mangyaring magtanong sa inyong sysadmin upang mabigay ang mga pribilehiyong ito sayo.",
+ "JsTagArchivingHelp1": "Para sa katam-taman at mataas na traffic sa websites may mga pweding gawing optimizations upang makatulong sa Piwik upang ito ay bumilis(tulad ng %1$ssetting up auto-archiving%2$s).",
+ "JSTracking_EndNote": "Tandaan: Matapos ang proseso ng pag-iinstall maari kang mag-generate ng customized tracking code sa %1$sTracking Code%2$s sa admin sekyon.",
+ "JSTracking_Intro": "Upang ma subaybayan ang iyong traffic sa web na may Piwik kailangan mong siguraduhin na ang ilang mga code ay na-idinagdag sa bawat isa sa iyong mga webpages.",
+ "LargePiwikInstances": "Tulong para sa mga gumagamit na may mataas na trapiko sa mga website.",
+ "Legend": "Alamat",
+ "LoadDataInfileRecommended": "Kung ang iyong Piwik server ay may mataas na traffic website (hal. > 100 000 pahina kada buwan) aming nirerekomenda na ayusin ang problemang ito.",
+ "LoadDataInfileUnavailableHelp": "Ang pag-gamit ng %1$s ay lubos na magbibigay bilis sa pag proseso ng pag archive. Upang maging available ito sa Piwik subukan na e update ang iyong PHP & MySQL software at siguraduin na ang iyong mga database user ay may %2$s prebilehiyo.",
+ "NfsFilesystemWarning": "Ang iyong server ay gumagamit ng isang NFS filesystem",
+ "NfsFilesystemWarningSuffixAdmin": "Ito ay nangangahulugan na ang Piwik ay lubhang babagal kapag gumagamit ng file na batay sa session.",
+ "NfsFilesystemWarningSuffixInstall": "Ang pag-gamit ng file based session sa NFS ay sobrang mabagal iyong kakailanganin ang pag dag-dag ng maximum number na komokonekta sa iyong database server.",
+ "NoConfigFound": "Ang Piwik configuration file ay hindi makita at iyong sinusubukang pumasok sa pahina ng Piwik.<br \/><b> » Maari mong <a href='index.php'>I-install ang Piwik ngayon<\/a><\/b><br \/><small>Kung iyo ng nainstall ang piwik dati at at meron ka nang mga tables sa iyong DB wag mabahala maari mo paring gamitin ang parehong mga tables at mapanatili ang mga datus na meron ka na!<\/small>",
+ "NotSupported": "Hindi supportado",
+ "Optional": "Opsyonal",
+ "Password": "password",
+ "PasswordDoNotMatch": "password ay hindi tumutugma",
+ "PercentDone": "%s %% Tapos na",
+ "PiwikOrgNewsletter": "I-email sa akin ang mga pangunahing update sa komunidad ng Piwik",
+ "PiwikProNewsletter": "Interesado ako sa mga %s Piwik PRO %s na serbisyo (hindi hihigit sa 1 email sa isang buwan)",
+ "PleaseFixTheFollowingErrors": "Mangyaring ayusin ang mga sumusunod na error",
+ "PluginDescription": "Ang pag proseso sa piwik installation. Ang installation ay kadalasang ginawa isang beses lamang. Kung ang configuration file config\/config.inc.php ay binura",
+ "Requirements": "Mga kailangan ng Piwik",
+ "RestartWebServer": "Pagkatapos gawin ang pagbabagong ito i-restart ang iyong web browser",
+ "ReusingTables": "Muling pag-gamit sa mga table",
+ "SeeBelowForMoreInfo": "Tingnan sa ibaba para sa karagdagang impormasyon.",
+ "SetupWebsite": "Pag-setup ng Website",
+ "SetupWebsiteError": "Mayroong error habang idinadagdag ang website.",
+ "SetupWebSiteName": "pangalan ng website",
+ "SetupWebsiteSetupSuccess": "Ang website %s ay matagumpay na nagawa!",
+ "SetupWebSiteURL": "website URL",
+ "SiteSetup": "Mangyaring mag-setup ng unang website na nais mong subaybayan at ma-analyze gamit ang Piwik:",
+ "SiteSetupFootnote": "Tandaan: sa sandaling pag i-install ng Piwik ay tapos na magagawa mong magdagdag ng mga website upang masubaybayan!",
+ "SuperUser": "Super User",
+ "SuperUserLogin": "super user login",
+ "SuperUserSetupError": "Nagkaroon ng error habang idinadagdag ang Super User",
+ "SuperUserSetupSuccess": "Ang super user ay tagumpay na nagawa!",
+ "SystemCheck": "Pagsusuri sa System",
+ "SystemCheckAutoUpdateHelp": "Tandaan: Ang Piwik One click update ay nangangailangan ng permiso upang mabago ang folder at mga laman nito.",
+ "SystemCheckCreateFunctionHelp": "Gumagamit ang Piwik ng hindi kilalang function para sa callback.",
+ "SystemCheckCronArchiveProcess": "Archive ng Cron",
+ "SystemCheckCronArchiveProcessCLI": "Mga pamamahala ng proseso sa pamamagitan ng CLI",
+ "SystemCheckDatabaseHelp": "Ang Piwik ay nangangailangan ng alinman sa extension mysqli o pareho ang PDO at pdo_mysql extension.",
+ "SystemCheckDebugBacktraceHelp": "Tingnan :: ang factory ay hindi magagawang lumikha ng mga view para sa calling module.",
+ "SystemCheckError": "May naganap na error - kailangan itong maayos bago magpatuloy.",
+ "SystemCheckEvalHelp": "Kinakailangan ng HTML QuickForm at Smarty templating system.",
+ "SystemCheckExtensions": "Iba pang mga kailangang extension",
+ "SystemCheckFileIntegrity": "Integridad ng file",
+ "SystemCheckFunctions": "Mga kinakailangang function",
+ "SystemCheckGDFreeType": "GD > 2.x + Freetype (graphics)",
+ "SystemCheckGDHelp": "Ang sparklines (maliit na mga graph) at graph ng imahe (sa app at Email ulat ng Piwik Mobile) ay hindi gagana.",
+ "SystemCheckGlobHelp": "Ang mga gawa ng function na ito ay hindi gumagana sa iyong host. Ang piwik ay susubukan na ito ay gayahin ngunit maaring magkaroon ng karagdagang paghihipit sa seguridad. Ang functionality nito ay lubos na maapektuhan.",
+ "SystemCheckGzcompressHelp": "Kailangan mong i-enable ang zlib extension at gzcompress function.",
+ "SystemCheckGzuncompressHelp": "Kailangan mong i-enable ang zlib extension at gzuncompress function.",
+ "SystemCheckIconvHelp": "kailangan mong i-configure at e-build ang PHP na may \"iconv\" ng may gumaganang support --with-iconv.",
+ "SystemCheckJsonHelp": "Ang php5-json extension ay kinakailangan para sa Piwik upang basahin at isulat ang JSON data.",
+ "SystemCheckMailHelp": "Ang Feedback at mga mensahe ng Nawalang Password ay hindi ipapadala nang walang mail ().",
+ "SystemCheckMbstring": "mbstring",
+ "SystemCheckMbstringHelp": "Ang mbstring extension ay kinakailangan upang magamit sa multibyte characters sa User Interface at API responses. Gayun-man mangyaring suriin na ang mbstring.func_overload ay naka set sa \"0\" sa php.ini.",
+ "SystemCheckMemoryLimit": "Limitasyon ng memorya",
+ "SystemCheckMemoryLimitHelp": "Sa may mataas na traffic na website ang proseso ng pag-archive ay mangailangan ng higit pang memory kaysa sa kasalukuyan. Kung kinakailangan palitan ang memory_limit directive sa iyong php.ini file",
+ "SystemCheckOpenURL": "Bukas na URL",
+ "SystemCheckOpenURLHelp": "Newsletter subscriptions update ng mga notipikasyon at ang isang click sa pag update ay nangangailan ng \"curl\" extension allow_url_fopen=On or fsockopen() enabled.",
+ "SystemCheckOtherExtensions": "Iba pang mga extension",
+ "SystemCheckOtherFunctions": "Iba pang mga function",
+ "SystemCheckPackHelp": "Ang function na pack() ay kailangan upang masubaybayan ang mga bisita sa Piwik.",
+ "SystemCheckParseIniFileHelp": "Ang mga gawa ng function na ito ay hindi gumagana sa iyong host. Ang piwik ay susubukan na ito ay gayahin ngunit maaring magkaroon ng karagdagang paghihipit sa seguridad. At ang performance ng tracker ay maapektuhan.",
+ "SystemCheckPdoAndMysqliHelp": "Sa GNU\/Linux server ay maari mong e-compile ang iyong php kasama ang mag option na ito: %1$s In your php.ini idag-dag ang mga sumusunod na mga linya: %2$s",
+ "SystemCheckPhp": "Bersyon ng PHP",
+ "SystemCheckPhpPdoAndMysqli": "Marami pang impormasyon sa: : %1$sPHP PDO%2$s at %3$sMYSQLI%4$s.",
+ "SystemCheckSessionAutostart": "Upang maiwasan ang ilang mga isyu mangyaring ilagay ang mga sumusunod sa inyong php.ini file: session.auto_start = 0.",
+ "SystemCheckSplHelp": "kailangan mong i-configure at muling e-build ang PHP na may Standard PHP Library (SPL) na syang gumagana(default).",
+ "SystemCheckSummaryNoProblems": "Huzzah! Walang mga problema sa pag-setup mo ng Piwk. Bigyan ang iyong sarili ng isang magandang pahinga.",
+ "SystemCheckSummaryThereWereErrors": "Naku! Ang piwik ay may nakitang i-ilang %1$s critical isyo sa %2$s sa iyong Piwik setup. %3$s Ang mga isyung ito ay dapat na maayos ka-agad. %4$s",
+ "SystemCheckSummaryThereWereWarnings": "May ilang mga isyu sa iyong system. Ang Piwik ay gagana ngunit maaari kang makaranas ng ilang mga menor na problema.",
+ "SystemCheckTimeLimitHelp": "Sa website na may mataas na traffic ang pagsasagawa ng archiving process ay mangangailangan ng karagdagang oras kaysa sa kasaluyang proseso. Kung ito'y kinakailangan baguhin ang max_execution_time na nasa iyong php.ini file.",
+ "SystemCheckTracker": "Status ng tracker",
+ "SystemCheckTrackerHelp": "Get request sa piwik.php ay pumalya. Subukang e whitelisting ang URL na ito mula sa HTTP Authentication at huwag paganahin ang mod_security (maari mo itong hilingin sa iyong webhost)",
+ "SystemCheckWarnDomHelp": "Dapat mong paganahin ang extension na \"DOM\" (hal i-install ang \"php-DOM\" at \/ o \"php-xml\" package).",
+ "SystemCheckWarning": "Ang Piwik ay gagana nang normal ngunit ang ilang mga feature ay maaaring mawala.",
+ "SystemCheckWarnJsonHelp": "Dapat mong paganahin ang extension na \"json\" (hal i-install ang \"php-json\" package) para sa mas magandang performance.",
+ "SystemCheckWarnLibXmlHelp": "Dapat mong paganahin \"libxml\" extension (hal.. \"i-install ang php-libxml\" package) dahil ito ay kinakailangan ng iba pang mga extension core ng PHP.",
+ "SystemCheckWarnSimpleXMLHelp": "Maaari mong paganahin ang extension na \"SimpleXML\" (hal. i-install ang \"php-simplexml\" at \/ o \"php-xml\" package).",
+ "SystemCheckWinPdoAndMysqliHelp": "Sa isang Windows server maaari mong idagdag ang sumusunod na linya sa iyong php.ini: %s",
+ "SystemCheckWriteDirs": "Mga directory na may write access",
+ "SystemCheckWriteDirsHelp": "Upang maayos ang error na ito sa iyong system GNU \/ Linux subukang mag-type sa (mga) sumusunod na command.",
+ "SystemCheckZlibHelp": "Kailangan mong i-configure at muling e-build ang PHP na may \"zlib\" na may gumaganang supporta ng --with-zlib.",
+ "Tables": "Pag-gawa ng Tables",
+ "TablesCreatedSuccess": "Ang mga table ay tagumpay na nalikha!",
+ "TablesDelete": "Tanggaling ang mga nakitang table",
+ "TablesDeletedSuccess": "Matagumpay na natanggal ang Piwik table.",
+ "TablesFound": "Ang sumusunod na talahanayan ay natagpuan sa database",
+ "TablesReuse": "Muling gamitin ang mga table",
+ "TablesUpdatedSuccess": "Ang database ay matagumpay na na-update mula sa %1$s sa %2$s!",
+ "TablesWarningHelp": "O di kaya piliin ang pag-gamit muli ng isang database tables o mag install ng bago upang mabura lahat ng datus sa database.",
+ "TablesWithSameNamesFound": "Ang i-iilang %1$s mga table sa iyong database ng %2$s ay may kaparehong pangalan tulad ng mga tables sa Piwik na sinusubukang gawin.",
+ "Timezone": "website time zone",
+ "WeHopeYouWillEnjoyPiwik": "Umaasa kaming masiyahan ka sa paggamit ng Piwik kagaya ng aming kasiyahan sa paggawa nito.",
+ "Welcome": "Maligayang Pagdating!",
+ "WelcomeHelp": "<p>Piwi ay isang libreng web analytics software na ginagawang madali ang pagkuha ng impormasyon sa iyong mga bisita. <\/p> <p> Ang prosesong ito ay nakabahagi sa %s easy steps at uma-aabot lamang ng 5 minutes.<\/p>",
+ "WelcomeToCommunity": "Maligayang pagdating sa komunidad Piwik!"
+ }
+} \ No newline at end of file
diff --git a/plugins/Installation/lang/zh-cn.json b/plugins/Installation/lang/zh-cn.json
index 4ac196b177..647ed1be5a 100644
--- a/plugins/Installation/lang/zh-cn.json
+++ b/plugins/Installation/lang/zh-cn.json
@@ -33,6 +33,7 @@
"NfsFilesystemWarningSuffixAdmin": "这意味着 Piwik 使用基于文件的会话将会非常慢。",
"NfsFilesystemWarningSuffixInstall": "在NFS上使用基于文件的会话会非常慢,所以 Piwik 将使用数据库会话。如果您有很多并发的面板用户,需要在增大客户端连接到服务器的最大数。",
"NoConfigFound": "无法找到 Piwik 配置文件,而您正尝试存取一个 Piwik 的页面!<br \/><b>  » 您可以 <a href='index.php'>立刻安装 Piwik<\/a><\/b><br \/><small>假如您在之前已安装过 Piwik,并且已有些数据表在您的数据库中,不用担心,您可以重复使用此相同的数据表并保留您现存的数据!<\/small>",
+ "NotSupported": "不支持",
"Optional": "选项",
"Password": "密码",
"PasswordDoNotMatch": "密码不匹配",
diff --git a/plugins/LanguagesManager/lang/tl.json b/plugins/LanguagesManager/lang/tl.json
new file mode 100644
index 0000000000..35b78fceb3
--- /dev/null
+++ b/plugins/LanguagesManager/lang/tl.json
@@ -0,0 +1,7 @@
+{
+ "LanguagesManager": {
+ "AboutPiwikTranslations": "Tungkol sa pagsasaling ng Piwik",
+ "PluginDescription": "Ang plugin na ito ay pinapakita ng mga listahan ng mga pwedeng wika para sa Piwik Interface. Ang wika na mapipili ay ma-sasave sa bawat mapipili ng user.",
+ "TranslationSearch": "Paghahanap ng Pagsasalin"
+ }
+} \ No newline at end of file
diff --git a/plugins/LanguagesManager/lang/zh-cn.json b/plugins/LanguagesManager/lang/zh-cn.json
index dd4aa267e0..698f6f88d7 100644
--- a/plugins/LanguagesManager/lang/zh-cn.json
+++ b/plugins/LanguagesManager/lang/zh-cn.json
@@ -1,6 +1,7 @@
{
"LanguagesManager": {
"AboutPiwikTranslations": "关于 Piwik 翻译",
- "PluginDescription": "这个插件会显示 Piwik 页面可以使用的语言列表。选择的语言将会被保存在每个用户的偏好里。"
+ "PluginDescription": "这个插件会显示 Piwik 页面可以使用的语言列表。选择的语言将会被保存在每个用户的偏好里。",
+ "TranslationSearch": "交易搜索"
}
} \ No newline at end of file
diff --git a/plugins/LanguagesManager/tests/Integration/LanguagesManagerTest.php b/plugins/LanguagesManager/tests/Integration/LanguagesManagerTest.php
index 3ed219acf4..7b41c3f55e 100755
--- a/plugins/LanguagesManager/tests/Integration/LanguagesManagerTest.php
+++ b/plugins/LanguagesManager/tests/Integration/LanguagesManagerTest.php
@@ -99,10 +99,11 @@ class LanguagesManagerTest extends \PHPUnit_Framework_TestCase
if ($translationWriter->wasFiltered()) {
$translationWriter->saveTemporary();
- $this->fail(implode("\n", $translationWriter->getFilterMessages()) . "\n"
+ $this->markTestSkipped(implode("\n", $translationWriter->getFilterMessages()) . "\n"
. 'Translation file errors detected in ' . $language . "...\n"
- . "To overwrite you could manually fix the language files, or run the following command may work if you have access to oTrance: \n"
- . "$ ./console translations:update [--plugin=XYZ] \n");
+ . "To synchronise the language files with the english strings, you can manually edit the language files or run the following command may work if you have access to oTrance: \n"
+ . "$ ./console translations:update [--plugin=XYZ] \n"
+ );
}
}
diff --git a/plugins/LeftMenu/lang/tl.json b/plugins/LeftMenu/lang/tl.json
new file mode 100644
index 0000000000..ecf59a587c
--- /dev/null
+++ b/plugins/LeftMenu/lang/tl.json
@@ -0,0 +1,10 @@
+{
+ "LeftMenu": {
+ "GlobalSettingDescription": "Tinutukoy ang default system para sa lahat ng iyong mga user.",
+ "GlobalSettingInlineHelp": "Ang user ay maari makapag pagana o hindi makapag pagana ng menu sa kaliwa na independent sa system default.",
+ "GlobalSettingTitle": "Ang kaliwa menu ay gumagana bilang default",
+ "SettingsIntroduction": "Ang kaliwang menu na may plugin ay pwedeng ilipat ang menu kung saan makikita ang ulat mula sa taas papunta sa kaliwa kung ito ay gumagana. Ito ay lalong mapapakinabangan sa malalaking display.",
+ "UserSettingInlineHelp": "Ang menu sa kaliwa ay pwede mong paganahin o wag paganahin at hindi maapektuhan ang ibang mga user. Ang Super User ay pwedeng baguhin ang lahat pangunahing pagpipilian sa lahat ng users.",
+ "UserSettingTitle": "Pagahanin ang kaliwang menu na pang ulat"
+ }
+} \ No newline at end of file
diff --git a/plugins/LeftMenu/lang/zh-cn.json b/plugins/LeftMenu/lang/zh-cn.json
new file mode 100644
index 0000000000..fef3e18afd
--- /dev/null
+++ b/plugins/LeftMenu/lang/zh-cn.json
@@ -0,0 +1,6 @@
+{
+ "LeftMenu": {
+ "GlobalSettingTitle": "左菜单默认打开",
+ "UserSettingTitle": "开启左边的报表菜单"
+ }
+} \ No newline at end of file
diff --git a/plugins/Live/lang/tl.json b/plugins/Live/lang/tl.json
new file mode 100644
index 0000000000..23f606bad1
--- /dev/null
+++ b/plugins/Live/lang/tl.json
@@ -0,0 +1,37 @@
+{
+ "Live": {
+ "AbandonedCartSummary": "%1$s%2$s inabandunang mga cart%3$s at %4$s inabandunang mga item %5$sna may halagang aabot sa total na %6$s%7$s.",
+ "AveragePageGenerationTime": "Bawat pahina ay umaabot ng %1$s upang mag-load para sa bisita.",
+ "CalculatedOverNPageViews": "Kinakalkula gamit ang huling %1$s page view ng bisita na ito.",
+ "ClickToViewMoreAboutVisit": "Pindutin dito upang makita ang marami pang impormasyon tungkol sa pagbisita.",
+ "ConvertedNGoals": "Mga na convert %s na goal",
+ "FirstVisit": "Unang pagbisita",
+ "GoalType": "Uri",
+ "HideMap": "itago ang mapa",
+ "KeywordRankedOnSearchResultForThisVisitor": "Ang keyword na %1$s ay may ranggong %2$s sa %3$s pahina ng resulta.",
+ "LastHours": "Huling oras %s",
+ "LastMinutes": "Huling %s minuto",
+ "LastVisit": "Huling pagbisita",
+ "LinkVisitorLog": "Tingnan ang detalyadong log ng bisita",
+ "LoadMoreVisits": "Mag-load ng higit pang mga pagbisita",
+ "MorePagesNotDisplayed": "marami pang mga pahina ng bisitang ito ang hindi ipinapakita",
+ "NbVisitors": "mga bisita %s",
+ "NextVisitor": "Susunod na bisita",
+ "NoMoreVisits": "Wala nang bumisita para sa bisitang ito.",
+ "PageRefreshed": "Dami ng beses na binuksan ang pahinang ito \/ ni-refresh sa isang hilera.",
+ "PluginDescription": "Panoorin ang iyong mga bisita sa real-time!",
+ "PreviousVisitor": "nakaraang bisita",
+ "RealTimeVisitorCount": "Real Time na bilang ng mga bisita",
+ "Referrer_URL": "Referrer URL",
+ "ShowMap": "ipakita ang mapa",
+ "SimpleRealTimeWidget_Message": "%s at %s sa nakaraang %s",
+ "ViewVisitorProfile": "Tingnan ang profile ng bisita",
+ "VisitedPages": "Binisitang mga pahina",
+ "VisitorLog": "Log ng bisita",
+ "VisitorLogDocumentation": "Ang table na ito ay nagpapakita ng mga pinakabagong mga pagbisita sa loob ng napiling hanay ng petsa. Maaari mong makita kung kelan ang huling pag bisita ng iyong bisita sa pamamagitan ng pag hover sa petsa ng pag bisita. %s Kung ang sakop ng petsa ay kaasama ngayon makikita mo ang lahat ng iyong mga bisita real time! %s Ang datus ng pinapakita dito ay laging live hindi alintana at kung gaano kadalas mo ginagamit ang archiving cron-job.",
+ "VisitorProfile": "profile ng Bisita",
+ "VisitorsInRealTime": "Real time na pagbisita",
+ "VisitorsLastVisit": "Ang huling bisita ng bisitang ito ay %s araw na ang nakakalipas.",
+ "VisitsFrom": "%1$s%2$s pagbisita sa %3$s mula sa"
+ }
+} \ No newline at end of file
diff --git a/plugins/Live/templates/getSingleVisitSummary.twig b/plugins/Live/templates/getSingleVisitSummary.twig
index 9206c5ac51..77f1c8f2bb 100644
--- a/plugins/Live/templates/getSingleVisitSummary.twig
+++ b/plugins/Live/templates/getSingleVisitSummary.twig
@@ -31,7 +31,7 @@
{% endif %}
<div class="visitor-profile-os">
- {% if visitData.operatingSystemIcon is defined %}<img src="{{ visitData.operatingSystemIcon }}"/>{% endif %}{% if visitData.operatingSystemShortName is defined %}<span>{{ visitData.operatingSystemShortName }}</span>{% endif %}
+ {% if visitData.operatingSystemIcon is defined %}<img src="{{ visitData.operatingSystemIcon }}"/>{% endif %}{% if visitData.operatingSystem is defined %}<span>{{ visitData.operatingSystem }}</span>{% endif %}
</div>
</li>
{% if visitData.resolution is defined %}<li><span>{{ 'UserSettings_ColumnResolution'|translate }}</span><strong>{{ visitData.resolution }}</strong></li>{% endif %}
diff --git a/plugins/Live/tests/Integration/APITest.php b/plugins/Live/tests/Integration/APITest.php
index fc56b0d16e..2c85088a19 100644
--- a/plugins/Live/tests/Integration/APITest.php
+++ b/plugins/Live/tests/Integration/APITest.php
@@ -12,9 +12,9 @@ use Piwik\Date;
use Piwik\Db;
use Piwik\Plugins\Goals\API as GoalsApi;
use Piwik\Plugins\Live\API;
-use FakeAccess;
use Piwik\Access;
use Piwik\Tests\Framework\Fixture;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
/**
diff --git a/plugins/Login/lang/tl.json b/plugins/Login/lang/tl.json
new file mode 100644
index 0000000000..743e7e46a0
--- /dev/null
+++ b/plugins/Login/lang/tl.json
@@ -0,0 +1,22 @@
+{
+ "Login": {
+ "ConfirmationLinkSent": "Ang link na upang ma-konpirma ang iyong detalye ay ipinadala na sa iyong inbox. Tignan ang iyong e-mail at bisitahin ang link na ito upang masagawa ang iyong hiling na baguhin ang iyong password.",
+ "ContactAdmin": "Mga posibleng dahilan: maaaring hindi pinagana ng iyong host ang function mail (). <br \/> Mangyaring makipag-ugnay sa iyong Piwik administrator.",
+ "ExceptionInvalidSuperUserAccessAuthenticationMethod": "Ang isang user na may Super-access ay hindi maaaring e-authenticate gamit ang '%s' mechanism.",
+ "ExceptionPasswordMD5HashExpected": "Ang parameter ng password ay inaasahan na maging isang MD5 hash ng password.",
+ "InvalidNonceOrHeadersOrReferrer": "Form security failed. Mangyaring i-reload ang form at suriin kung ang iyong cookies ay gumagana. Kung ikaw ay gumagamit ng proxy server dapat mong %s i-configure ang Piwik upang makatanggap ng proxy header %s para ma e-forward sa host header. At dapat mong e-check ang iyong Referrer header kung ito ay napadala ng tama.",
+ "InvalidOrExpiredToken": "Ang token ay hindi wasto o nag-expire.",
+ "InvalidUsernameEmail": "Di-wasto ang username o e-mail address.",
+ "LogIn": "Mag-sign in",
+ "LoginOrEmail": "Username o E-mail",
+ "LoginPasswordNotCorrect": "Maling kumbinasyon ng Username at Password",
+ "LostYourPassword": "Naiwala ang iyong password?",
+ "MailTopicPasswordChange": "Kumpirmahin ang pag papalit ng password",
+ "PasswordChanged": "Ang iyong password ay nabago na.",
+ "PasswordRepeat": "Password (ulitin)",
+ "PasswordsDoNotMatch": "Ang mga password ay hindi tugma.",
+ "PluginDescription": "Login Authentication plugin binabasa ang credentials mula sa config\/config.ini php file para sa initial na Super User at mula sa Database para sa iba pang mga user. Ito ay madaling mapapalitan upang maipapakilala sa isang bagong Authentication mechanism (OpenID htaccess custom Auth atbp.",
+ "RememberMe": "Tandaan Ako",
+ "ResetPasswordInstructions": "Magpasok ng isang bagong password para sa iyong account."
+ }
+} \ No newline at end of file
diff --git a/plugins/Login/templates/_formErrors.twig b/plugins/Login/templates/_formErrors.twig
new file mode 100644
index 0000000000..2eaf82c2ab
--- /dev/null
+++ b/plugins/Login/templates/_formErrors.twig
@@ -0,0 +1,9 @@
+
+{% if formErrors is defined and formErrors is not empty %}
+ <div class="message_error">
+ {% for data in formErrors %}
+ <strong>{{ 'General_Error'|translate }}</strong>: {{ data|raw }}
+ <br/>
+ {% endfor %}
+ </div>
+{% endif %}
diff --git a/plugins/Login/templates/login.twig b/plugins/Login/templates/login.twig
index 830b8b0f85..aca53736f6 100644
--- a/plugins/Login/templates/login.twig
+++ b/plugins/Login/templates/login.twig
@@ -74,13 +74,8 @@
{% include '@CoreHome/_warningInvalidHost.twig' %}
{% else %}
<div id="message_container">
- {% if form_data.errors %}
- <div class="message_error">
- {% for data in form_data.errors %}
- <strong>{{ 'General_Error'|translate }}</strong>: {{ data|raw }}<br/>
- {% endfor %}
- </div>
- {% endif %}
+
+ {{ include('@Login/_formErrors.twig', {formErrors: form_data.errors } ) }}
{% if AccessErrorString %}
<div class="message_error">
diff --git a/plugins/Login/templates/resetPassword.twig b/plugins/Login/templates/resetPassword.twig
index 4a4debe91d..cd880456f7 100755
--- a/plugins/Login/templates/resetPassword.twig
+++ b/plugins/Login/templates/resetPassword.twig
@@ -1,12 +1,4 @@
{% if infoMessage is defined and infoMessage is not empty %}
<p class="message">{{ infoMessage }}</p>
{% endif %}
-{% if formErrors is defined and formErrors is not empty %}
- <p class="message_error">
- {% for data in formErrors %}
- <strong>{{ 'General_Error'|translate }}</strong>
- : {{ data }}
- <br/>
- {% endfor %}
- </p>
-{% endif %} \ No newline at end of file
+{% include '@Login/_formErrors.twig' %} \ No newline at end of file
diff --git a/plugins/Login/tests/Integration/LoginTest.php b/plugins/Login/tests/Integration/LoginTest.php
index b250bcf8e0..67d1d34d97 100644
--- a/plugins/Login/tests/Integration/LoginTest.php
+++ b/plugins/Login/tests/Integration/LoginTest.php
@@ -13,8 +13,8 @@ use Piwik\AuthResult;
use Piwik\DbHelper;
use Piwik\Plugins\Login\Auth;
use Piwik\Plugins\UsersManager\API;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
require_once PIWIK_INCLUDE_PATH . '/plugins/Login/Auth.php';
diff --git a/plugins/MobileMessaging/API.php b/plugins/MobileMessaging/API.php
index c8268c76a7..aaf30e6a64 100644
--- a/plugins/MobileMessaging/API.php
+++ b/plugins/MobileMessaging/API.php
@@ -365,7 +365,7 @@ class API extends \Piwik\Plugin\API
{
Option::set(
$user . MobileMessaging::USER_SETTINGS_POSTFIX_OPTION,
- Common::json_encode($settings)
+ json_encode($settings)
);
}
@@ -392,7 +392,7 @@ class API extends \Piwik\Plugin\API
if (empty($userSettings)) {
$userSettings = array();
} else {
- $userSettings = Common::json_decode($userSettings, true);
+ $userSettings = json_decode($userSettings, true);
}
return $userSettings;
diff --git a/plugins/MobileMessaging/lang/tl.json b/plugins/MobileMessaging/lang/tl.json
new file mode 100644
index 0000000000..22c3efe4c4
--- /dev/null
+++ b/plugins/MobileMessaging/lang/tl.json
@@ -0,0 +1,41 @@
+{
+ "MobileMessaging": {
+ "Exception_UnknownProvider": "%s' ay hindi kilalang pangalan ng Provider. Subukan ang alinman sa mga sumusunod sa halip: %s.",
+ "MobileReport_AdditionalPhoneNumbers": "Maaari kang magdagdag iba pang numero ng telepono sa pag-access sa",
+ "MobileReport_MobileMessagingSettingsLink": "Ang pahina para sa Mobile Messaging settings.",
+ "MobileReport_NoPhoneNumbers": "Mangyaring i-activate ang kahit isang phone number sa pamamagitan ng pag-access",
+ "MultiSites_Must_Be_Activated": "Upang makabuo ng mga teksto ng SMS sa iyong stats website mangyaring paganahin ang MultiSites plugin sa Piwik.",
+ "PhoneNumbers": "Mga numero ng telepono",
+ "PluginDescription": "Lumikha at mag-download ng mga custome na ulat sa SMS at itoy ipadala sa iyong mobile araw-araw lingo-linggo o buwanan.",
+ "Settings_APIKey": "API Key",
+ "Settings_CountryCode": "Country Code",
+ "Settings_CredentialNotProvided": "Bago ka gumawa at pamahalaan ang mga numero ng telepono mangyaring e-konekta ang Piwik sa iyong SMS Account sa itaas.",
+ "Settings_CredentialNotProvidedByAdmin": "Bago ka gumawa at mamahala sa mga numero ng telepono mangyaring hilingin sa iyong administrator na e-konek ang Piwik sa isang SMS Account.",
+ "Settings_CredentialProvided": "Ang iyong %s SMS API account ay naka-configure nang tama!",
+ "Settings_DeleteAccountConfirm": "Sigurado ka bang gusto mong tanggaling ang SMS account na ito?",
+ "Settings_InvalidActivationCode": "Ang ipinasok na code ay hindi balido pakisubukang muli.",
+ "Settings_LetUsersManageAPICredential": "Pahintulutan ang mga gumagamit na pamahalaan ang kredensyal ng kanilang sariling SMS API.",
+ "Settings_LetUsersManageAPICredential_No_Help": "Lahat ng mga user ay makakatanggap ng mga ulat sa SMS at magagamit ang iyong user account's credits.",
+ "Settings_LetUsersManageAPICredential_Yes_Help": "Ang bawat user ay makakapag-setup ng kanilang sariling SMS API Account at hindi gagamitin ang iyong credit.",
+ "Settings_ManagePhoneNumbers": "Pamahalaan ang mga Numero ng Telepono",
+ "Settings_PhoneActivated": "Ang numero ng telepono ay nabigyang-bisa! Maaari ka nang makatanggap ng SMS tungkol sa iyong stats.",
+ "Settings_PhoneNumber": "Phone Number",
+ "Settings_PhoneNumbers_Add": "Magdagdag ng bagong Numero ng Telepono",
+ "Settings_PhoneNumbers_CountryCode_Help": "Kung hindi alam ang code ng telepono ng iyong bansa hanapin ang iyong bansa dito.",
+ "Settings_PhoneNumbers_Help": "Bago makatanggap ng SMS (text message) sa mga ulat sa isang telepono ang numero ang telepono ay dapat na maipasok sa baba.",
+ "Settings_PhoneNumbers_HelpAdd": "Kapag iyong na-click ang 'Add\" isang SMS na naglalaman ng code ay ipapadala sa iyong telepono. Ang user ay makakatanggap ng code na ito ay dapat na mag-login sa Piwik i-click ang settings pagkatapos ay e-click ang Mobile Messaging. Matapos na ipasok ang code ang user ay may matatanggap ng ulat mula sa kanyang phone.",
+ "Settings_PleaseSignUp": "Upang lumikha ng mga ulat sa SMS at tumanggap ng maikling mga text na mensahe patungkol sa stats ng iyong mga website sa iyong mobile phone mangyaring mag-sign up gamit ang SMS API at ipasok ang iyong impormasyon sa ibaba",
+ "Settings_SMSAPIAccount": "Pamamahala sa SMS API Account",
+ "Settings_SMSProvider": "SMS Provider",
+ "Settings_SuperAdmin": "Mga Super Setting ng User",
+ "Settings_SuspiciousPhoneNumber": "Kung hindi mo natanggap ang text message maaari mong subukan mo ng walang mga zero sa unahan ng numbero. ibig sabihin. %s",
+ "Settings_UpdateOrDeleteAccount": "Pwede mo ring %s i-update %s o %s tanggalin %s ang account na ito.",
+ "Settings_ValidatePhoneNumber": "Validate",
+ "Settings_VerificationCodeJustSent": "Kakapadala lang namin ng SMS sa numerong ito na may code na: mangyarin ilagay ang code sa taas at e-click ang \"Validate\".",
+ "SettingsMenu": "Mobile Messaging",
+ "SMS_Content_Too_Long": "[masyadong mahaba]",
+ "TopLinkTooltip": "Kumuha ng Ulat para sa Web Analytics na mai-hahatid sa iyong email inbox o sa iyong mobile phone.",
+ "TopMenu": "Mga ulat ng Email at SMS",
+ "VerificationText": "Ang code ay %s. Upang mapatunayan ang iyong numero at makatanggap ng Piwik SMS mangyaring kopyahin ang code na ito sa form sa pamamagitan ng Piwik >%s >%s"
+ }
+} \ No newline at end of file
diff --git a/plugins/MobileMessaging/tests/Integration/MobileMessagingTest.php b/plugins/MobileMessaging/tests/Integration/MobileMessagingTest.php
index 022dfda9ba..037bfb6e45 100644
--- a/plugins/MobileMessaging/tests/Integration/MobileMessagingTest.php
+++ b/plugins/MobileMessaging/tests/Integration/MobileMessagingTest.php
@@ -14,8 +14,8 @@ use Piwik\Plugins\MobileMessaging\MobileMessaging;
use Piwik\Plugins\MobileMessaging\SMSProvider;
use Piwik\Plugins\ScheduledReports\API as APIScheduledReports;
use Piwik\Plugins\SitesManager\API as APISitesManager;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
/**
* Class Plugins_MobileMessagingTest
diff --git a/plugins/MultiSites/lang/tl.json b/plugins/MultiSites/lang/tl.json
new file mode 100644
index 0000000000..d3a4875b8e
--- /dev/null
+++ b/plugins/MultiSites/lang/tl.json
@@ -0,0 +1,9 @@
+{
+ "MultiSites": {
+ "Evolution": "Ebolusyon",
+ "LoadingWebsites": "Naglo-load ang mga website",
+ "Pagination": "%s - %s ng %s",
+ "PluginDescription": "Ipakita ang multi-site na buod ng executive \/ statistics. Na kasalukuyan pinapanatili bilang pangunahing Piwik plugin.",
+ "TopLinkTooltip": "Ikumpara ang stats ng Web Analytics para sa lahat ng iyong Website."
+ }
+} \ No newline at end of file
diff --git a/plugins/Overlay/Controller.php b/plugins/Overlay/Controller.php
index ea540c6e14..7ddfde1e41 100644
--- a/plugins/Overlay/Controller.php
+++ b/plugins/Overlay/Controller.php
@@ -160,7 +160,7 @@ class Controller extends \Piwik\Plugin\Controller
var urlToRedirect = window.location.hash.substr(1);
var urlToRedirectWithoutPrefix = removeUrlPrefix(urlToRedirect);
- var knownUrls = ' . Common::json_encode($urls) . ';
+ var knownUrls = ' . json_encode($urls) . ';
for (var i = 0; i < knownUrls.length; i++) {
var testUrl = removeUrlPrefix(knownUrls[i]);
if (urlToRedirectWithoutPrefix.substr(0, testUrl.length) == testUrl) {
diff --git a/plugins/Overlay/lang/tl.json b/plugins/Overlay/lang/tl.json
new file mode 100644
index 0000000000..231c42ba93
--- /dev/null
+++ b/plugins/Overlay/lang/tl.json
@@ -0,0 +1,20 @@
+{
+ "Overlay": {
+ "Clicks": "%s na mga click",
+ "ClicksFromXLinks": "%1$s i-click mula sa isa sa %2$s links.",
+ "Domain": "Domain",
+ "ErrorNotLoading": "Ang sesyon ng Page Overlay ay hindi pa mailunsad.",
+ "ErrorNotLoadingDetails": "Marahil ang pahina na naload sa kanan ay walang Piwik tracker code. Sa ganitong sitwasyon subukan mong e-launch ang overlay sa ibat-ibang pahina na nang-galing sa ulat ng mga pahina.",
+ "ErrorNotLoadingDetailsSSL": "Dahil ginagamit mo ang https sa Piwik ang pinakapang-karaniwang dahilan ay ang iyong website ay hindi suportado ang SSL. Subukang gamitin ang http sa Piwik.",
+ "ErrorNotLoadingLink": "I-click dito upang makakuha ng maraming tip sa pag-totroubleshoot.",
+ "Link": "Link",
+ "Location": "Lokasyon",
+ "NoData": "Walang datos para sa pahinang ito sa napiling panahon.",
+ "OpenFullScreen": "Mag full screen (walang sidebar)",
+ "Overlay": "Page Overlay",
+ "PluginDescription": "Tingnan ang analitiko na datos bilang overlay ng iyong tunay na website.",
+ "RedirectUrlError": "Sinusubukan mo upang buksan ang Overlay ng Pahina para sa URL na \"%s\". %s Wala sa mga domains ng Piwik settings ang tugma sa link",
+ "RedirectUrlErrorAdmin": "Maaari mong idagdag ang domain na karagdagang URL %s sa mga setting ng %s.",
+ "RedirectUrlErrorUser": "Tanungin ang iyong administrator upang idagdag ang domain bilang isang karagdagang URL."
+ }
+} \ No newline at end of file
diff --git a/plugins/PrivacyManager/Controller.php b/plugins/PrivacyManager/Controller.php
index c950d789ed..1a50d7ac63 100644
--- a/plugins/PrivacyManager/Controller.php
+++ b/plugins/PrivacyManager/Controller.php
@@ -133,7 +133,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
if (Piwik::hasUserSuperUserAccess()) {
$view->deleteData = $this->getDeleteDataInfo();
$view->anonymizeIP = $this->getAnonymizeIPInfo();
- $view->dntSupport = DoNotTrackHeaderChecker::isActive();
+ $dntChecker = new DoNotTrackHeaderChecker();
+ $view->dntSupport = $dntChecker->isActive();
$view->canDeleteLogActions = Db::isLockPrivilegeGranted();
$view->dbUser = PiwikConfig::getInstance()->database['username'];
$view->deactivateNonce = Nonce::getNonce(self::DEACTIVATE_DNT_NONCE);
@@ -297,7 +298,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
Piwik::checkUserHasSuperUserAccess();
Nonce::checkNonce(self::DEACTIVATE_DNT_NONCE);
- DoNotTrackHeaderChecker::deactivate();
+ $dntChecker = new DoNotTrackHeaderChecker();
+ $dntChecker->deactivate();
$this->redirectToIndex('PrivacyManager', 'privacySettings');
}
@@ -307,7 +309,8 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
Piwik::checkUserHasSuperUserAccess();
Nonce::checkNonce(self::ACTIVATE_DNT_NONCE);
- DoNotTrackHeaderChecker::activate();
+ $dntChecker = new DoNotTrackHeaderChecker();
+ $dntChecker->activate();
$this->redirectToIndex('PrivacyManager', 'privacySettings');
}
diff --git a/plugins/PrivacyManager/DoNotTrackHeaderChecker.php b/plugins/PrivacyManager/DoNotTrackHeaderChecker.php
index 14938f426e..4b2984c54c 100644
--- a/plugins/PrivacyManager/DoNotTrackHeaderChecker.php
+++ b/plugins/PrivacyManager/DoNotTrackHeaderChecker.php
@@ -18,10 +18,19 @@ use Piwik\Tracker\Request;
* - X-Do-Not-Track header (used by AdBlockPlus and NoScript)
* - DNT header (used by Mozilla)
*
+ * Note: visits from Internet Explorer and other browsers that have DoNoTrack enabled by default will be tracked anyway.
*/
class DoNotTrackHeaderChecker
{
/**
+ * @param Config $config
+ */
+ public function __construct($config = null)
+ {
+ $this->config = $config ?: new Config();
+ }
+
+ /**
* Checks for DoNotTrack headers and if found, sets `$exclude` to `true`.
*/
public function checkHeaderInTracker(&$exclude)
@@ -31,25 +40,9 @@ class DoNotTrackHeaderChecker
return;
}
- if (!$this->isActive()) {
- Common::printDebug("DoNotTrack support is not enabled, skip check");
- return;
- }
-
- if ((isset($_SERVER['HTTP_X_DO_NOT_TRACK']) && $_SERVER['HTTP_X_DO_NOT_TRACK'] === '1')
- || (isset($_SERVER['HTTP_DNT']) && substr($_SERVER['HTTP_DNT'], 0, 1) === '1')
- ) {
- $request = new Request($_REQUEST);
- $ua = $request->getUserAgent();
- if (strpos($ua, 'MSIE') !== false
- || strpos($ua, 'Trident') !== false) {
- Common::printDebug("INTERNET EXPLORER enable DoNotTrack by default; so Piwik ignores DNT IE browsers...");
- return;
- }
-
- Common::printDebug("DoNotTrack header found!");
+ $exclude = $this->isDoNotTrackFound();
- $exclude = true;
+ if($exclude) {
$trackingCookie = IgnoreCookie::getTrackingCookie();
$trackingCookie->delete();
@@ -58,27 +51,50 @@ class DoNotTrackHeaderChecker
// /.well-known/dnt
// per Tracking Preference Expression (draft)
header('Tk: 1');
- } else {
+ }
+ }
+
+ /**
+ * @return bool
+ */
+ public function isDoNotTrackFound()
+ {
+ if (!$this->isActive()) {
+ Common::printDebug("DoNotTrack support is not enabled, skip check");
+ return false;
+ }
+
+ if (!$this->isHeaderDntFound()) {
Common::printDebug("DoNotTrack header not found");
+ return false;
}
+
+ $request = new Request($_REQUEST);
+ $userAgent = $request->getUserAgent();
+
+ if ($this->isUserAgentWithDoNotTrackAlwaysEnabled($userAgent)) {
+ Common::printDebug("INTERNET EXPLORER enable DoNotTrack by default; so Piwik ignores DNT IE browsers...");
+ return false;
+ }
+
+ Common::printDebug("DoNotTrack header found!");
+ return true;
}
/**
* Deactivates DoNotTrack header checking. This function will not be called by the Tracker.
*/
- public static function deactivate()
+ public function deactivate()
{
- $config = new Config();
- $config->doNotTrackEnabled = false;
+ $this->config->doNotTrackEnabled = false;
}
/**
* Activates DoNotTrack header checking. This function will not be called by the Tracker.
*/
- public static function activate()
+ public function activate()
{
- $config = new Config();
- $config->doNotTrackEnabled = true;
+ $this->config->doNotTrackEnabled = true;
}
/**
@@ -86,9 +102,50 @@ class DoNotTrackHeaderChecker
*
* @return bool
*/
- public static function isActive()
+ public function isActive()
+ {
+ return $this->config->doNotTrackEnabled;
+ }
+
+ /**
+ * @return bool
+ */
+ protected function isHeaderDntFound()
+ {
+ return (isset($_SERVER['HTTP_X_DO_NOT_TRACK']) && $_SERVER['HTTP_X_DO_NOT_TRACK'] === '1')
+ || (isset($_SERVER['HTTP_DNT']) && substr($_SERVER['HTTP_DNT'], 0, 1) === '1');
+ }
+
+ /**
+ *
+ * @param $userAgent
+ * @return bool
+ */
+ protected function isUserAgentWithDoNotTrackAlwaysEnabled($userAgent)
+ {
+ $browsersWithDnt = $this->getBrowsersWithDNTAlwaysEnabled();
+ foreach($browsersWithDnt as $userAgentBrowserFragment) {
+ if (stripos($userAgent, $userAgentBrowserFragment) !== false) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Some browsers have DNT enabled by default. For those we will ignore DNT and always track those users.
+ *
+ * @return array
+ */
+ protected function getBrowsersWithDNTAlwaysEnabled()
{
- $config = new Config();
- return $config->doNotTrackEnabled;
+ return array(
+ // IE
+ 'MSIE',
+ 'Trident',
+
+ // Maxthon
+ 'Maxthon',
+ );
}
}
diff --git a/plugins/PrivacyManager/PrivacyManager.php b/plugins/PrivacyManager/PrivacyManager.php
index ddce27fa3c..c803638a04 100644
--- a/plugins/PrivacyManager/PrivacyManager.php
+++ b/plugins/PrivacyManager/PrivacyManager.php
@@ -177,7 +177,7 @@ class PrivacyManager extends Plugin
// default values
$form->addDataSource(new HTML_QuickForm2_DataSource_Array(array(
- 'do_not_track' => DoNotTrackHeaderChecker::isActive(),
+ 'do_not_track' => $this->dntChecker->isActive(),
'anonymise_ip' => IPAnonymizer::isActive(),
)));
}
@@ -190,10 +190,11 @@ class PrivacyManager extends Plugin
public function installationFormSubmit(FormDefaultSettings $form)
{
$doNotTrack = (bool) $form->getSubmitValue('do_not_track');
+ $dntChecker = new DoNotTrackHeaderChecker();
if ($doNotTrack) {
- DoNotTrackHeaderChecker::activate();
+ $dntChecker->activate();
} else {
- DoNotTrackHeaderChecker::deactivate();
+ $dntChecker->deactivate();
}
$anonymiseIp = (bool) $form->getSubmitValue('anonymise_ip');
diff --git a/plugins/PrivacyManager/lang/tl.json b/plugins/PrivacyManager/lang/tl.json
new file mode 100644
index 0000000000..03c8cb1428
--- /dev/null
+++ b/plugins/PrivacyManager/lang/tl.json
@@ -0,0 +1,63 @@
+{
+ "PrivacyManager": {
+ "AnonymizeIpDescription": "Piliin ang \" Oo \" kung gusto mong hindi subaybayan ng Piwik ang ganap na kwalipikadong IP-address.",
+ "AnonymizeIpInlineHelp": "E-Anonymize ang huling byte ng IP address ng iyong mga bisita upang sumunod sa iyong mga alituntuning local at privacy.",
+ "AnonymizeIpMaskLengtDescription": "Piliin kung gaano karaming byte ng IP ng bisita ang dapat na ikubli.",
+ "AnonymizeIpMaskLength": "%s (na) byte - hal %s",
+ "CannotLockSoDeleteLogActions": "Ang log_action table ay hindi maaring dayain: mangyaring magbigay ng pribilehiyo upang maisagawa ang LOCK TABLES sa '%s' MYSQL user.",
+ "ClickHereSettings": "Mag-click dito upang i-access ang mga setting sa %s.",
+ "CurrentDBSize": "Kasalukuyang laki ng database",
+ "DBPurged": "DB purged",
+ "DeleteBothConfirm": "Iyo ng papaganahin pag tanggal ng data at pag tanggal ng mga ulat. Permanente na nitong aalisin ang iyong kakayahan upang matignan ang mga lumang data ng analytics. Sigurado ka ba na gusto mo itong gawin?",
+ "DeleteDataDescription": "Maaari mong i-configure ang Piwik upang regular na tanggalin ang mga lumang mga log ng bisita at \/ o e-proseso ulat upang mapanatiling maliit ang iyong database.",
+ "DeleteDataDescription2": "Kung nina-nais ang mga naunang nai-prosesong mga ulat ay hindi maalis ang mga nabisita lamang na pageview at conversion log data ang ma-tatanggal. O ang mga naunang-naproseso lang ang maaring tanggalin at log data ay pwede ng itago o ingatan",
+ "DeleteDataInterval": "Tanggalin ang mga lumang data sa bawat",
+ "DeleteDataSettings": "Tanggaling lumang log ng mga bisita at mga ulat.",
+ "DeleteLogDescription2": "Kapag iyong pinagana ang automatic log deletion dapat mong tiyakin na ang lahat ng karaang mga ulat ay na proseso na upang sa ganun ay wala ng data na mawawala.",
+ "DeleteLogInfo": "Ang mga logs sa mga sumusunod na talahanayan ay tatanggalin: %s",
+ "DeleteLogsConfirm": "Iyo ng e-enable ang log data deletion. Kung ang lumang data ang inalis at wala pag ulat na ginawa hindi mo makikita ang mga nakaraang datus ng analytics. Sigurado ka bang gusto mong gawin ito?",
+ "DeleteLogsOlderThan": "Tanggalin ang mga log na mas luma sa",
+ "DeleteMaxRows": "Pinakamataas na bilang ng mga hilera na tatanggalin sa isang pagtakbo:",
+ "DeleteMaxRowsNoLimit": "walang limitasyon",
+ "DeleteReportsConfirm": "Iyong papaganahin ang pag tanggal sa datus ng ulat. Kung ang matatagal ng ulat ay natanggal Kailangan mong ulitin ang mga ito upang makita. Gustomo mo bang gawin ito?",
+ "DeleteReportsDetailedInfo": "Ang data mula sa database numeric archive tables (%s) at blob archive tables (%s) ay tinanggal.",
+ "DeleteReportsInfo": "Kung gumagana ang mga lumang ulat ay mabubura. %s Aming inirerekomenda na itoy paganahin lamang kung ang iyong database ay may limitadong espasyo %s.",
+ "DeleteReportsInfo2": "Kung hindi mo pinagana ang \"%s\" mga lumang ulat ay awtomatikong magagawa muli kapag iyong ni-request.",
+ "DeleteReportsInfo3": "Kapag in-enable mo ang \"%s\" and data ay permanenteng mawawala.",
+ "DeleteReportsOlderThan": "Tanggalin ang mga lumang ulat na hihigit sa",
+ "DeleteSchedulingSettings": "Mga setting ng pag-iiskedyul ng",
+ "DoNotTrack_Description": "Do Not Track ay isang teknolohiya at patakaran na nagbibigay daan sa mga gumagamit upang makapili kung nais nitong hindi masubay-bayan ang bawat website na kanilang binibista kabilang na dito ang analytics services mga network sa advertising at social platform.",
+ "DoNotTrack_Disable": "Huwag paganahin ang Do Not Track support",
+ "DoNotTrack_Disabled": "Piwik ay kasalukuyang sinusubaybayan ang lahat ng mga bisita kahit na pinili nila ang \"Hindi ko nais na ako ay masubay-bayan\" sa kanilang mga web browsers.",
+ "DoNotTrack_Enable": "Paganahin ang Do Not Track support",
+ "DoNotTrack_Enabled": "Kasalukuyan mong inirerespeto ang Privacy ng iyong mga user Bravo!",
+ "DoNotTrack_EnabledMoreInfo": "Kapag ang user ay si-net ang kanilang browser sa \"Ayokong ako ay masubay-bayan\" (DoNotTrack ay gagana) at ang Piwik ay hindi susubay-bayan ang mga pagbisitang ito.",
+ "DoNotTrack_SupportDNTPreference": "Suporta para sa Do Not Track preference.",
+ "EstimatedDBSizeAfterPurge": "Tantsang laki ng database pagkatapos ma purge.",
+ "EstimatedSpaceSaved": "Tinatatyang na save na space",
+ "GeolocationAnonymizeIpNote": "Tandaan: Geolocation ay magkakaroon ng tinatayang may parehas na resulta na may 1 byte na hindi pa nakikilala. May 2 bytes o higit pa Geolocation na hindi pa tiyak sa pag gana",
+ "GetPurgeEstimate": "Kunin ang mga na estimate na pag purge",
+ "KeepBasicMetrics": "Panatilihin ang mga pangunahing panukat (mga pagbisita page view rate ng biglaang pag-alis goal conversions ecommerce conversions atbp.",
+ "KeepDataFor": "Itago ang lahat ng datus para sa:",
+ "KeepReportSegments": "Para sa pinanatiling data sa taas panatilihin din ang mga binahaging ulat.",
+ "LastDelete": "Huling pagtanggal ay sa",
+ "LeastDaysInput": "Mangyaring tukuyin ang bilang ng araw na mas mataas kaysa sa %s.",
+ "LeastMonthsInput": "Mangyaring tukuyin ang bilang ng buwan na na mas mataas kaysa %s.",
+ "MenuPrivacySettings": "Privacy",
+ "NextDelete": "Susunod na iskedyul sa pagtaggal sa",
+ "PluginDescription": "I-customize ang Piwik upang gawin itong privacy compliant sa umiiral na legislations.",
+ "PurgeNow": "I-purge ang DB Ngayon",
+ "PurgeNowConfirm": "Iyo ng permanenteng tanggalin ang data mula sa iyong database. Sigurado ka bang gusto mo itong ituloy?",
+ "PurgingData": "Purging data...",
+ "RecommendedForPrivacy": "(nirerekomenda para sa privacy)",
+ "ReportsDataSavedEstimate": "Laki ng database",
+ "SaveSettingsBeforePurge": "Iyong binago ang mga setting ng pagtanggal ng data. Mangyaring i-save ang mga ito bago simulan ang isang pag purge.",
+ "SeeAlsoOurOfficialGuidePrivacy": "Tingnan din ang aming opisyal na gabay: %s Privacy Web Analytics %s",
+ "TeaserHeadline": "Mga setting ng privacy",
+ "UseAnonymizedIpForVisitEnrichment": "Gamitin rin ang hindi kilalang IP address kapag bumibisita.",
+ "UseAnonymizedIpForVisitEnrichmentNote": "Plugis tulad ng Geo Location sa pamamagitang ng IP at Provider ay pinagbuti ang metadata ng mga bumibisita. Sa una ang plugins na ito ay gumagamit ng anonymized IP addresses. Kapag iyong pinili ang 'No' pagkatapos ay ang non-anonymized na IP address ay syang magagamit na mag-reresulta ng may mababang privacy ngunit mas mahusay at tiyak na data.",
+ "UseAnonymizeIp": "I-anonymize ang IP addresses ng mga bisita.",
+ "UseDeleteLog": "Regular na tanggalin ang lumang mga log ng bisita mula sa database",
+ "UseDeleteReports": "Palaging tanggalin ang mga lumang report sa database"
+ }
+} \ No newline at end of file
diff --git a/plugins/PrivacyManager/tests/Framework/Mock/Config.php b/plugins/PrivacyManager/tests/Framework/Mock/Config.php
new file mode 100644
index 0000000000..38cc5a2f98
--- /dev/null
+++ b/plugins/PrivacyManager/tests/Framework/Mock/Config.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Plugins\PrivacyManager\tests\Framework\Mock;
+
+/**
+ * Stub for Piwik\Plugins\PrivacyManager\Config
+ *
+ */
+class Config
+{
+
+} \ No newline at end of file
diff --git a/plugins/PrivacyManager/tests/Unit/DoNotTrackHeaderCheckerTest.php b/plugins/PrivacyManager/tests/Unit/DoNotTrackHeaderCheckerTest.php
new file mode 100644
index 0000000000..a0bf82e958
--- /dev/null
+++ b/plugins/PrivacyManager/tests/Unit/DoNotTrackHeaderCheckerTest.php
@@ -0,0 +1,165 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Plugins\PrivacyManager\tests;
+
+
+use Piwik\Plugins\PrivacyManager\Config;
+use Piwik\Plugins\PrivacyManager\DoNotTrackHeaderChecker;
+
+/**
+ * Class DoNotTrackHeaderCheckerTest
+ * @group DoNotTrackHeaderCheckerTest
+ */
+class DoNotTrackHeaderCheckerTest extends \PHPUnit_Framework_TestCase
+{
+ public function setUp()
+ {
+ $this->cleanupServerGlobals();
+
+ $this->setUserAgentToChrome();
+ }
+
+ public function tearDown()
+ {
+ $this->cleanupServerGlobals();
+ }
+
+ public function test_isDoNotTrackFound_whenDntNotActivated()
+ {
+ $dntChecker = $this->makeDntHeaderChecker();
+
+ $this->assertFalse( $dntChecker->isActive() );
+ $this->assertFalse( $dntChecker->isDoNotTrackFound() );
+ }
+
+ public function getHeader_DntIsActivated()
+ {
+ return array(
+ array('HTTP_X_DO_NOT_TRACK', '1'),
+ array('HTTP_DNT', '1'),
+ array('HTTP_DNT', '10'),
+ );
+ }
+
+ public function getHeader_DntIsNotActivated()
+ {
+ return array(
+ array('HTTP_DNT', '0'),
+ array('HTTP_DNT', 'x'),
+ array('HTTP_X_DO_NOT_TRACK', 'false'),
+ array('HTTP_X_DO_NOT_TRACK', 'ok'),
+ array('HTTP_X_DO_NOT_TRACK', '11'),
+ );
+ }
+
+ /**
+ * @dataProvider getHeader_DntIsActivated
+ */
+ public function test_isDoNotTrackFound_whenDntActivated_BrowserHasDntHeader($headerName, $headerValue)
+ {
+ $dntChecker = $this->makeDntHeaderCheckerEnabled();
+
+ $_SERVER[$headerName] = $headerValue;
+ $this->assertTrue( $dntChecker->isDoNotTrackFound() );
+ }
+
+ /**
+ * @dataProvider getHeader_DntIsNotActivated
+ */
+ public function test_isDoNotTrackFound_whenDntActivated_BrowserDoesNotHaveDntHeader($headerName, $headerValue)
+ {
+ $dntChecker = $this->makeDntHeaderCheckerEnabled();
+
+ $_SERVER[$headerName] = $headerValue;
+ $this->assertFalse( $dntChecker->isDoNotTrackFound() );
+ }
+
+ public function getUserAgents_whereDNTIsAlwaysEnabled()
+ {
+ return array(
+ // IE
+ array('Mozilla/4.0 (compatible; MSIE 4.01; Mac_PowerPC)'),
+ array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; OfficeLiveConnector.1.4; OfficeLivePatch.1.3)'),
+ array('Mozilla/5.0 (IE 11.0; Windows NT 6.3; Trident/7.0; .NET4.0E; .NET4.0C; rv:11.0) like Gecko'),
+
+ // Maxthon
+ array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; MAXTHON 2.0)'),
+ array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Maxthon/4.2.0.4000)'),
+ array('Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.1000 Chrome/30.0.1599.101 Safari/537.36'),
+
+ // With capital letters
+ array('Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) MAXTHON/4.4.3.1000 Chrome/30.0.1599.101 Safari/537.36'),
+ );
+ }
+
+ /**
+ * @dataProvider getUserAgents_whereDNTIsAlwaysEnabled
+ */
+ public function test_isDoNotTrackFound_whenDntActivated_InternetExplorerDoNotTrackIsIgnored($userAgent)
+ {
+ $dntChecker = $this->makeDntHeaderCheckerEnabled();
+
+ $this->activateDoNotTrackInBrowser();
+
+ $_SERVER['HTTP_USER_AGENT'] = $userAgent;
+ $this->assertFalse($dntChecker->isDoNotTrackFound());
+ }
+
+ /**
+ * @return Config
+ */
+ protected function makeConfig()
+ {
+ return new \Piwik\Plugins\PrivacyManager\tests\Framework\Mock\Config();
+ }
+
+ /**
+ * @return DoNotTrackHeaderChecker
+ */
+ protected function makeDntHeaderChecker()
+ {
+ $config = $this->makeConfig();
+ $config->doNotTrackEnabled = false;
+
+ $dntChecker = new DoNotTrackHeaderChecker($config);
+
+ $this->assertFalse($dntChecker->isActive());
+
+ return $dntChecker;
+ }
+
+ protected function cleanupServerGlobals()
+ {
+ $_SERVER['HTTP_X_DO_NOT_TRACK'] = null;
+ $_SERVER['HTTP_DNT'] = null;
+ $_SERVER['HTTP_USER_AGENT'] = null;
+ }
+
+ /**
+ * @return DoNotTrackHeaderChecker
+ */
+ protected function makeDntHeaderCheckerEnabled()
+ {
+ $dntChecker = $this->makeDntHeaderChecker();
+ $dntChecker->activate();
+ $this->assertTrue($dntChecker->isActive());
+ return $dntChecker;
+ }
+
+ protected function setUserAgentToChrome()
+ {
+ $_SERVER['HTTP_USER_AGENT'] = 'Mozilla/5.0 ArchLinux (X11; U; Linux x86_64; en-US) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.100 Safari/534.30';
+ }
+
+ protected function activateDoNotTrackInBrowser()
+ {
+ $_SERVER['HTTP_DNT'] = '1';
+ }
+}
+ \ No newline at end of file
diff --git a/plugins/Provider/lang/fr.json b/plugins/Provider/lang/fr.json
index 7a072db3f7..c22839beb3 100644
--- a/plugins/Provider/lang/fr.json
+++ b/plugins/Provider/lang/fr.json
@@ -3,6 +3,7 @@
"ColumnProvider": "FAI",
"PluginDescription": "Effectue des rapports sur les FAI des visiteurs.",
"ProviderReportDocumentation": "Ce rapport affiche quel Fournisseur d'Accès à Internet vos visiteurs ont utilisé pour accéder à votre site web. Vous pouvez cliquer sur le nom d'un FAI pour plus de détails. %s Si Piwik ne peut déterminer le FAI d'un visiteur, il est listé en tant qu'IP.",
+ "ProviderReportFooter": "Fournisseur d'accès inconnu signifie que l'adresse IP ne peut pas être déterminée",
"SubmenuLocationsProvider": "Situation géographique et FAI",
"WidgetProviders": "Fournisseurs d'accès à Internet"
}
diff --git a/plugins/Provider/lang/sl.json b/plugins/Provider/lang/sl.json
index 32125e7e32..f20ef91f3a 100644
--- a/plugins/Provider/lang/sl.json
+++ b/plugins/Provider/lang/sl.json
@@ -1,6 +1,7 @@
{
"Provider": {
"ColumnProvider": "Ponudnik",
+ "ProviderReportFooter": "Neznan ponudnik pomeni, da IP številke ni bilo mogoče povezati s ponudnikom.",
"SubmenuLocationsProvider": "Lokacije & Ponudnik",
"WidgetProviders": "Ponudniki"
}
diff --git a/plugins/Provider/lang/tl.json b/plugins/Provider/lang/tl.json
new file mode 100644
index 0000000000..561e248f46
--- /dev/null
+++ b/plugins/Provider/lang/tl.json
@@ -0,0 +1,10 @@
+{
+ "Provider": {
+ "ColumnProvider": "Tagapagtustos",
+ "PluginDescription": "Mga Ulat ng provider ng mga bisita.",
+ "ProviderReportDocumentation": "Ang ulat na itoy ang nagpapakita kung anong Internet Server Providers ang gamit ng iyung bisita upang ma-access ang website. Maari mong e-click ang pangalan ng provider para sa karagdagang detalye. %s kung ang Piwik ay hindi matukoy ang provider ng bisita. ito ay nakalista bilang IP.",
+ "ProviderReportFooter": "Ang hindi kilalang provider ay hindi makikita ang IP address.",
+ "SubmenuLocationsProvider": "Mga Lokasyon at Provider",
+ "WidgetProviders": "Mga Tagapagtustos"
+ }
+} \ No newline at end of file
diff --git a/plugins/Referrers/lang/tl.json b/plugins/Referrers/lang/tl.json
new file mode 100644
index 0000000000..8a158fde7a
--- /dev/null
+++ b/plugins/Referrers/lang/tl.json
@@ -0,0 +1,56 @@
+{
+ "Referrers": {
+ "AllReferrersReportDocumentation": "Ang ulat na ito ay nagpapakita ng lahat ng referrers sa pinag-isang ulat ng nakalista ang lahat ng websites Mga keywords at campaigns na ginamit ng iyong bisita upang makita ang iyong website",
+ "Campaigns": "Mga Kampanya",
+ "CampaignsDocumentation": "Ang iyong mga bisita na mula sa iyong website ay result ng isang campaign. %s Tignan ang %s ulat para sa karagdagang mga detalye.",
+ "CampaignsReportDocumentation": "Ang ulat na ito ay nagpapakita ng campaigns kung saan galing ang iyong mga bisita sa iyong website. %s Para sa karagdagang impormasyon tungkol sa tracking campaigns. basahin ang dokumentasyon ng %s campaigns sa piwik.org %s",
+ "ColumnCampaign": "Kampanya",
+ "ColumnSearchEngine": "Search Engine",
+ "ColumnSocial": "Social network",
+ "ColumnWebsite": "Website",
+ "ColumnWebsitePage": "Pahina ng Website",
+ "DetailsByReferrerType": "Mga Detalye ng Referrer Type",
+ "DirectEntry": "Direktang Entry",
+ "DirectEntryDocumentation": "Ang bisita ay nilagay ang URL sa kanyang browser ang nagsimulang maghanap sa loob ng iyong website - ito ay kanyang nilagay diretso sa url.",
+ "Distinct": "Naka bukod na Referrers ayon sa uri ng Referrer.",
+ "DistinctCampaigns": "natatanging mga campaing",
+ "DistinctKeywords": "natatanging mga keyword",
+ "DistinctSearchEngines": "natatanging mga search engine",
+ "DistinctWebsites": "mga natatanging website",
+ "EvolutionDocumentation": "Ito ay isang overview ng mga referrer na umakay sa mga bisita sa iyong website.",
+ "EvolutionDocumentationMoreInfo": "Para sa karagdagang impormasyon tungkol sa iba't ibang mga uri ng referrer tingnan ang dokumentasyon ng table %s.",
+ "Keywords": "Mga Keyword",
+ "KeywordsReportDocumentation": "Ang report na ito ay nagpapakita kung anong ano ang mga keywords na ginagamit ng mga users sa pag sesearch bago sila ma-refer sa iyong website. %s Sa pamamagitan ng pag-click sa isang helira sa table maari mong makita ang distribution ng bawat search engines na may query para sa mga keyword.",
+ "PluginDescription": "Mga Ulat ng mga Referrer data: Search Engine mga keyword websites Campaign Tracking Direktan Entry.",
+ "Referrer": "Referrer",
+ "ReferrerName": "Pangalan ng Referrer",
+ "Referrers": "Mga Referrer",
+ "ReferrersOverview": "Mga Referrer ng Pangkalahatang-pananaw",
+ "SearchEngines": "Search Engines",
+ "SearchEnginesDocumentation": "Ang isang bisita na mula sa iyong website sa ay galing sa isang search engine. %s Tingnan ang mga ulat ang %s para sa karagdagang detalye.",
+ "SearchEnginesReportDocumentation": "Ang ulat na ito ay mag-papakita kung saang search engines na referred ang user papunta sa iyong website. %s Sa pamamagitan ng pag-click sa hilera ng table maari mong makita kung ano-ano ang hinahanap ng user sa partikular na search engine.",
+ "SocialFooterMessage": "Ito ay isang subset ng mga ulat ng website mula sa kaliwa. Ito ay nagsasala ng ibat-ibang website upang e-kumpara mismo sa mga referrer social network.",
+ "Socials": "Social Networks",
+ "SocialsReportDocumentation": "Ang ulat na ito ay nagpapakita kung alin sa mga social networks ang pinang-galingan papunta sa iyong website.<br\/>Sa pamamagitan ng pag-click sa isang hilera sa table maari mong makita kung saang social network nagmula ang iyong bisita papunta sa iyong website.",
+ "SubmenuSearchEngines": "Mga Search Engine at Keyword",
+ "SubmenuWebsites": "Mga websites at panlipunan",
+ "Type": "Uri ng Referrer",
+ "TypeCampaigns": "%s mula sa mga campaign",
+ "TypeDirectEntries": "%s direct entries",
+ "TypeReportDocumentation": "Ang table na ito ay naglalaman ng impormasyon tungkol sa mga uri ng referrer.",
+ "TypeSearchEngines": "%s mula sa mga search engine",
+ "TypeWebsites": "%s mula sa mga website",
+ "UsingNDistinctUrls": "(gamit ang natatanging mga url ng %s)",
+ "ViewAllReferrers": "Tingnan ang lahat ng mga Referrer",
+ "ViewReferrersBy": "Tingnan ang mga Referrer sa pamamagitan ng %s",
+ "Websites": "Websites",
+ "WebsitesDocumentation": "Ang mga bisita na mula sa ibang website na nagpunta sa iyong site. %s Tignan ang %s ulat para sa karagdatang detalye.",
+ "WebsitesReportDocumentation": "Sa table na ito maari mong makita kung saang websites galing ang iyong mga bisita papunta sa iyong websites. %s sa pamamagitan ng pag click sa isang hilera sa table maari mong makita kung aling mga URLs ang mga naka nakalink sa iyong website.",
+ "WidgetExternalWebsites": "Mga website referrer",
+ "WidgetGetAll": "Lahat ng mga Referrer",
+ "WidgetKeywords": "Mga Keyword",
+ "WidgetSocials": "Listahan ng mga social network",
+ "WidgetTopKeywordsForPages": "Nangungunang mga keyword para sa URL ng Pahina",
+ "XPercentOfVisits": "%s%% ng mga pagbisita"
+ }
+} \ No newline at end of file
diff --git a/plugins/SEO/MajesticClient.php b/plugins/SEO/MajesticClient.php
index 5031958209..b7a7eeddc8 100644
--- a/plugins/SEO/MajesticClient.php
+++ b/plugins/SEO/MajesticClient.php
@@ -65,7 +65,7 @@ class MajesticClient
'referrer_domains_count' => false
);
- $apiResponse = Common::json_decode($apiResponse, $assoc = true);
+ $apiResponse = json_decode($apiResponse, $assoc = true);
if (!empty($apiResponse)
&& !empty($apiResponse['Data'])
) {
diff --git a/plugins/SEO/lang/tl.json b/plugins/SEO/lang/tl.json
new file mode 100644
index 0000000000..7e74374088
--- /dev/null
+++ b/plugins/SEO/lang/tl.json
@@ -0,0 +1,15 @@
+{
+ "SEO": {
+ "AlexaRank": "Ranggo sa Alexa",
+ "Bing_IndexedPages": "Mga na index na pahina ng bing",
+ "Dmoz": "DMOZ entries",
+ "DomainAge": "Edad ng Domain",
+ "ExternalBacklinks": "Panlabas na Backlink (Majestic)",
+ "Google_IndexedPages": "Na index ng Google ang mga pahina",
+ "Rank": "Ranggo",
+ "ReferrerDomains": "Referrer Domain (Majestic)",
+ "SeoRankings": "Ranggo sa SEO",
+ "SEORankingsFor": "Ranggo ng SEO para sa %s",
+ "ViewBacklinksOnMajesticSEO": "Tingnan ang mga ulat sa External Backlinks sa MajesticSEO.com"
+ }
+} \ No newline at end of file
diff --git a/plugins/SEO/tests/Integration/SEOTest.php b/plugins/SEO/tests/Integration/SEOTest.php
index 14f8666d61..7ece856ed5 100644
--- a/plugins/SEO/tests/Integration/SEOTest.php
+++ b/plugins/SEO/tests/Integration/SEOTest.php
@@ -11,8 +11,8 @@ namespace Piwik\Plugins\SEO\tests\Integration;
use Piwik\Access;
use Piwik\DataTable\Renderer;
use Piwik\Plugins\SEO\API;
-use FakeAccess;
use Exception;
+use Piwik\Tests\Framework\Mock\FakeAccess;
/**
* @group SEO
diff --git a/plugins/ScheduledReports/API.php b/plugins/ScheduledReports/API.php
index 66eb55a235..3798c166da 100644
--- a/plugins/ScheduledReports/API.php
+++ b/plugins/ScheduledReports/API.php
@@ -236,10 +236,10 @@ class API extends \Piwik\Plugin\API
foreach ($reports as &$report) {
// decode report parameters
- $report['parameters'] = Common::json_decode($report['parameters'], true);
+ $report['parameters'] = json_decode($report['parameters'], true);
// decode report list
- $report['reports'] = Common::json_decode($report['reports'], true);
+ $report['reports'] = json_decode($report['reports'], true);
}
// static cache
@@ -294,7 +294,7 @@ class API extends \Piwik\Plugin\API
}
// override and/or validate report parameters
- $report['parameters'] = Common::json_decode(
+ $report['parameters'] = json_decode(
self::validateReportParameters($reportType, empty($parameters) ? $report['parameters'] : $parameters),
true
);
@@ -335,6 +335,7 @@ class API extends \Piwik\Plugin\API
if ($apiAction == 'getAll') {
$_GET['filter_truncate'] = false;
+ $_GET['filter_limit'] = -1; // show all websites in all websites report
// when a view/admin user created a report, workaround the fact that "Super User"
// is enforced in Scheduled tasks, and ensure Multisites.getAll only return the websites that this user can access
@@ -624,7 +625,7 @@ class API extends \Piwik\Plugin\API
*/
Piwik::postEvent(self::VALIDATE_PARAMETERS_EVENT, array(&$parameters, $reportType));
- return Common::json_encode($parameters);
+ return json_encode($parameters);
}
private static function validateAndTruncateDescription(&$description)
@@ -653,7 +654,7 @@ class API extends \Piwik\Plugin\API
}
}
- return Common::json_encode($requestedReports);
+ return json_encode($requestedReports);
}
private static function validateCommonReportAttributes($period, $hour, &$description, &$idSegment, $reportType, $reportFormat)
diff --git a/plugins/ScheduledReports/Controller.php b/plugins/ScheduledReports/Controller.php
index 2bb64b8faf..2ae16cc410 100644
--- a/plugins/ScheduledReports/Controller.php
+++ b/plugins/ScheduledReports/Controller.php
@@ -66,7 +66,7 @@ class Controller extends \Piwik\Plugin\Controller
}
}
$view->reports = $reports;
- $view->reportsJSON = Common::json_encode($reportsById);
+ $view->reportsJSON = json_encode($reportsById);
$view->downloadOutputType = API::OUTPUT_INLINE;
diff --git a/plugins/ScheduledReports/lang/tl.json b/plugins/ScheduledReports/lang/tl.json
new file mode 100644
index 0000000000..ffd25ed8c8
--- /dev/null
+++ b/plugins/ScheduledReports/lang/tl.json
@@ -0,0 +1,50 @@
+{
+ "ScheduledReports": {
+ "AggregateReportsFormat": "(opsyonal) mga pagpipilian sa display",
+ "AggregateReportsFormat_GraphsOnly": "Display Graph lamang (walang mga talahanayan ng ulat).",
+ "AggregateReportsFormat_TablesAndGraphs": "Ipakita ang mga talahanayan ng Ulat at Graph para sa lahat ng mga ulat",
+ "AggregateReportsFormat_TablesOnly": "(default) Ipakita ang mga table ng Report(mga graph lamang para sa mga key metric)",
+ "AlsoSendReportToTheseEmails": "Magpadala rin ng mga ulat sa mga email na ito (isang email sa bawat linya).",
+ "AreYouSureDeleteReport": "Sigurado ka bang gusto mong burahin ang ulat at ang iskedyul nito?",
+ "CancelAndReturnToReports": "Ikansela at ibalik ang %s sa listahan ng mga ulat %s",
+ "CreateAndScheduleReport": "Lumikha at Mag-iskedyul ng ulat",
+ "CreateReport": "Lumikha ng ulat",
+ "CustomVisitorSegment": "Custom na segment ng pagbisita:",
+ "DescriptionOnFirstPage": "Ang deskripsiyon ng ulat ay ipapakita sa unang pahina ng ulat.",
+ "DisplayFormat_TablesOnly": "Ipakita ang mga tables (walang graph).",
+ "EmailHello": "Hello",
+ "EmailReports": "Ulat ng email",
+ "EmailSchedule": "Iskedyul ng email",
+ "EvolutionGraph": "Ipakita ang mga Makasaysayang Graph para sa nangungunang %s halaga",
+ "FrontPage": "Pangunahing Pahina",
+ "ManageEmailReports": "Pamahalaan ang mga Ulat sa Email",
+ "MonthlyScheduleHelp": "Buwanang iskedyul: ang ulat ay ipapadala sa unang araw ng bawat buwan.",
+ "MustBeLoggedIn": "Kailangang naka-log in upang gumawa at mag-iskedyul ng mga pasadyang ulat",
+ "NoRecipients": "Wala pang makakatanggap sa ulat na ito",
+ "OClock": "alas-",
+ "Pagination": "Pahina %s ng %s",
+ "PiwikReports": "Mga ulat ng Piwik",
+ "PleaseFindAttachedFile": "Pakihanap sa naka-attach na file ang iyong %1$s ulat para sa %2$s.",
+ "PleaseFindBelow": "Mangyaring hanapin sa ibaba ang iyong %1$s ulat para sa %2$s.",
+ "PluginDescription": "Gumawa at i-download ang iyong mga custom na ulat at i-email ang mga ito araw-araw linguhan o buwanan.",
+ "ReportFormat": "Report Format",
+ "ReportHour": "Ipadala ang ulat sa",
+ "ReportIncludeNWebsites": "Ang ulat ay may kasamang pangunahing sukatan para sa lahat ng website na hindi bababa sa isang pagbisite (mula sa %s website hanggang sa kasalukuyan)",
+ "ReportSent": "Naipadala na ang ulat",
+ "ReportsIncluded": "Kasamang mga Istatistika",
+ "ReportType": "Magpadala ng ulat sa pamamagitan ng",
+ "ReportUpdated": "update ng Ulat",
+ "Segment_Deletion_Error": "Ang segment na ito ay hindi matatanggal o makikita ng ibang user dahil ito ay ginagamit para bumuo ng ulat sa email %s. Mangyaring subukan ulit pagkatapos itong alisin sa segment na mula sa ulat na ito.",
+ "Segment_Help": "Maari kang pumili ng nakatakdang custom segments upang ilagay sa data sa email report na ito. Maari kang gumawa at mag edit ng custom segments sa iyong dashboard %s(click here to open)%s pagkatapos ay i-click ang \"%s\" na box pagktapos \"%s\".",
+ "SegmentAppliedToReports": "Ang bahagi ng '%s' ay ginamit sa mga ulat.",
+ "SendReportNow": "Magpadala ng Ulat ngayon",
+ "SendReportTo": "Ipadala ang ulat upang",
+ "SentToMe": "Ipadala sa akin",
+ "TableOfContent": "Listahan ng ulat",
+ "ThereIsNoReportToManage": "Walang ulat upang pamahalaan ang %s website",
+ "TopLinkTooltip": "Gumawa ng ulat sa email upang makuha ang Piwik stats na awtomatikong pinadala sa iyong email o sa iyong customer address.",
+ "TopOfReport": "Bumalik sa taas",
+ "UpdateReport": "I-update ang Ulat",
+ "WeeklyScheduleHelp": "Lingguhang iskedyul: ang ulat ay ipapadala sa Lunes bawat linggo."
+ }
+} \ No newline at end of file
diff --git a/plugins/ScheduledReports/tests/Integration/ApiTest.php b/plugins/ScheduledReports/tests/Integration/ApiTest.php
index e1efb7fdcb..50610684d6 100644
--- a/plugins/ScheduledReports/tests/Integration/ApiTest.php
+++ b/plugins/ScheduledReports/tests/Integration/ApiTest.php
@@ -19,8 +19,8 @@ use Piwik\ScheduledTask;
use Piwik\ScheduledTime\Monthly;
use Piwik\ScheduledTime;
use Piwik\Site;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
use Exception;
use ReflectionMethod;
diff --git a/plugins/SecurityInfo b/plugins/SecurityInfo
-Subproject 882f6fc83eb582c58b42f2dbf7b88c1071e677f
+Subproject c76e640f2404371566a65a640c41af85075e336
diff --git a/plugins/SegmentEditor/lang/tl.json b/plugins/SegmentEditor/lang/tl.json
new file mode 100644
index 0000000000..23f03e9673
--- /dev/null
+++ b/plugins/SegmentEditor/lang/tl.json
@@ -0,0 +1,28 @@
+{
+ "SegmentEditor": {
+ "AddANDorORCondition": "Magdagdag kundisyon %s",
+ "AddingSegmentForAllWebsitesDisabled": "Ang pagdagdag ng bahagi para sa lahat ng website ay hindi na pinagana.",
+ "AddNewSegment": "Magdagdag ng bagong segment",
+ "AreYouSureDeleteSegment": "Sigurado ka bang gusto mong tanggalin ang bahaging ito?",
+ "AutoArchivePreProcessed": "Ang kaputol na ulat ay naka pre-processed (ang mas mabilis ay nangangailangan ng cron).",
+ "AutoArchiveRealTime": "ang mga hinating ulat ay iprinoseso sa aktwal na oras",
+ "ChooseASegment": "Pumili ng segment",
+ "DataAvailableAtLaterDate": "Ang iyong segment na ulat ng analytics ay magiging available sa ibang pagkakataon. Kami ay humingi ng paumanhin sa abala.",
+ "DefaultAllVisits": "Lahat ng pagbisita",
+ "DragDropCondition": "Drag at Drop ang kondisyon",
+ "LoadingSegmentedDataMayTakeSomeTime": "Maaaring tumagal ng ilang minuto ang pagproseso ng kaputol na datos ng bisita.",
+ "OperatorAND": "AT",
+ "OperatorOR": "OR",
+ "SaveAndApply": "I-save at I-apply",
+ "SegmentDisplayedThisWebsiteOnly": "ang website na ito lamang",
+ "SegmentIsDisplayedForWebsite": "at ipinapakita para sa",
+ "SegmentNotApplied": "Hindi nai-apply ang Segment '%s'",
+ "SelectSegmentOfVisitors": "Pumili ng isang segment sa mga bisita:",
+ "ThisSegmentIsVisibleTo": "Ang segment na ito ay makikita sa:",
+ "VisibleToAllUsers": "lahat ng mga user",
+ "VisibleToMe": "ako",
+ "YouDontHaveAccessToCreateSegments": "Wala kang mga kinakailangang access level upang lumikha at mag edit ng mga segment.",
+ "YouMayChangeSetting": "Maaari mo ring baguhin ang settings sa config file (%s) o i-edit ang mga Segment at piliin ang '%s'.",
+ "YouMustBeLoggedInToCreateSegments": "Kailangan mong mag log-in upang gumawa at mag-edit ng custom visitor segments."
+ }
+} \ No newline at end of file
diff --git a/plugins/SegmentEditor/tests/Integration/SegmentEditorTest.php b/plugins/SegmentEditor/tests/Integration/SegmentEditorTest.php
index ca90f3b43c..adbdbdd395 100644
--- a/plugins/SegmentEditor/tests/Integration/SegmentEditorTest.php
+++ b/plugins/SegmentEditor/tests/Integration/SegmentEditorTest.php
@@ -14,8 +14,8 @@ use Piwik\Piwik;
use Piwik\Plugins\SegmentEditor\API;
use Piwik\Plugins\SegmentEditor\Model;
use Piwik\Plugins\SitesManager\API as APISitesManager;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
use Exception;
/**
diff --git a/plugins/SitesManager/SitesManager.php b/plugins/SitesManager/SitesManager.php
index 4514db812c..b16b5add39 100644
--- a/plugins/SitesManager/SitesManager.php
+++ b/plugins/SitesManager/SitesManager.php
@@ -265,6 +265,7 @@ class SitesManager extends \Piwik\Plugin
$translationKeys[] = "SitesManager_SelectDefaultTimezone";
$translationKeys[] = "SitesManager_DefaultCurrencyForNewWebsites";
$translationKeys[] = "SitesManager_SelectDefaultCurrency";
+ $translationKeys[] = "SitesManager_AddSite";
$translationKeys[] = "Goals_Ecommerce";
}
}
diff --git a/plugins/SitesManager/lang/fr.json b/plugins/SitesManager/lang/fr.json
index 31a8192778..c7b0f04d6f 100644
--- a/plugins/SitesManager/lang/fr.json
+++ b/plugins/SitesManager/lang/fr.json
@@ -67,7 +67,7 @@
"SuperUserAccessCan": "Un utilisateur avec un accès super utilisateur peut aussi %sconfigurer les paramètres globaux%s pour les nouveaux sites web.",
"Timezone": "Fuseau horaire",
"TrackingSiteSearch": "Suivi de la recherche interne sur le site",
- "TrackingTags": "Tags de suivi pour %s",
+ "TrackingTags": "Code de suivi pour %s",
"Urls": "URLs",
"UTCTimeIs": "L'heure UTC est %s.",
"WebsitesManagement": "Gestion des sites",
diff --git a/plugins/SitesManager/lang/tl.json b/plugins/SitesManager/lang/tl.json
new file mode 100644
index 0000000000..a1dc3e17bc
--- /dev/null
+++ b/plugins/SitesManager/lang/tl.json
@@ -0,0 +1,76 @@
+{
+ "SitesManager": {
+ "AddSite": "Magdagdag ng bagong website",
+ "AdvancedTimezoneSupportNotFound": "Ang support para sa advanced timezones ay hindi nakita sa iyong PHP (Ito ay supported sa PHP>=5.2). Maaari mo paring mapili ng manu-mano ang UTC offset.",
+ "AliasUrlHelp": "Ito ay nirerekomenda ngunit hindi kinakailangan upang tukuyin ang iba't ibang mga URL sa kada linya na ginagamit ng mga bumibisita sa iyong website. Ang Alyas sa URLs ng website ay hindi ipapakita na Referrers > Ulat ng webistes. Tandaan na hindi kinakailangan na ilagay ang URLs na may kasamang 'www' dahil ang Piwik ay automatik ng kinokonsidera ang parehas.",
+ "ChangingYourTimezoneWillOnlyAffectDataForward": "Ang pagbabago ng iyong time zone ay makakaapekto lamang sa pasulong ng data at hindi e-aapply sa nakaraan.",
+ "ChooseCityInSameTimezoneAsYou": "Pumili ng lungsod na may kaparehong timezone sa iyo.",
+ "Currency": "Pera",
+ "CurrencySymbolWillBeUsedForGoals": "Ang simbolo ng Pera ay ipapakita sa tabi ng Goals revenues.",
+ "DefaultCurrencyForNewWebsites": "Default na Pera para sa mga bagong website.",
+ "DefaultTimezoneForNewWebsites": "Default na time zone para sa mga bagong website",
+ "DeleteConfirm": "Sigurado ka bang gusto mong tanggaling ang %s na website?",
+ "DisableSiteSearch": "Do not track Site Search",
+ "EcommerceHelp": "ang \"Goals\" na ulat ay magkakaroon ng bagong \"Ecommerce\" na seksyon.",
+ "EnableEcommerce": "Pinagana ang E-commerce",
+ "EnableSiteSearch": "Gumagana ang Site Search tracking",
+ "EnableSiteSpecificUserAgentExclude": "Paganahin ang partikular na pagbubukod sa ahente ng user ng website.",
+ "EnableSiteSpecificUserAgentExclude_Help": "Kung kailangan mo upang ibukod ang iba't ibang mga user agent na gumagamit para sa iba't ibang mga website e-check ang box na ito i-click ang save at %1$sidagdag ang user agents sa itaas%2$s",
+ "ExceptionDeleteSite": "Ito ay hindi pwedeng tanggalin sa website dahil ito ay ang tanging kaisa-isahang rehistradong wesbite. Mag-dagdag muna ng isang bagong website pagkatapos tanggalin na ang isang ito.",
+ "ExceptionEmptyName": "Ang pangalan ng website ay hindi maaring walang laman.",
+ "ExceptionInvalidCurrency": "Ang currency \"%s\" ay hindi tama. Mangyarin ilagay ang tamang currency symbol (hal. %s).",
+ "ExceptionInvalidIPFormat": "Ang IP upang ibukod ang \"%s\" ay walang wastong format ng IP (hal. %s).",
+ "ExceptionInvalidTimezone": "Ang timezone \"%s\" ay hindi wasto. Mangyaring magpasok ng wastong timezone.",
+ "ExceptionInvalidUrl": "Ang url '%s' ay hindi isang tamang URL.",
+ "ExceptionNoUrl": "Dapat mong tukuyin kahit isang URL para sa website.",
+ "ExcludedIps": "Mga ibinukod na IP",
+ "ExcludedParameters": "Ibinukod na mga Parameter",
+ "ExcludedUserAgents": "Mga Ibinukod na User Agent",
+ "GlobalExcludedUserAgentHelp1": "Ipasok ang listahan ng mga user agent upang ibukod sa pagsubaybay ng Piwik.",
+ "GlobalExcludedUserAgentHelp2": "Maaari mo itong gamitin upang ibukod ang ilang mga bot na ma-track.",
+ "GlobalListExcludedIps": "Pandaigdigang listahan ng mga ibinukod na IP",
+ "GlobalListExcludedQueryParameters": "Pangkalahatang listahan ng mga parameter ng URL Query na hindi isasama",
+ "GlobalListExcludedUserAgents": "Pandaigdigang listahan ng mga agent na gumagamit upang ibukod ang mga",
+ "GlobalListExcludedUserAgents_Desc": "Kung ang user agents strings ng iyong bisita ay naglalaman ng iyong mga tinukoy ang bisitang ito ay hindi maisasama sa Piwik.",
+ "GlobalWebsitesSettings": "Mga setting ng pandaigdigang mga website",
+ "HelpExcludedIps": "Ipasok ang mga listahan ng IP isa bawat linya na gusto mong ibukod mula pagsusubay-bay ng Piwik. Maa-ari kang gumamit ng mga wildcard hal. %1$s o %2$s",
+ "JsTrackingTagHelp": "Narito ang JavaScript Tracking code upang isama sa lahat ng iyong pahina",
+ "KeepURLFragments": "Pag track sa mga fragments ng pahina ng URL",
+ "KeepURLFragmentsHelp2": "Maaari mo ring i-override ang setting na ito para sa indibidwal na mga website sa itaas.",
+ "KeepURLFragmentsLong": "Panatilihin ang mga detalye ng Page URL kapag naghahanap ng mga Page URL",
+ "ListOfIpsToBeExcludedOnAllWebsites": "Ang IP sa ibaba ay hindi isasama sa sinusubaybayan sa lahat ng mga website.",
+ "ListOfQueryParametersToBeExcludedOnAllWebsites": "Ang mga Query URL parameter sa ibaba ay maibubukod mula sa mga URL sa lahat ng website.",
+ "ListOfQueryParametersToExclude": "Ipasok ang listahan ng Mga Parameter ng Query sa URL isa bawat linya upang ibukod mula sa mga URL ng ulat Pahina.",
+ "MainDescription": "Ang iyong mga ulat Web Analytics ay kailangan ng Websites! magdagdag mag-update mag-delete ng Websites at ipakita ang JavaScript upang mailagay sa iyong mga pahina.",
+ "NotAnEcommerceSite": "Hindi isang site ng Ecommerce",
+ "NotFound": "Walang nahanap para sa mga website",
+ "NoWebsites": "Wala kang anumang website na pamamahalaan.",
+ "OnlyOneSiteAtTime": "Maaari mo lamang i-edit ang isang website ng isang beses. Mangyaring I-save o Kanselahin iyong kasalukuyang mga pagbabago sa website %s.",
+ "PiwikOffersEcommerceAnalytics": "Ang Piwik ay mayroon rin para sa advanced na Ecommerce Analytics tracking & pag-uulat. Matuto nang higit pa tungkol sa %s Ecommerce Analytics%s.",
+ "PiwikWillAutomaticallyExcludeCommonSessionParameters": "Awtomatikong ibubukod ng Piwik ang mga karaniwang mga session parameter (%s).",
+ "PluginDescription": "Websites Management ng Piwik: Mag-dagdag ng isang bagong website I-edit ang isang umiiral Ipakita ang JavaScript code upang isama sa iyong mga pahina. Ang lahat ng actions ay makukuha sa pamamagaitan ng API.",
+ "SearchCategoryDesc": "Ang Piwik ay maaari ring masubaybayan ang mga kategorya ng Paghahanap para sa bawat keyword sa loob na paghahanap sa site.",
+ "SearchCategoryLabel": "Kategorya ng parameter",
+ "SearchCategoryParametersDesc": "Maari kang maglagay ng query na pinaghiwa-hiwalay ng kuwit upang matukoy ang hinahanap na kategorya.",
+ "SearchKeywordLabel": "Parameter ng Query",
+ "SearchKeywordParametersDesc": "Magpasok ng isang comma separated list ng mga pangalan ng lahat ng parameter ng query na naglalaman ng mga keyword sa paghahanap sa site.",
+ "SearchParametersNote": "Tandaan: ang mga Query parameters at kategorya ng paremeters ay maaari lamang gamitin sa website na may Site Search enabled ngunit hayaang walang mga nakalagay sa mga parameters na ito.",
+ "SearchParametersNote2": "Upang i-disable ang Site Search para sa mga bagong website iwanan ang dalawang field na ito ng walang laman",
+ "SearchUseDefault": "Gamitin ang %sdefault%s na Site Search parameters.",
+ "SelectACity": "Pumili ng lungsod",
+ "SelectDefaultCurrency": "Maaari mong piliin ang currency upang i-set ng default para sa mga bagong website.",
+ "SelectDefaultTimezone": "Maaari mong piliin ang time zone upang piliin ng default para sa mga bagong website.",
+ "ShowTrackingTag": "Tingnan code ang tracking code",
+ "Sites": "Websites",
+ "SiteSearchUse": "Maaari mong gamitin ang Piwik upang sumubay-bay at mag ulat kung ano ang hinahanap ng iyong bisita sa iyong website.",
+ "SuperUserAccessCan": "Ang user na may Super User access ay maaari rin na %s mag specify ng global settings%s para sa bagong website.",
+ "Timezone": "Time zone",
+ "TrackingSiteSearch": "Pag track sa panloob na paghahanap sa site",
+ "TrackingTags": "Ang tracking code para sa %s",
+ "Urls": "Mga URL",
+ "UTCTimeIs": "Ang orasn ng UTC ay %s.",
+ "WebsitesManagement": "Pamamahala ng mga website",
+ "YouCurrentlyHaveAccessToNWebsites": "Kasalukuyan kang may access sa %s website.",
+ "YourCurrentIpAddressIs": "Ang iyong kasalukuyang IP address ay %s"
+ }
+} \ No newline at end of file
diff --git a/plugins/SitesManager/tests/Integration/SitesManagerTest.php b/plugins/SitesManager/tests/Integration/SitesManagerTest.php
index c49ff6b5e4..3f82a95574 100644
--- a/plugins/SitesManager/tests/Integration/SitesManagerTest.php
+++ b/plugins/SitesManager/tests/Integration/SitesManagerTest.php
@@ -12,8 +12,8 @@ use Piwik\Access;
use Piwik\Plugins\SitesManager\API;
use Piwik\Plugins\UsersManager\API as APIUsersManager;
use Piwik\Site;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
use Exception;
use PHPUnit_Framework_Constraint_IsType;
diff --git a/plugins/TasksTimetable b/plugins/TasksTimetable
-Subproject 035e4fede4d870a18636f347120e16ec59f07d3
+Subproject 00004da3c3b876fab49fa612f184b181909de41
diff --git a/plugins/TestRunner/Commands/TestsRunOnAws.php b/plugins/TestRunner/Commands/TestsRunOnAws.php
index 3e99e05a6b..495ecfa461 100644
--- a/plugins/TestRunner/Commands/TestsRunOnAws.php
+++ b/plugins/TestRunner/Commands/TestsRunOnAws.php
@@ -16,6 +16,7 @@ use Piwik\Plugins\TestRunner\Aws\Instance;
use Piwik\Plugins\TestRunner\Aws\Ssh;
use Piwik\Plugins\TestRunner\Runner\InstanceLauncher;
use Piwik\Plugins\TestRunner\Runner\Remote;
+use Piwik\SettingsPiwik;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
@@ -143,7 +144,7 @@ This feature is still beta and there might be problems with pictures and/or bina
private function getCurrentGitHash()
{
// we should not use 'git' executable unless we are in a git clone
- if(!file_exists(PIWIK_INCLUDE_PATH . '/.git/')) {
+ if(!SettingsPiwik::isGitDeployment()) {
return 'WARN: it does not look like a Piwik repository clone - you must setup Piwik from git to proceed';
}
return trim(`git rev-parse HEAD`);
diff --git a/plugins/Transitions/lang/tl.json b/plugins/Transitions/lang/tl.json
new file mode 100644
index 0000000000..0c5f85778d
--- /dev/null
+++ b/plugins/Transitions/lang/tl.json
@@ -0,0 +1,28 @@
+{
+ "Transitions": {
+ "BouncesInline": "%s mga bounce",
+ "DirectEntries": "Direktang mga entry",
+ "ErrorBack": "Bumalik sa nakaraang aksyon",
+ "ExitsInline": "%s paglabas",
+ "FromCampaigns": "Mula sa campaigns",
+ "FromPreviousPages": "Mula sa Panloob na Pahina",
+ "FromPreviousPagesInline": "%s mula sa mga panloob na mga pahina",
+ "FromPreviousSiteSearches": "Mula sa panloob na paghahanap",
+ "FromPreviousSiteSearchesInline": "%s mula sa mga panloob na paghahanap",
+ "FromSearchEngines": "Mula sa Search Engine",
+ "FromWebsites": "Mula sa mga website",
+ "IncomingTraffic": "Incoming traffic",
+ "LoopsInline": "muling pagload ng pahina %s",
+ "NoDataForAction": "Walang data para sa %s",
+ "NoDataForActionDetails": "Maaaring ang aksyon ay walang pageview sa panahon ng %s o ito ay hindi wasto.",
+ "OutgoingTraffic": "Mga outgoing na traffic",
+ "PluginDescription": "Mga ulat tungkol sa nakaraan at sumusunod na aksyon para sa bawat page URL.",
+ "ShareOfAllPageviews": "Ang pahinang ito ay may %s na pageview (%s ng lahat ng mga pageview)",
+ "ToFollowingPages": "Sa mga panloob na mga pahina",
+ "ToFollowingPagesInline": "%s panloob na mga pahina",
+ "ToFollowingSiteSearches": "Panloob na paghahanap",
+ "ToFollowingSiteSearchesInline": "panloob na paghahanap %s",
+ "XOfAllPageviews": "%s ng lahat ng mga tanawin ng pahinang ito",
+ "XOutOfYVisits": "%s (mula sa %s)"
+ }
+} \ No newline at end of file
diff --git a/plugins/UserCountry/Controller.php b/plugins/UserCountry/Controller.php
index a6ed712dbe..145f981cc3 100644
--- a/plugins/UserCountry/Controller.php
+++ b/plugins/UserCountry/Controller.php
@@ -135,9 +135,9 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
$result['next_screen'] = $this->getGeoIpUpdaterManageScreen();
}
- return Common::json_encode($result);
+ return json_encode($result);
} catch (Exception $ex) {
- return Common::json_encode(array('error' => $ex->getMessage()));
+ return json_encode(array('error' => $ex->getMessage()));
}
}
}
@@ -207,15 +207,15 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
// the browser so it can download it next
$info = $this->getNextMissingDbUrlInfo();
if ($info !== false) {
- return Common::json_encode($info);
+ return json_encode($info);
} else {
$view = new View("@UserCountry/_updaterNextRunTime");
$view->nextRunTime = GeoIPAutoUpdater::getNextRunTime();
$nextRunTimeHtml = $view->render();
- return Common::json_encode(array('nextRunTime' => $nextRunTimeHtml));
+ return json_encode(array('nextRunTime' => $nextRunTimeHtml));
}
} catch (Exception $ex) {
- return Common::json_encode(array('error' => $ex->getMessage()));
+ return json_encode(array('error' => $ex->getMessage()));
}
}
}
@@ -270,13 +270,13 @@ class Controller extends \Piwik\Plugin\ControllerAdmin
$info = $this->getNextMissingDbUrlInfo();
if ($info !== false) {
- return Common::json_encode($info);
+ return json_encode($info);
}
}
- return Common::json_encode($result);
+ return json_encode($result);
} catch (Exception $ex) {
- return Common::json_encode(array('error' => $ex->getMessage()));
+ return json_encode(array('error' => $ex->getMessage()));
}
}
}
diff --git a/plugins/UserCountry/GeoIPAutoUpdater.php b/plugins/UserCountry/GeoIPAutoUpdater.php
index 64b69be435..b76f347413 100755
--- a/plugins/UserCountry/GeoIPAutoUpdater.php
+++ b/plugins/UserCountry/GeoIPAutoUpdater.php
@@ -518,8 +518,10 @@ class GeoIPAutoUpdater extends ScheduledTask
* Databases are renamed to ${original}.broken .
*
* Note: method is protected for testability.
+ *
+ * @param $logErrors - only used to hide error logs during tests
*/
- protected function performRedundantDbChecks()
+ protected function performRedundantDbChecks($logErrors = true)
{
$databaseTypes = array_keys(GeoIp::$dbNames);
@@ -538,8 +540,11 @@ class GeoIPAutoUpdater extends ScheduledTask
self::getTestLocationCatchPhpErrors($provider);
if (self::$unzipPhpError !== null) {
list($errno, $errstr, $errfile, $errline) = self::$unzipPhpError;
- Log::error("GeoIPAutoUpdater: Encountered PHP error when performing redundant tests on GeoIP "
- . "%s database: %s: %s on line %s of %s.", $type, $errno, $errstr, $errline, $errfile);
+
+ if($logErrors) {
+ Log::error("GeoIPAutoUpdater: Encountered PHP error when performing redundant tests on GeoIP "
+ . "%s database: %s: %s on line %s of %s.", $type, $errno, $errstr, $errline, $errfile);
+ }
// get the current filename for the DB and an available new one to rename it to
list($oldPath, $newPath) = $this->getOldAndNewPathsForBrokenDb($customNames[$type]);
diff --git a/plugins/UserCountry/lang/sl.json b/plugins/UserCountry/lang/sl.json
index 37966d5d54..436825eae1 100644
--- a/plugins/UserCountry/lang/sl.json
+++ b/plugins/UserCountry/lang/sl.json
@@ -279,6 +279,7 @@
"DistinctCountries": "%s različnih držav",
"Location": "Lokacija",
"PluginDescription": "Sporoči državo, iz katere so obiskovalci.",
+ "Region": "Regija",
"SubmenuLocations": "Lokacije",
"WidgetLocation": "Lokacija obiskovalca"
}
diff --git a/plugins/UserCountry/lang/tl.json b/plugins/UserCountry/lang/tl.json
new file mode 100644
index 0000000000..8fb991719e
--- /dev/null
+++ b/plugins/UserCountry/lang/tl.json
@@ -0,0 +1,368 @@
+{
+ "UserCountry": {
+ "AssumingNonApache": "Hindi mahanap ang apache_get_modules function sa pag-aakala na hindi Apache webserver.",
+ "CannotFindGeoIPDatabaseInArchive": "Hindi mahanap ang file na %1$s sa %2$s!",
+ "CannotFindGeoIPServerVar": "Ang %s variable ay hindi naka-set. Ang iyong server ay maaaring hindi naka-configure nang tama.",
+ "CannotListContent": "Hindi ma-ilista ang nilalaman para sa %1$s: %2$s.",
+ "CannotLocalizeLocalIP": "Ang IP address %s ay isang lokal na address at hindi maaaring i-geolocated.",
+ "CannotSetupGeoIPAutoUpdating": "Ito ay magmumukhang paglalagay ng iyong GeoIP databases sa labas ng Piwik(maari nating sabihin dahil walang databases sa misc subdirectory ngunit ang iyong GeoIP ay gumagana). Hindi maaaring awtomatikong i-update ang iyong mga Piwik GeoIP database kung ito ay nakalagay sa labas ng direktoryo Misc.",
+ "CannotUnzipDatFile": "Hindi ma-unzip ang dat file sa %1$s: %2$s.",
+ "City": "Lungsod",
+ "CityAndCountry": "%1$s %2$s",
+ "Continent": "Kontinente",
+ "continent_afr": "Aprika",
+ "continent_amc": "Central America",
+ "continent_amn": "North America",
+ "continent_ams": "South America",
+ "continent_ant": "Antarctica",
+ "continent_asi": "Asya",
+ "continent_eur": "Europa",
+ "continent_oce": "Oseaniya",
+ "Country": "Bansa",
+ "country_a1": "Anonymous Proxy",
+ "country_a2": "Satellite Provider",
+ "country_ac": "Mga isla ng ascension",
+ "country_ad": "Andorra",
+ "country_ae": "United Arab Emirates",
+ "country_af": "Afghanistan",
+ "country_ag": "Antigua at Barbuda",
+ "country_ai": "Anguilla",
+ "country_al": "Albania",
+ "country_am": "Armenya",
+ "country_an": "Netherlands Antilles",
+ "country_ao": "Anggola",
+ "country_ap": "Rehiyon ng Asia\/Pacific",
+ "country_aq": "Antarctica",
+ "country_ar": "Arhentina",
+ "country_as": "American Samoa",
+ "country_at": "Awstrya",
+ "country_au": "Australya",
+ "country_aw": "Aruba",
+ "country_ax": "Isla ng Aland",
+ "country_az": "Azerbaijan",
+ "country_ba": "Bosnia at Herzegovina",
+ "country_bb": "Barbados",
+ "country_bd": "Bangladesh",
+ "country_be": "Belgium",
+ "country_bf": "Burkina Faso",
+ "country_bg": "Bulgarya",
+ "country_bh": "Bahrain",
+ "country_bi": "Burundi",
+ "country_bj": "Benin",
+ "country_bl": "Saint Barthelemy",
+ "country_bm": "Bermuda",
+ "country_bn": "Brunei Darussalum",
+ "country_bo": "Bolivia Plurinational Estado ng",
+ "country_bq": "Bonaire Sint Eustatius at Saba",
+ "country_br": "Brasil",
+ "country_bs": "Bahamas",
+ "country_bt": "Bhutan",
+ "country_bu": "Birmanya",
+ "country_bv": "Isla ng Bouvet",
+ "country_bw": "Botswana",
+ "country_by": "Belarus",
+ "country_bz": "Belize",
+ "country_ca": "Kanada",
+ "country_cat": "Komunidad ng wikang Catalan",
+ "country_cc": "Mga Isla ng Cocos (Keeling)",
+ "country_cd": "Congo Ang Demokratikong Republika ng",
+ "country_cf": "Republika ng Central Africa",
+ "country_cg": "Konggo",
+ "country_ch": "Switzerland",
+ "country_ci": "Cote D'Ivoire",
+ "country_ck": "Isla ng Cook",
+ "country_cl": "Tsile",
+ "country_cm": "Cameroon",
+ "country_cn": "Tsina",
+ "country_co": "Kolombya",
+ "country_cp": "Mga isla ng Clipperton",
+ "country_cr": "Kosta Rika",
+ "country_cs": "Serbia Montenegro",
+ "country_cu": "Cuba",
+ "country_cv": "Cape Verde",
+ "country_cw": "Curacao",
+ "country_cx": "Christmas Island",
+ "country_cy": "Sayprus",
+ "country_cz": "Czech Republic",
+ "country_de": "Alemanya",
+ "country_dg": "Diego Garcia",
+ "country_dj": "Djibouti",
+ "country_dk": "Denmark",
+ "country_dm": "Dominica",
+ "country_do": "Republika ng Dominikano",
+ "country_dz": "Algeria",
+ "country_ea": "Ceuta Melilla",
+ "country_ec": "Ekwador",
+ "country_ee": "Estonya",
+ "country_eg": "Ehipto",
+ "country_eh": "Western Sahara",
+ "country_er": "Eritrea",
+ "country_es": "Espanya",
+ "country_et": "Etyopya",
+ "country_eu": "European Union",
+ "country_fi": "Pinlandiya",
+ "country_fj": "Fiji",
+ "country_fk": "Mga Isla ng Falkland (Malvinas)",
+ "country_fm": "Micronesia Federated States ng",
+ "country_fo": "Isla ng Faroe",
+ "country_fr": "Pransiya",
+ "country_fx": "France Metropolitan",
+ "country_ga": "Gabon",
+ "country_gb": "United Kingdom",
+ "country_gd": "Grenada",
+ "country_ge": "Georgia",
+ "country_gf": "French Guiana",
+ "country_gg": "Guernsey",
+ "country_gh": "Ghana",
+ "country_gi": "Hibraltar",
+ "country_gl": "Greenland",
+ "country_gm": "Gambia",
+ "country_gn": "Guinea",
+ "country_gp": "Guadeloupe",
+ "country_gq": "Equatorial Guinea",
+ "country_gr": "Gresya",
+ "country_gs": "South Georgia at ang South Sandwich Islands",
+ "country_gt": "Guatemala",
+ "country_gu": "Guam",
+ "country_gw": "Guinea-Bissau",
+ "country_gy": "Guyana",
+ "country_hk": "Hong Kong",
+ "country_hm": "Narinig ang Island at McDonal Islands.",
+ "country_hn": "Honduras",
+ "country_hr": "Kroatya",
+ "country_ht": "Haiti",
+ "country_hu": "Unggarya",
+ "country_ic": "Isla ng Canary",
+ "country_id": "Indonesiya",
+ "country_ie": "Ireland",
+ "country_il": "Israel",
+ "country_im": "Isla ng tao",
+ "country_in": "Indiya",
+ "country_io": "Teritoryo ng British Indian Ocean.",
+ "country_iq": "Irak",
+ "country_ir": "Iran Republika ng Islamic",
+ "country_is": "Iceland",
+ "country_it": "Italya",
+ "country_je": "Dyesi",
+ "country_jm": "Jamaica",
+ "country_jo": "Jordan",
+ "country_jp": "Hapon",
+ "country_ke": "Kenya",
+ "country_kg": "Kyrgyzstan",
+ "country_kh": "Kambodya",
+ "country_ki": "Kiribati",
+ "country_km": "Comoros",
+ "country_kn": "Saint Kitts at Nevis",
+ "country_kp": "Korea Demokratikong Republika ng mga tao",
+ "country_kr": "Korea Republika ng",
+ "country_kw": "Kuweit",
+ "country_ky": "Isla ng Cayman",
+ "country_kz": "Kasakstan",
+ "country_la": "Demokratikong Republika ng mga taong taga Lao.",
+ "country_lb": "Lebanon",
+ "country_lc": "Saint Lucia",
+ "country_li": "Liechtenstein",
+ "country_lk": "Sri Lanka",
+ "country_lr": "Liberya",
+ "country_ls": "Lesotho",
+ "country_lt": "Lithuania",
+ "country_lu": "Luksemburgo",
+ "country_lv": "Letonya",
+ "country_ly": "Libya",
+ "country_ma": "Moroko",
+ "country_mc": "Monaco",
+ "country_md": "Moldova Republika ng",
+ "country_me": "Montenegro",
+ "country_mf": "Saint Martin (bahagi ng Pranses)",
+ "country_mg": "Madagaskar",
+ "country_mh": "Mga isla ng Marshall",
+ "country_mk": "Macedonia ang dating Republica ng Macedonia",
+ "country_ml": "Mali",
+ "country_mm": "Myanmar",
+ "country_mn": "Monggolya",
+ "country_mo": "Macau",
+ "country_mp": "Mga isla ng Northern Mariana",
+ "country_mq": "Martinique",
+ "country_mr": "Mawritanya",
+ "country_ms": "Montserrat",
+ "country_mt": "Malta",
+ "country_mu": "Mauritius",
+ "country_mv": "Maldives",
+ "country_mw": "Malawi",
+ "country_mx": "Mehiko",
+ "country_my": "Malaisiya",
+ "country_mz": "Mozambique",
+ "country_na": "Namibia",
+ "country_nc": "New Caledonia",
+ "country_ne": "Niger",
+ "country_nf": "Isla ng Norfolk",
+ "country_ng": "Nigerya",
+ "country_ni": "Nikaragua",
+ "country_nl": "Netherlands",
+ "country_no": "Norwega",
+ "country_np": "Nepal",
+ "country_nr": "Nauru",
+ "country_nt": "Neutral Zone",
+ "country_nu": "Niue",
+ "country_nz": "New Zealand",
+ "country_o1": "Iba pang mga bansa",
+ "country_om": "Oman",
+ "country_pa": "Panama",
+ "country_pe": "Peru",
+ "country_pf": "French Polynesia",
+ "country_pg": "Papua New Guinea",
+ "country_ph": "Philippines",
+ "country_pk": "Pakistan",
+ "country_pl": "Poland",
+ "country_pm": "Saint Pierre at Miquelon",
+ "country_pn": "Pitcairn",
+ "country_pr": "Puerto Rico",
+ "country_ps": "Palestinian Territory okupado",
+ "country_pt": "Portugal",
+ "country_pw": "Palau",
+ "country_py": "Paragway",
+ "country_qa": "Qatar",
+ "country_re": "Reunion",
+ "country_ro": "Romanya",
+ "country_rs": "Serbia",
+ "country_ru": "Russian Federation",
+ "country_rw": "Rwanda",
+ "country_sa": "Saudi Arabia",
+ "country_sb": "Mga isla ni Solomon",
+ "country_sc": "Seychelles",
+ "country_sd": "Sudan",
+ "country_se": "Sweden",
+ "country_sf": "Pinlandiya",
+ "country_sg": "Singgapur",
+ "country_si": "Slovenia",
+ "country_sj": "Svalbard at Jan Mayen",
+ "country_sk": "Slovakia",
+ "country_sl": "Sierra Leone",
+ "country_sm": "San Marino",
+ "country_sn": "Senegal",
+ "country_so": "Somalia",
+ "country_sr": "Suriname",
+ "country_ss": "South Sudan",
+ "country_st": "Sao Tome at Principe",
+ "country_su": "Lumang U.S.S.R",
+ "country_sv": "El Salvador",
+ "country_sx": "Sint Maarten (parte ng Dutch)",
+ "country_sy": "Republika ng Syrian Arab",
+ "country_sz": "Swaziland",
+ "country_ta": "Tristan da Cunha",
+ "country_tc": "Turks at mga isla ng Caicos",
+ "country_td": "Chad",
+ "country_tf": "French Southern Territories",
+ "country_tg": "Togo",
+ "country_th": "Thailand",
+ "country_ti": "Tibet",
+ "country_tj": "Tajikistan",
+ "country_tk": "Tokelau",
+ "country_tl": "Timor-Leste",
+ "country_tm": "Turkmenistan",
+ "country_tn": "Tunisia",
+ "country_to": "Tonga",
+ "country_tp": "Silangang Timor",
+ "country_tr": "Turkey",
+ "country_tt": "Trinidad at Tobago",
+ "country_tv": "Tuvalu",
+ "country_tw": "Taiwan probinsya ng China",
+ "country_tz": "Tanzania Sama-samang republika ng",
+ "country_ua": "Ukraina",
+ "country_ug": "Uganda",
+ "country_uk": "United Kingdom",
+ "country_um": "Minor Outlying Islands Estados Unidos.",
+ "country_us": "Estados Unidos",
+ "country_uy": "Urugway",
+ "country_uz": "Uzbekistan",
+ "country_va": "Holy See (Siyudad ng Vatican city state)",
+ "country_vc": "Saint Vincent at ang Grenadines.",
+ "country_ve": "Venezuela Republika ng Bolivarian",
+ "country_vg": "Mga isla ng Virgin British",
+ "country_vi": "Mga isla ng Virgin U.S",
+ "country_vn": "Byetnam",
+ "country_vu": "Vanuatu",
+ "country_wf": "Wallis at Futuna",
+ "country_ws": "Samoa",
+ "country_ye": "Yemen",
+ "country_yt": "Mayotte",
+ "country_yu": "Yugoslavia",
+ "country_za": "South Africa",
+ "country_zm": "Zambia",
+ "country_zr": "Zaire",
+ "country_zw": "Zimbabwe",
+ "CurrentLocationIntro": "Ayon sa provider ang iyong kasalukuyang lokasyon ay",
+ "DefaultLocationProviderDesc1": "Ang default na lokasyon ng provider na humu-hula sa mga bansa ng bumibisita batay sa wika na ginagamit nila.",
+ "DefaultLocationProviderExplanation": "Iyong ginagamit ang default location provider na nangangahulugan na ang Piwik ay huhulaan ang lokasyon ng iyong bisita base sa wika na kanilang ginagamit. %1$sRead this%2$s upang malaman panu e-setup na may tamang geolocation.",
+ "DistinctCountries": "natatanging mga bansa %s",
+ "DownloadingDb": "Downloading %s",
+ "DownloadNewDatabasesEvery": "I-update ang mga bawat database",
+ "FatalErrorDuringDownload": "May malalang error na naganap habang dina-download ang file na ito. Maaring may mali sa iyong internet koneksyon",
+ "FoundApacheModules": "Piwik nahanap ang mga sumusunod na Apache modules.",
+ "FromDifferentCities": "ibang mga lungsod",
+ "GeoIPCannotFindMbstringExtension": "Hindi mahanap ang %1$s function. Mangyaring siguraduhin na ang %2$s extension na naka-install at na-load.",
+ "GeoIPDatabases": "GeoIP ng mga Database",
+ "GeoIPDocumentationSuffix": "Upang makita ang dataus para sa ulat na ito kailangan mong mag setup ng GeoIP sa Geolocation admin tab. Ang komersyal %1$sMaxmind%2$s GeoIP databases ay higit na tiyak kaysa sa mga libre. Upang makita kung gaano ito ka-tiyak i-click ang %3$shere%4$s.",
+ "GeoIPImplHasAccessTo": "Ang pagpapatupad ng GeoIP na ito ay may access sa mga sumusunod na uri ng database",
+ "GeoIPIncorrectDatabaseFormat": "Ang iyong database GeoIP ay mukhang may hindi tamang format. Maaari na ito ay sira. Tiyaking maige na ginagamit mo ang binary bersyon at subukang palitan ito ng isang kopya.",
+ "GeoIpLocationProviderDesc_Pecl1": "Ang provider ng lokasyon na ito ay gumagamit ng isang database GeoIP at PECL module upang maging tiyak at tama ang pagtukoy sa lokasyon ng iyong mga bisita.",
+ "GeoIpLocationProviderDesc_Pecl2": "Walang mga limitasyon sa provider na ito kaya ito ay isa sa mga aming nirerekomenda na gamitin.",
+ "GeoIpLocationProviderDesc_Php1": "Ang ng location ng provider ay pinaka simpleng i-install sa pagkat ito ay hindi nangangailangan ng configuration ng server(tamang-tama sa mga shared-hosting!). Ito ay gumagamit ng GeopIp databases at MaxMind's PHP API upang matukoy ang tumpak na lokasyon ng iyong mga bisita",
+ "GeoIpLocationProviderDesc_Php2": "Kung ang iyong website ay nakakakuha ng mataas ng traffic iyong mapapansin na itong location provider ay mabagal. Sa sitwasyong ito dapat mong i-install ang %1$sPECL extension%2$s o ang %3$sserver module%4$s.",
+ "GeoIpLocationProviderDesc_ServerBased2": "Kung meron kang e-iimport na mga log files o di kaya ay may gagawing na may kinalaman sa pag set ng IP addresses gamitin ang %1$sPECL GeoIP implementation (recommended)%2$s or ang %3$sPHP GeoIP implementation%4$s.",
+ "GeoIpLocationProviderDesc_ServerBasedAnonWarn": "Tandaan: IP anonymization ay walang epekto sa mga lokasyon na inulat ng provider na ito. Bago ito gamitin na may IP anonymization siguraduhin na ito ay hindi lumalabag sa mga batas ng privacy na maaring sumailalim sa.",
+ "GeoIpLocationProviderNotRecomnended": "Gumagana ang Geolocation ngunit hindi ka gumagamit ng isa sa mga inirerekomendang provider.",
+ "GeoIPNoServerVars": "Hindi mahanap ng Piwik ang kahit na anong %s variable ng GeoIP.",
+ "GeoIPPeclCustomDirNotSet": "Ang %s PHP ini options ay hindi pa na set.",
+ "GeoIPServerVarsFound": "Nakita ng Piwik ang mga sumusunod na %s variable ng GeoIP",
+ "GeoIPUpdaterInstructions": "Ipasok ang mga links ng mga na download para sa iyong databases sa ibaba. Kung ikaw ay bumili ng mga databases mula sa %3$sMaxMind%4$s Maari mong mahanap ang mga links na ito sa %1$shere%2$s. Mangyaring makipag-ugnay sa %3$sMaxMind%4$s kung mayroong naging problema sa pag-access sa mga ito.",
+ "GeoIPUpdaterIntro": "Kasalukuyang namamahala ang Piwik ng mga update para sa sumusunod na mga GeoIP database",
+ "GeoLiteCityLink": "Kung gumagamit ka ng GeoLite City database gamitin ang link na ito: %1$s%2$s%3$s \"",
+ "Geolocation": "Geolocation",
+ "GeolocationPageDesc": "Sa pahinang ito ay maaari mo nang baguhin kung paano malalaman ng Piwik ang lokasyon ng bisita.",
+ "getCityDocumentation": "Ipinapakita ng ulat na ito ang lungsod ng iyong mga bisita ng in-access nila ang iyong website.",
+ "getContinentDocumentation": "Ang ulat na ito ay nagpapakita kung aling mga kontinente galing ang iyong mga bisita na umaccess sa iyong website.",
+ "getCountryDocumentation": "Ang ulat na ito ay nagpapakita kung saang bansa galing ang iyong bisita ng ina-access nila ang iyong website.",
+ "getRegionDocumentation": "Ang ulat na ito ay nagpapakita kung saang rehiyon galing ang iyong mga bisita ng in-access nila ang iyong website.",
+ "HowToInstallApacheModule": "Paano ko ii-install ang GeoIP module para sa Apache?",
+ "HowToInstallGeoIPDatabases": "Paano ko makakakuha ang mga database ng GeoIP?",
+ "HowToInstallGeoIpPecl": "Paano ako magiinstall ng karugtong ng GeoIP PECL?",
+ "HowToInstallNginxModule": "Paano ko ii-install ang GeoIP module para sa Nginx?",
+ "HowToSetupGeoIP": "Paano i-setup ang tumpak na geolocation gamit ang GeoIP",
+ "HowToSetupGeoIP_Step1": "%1$s I-download %2$s ang GeoLite City database mula sa %3$s MaxMind %4$s.",
+ "HowToSetupGeoIP_Step2": "Extract ang file na ito at kopyahin ang mga resulta %1$s sa %2$s misc %3$s Piwik subdirectory (maaari mong gawin ito sa pamamagitan ng FTP o SSH)",
+ "HowToSetupGeoIP_Step3": "I-reload ang screen na ito. Ang %1$s GeoIP (PHP) %2$s provider na ngayon ang %3$s i-iinstal%4$s. Piliin ito.",
+ "HowToSetupGeoIP_Step4": "At ikaw ay tapos na! Nagawang mong mag setup ng Piwik upang magamit ang GeoIP na nangangahulugan na iyo ng makikita ang bawat rehiyon at lungsod ng bawat bibisita sa iyong webiste namay tiyak na impormasyon sa kanilang bansa.",
+ "HowToSetupGeoIPIntro": "Ikaw ay may hindi wastong Geolocation setup. Ang feature na ito ay malaking tulong at kung wala nito hindi mo makikita ang tumpak na at kumpletong impormasyon ng lokasyon para sa iyong mga bisita. Narito kung paano mo agad masisimulan ang paggamit nito:",
+ "HttpServerModule": "HTTP Module Server",
+ "InvalidGeoIPUpdatePeriod": "Di-wastong panahon para sa GeoIP update: %1$s. Ang wastong value ay %2$s.",
+ "IPurchasedGeoIPDBs": "Bumili ako ng higit sa %1$s database mula MaxMind %2$s at nais na i-setup ang awtomatikong update.",
+ "ISPDatabase": "ISP Database",
+ "IWantToDownloadFreeGeoIP": "Gusto kong i-download ang libreng database ng GeoIP.",
+ "Latitude": "Latitud",
+ "Location": "Lokasyon",
+ "LocationDatabase": "Lokasyon ng database",
+ "LocationDatabaseHint": "Ang database ng lokasyon ay alinman sa isang bansa rehiyon o database ng lungsod.",
+ "LocationProvider": "Lokasyon ng provider",
+ "Longitude": "Longhitud",
+ "NoDataForGeoIPReport1": "Walang mga datus para sa ulat na ito dahil walang data na magagamit sa lokasyon o ang IP address ay hindi maaaring e-geolocated.",
+ "NoDataForGeoIPReport2": "Upang paganahin ang tamang geolocation baguhin ang mga setting %1$sdito%2$s at gumamit ng%3$scity database%4$s.",
+ "Organization": "Organisasyon",
+ "OrgDatabase": "Organisasyon ng Database",
+ "PeclGeoIPNoDBDir": "Ang PECL module ay naghahanap ng databases sa %1$s Pero ang directory na ito ay wala. Mangyaring gawin ito at e-dagdag ang GeopIP databases dito. Bukod dito maari kang magtakda ng %2$s sa tamang directory sa iyong php.ini file",
+ "PiwikNotManagingGeoIPDBs": "Ang Piwik ay kasalukuyang di namamahala ng anumang GeoIP database",
+ "PluginDescription": "Mga ulat impormasyon tungkol sa lokasyon ng bisita kabilang ang mga bansa rehiyon lungsod at mga geographic coordinates (latitued \/ longtitude).",
+ "Region": "Rehiyon",
+ "SetupAutomaticUpdatesOfGeoIP": "I-set-up ang awtomatikong update ng mga database ng GeoIP",
+ "SubmenuLocations": "Mga Lokasyon",
+ "ThisUrlIsNotAValidGeoIPDB": "Ang mga na download na file ay hindi tamang GeoIP database. Mang-yaring e-check muli ang URL o i-download muli ang file ng mano-mano.",
+ "ToGeolocateOldVisits": "Upang makakuha ng data ng lokasyon para sa iyong lumang mga pagbisita gamitin ang script na inilarawan %1$shere%2$s.",
+ "UnsupportedArchiveType": "Nakatagpo ng hindi suportadong klase ng archive %1$s",
+ "UpdaterHasNotBeenRun": "Ang updater ay hindi pa napapatatakbo.",
+ "UpdaterIsNotScheduledToRun": "Ito ay hindi nakaiskedyul na tumakbo sa hinaharap.",
+ "UpdaterScheduledForNextRun": "Ito ay naka-iskedyul na tumakbo sa loob ng susunod na cron core: i-archive ang execution ng command.",
+ "UpdaterWasLastRun": "Ang updater ay huling na i-run ng %s.",
+ "UpdaterWillRunNext": "Ito ang susunod na naka-schedule upang tumakbo ng %s.",
+ "WidgetLocation": "Lokasyon ng bisita"
+ }
+} \ No newline at end of file
diff --git a/plugins/UserCountry/tests/Unit/UserCountryTest.php b/plugins/UserCountry/tests/Unit/UserCountryTest.php
index 540be65d70..5a6e453e3a 100644
--- a/plugins/UserCountry/tests/Unit/UserCountryTest.php
+++ b/plugins/UserCountry/tests/Unit/UserCountryTest.php
@@ -8,6 +8,7 @@
namespace Piwik\Plugins\UserCountry\tests\Unit;
+use Piwik\Log;
use Piwik\Plugins\UserCountry\GeoIPAutoUpdater;
use Piwik\Plugins\UserCountry\LocationProvider\GeoIp;
use Piwik\Plugins\UserCountry;
@@ -173,9 +174,10 @@ class Piwik_UserCountry_GeoIPAutoUpdater_publictest extends GeoIPAutoUpdater
// empty
}
- public function performRedundantDbChecks()
+ // during tests do not call the Log::error or they will be displayed in the output
+ public function performRedundantDbChecks($logErrors = false)
{
- parent::performRedundantDbChecks();
+ parent::performRedundantDbChecks($logErrors);
}
public function downloadFile($type, $url)
diff --git a/plugins/UserCountryMap/Controller.php b/plugins/UserCountryMap/Controller.php
index e5f845d80a..914835439e 100644
--- a/plugins/UserCountryMap/Controller.php
+++ b/plugins/UserCountryMap/Controller.php
@@ -63,7 +63,7 @@ class Controller extends \Piwik\Plugin\Controller
$view->defaultMetric = 'nb_visits';
// some translations
- $view->localeJSON = Common::json_encode(array(
+ $view->localeJSON = json_encode(array(
'nb_visits' => Piwik::translate('General_NVisits'),
'one_visit' => Piwik::translate('General_OneVisit'),
'no_visit' => Piwik::translate('UserCountryMap_NoVisit'),
@@ -90,7 +90,7 @@ class Controller extends \Piwik\Plugin\Controller
$view->metrics = $config['metrics'] = $this->getMetrics($idSite, $period, $date, $token_auth);
$config['svgBasePath'] = 'plugins/UserCountryMap/svg/';
$config['mapCssPath'] = 'plugins/UserCountryMap/stylesheets/map.css';
- $view->config = Common::json_encode($config);
+ $view->config = json_encode($config);
$view->noData = empty($config['visitsSummary']['nb_visits']);
return $view->render();
@@ -198,7 +198,7 @@ class Controller extends \Piwik\Plugin\Controller
}
if ($encode) {
- $params = Common::json_encode($params);
+ $params = json_encode($params);
}
return $params;
}
diff --git a/plugins/UserCountryMap/lang/sl.json b/plugins/UserCountryMap/lang/sl.json
index a4a803deaf..435a4a62e9 100644
--- a/plugins/UserCountryMap/lang/sl.json
+++ b/plugins/UserCountryMap/lang/sl.json
@@ -1,6 +1,8 @@
{
"UserCountryMap": {
"map": "zemljevid",
- "RealTimeMap": "Zemljevid v realnem času"
+ "RealTimeMap": "Zemljevid v realnem času",
+ "Regions": "Regije",
+ "VisitorMap": "Zemljevid obiskovalcev"
}
} \ No newline at end of file
diff --git a/plugins/UserCountryMap/lang/tl.json b/plugins/UserCountryMap/lang/tl.json
new file mode 100644
index 0000000000..cda92e749d
--- /dev/null
+++ b/plugins/UserCountryMap/lang/tl.json
@@ -0,0 +1,27 @@
+{
+ "UserCountryMap": {
+ "AndNOthers": "at %s iba",
+ "Cities": "Lungsod",
+ "Countries": "Mga Bansa",
+ "DaysAgo": "araw %s na ang nakalipas",
+ "GoalConversions": "Mga %s goal conversion",
+ "Hours": "oras",
+ "HoursAgo": "oras %s na ang nakalipas",
+ "map": "mapa",
+ "Minutes": "minuto",
+ "MinutesAgo": "%s minuto ang nakalipas",
+ "None": "Wala",
+ "NoVisit": "walang bumisita",
+ "RealTimeMap": "Real-time Map",
+ "Regions": "Mga Rehiyon",
+ "Searches": "%s searches",
+ "Seconds": "segundo",
+ "SecondsAgo": "segundo %s na ang nakalipas",
+ "ShowingVisits": "Geo-located na pagbisita ng huling",
+ "Unlocated": "<b> %s <b> %p sa mga pagbisita mula sa %c ay hindi pwedeng i-geolocated.",
+ "VisitorMap": "Mapa ng bumisita",
+ "WithUnknownCity": "%s hindi kilalang lungsod",
+ "WithUnknownRegion": "%s na may hindi kilalang rehiyon",
+ "WorldWide": "World-Wide"
+ }
+} \ No newline at end of file
diff --git a/plugins/UserSettings/API.php b/plugins/UserSettings/API.php
index 1be5ecc6fc..0754ccd45c 100644
--- a/plugins/UserSettings/API.php
+++ b/plugins/UserSettings/API.php
@@ -20,8 +20,8 @@ use Piwik\Plugins\DevicesDetection\Archiver AS DDArchiver;
require_once PIWIK_INCLUDE_PATH . '/plugins/UserSettings/functions.php';
/**
- * The UserSettings API lets you access reports about your Visitors technical settings: browsers, browser types (rendering engine),
- * operating systems, plugins supported in their browser, Screen resolution and Screen types (normal, widescreen, dual screen or mobile).
+ * The UserSettings API lets you access reports about some of your Visitors technical settings:
+ * plugins supported in their browser, Screen resolution and Screen types (normal, widescreen, dual screen or mobile).
*
* @method static \Piwik\Plugins\UserSettings\API getInstance()
*/
@@ -56,112 +56,65 @@ class API extends \Piwik\Plugin\API
return \Piwik\Plugins\DevicesDetection\API::getInstance();
}
+ /**
+ * @deprecated since 2.10.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
+ */
public function getOS($idSite, $period, $date, $segment = false, $addShortLabel = true)
{
- $dataTable = $this->getDataTable(Archiver::OS_RECORD_NAME, $idSite, $period, $date, $segment);
- // these filters are applied directly so other API methods can use GroupBy on the result of this method
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getOSLogo'));
- if ($addShortLabel) {
- $dataTable->filter(
- 'ColumnCallbackAddMetadata', array('label', 'shortLabel', __NAMESPACE__ . '\getOSShortLabel'));
- }
- $dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getOSLabel'));
- return $dataTable;
+ return $this->getDevicesDetectorApi()->getOsVersions($idSite, $period, $date, $segment);
}
/**
- * Gets a DataTable displaying number of visits by operating system family. The operating
- * system families are listed in vendor piwik/device-detector.
+ * @deprecated since 2.10.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
*/
public function getOSFamily($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getOS($idSite, $period, $date, $segment, $addShortLabel = false);
- $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getOSFamily'));
- $dataTable->queueFilter('ColumnCallbackReplace', array('label', array('\\Piwik\\Piwik','translate')));
- return $dataTable;
+ return $this->getDevicesDetectorApi()->getOsFamilies($idSite, $period, $date, $segment);
}
/**
- * Gets a DataTable displaying number of visits by device type (mobile vs. desktop).
+ * Gets a DataTable displaying number of visits by device type.
+ * @deprecated since 2.10.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
*/
public function getMobileVsDesktop($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getOS($idSite, $period, $date, $segment, $addShortLabel = false);
- $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getDeviceTypeFromOS'));
- $this->ensureDefaultRowsInTable($dataTable);
-
- // set the logo metadata
- $dataTable->queueFilter('MetadataCallbackReplace',
- array('logo', __NAMESPACE__ . '\getDeviceTypeImg', null, array('label')));
-
- // translate the labels
- $dataTable->queueFilter('ColumnCallbackReplace', array('label', array('\\Piwik\\Piwik','translate')));
-
- return $dataTable;
- }
-
- protected function ensureDefaultRowsInTable($dataTable)
- {
- $requiredRows = array(
- 'General_Desktop' => Metrics::INDEX_NB_VISITS,
- 'General_Mobile' => Metrics::INDEX_NB_VISITS
- );
-
- $dataTables = array($dataTable);
-
- if (!($dataTable instanceof DataTable\Map)) {
- foreach ($dataTables as $table) {
- if ($table->getRowsCount() == 0) {
- continue;
- }
- foreach ($requiredRows as $requiredRow => $key) {
- $row = $table->getRowFromLabel($requiredRow);
- if (empty($row)) {
- $table->addRowsFromSimpleArray(array(
- array('label' => $requiredRow, $key => 0)
- ));
- }
- }
- }
- }
+ return $this->getDevicesDetectorApi()->getType($idSite, $period, $date, $segment);
}
+ /**
+ * @deprecated since 2.10.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
+ */
public function getBrowserVersion($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getBrowserTable($idSite, $period, $date, $segment);
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'shortLabel', __NAMESPACE__ . '\getBrowserShortLabel'));
- return $dataTable;
- }
-
- protected function getBrowserTable($idSite, $period, $date, $segment)
- {
- $dataTable = $this->getDataTable(Archiver::BROWSER_RECORD_NAME, $idSite, $period, $date, $segment);
- $dataTable->filter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getBrowsersLogo'));
- $dataTable->filter('ColumnCallbackReplace', array('label', __NAMESPACE__ . '\getBrowserLabel'));
- return $dataTable;
+ return $this->getDevicesDetectorApi()->getBrowserVersions($idSite, $period, $date, $segment);
}
/**
- * Gets a DataTable displaying number of visits by browser (ie, Firefox, Chrome, etc.).
- * The browser version is not included in this report.
+ * @deprecated since 2.10.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
*/
public function getBrowser($idSite, $period, $date, $segment = false)
{
- $dataTable = $this->getBrowserTable($idSite, $period, $date, $segment);
- $dataTable->filter('GroupBy', array('label', __NAMESPACE__ . '\getBrowserFromBrowserVersion'));
- return $dataTable;
+ return $this->getDevicesDetectorApi()->getBrowsers($idSite, $period, $date, $segment);
}
/**
- * @deprecated since 2.7.1-b1 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
+ * @deprecated since 2.9.0 See {@link Piwik\Plugins\DevicesDetector\API} for new implementation.
*/
public function getBrowserType($idSite, $period, $date, $segment = false)
{
return $this->getDevicesDetectorApi()->getBrowserEngines($idSite, $period, $date, $segment);
}
+ /**
+ * @deprecated since 2.10.0 Use {@link getScreenType} instead.
+ */
public function getWideScreen($idSite, $period, $date, $segment = false)
{
+ return $this->getScreenType($idSite, $period, $date, $segment);
+ }
+
+ public function getScreenType($idSite, $period, $date, $segment = false)
+ {
$dataTable = $this->getDataTable(Archiver::SCREEN_TYPE_RECORD_NAME, $idSite, $period, $date, $segment);
$dataTable->queueFilter('ColumnCallbackAddMetadata', array('label', 'logo', __NAMESPACE__ . '\getScreensLogo'));
$dataTable->queueFilter('ColumnCallbackReplace', array('label', 'ucfirst'));
diff --git a/plugins/UserSettings/Archiver.php b/plugins/UserSettings/Archiver.php
index ea4496b16a..fed904de7d 100644
--- a/plugins/UserSettings/Archiver.php
+++ b/plugins/UserSettings/Archiver.php
@@ -28,26 +28,19 @@ class Archiver extends \Piwik\Plugin\Archiver
const PLUGIN_RECORD_NAME = 'UserSettings_plugin';
const SCREEN_TYPE_RECORD_NAME = 'UserSettings_wideScreen';
const RESOLUTION_RECORD_NAME = 'UserSettings_resolution';
- const BROWSER_RECORD_NAME = 'UserSettings_browser';
- const OS_RECORD_NAME = 'UserSettings_os';
const CONFIGURATION_RECORD_NAME = 'UserSettings_configuration';
const LANGUAGE_DIMENSION = "log_visit.location_browser_lang";
const RESOLUTION_DIMENSION = "log_visit.config_resolution";
- const BROWSER_VERSION_DIMENSION = "CONCAT(log_visit.config_browser_name, ';', log_visit.config_browser_version)";
- const OS_DIMENSION = "log_visit.config_os";
const CONFIGURATION_DIMENSION = "CONCAT(log_visit.config_os, ';', log_visit.config_browser_name, ';', log_visit.config_resolution)";
/**
* Daily archive of User Settings report. Processes reports for Visits by Resolution,
- * by Browser, Browser family, etc. Some reports are built from the logs, some reports
- * are superset of an existing report (eg. Browser family is built from the Browser report)
+ * browser plugins, etc. Some reports are built from the logs, some reports are superset of an existing report
*/
public function aggregateDayReport()
{
$this->aggregateByConfiguration();
- $this->aggregateByOs();
- $this->aggregateByBrowser();
$this->aggregateByResolutionAndScreenType();
$this->aggregateByPlugin();
$this->aggregateByLanguage();
@@ -60,8 +53,6 @@ class Archiver extends \Piwik\Plugin\Archiver
{
$dataTableRecords = array(
self::CONFIGURATION_RECORD_NAME,
- self::OS_RECORD_NAME,
- self::BROWSER_RECORD_NAME,
self::RESOLUTION_RECORD_NAME,
self::SCREEN_TYPE_RECORD_NAME,
self::PLUGIN_RECORD_NAME,
@@ -76,23 +67,6 @@ class Archiver extends \Piwik\Plugin\Archiver
$this->insertTable(self::CONFIGURATION_RECORD_NAME, $metrics);
}
- protected function aggregateByOs()
- {
- $metrics = $this->getLogAggregator()->getMetricsFromVisitByDimension(self::OS_DIMENSION)->asDataTable();
- $this->insertTable(self::OS_RECORD_NAME, $metrics);
- }
-
- protected function aggregateByBrowser()
- {
- $tableBrowser = $this->aggregateByBrowserVersion();
- }
-
- protected function aggregateByBrowserVersion()
- {
- $tableBrowser = $this->getLogAggregator()->getMetricsFromVisitByDimension(self::BROWSER_VERSION_DIMENSION)->asDataTable();
- $this->insertTable(self::BROWSER_RECORD_NAME, $tableBrowser);
- return $tableBrowser;
- }
protected function aggregateByResolutionAndScreenType()
{
$resolutions = $this->aggregateByResolution();
diff --git a/plugins/UserSettings/Columns/Browser.php b/plugins/UserSettings/Columns/Browser.php
deleted file mode 100644
index edb9b6f150..0000000000
--- a/plugins/UserSettings/Columns/Browser.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Columns;
-
-use Piwik\Piwik;
-use Piwik\Plugins\DevicesDetection\Columns\BrowserName;
-use Piwik\Plugins\UserSettings\Segment;
-
-class Browser extends BrowserName
-{
- protected $columnName = 'config_browser_name';
- protected $columnType = 'VARCHAR(10) NOT NULL';
-
- protected function configureSegments()
- {
- $segment = new Segment();
- $segment->setSegment('browserCode');
- $segment->setName('UserSettings_ColumnBrowser');
- $segment->setAcceptedValues('FF, IE, CH, SF, OP, etc.');
- $this->addSegment($segment);
- }
-
- public function getName()
- {
- return Piwik::translate('UserSettings_ColumnBrowser');
- }
-} \ No newline at end of file
diff --git a/plugins/UserSettings/Columns/BrowserVersion.php b/plugins/UserSettings/Columns/BrowserVersion.php
deleted file mode 100644
index ea30ea0781..0000000000
--- a/plugins/UserSettings/Columns/BrowserVersion.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Columns;
-
-use Piwik\Piwik;
-use Piwik\Plugins\UserSettings\Segment;
-
-class BrowserVersion extends \Piwik\Plugins\DevicesDetection\Columns\BrowserVersion
-{
- protected $columnName = 'config_browser_version';
- protected $columnType = 'VARCHAR(20) NOT NULL';
-
- protected function configureSegments()
- {
- $segment = new Segment();
- $segment->setSegment('browserVersion');
- $segment->setName('UserSettings_ColumnBrowserVersion');
- $segment->setAcceptedValues('1.0, 8.0, etc.');
- $this->addSegment($segment);
- }
-
- public function getName()
- {
- return Piwik::translate('UserSettings_ColumnBrowserVersion');
- }
-} \ No newline at end of file
diff --git a/plugins/UserSettings/Columns/MobilevsDesktop.php b/plugins/UserSettings/Columns/MobilevsDesktop.php
deleted file mode 100644
index 79721238b7..0000000000
--- a/plugins/UserSettings/Columns/MobilevsDesktop.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Columns;
-
-use Piwik\Columns\Dimension;
-use Piwik\Piwik;
-
-class MobilevsDesktop extends Dimension
-{
- public function getName()
- {
- return Piwik::translate('UserSettings_MobileVsDesktop');
- }
-} \ No newline at end of file
diff --git a/plugins/UserSettings/Columns/Operatingsystem.php b/plugins/UserSettings/Columns/Operatingsystem.php
deleted file mode 100644
index 82a00aa8c4..0000000000
--- a/plugins/UserSettings/Columns/Operatingsystem.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Columns;
-
-use Piwik\Piwik;
-use Piwik\Plugins\DevicesDetection\Columns\Os;
-use Piwik\Plugins\UserSettings\Segment;
-
-class Operatingsystem extends Os
-{
- protected $columnName = 'config_os';
- protected $columnType = 'CHAR(3) NOT NULL';
-
- protected function configureSegments()
- {
- $segment = new Segment();
- $segment->setSegment('operatingSystemCode');
- $segment->setName('UserSettings_ColumnOperatingSystem');
- $segment->setAcceptedValues('WXP, WI7, MAC, LIN, AND, IPD, etc.');
- $this->addSegment($segment);
- }
-
- public function getName()
- {
- return Piwik::translate('UserSettings_ColumnOperatingSystem');
- }
-} \ No newline at end of file
diff --git a/plugins/UserSettings/Columns/OperatingsystemFamily.php b/plugins/UserSettings/Columns/OperatingsystemFamily.php
deleted file mode 100644
index 7f8ed89a96..0000000000
--- a/plugins/UserSettings/Columns/OperatingsystemFamily.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Columns;
-
-use Piwik\Columns\Dimension;
-use Piwik\Piwik;
-
-class OperatingsystemFamily extends Dimension
-{
- public function getName()
- {
- return Piwik::translate('UserSettings_OperatingSystemFamily');
- }
-} \ No newline at end of file
diff --git a/plugins/UserSettings/Controller.php b/plugins/UserSettings/Controller.php
index 21ebadd617..5334ee20b2 100644
--- a/plugins/UserSettings/Controller.php
+++ b/plugins/UserSettings/Controller.php
@@ -8,13 +8,11 @@
*/
namespace Piwik\Plugins\UserSettings;
-use Piwik\Plugins\UserSettings\Reports\GetBrowser;
use Piwik\Plugins\UserSettings\Reports\GetConfiguration;
use Piwik\Plugins\UserSettings\Reports\GetLanguage;
-use Piwik\Plugins\UserSettings\Reports\GetMobileVsDesktop;
-use Piwik\Plugins\UserSettings\Reports\GetOS;
use Piwik\Plugins\UserSettings\Reports\GetPlugin;
use Piwik\Plugins\UserSettings\Reports\GetResolution;
+use Piwik\Plugins\UserSettings\Reports\GetScreenType;
use Piwik\View;
/**
@@ -29,9 +27,7 @@ class Controller extends \Piwik\Plugin\Controller
$view->dataTablePlugin = $this->renderReport(new GetPlugin());
$view->dataTableResolution = $this->renderReport(new GetResolution());
$view->dataTableConfiguration = $this->renderReport(new GetConfiguration());
- $view->dataTableOS = $this->renderReport(new GetOS());
- $view->dataTableBrowser = $this->renderReport(new GetBrowser());
- $view->dataTableMobileVsDesktop = $this->renderReport(new GetMobileVsDesktop());
+ $view->dataTableScreenType = $this->renderReport(new GetScreenType());
$view->dataTableBrowserLanguage = $this->renderReport(new GetLanguage());
return $view->render();
diff --git a/plugins/UserSettings/Reports/GetBrowser.php b/plugins/UserSettings/Reports/GetBrowser.php
deleted file mode 100644
index 47f262d2ef..0000000000
--- a/plugins/UserSettings/Reports/GetBrowser.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Reports;
-
-use Piwik\Piwik;
-use Piwik\Plugin\ViewDataTable;
-use Piwik\Plugins\CoreVisualizations\Visualizations\Graph;
-use Piwik\Plugins\UserSettings\Columns\Browser;
-
-class GetBrowser extends Base
-{
- protected function init()
- {
- parent::init();
- $this->dimension = new Browser();
- $this->name = Piwik::translate('UserSettings_WidgetBrowsers');
- $this->documentation = Piwik::translate('UserSettings_WidgetBrowsersDocumentation', '<br />');
- $this->order = 1;
- $this->widgetTitle = 'UserSettings_WidgetBrowsers';
- }
-
- public function configureView(ViewDataTable $view)
- {
- $this->getBasicUserSettingsDisplayProperties($view);
-
- $view->config->title = Piwik::translate('UserSettings_Browsers');
- $view->config->addTranslation('label', $this->dimension->getName());
-
- if ($view->isViewDataTableId(Graph::ID)) {
- $view->config->max_graph_elements = 7;
- }
- }
-
- public function getRelatedReports()
- {
- return array(
- new GetBrowserVersion()
- );
- }
-}
diff --git a/plugins/UserSettings/Reports/GetBrowserVersion.php b/plugins/UserSettings/Reports/GetBrowserVersion.php
deleted file mode 100644
index aa1c39f042..0000000000
--- a/plugins/UserSettings/Reports/GetBrowserVersion.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Reports;
-
-use Piwik\Piwik;
-use Piwik\Plugin\ViewDataTable;
-use Piwik\Plugins\CoreVisualizations\Visualizations\Graph;
-use Piwik\Plugins\UserSettings\Columns\BrowserVersion;
-
-class GetBrowserVersion extends Base
-{
- protected function init()
- {
- parent::init();
- $this->dimension = new BrowserVersion();
- $this->name = Piwik::translate('UserSettings_WidgetBrowserVersion');
- $this->documentation = ''; // TODO
- $this->order = 2;
- $this->widgetTitle = 'UserSettings_WidgetBrowserVersion';
- }
-
- public function configureView(ViewDataTable $view)
- {
- $this->getBasicUserSettingsDisplayProperties($view);
-
- $view->config->title = Piwik::translate('UserSettings_ColumnBrowserVersion');
- $view->config->addTranslation('label', $this->dimension->getName());
-
- if ($view->isViewDataTableId(Graph::ID)) {
- $view->config->max_graph_elements = 7;
- }
- }
-
- public function getRelatedReports()
- {
- return array(
- new GetBrowser()
- );
- }
-
-}
diff --git a/plugins/UserSettings/Reports/GetMobileVsDesktop.php b/plugins/UserSettings/Reports/GetMobileVsDesktop.php
deleted file mode 100644
index bbdfe90095..0000000000
--- a/plugins/UserSettings/Reports/GetMobileVsDesktop.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Reports;
-
-use Piwik\Piwik;
-use Piwik\Plugin\ViewDataTable;
-use Piwik\Plugins\UserSettings\Columns\MobilevsDesktop;
-
-class GetMobileVsDesktop extends Base
-{
- protected function init()
- {
- parent::init();
- $this->dimension = new MobilevsDesktop();
- $this->name = Piwik::translate('UserSettings_MobileVsDesktop');
- $this->documentation = ''; // TODO
- $this->constantRowsCount = true;
- $this->order = 9;
- $this->widgetTitle = 'UserSettings_MobileVsDesktop';
- }
-
- public function configureView(ViewDataTable $view)
- {
- $this->getBasicUserSettingsDisplayProperties($view);
-
- $view->config->title = Piwik::translate('UserSettings_MobileVsDesktop');
- $view->config->addTranslation('label', $this->dimension->getName());
- }
-
- public function getRelatedReports()
- {
- return array(
- new GetWideScreen()
- );
- }
-
-}
diff --git a/plugins/UserSettings/Reports/GetOS.php b/plugins/UserSettings/Reports/GetOS.php
deleted file mode 100644
index f3b6c028a2..0000000000
--- a/plugins/UserSettings/Reports/GetOS.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Reports;
-
-use Piwik\Piwik;
-use Piwik\Plugin\ViewDataTable;
-use Piwik\Plugins\UserSettings\Columns\Operatingsystem;
-
-class GetOS extends Base
-{
- protected function init()
- {
- parent::init();
- $this->dimension = new Operatingsystem();
- $this->name = Piwik::translate('UserSettings_WidgetOperatingSystems');
- $this->documentation = ''; // TODO
- $this->order = 6;
- $this->widgetTitle = 'UserSettings_WidgetOperatingSystems';
- }
-
- public function configureView(ViewDataTable $view)
- {
- $this->getBasicUserSettingsDisplayProperties($view);
-
- $view->config->title = Piwik::translate('UserSettings_OperatingSystems');
- $view->config->addTranslation('label', $this->dimension->getName());
- }
-
- public function getRelatedReports()
- {
- return array(
- new GetOSFamily()
- );
- }
-}
diff --git a/plugins/UserSettings/Reports/GetOSFamily.php b/plugins/UserSettings/Reports/GetOSFamily.php
deleted file mode 100644
index 5e12861b80..0000000000
--- a/plugins/UserSettings/Reports/GetOSFamily.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
-namespace Piwik\Plugins\UserSettings\Reports;
-
-use Piwik\Piwik;
-use Piwik\Plugin\ViewDataTable;
-use Piwik\Plugins\UserSettings\Columns\OperatingsystemFamily;
-
-class GetOSFamily extends Base
-{
- protected function init()
- {
- parent::init();
- $this->dimension = new OperatingsystemFamily();
- $this->name = Piwik::translate('UserSettings_OperatingSystemFamily');
- $this->documentation = ''; // TODO
- $this->order = 8;
- $this->widgetTitle = 'UserSettings_OperatingSystemFamily';
- }
-
- public function configureView(ViewDataTable $view)
- {
- $this->getBasicUserSettingsDisplayProperties($view);
-
- $view->config->title = $this->name;
- $view->config->addTranslation('label', $this->dimension->getName());
- }
-
- public function getRelatedReports()
- {
- return array(
- new GetOS()
- );
- }
-
-}
diff --git a/plugins/UserSettings/Reports/GetWideScreen.php b/plugins/UserSettings/Reports/GetScreenType.php
index 92006d590c..1b33d0dc4c 100644
--- a/plugins/UserSettings/Reports/GetWideScreen.php
+++ b/plugins/UserSettings/Reports/GetScreenType.php
@@ -12,7 +12,7 @@ use Piwik\Piwik;
use Piwik\Plugin\ViewDataTable;
use Piwik\Plugins\UserSettings\Columns\TypeOfScreen;
-class GetWideScreen extends Base
+class GetScreenType extends Base
{
protected function init()
{
@@ -34,11 +34,4 @@ class GetWideScreen extends Base
$view->config->show_limit_control = false;
$view->config->addTranslation('label', $this->dimension->getName());
}
-
- public function getRelatedReports()
- {
- return array(
- new GetMobileVsDesktop()
- );
- }
}
diff --git a/plugins/UserSettings/UserSettings.php b/plugins/UserSettings/UserSettings.php
index 728df69f7e..d36ce093b6 100644
--- a/plugins/UserSettings/UserSettings.php
+++ b/plugins/UserSettings/UserSettings.php
@@ -24,22 +24,44 @@ class UserSettings extends \Piwik\Plugin
{
return array(
'Metrics.getDefaultMetricTranslations' => 'addMetricTranslations',
- 'Live.getAllVisitorDetails' => 'extendVisitorDetails'
+ 'Live.getAllVisitorDetails' => 'extendVisitorDetails',
+ 'Request.dispatch' => 'mapDeprecatedActions'
);
}
+ /**
+ * Maps the deprecated actions that were 'moved' to DevicesDetection plugin
+ *
+ * @deprecated since 2.10.0 and will be removed from May 1st 2015
+ * @param $module
+ * @param $action
+ * @param $parameters
+ */
+ public function mapDeprecatedActions(&$module, &$action, &$parameters)
+ {
+ $movedMethods = array(
+ 'getBrowser' => 'getBrowsers',
+ 'getBrowserVersion' => 'getBrowserVersions',
+ 'getMobileVsDesktop' => 'getType',
+ 'getOS' => 'getOsVersions',
+ 'getOSFamily' => 'getOsFamilies',
+ 'getBrowserType' => 'getBrowserEngines'
+ );
+
+ if ($module == 'UserSettings' && array_key_exists($action, $movedMethods)) {
+ $module = 'DevicesDetection';
+ $action = $movedMethods[$action];
+ }
+
+ if ($module == 'UserSettings' && $action == 'getWideScreen') {
+ $action = 'getScreenType';
+ }
+ }
+
public function extendVisitorDetails(&$visitor, $details)
{
$instance = new Visitor($details);
- $visitor['operatingSystem'] = $instance->getOperatingSystem();
- $visitor['operatingSystemCode'] = $instance->getOperatingSystemCode();
- $visitor['operatingSystemShortName'] = $instance->getOperatingSystemShortName();
- $visitor['operatingSystemIcon'] = $instance->getOperatingSystemIcon();
- $visitor['browserName'] = $instance->getBrowser();
- $visitor['browserIcon'] = $instance->getBrowserIcon();
- $visitor['browserCode'] = $instance->getBrowserCode();
- $visitor['browserVersion'] = $instance->getBrowserVersion();
$visitor['screenType'] = $instance->getScreenType();
$visitor['resolution'] = $instance->getResolution();
$visitor['screenTypeIcon'] = $instance->getScreenTypeIcon();
diff --git a/plugins/UserSettings/Visitor.php b/plugins/UserSettings/Visitor.php
index 6d114b1124..03e2bd958a 100644
--- a/plugins/UserSettings/Visitor.php
+++ b/plugins/UserSettings/Visitor.php
@@ -63,46 +63,6 @@ class Visitor
return null;
}
- function getOperatingSystemCode()
- {
- return $this->details['config_os'];
- }
-
- function getOperatingSystem()
- {
- return getOSLabel($this->details['config_os']);
- }
-
- function getOperatingSystemShortName()
- {
- return getOSShortLabel($this->details['config_os']);
- }
-
- function getOperatingSystemIcon()
- {
- return getOSLogo($this->details['config_os']);
- }
-
- function getBrowserCode()
- {
- return $this->details['config_browser_name'];
- }
-
- function getBrowserVersion()
- {
- return $this->details['config_browser_version'];
- }
-
- function getBrowser()
- {
- return getBrowserLabel($this->details['config_browser_name'] . ";" . $this->details['config_browser_version']);
- }
-
- function getBrowserIcon()
- {
- return getBrowsersLogo($this->details['config_browser_name'] . ";" . $this->details['config_browser_version']);
- }
-
function getScreenType()
{
if (!array_key_exists('config_resolution', $this->details)) {
diff --git a/plugins/UserSettings/functions.php b/plugins/UserSettings/functions.php
index d7ca0fafd4..e367ff8bc9 100644
--- a/plugins/UserSettings/functions.php
+++ b/plugins/UserSettings/functions.php
@@ -11,12 +11,6 @@ namespace Piwik\Plugins\UserSettings;
use Piwik\Piwik;
use Piwik\Tracker\Request;
-use UserAgentParser;
-
-/**
- * @see libs/UserAgentParser/UserAgentParser.php
- */
-require_once PIWIK_INCLUDE_PATH . '/libs/UserAgentParser/UserAgentParser.php';
function getPluginsLogo($oldLabel)
{
@@ -26,69 +20,6 @@ function getPluginsLogo($oldLabel)
return 'plugins/UserSettings/images/plugins/' . $oldLabel . '.gif';
}
-function getOSLabel($osId)
-{
- $osName = UserAgentParser::getOperatingSystemNameFromId($osId);
- if ($osName !== false) {
- return $osName;
- }
- if ($osId == 'UNK') {
- return Piwik::translate('General_Unknown');
- }
- return $osId;
-}
-
-function getOSShortLabel($osId)
-{
- $osShortName = UserAgentParser::getOperatingSystemShortNameFromId($osId);
- if ($osShortName !== false) {
- return $osShortName;
- }
- if ($osId == 'UNK') {
- return Piwik::translate('General_Unknown');
- }
- return $osId;
-}
-
-function getOSFamily($osLabel)
-{
- $osId = UserAgentParser::getOperatingSystemIdFromName($osLabel);
- $osFamily = UserAgentParser::getOperatingSystemFamilyFromId($osId);
-
- if ($osFamily == 'unknown') {
- $osFamily = Piwik::translate('General_Unknown');
- } else if ($osFamily == 'Gaming Console') {
- $osFamily = Piwik::translate('UserSettings_GamingConsole');
- }
-
- return $osFamily;
-}
-
-function getDeviceTypeFromOS($osLabel)
-{
- $osId = UserAgentParser::getOperatingSystemIdFromName($osLabel);
- $osFamily = UserAgentParser::getOperatingSystemFamilyFromId($osId);
-
- // NOTE: translations done in another filter
- switch ($osFamily) {
- case 'Windows':
- case 'Linux':
- case 'Mac':
- case 'Unix':
- case 'Other':
- case 'Gaming Console':
- return 'General_Desktop';
- case 'iOS':
- case 'Android':
- case 'Windows Mobile':
- case 'Other Mobile':
- case 'Mobile Gaming Console':
- return 'General_Mobile';
- default:
- return 'General_Unknown';
- }
-}
-
function getConfigurationLabel($str)
{
if (strpos($str, ';') === false) {
@@ -96,9 +27,9 @@ function getConfigurationLabel($str)
}
$values = explode(";", $str);
- $os = getOSLabel($values[0]);
+ $os = \Piwik\Plugins\DevicesDetection\getOsFullName($values[0]);
$name = $values[1];
- $browser = UserAgentParser::getBrowserNameFromId($name);
+ $browser = \Piwik\Plugins\DevicesDetection\getBrowserName($name);
if ($browser === false) {
$browser = Piwik::translate('General_Unknown');
}
@@ -106,44 +37,6 @@ function getConfigurationLabel($str)
return $os . " / " . $browser . " / " . $resolution;
}
-function getBrowserLabel($oldLabel)
-{
- $browserId = getBrowserId($oldLabel);
- $version = getBrowserVersion($oldLabel);
- $browserName = UserAgentParser::getBrowserNameFromId($browserId);
- if ($browserName !== false) {
- return $browserName . " " . $version;
- }
- if ($browserId == 'UNK') {
- return Piwik::translate('General_Unknown');
- }
- return $oldLabel;
-}
-
-function getBrowserShortLabel($oldLabel)
-{
- $browserId = getBrowserId($oldLabel);
- $version = getBrowserVersion($oldLabel);
- $browserName = UserAgentParser::getBrowserShortNameFromId($browserId);
- if ($browserName !== false) {
- return $browserName . " " . $version;
- }
- if ($browserId == 'UNK') {
- return Piwik::translate('General_Unknown');
- }
- return $oldLabel;
-}
-
-function getBrowserId($str)
-{
- return substr($str, 0, strpos($str, ';'));
-}
-
-function getBrowserVersion($str)
-{
- return substr($str, strpos($str, ';') + 1);
-}
-
function getLogoImageFromId($dir, $id)
{
$path = $dir . '/' . $id . '.gif';
@@ -154,43 +47,11 @@ function getLogoImageFromId($dir, $id)
}
}
-function getBrowsersLogo($label)
-{
- $id = getBrowserId($label);
- // For aggregated row 'Others'
- if (empty($id)) {
- $id = 'UNK';
- }
- return getLogoImageFromId('plugins/UserSettings/images/browsers', $id);
-}
-
-function getOSLogo($label)
-{
- // For aggregated row 'Others'
- if (empty($label)) {
- $label = 'UNK';
- }
- return getLogoImageFromId('plugins/UserSettings/images/os', $label);
-}
-
function getScreensLogo($label)
{
return 'plugins/UserSettings/images/screens/' . $label . '.gif';
}
-function getDeviceTypeImg($oldOSImage, $osFamilyLabel)
-{
- switch ($osFamilyLabel) {
- case 'General_Desktop':
- return 'plugins/UserSettings/images/screens/normal.gif';
- case 'General_Mobile':
- return 'plugins/UserSettings/images/screens/mobile.gif';
- case 'General_Unknown':
- default:
- return 'plugins/UserSettings/images/os/UNK.gif';
- }
-}
-
function getScreenTypeFromResolution($resolution)
{
if ($resolution === Request::UNKNOWN_RESOLUTION) {
@@ -213,24 +74,6 @@ function getScreenTypeFromResolution($resolution)
return $name;
}
-function getBrowserFamily($browserLabel)
-{
- $familyNameToUse = UserAgentParser::getBrowserFamilyFromId(substr($browserLabel, 0, 2));
- return $familyNameToUse;
-}
-
-/**
- * Extracts the browser name from a string with the browser name and version.
- */
-function getBrowserFromBrowserVersion($browserWithVersion)
-{
- if (preg_match("/(.+) [0-9]+(?:\.[0-9]+)?$/", $browserWithVersion, $matches) === 0) {
- return $browserWithVersion;
- }
-
- return $matches[1];
-}
-
/**
* Returns the given language code to translated language name
*
diff --git a/plugins/UserSettings/images/os/IOS.gif b/plugins/UserSettings/images/os/IOS.gif
index a3b970ae1b..17ef80cd53 100644
--- a/plugins/UserSettings/images/os/IOS.gif
+++ b/plugins/UserSettings/images/os/IOS.gif
Binary files differ
diff --git a/plugins/UserSettings/lang/am.json b/plugins/UserSettings/lang/am.json
index 8c49a567f3..b3e6ceefe5 100644
--- a/plugins/UserSettings/lang/am.json
+++ b/plugins/UserSettings/lang/am.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "የማሰሺያ ቤተሰቦች",
"Browsers": "ማሰሻዎች",
"ColumnBrowser": "ማሰሺያ",
- "ColumnBrowserFamily": "የማሰሻ ቤተሰብ",
"ColumnConfiguration": "ውቅረት",
"ColumnResolution": "ጥራት",
"ColumnTypeOfScreen": "የማያ ዓይነት",
diff --git a/plugins/UserSettings/lang/ar.json b/plugins/UserSettings/lang/ar.json
index c4a1333af9..9709b1ed09 100644
--- a/plugins/UserSettings/lang/ar.json
+++ b/plugins/UserSettings/lang/ar.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "عائلات المتصفحات",
"Browsers": "المتصفحات",
"ColumnBrowser": "المتصفح",
- "ColumnBrowserFamily": "عائلة المتصفح",
- "ColumnBrowserVersion": "إصدار المتصفح",
"ColumnConfiguration": "الإعداد",
"ColumnOperatingSystem": "نظام التشغيل",
"ColumnResolution": "الكثافة النقطية",
diff --git a/plugins/UserSettings/lang/be.json b/plugins/UserSettings/lang/be.json
index bf54754cca..afe7fdc13e 100644
--- a/plugins/UserSettings/lang/be.json
+++ b/plugins/UserSettings/lang/be.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Па сямействе браўзараў",
"Browsers": "Па браўзарах",
"ColumnBrowser": "Браўзэр",
- "ColumnBrowserFamily": "Сямейства браўзэраў",
- "ColumnBrowserVersion": "Версія браўзэра",
"ColumnConfiguration": "Канфігурацыя",
"ColumnOperatingSystem": "Аперацыйная сістэма",
"ColumnResolution": "Дазвол",
diff --git a/plugins/UserSettings/lang/bg.json b/plugins/UserSettings/lang/bg.json
index f043f2f03b..de22c73c9a 100644
--- a/plugins/UserSettings/lang/bg.json
+++ b/plugins/UserSettings/lang/bg.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s без активни добавки",
"BrowserWithPluginsEnabled": "%1$s с добавки %2$s активиран",
"ColumnBrowser": "Браузър и версия",
- "ColumnBrowserFamily": "Фамилия браузъри",
- "ColumnBrowserVersion": "Версия на браузъра",
"ColumnConfiguration": "Обобщена конфигурация",
"ColumnOperatingSystem": "Операционна система и версия",
"ColumnResolution": "Разделителна способност на екрана",
@@ -209,7 +207,6 @@
"WideScreen": "Екран",
"WidgetBrowsers": "Браузъри на посетителите",
"WidgetBrowsersDocumentation": "Този отчет показва информация, за това какъв браузър са използвали вашите потребители. Всеки браузер е показан поотделно.",
- "WidgetBrowserVersion": "Версия на браузъра",
"WidgetGlobalVisitors": "Конфигурация на гло",
"WidgetGlobalVisitorsDocumentation": "Този отчет показва повечето общопознати цялостни конфигурации, които вашите посетители са имали. Конфигурация е комбинацията от операционна система, тип на браузера и резолюция на екрана.",
"WidgetOperatingSystems": "Операционни системи",
diff --git a/plugins/UserSettings/lang/ca.json b/plugins/UserSettings/lang/ca.json
index 4054b27618..22e4f49ea2 100644
--- a/plugins/UserSettings/lang/ca.json
+++ b/plugins/UserSettings/lang/ca.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Motors dels navegadors",
"Browsers": "Navegadors",
"ColumnBrowser": "Navegador",
- "ColumnBrowserFamily": "Família del navegador",
- "ColumnBrowserVersion": "Versió del navegador",
"ColumnConfiguration": "Configuració",
"ColumnOperatingSystem": "Sistema operatiu",
"ColumnResolution": "Resolució",
@@ -206,7 +204,6 @@
"WideScreen": "Pantalla panoràmica",
"WidgetBrowsers": "Navegadors",
"WidgetBrowsersDocumentation": "Aquest informe conté informació sobre quin tipus de navegador està utilitzant els vostres visitants. Cada versió del navegador es llista per separat.",
- "WidgetBrowserVersion": "Versió del navegador",
"WidgetGlobalVisitors": "Configuracions globals dels visitants",
"WidgetGlobalVisitorsDocumentation": "Aquest informe mostra les configuracions més comuns que tenen els vostres visitants. Una configuració es la combinació de Sistema Operatiu, tipus de navegador i resolució de pantalla.",
"WidgetOperatingSystems": "Sistemes operatius",
diff --git a/plugins/UserSettings/lang/cs.json b/plugins/UserSettings/lang/cs.json
index 83019f453a..3324470efb 100644
--- a/plugins/UserSettings/lang/cs.json
+++ b/plugins/UserSettings/lang/cs.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s bez povolených zásuvných modulů",
"BrowserWithPluginsEnabled": "%1$s s povolenými zásuvnými moduly %2$s",
"ColumnBrowser": "Web prohlížeč",
- "ColumnBrowserFamily": "Rodina Web prohlížeče",
- "ColumnBrowserVersion": "Verze prohlížeče",
"ColumnConfiguration": "Konfigurace",
"ColumnOperatingSystem": "Operační systém",
"ColumnResolution": "Rozlišení",
@@ -209,7 +207,6 @@
"WideScreen": "Širokoúhlá obrazovka",
"WidgetBrowsers": "Web prohlížeče návštěvníků",
"WidgetBrowsersDocumentation": "Toto hlášení obsahuje informace o tom, jaký druh prohlížeče vaši návštěvníci použili. Každá verze je počítána samostatně.",
- "WidgetBrowserVersion": "Verze webového prohlížeče",
"WidgetGlobalVisitors": "Hlavní nastavení návštěvníků",
"WidgetGlobalVisitorsDocumentation": "Toto hlášení zobrazuje nejčastější konfigurace, které vaši návštěvníci měli. Konfigurace je kombinace operačního systému, prohlížeče a rozlišení.",
"WidgetOperatingSystems": "Operační systémy",
diff --git a/plugins/UserSettings/lang/da.json b/plugins/UserSettings/lang/da.json
index 90adb8445e..dab52d041e 100644
--- a/plugins/UserSettings/lang/da.json
+++ b/plugins/UserSettings/lang/da.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s med ingen aktiverede udvidelsesmoduler",
"BrowserWithPluginsEnabled": "%1$s med udvidelsesmoduler %2$s aktiveret",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Browsertype",
- "ColumnBrowserVersion": "Browserversion",
"ColumnConfiguration": "Konfiguration",
"ColumnOperatingSystem": "Operativsystem",
"ColumnResolution": "Opløsning",
@@ -209,7 +207,6 @@
"WideScreen": "Bredformat",
"WidgetBrowsers": "Besøgendes browser",
"WidgetBrowsersDocumentation": "Rapporten indeholder oplysninger om hvilken browser de besøgende bruger. Hver version er angivet særskilt.",
- "WidgetBrowserVersion": "Browserversion",
"WidgetGlobalVisitors": "Besøgendes konfiguration",
"WidgetGlobalVisitorsDocumentation": "Rapporten viser de mest almindelige samlede konfigurationer, som de besøgende havde. En konfiguration er en kombination af et styresystem, en browsertype og en skærmopløsning.",
"WidgetOperatingSystems": "Operativsystem",
diff --git a/plugins/UserSettings/lang/de.json b/plugins/UserSettings/lang/de.json
index 70f9cdecdc..c06e2bd3cd 100644
--- a/plugins/UserSettings/lang/de.json
+++ b/plugins/UserSettings/lang/de.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s mit keinen aktivierten Plugins",
"BrowserWithPluginsEnabled": "%1$s mit den Plugins %2$s aktiviert",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Browserfamilie",
- "ColumnBrowserVersion": "Browserversion",
"ColumnConfiguration": "Konfiguration",
"ColumnOperatingSystem": "Betriebssystem",
"ColumnResolution": "Auflösung",
@@ -209,7 +207,6 @@
"WideScreen": "Breitbild",
"WidgetBrowsers": "Besucher-Browser",
"WidgetBrowsersDocumentation": "Dieser Bericht enthält Informationen über die Browser Ihrer Besucher. Jede Version eines Browsers wird separat aufgelistet.",
- "WidgetBrowserVersion": "Browser-Version",
"WidgetGlobalVisitors": "Globale Besucherkonfiguration",
"WidgetGlobalVisitorsDocumentation": "Dieser Bericht zeigt Ihnen die häufigsten Gesamtkonfigurationen der Besucher. Eine Konfiguration ist die Kombination aus Betriebssystem, Browsertyp und Bildschirmauflösung.",
"WidgetOperatingSystems": "Betriebssysteme",
diff --git a/plugins/UserSettings/lang/el.json b/plugins/UserSettings/lang/el.json
index 6a430decb2..e03dc3232a 100644
--- a/plugins/UserSettings/lang/el.json
+++ b/plugins/UserSettings/lang/el.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s με ανενεργά πρόσθετα",
"BrowserWithPluginsEnabled": "%1$s με %2$s πρόσθετα ενεργά",
"ColumnBrowser": "Φυλλομετρητής",
- "ColumnBrowserFamily": "Οικογένεια φυλλομετρητών",
- "ColumnBrowserVersion": "Έκδοση φυλλομετρητή",
"ColumnConfiguration": "Ρύθμιση",
"ColumnOperatingSystem": "Λειτουργικό σύστημα",
"ColumnResolution": "Ανάλυση",
@@ -209,7 +207,6 @@
"WideScreen": "Τύποι οθόνης",
"WidgetBrowsers": "Φυλλομετρητές επισκεπτών",
"WidgetBrowsersDocumentation": "Αυτή η αναφορά περιέχει πληροφορίες για το φυλλομετρητή που χρησιμοποιούσαν οι επισκέπτες. Κάθε έκδοση φυλλομετρητή κατατάσσεται διαφορετικά.",
- "WidgetBrowserVersion": "Έκδοση Φυλλομετρητή",
"WidgetGlobalVisitors": "Γενικές ρυθμίσεις χρηστών",
"WidgetGlobalVisitorsDocumentation": "Αυτή η αναφορά δείχνει τις πιο συχνές καθολικές ρυθμίσεις που έχουν οι επισκέπτες σας. Μια ρύθμιση είναι ο συνδυασμός του λειτουργικού συστήματος, του τύπου φυλλομετρητή και της ανάλυσης οθόνης.",
"WidgetOperatingSystems": "Λειτουργικά συστήματα",
diff --git a/plugins/UserSettings/lang/en.json b/plugins/UserSettings/lang/en.json
index f4ab9b4460..7a825f6d2a 100644
--- a/plugins/UserSettings/lang/en.json
+++ b/plugins/UserSettings/lang/en.json
@@ -6,12 +6,11 @@
"BrowserWithNoPluginsEnabled": "%1$s with no plugins enabled",
"BrowserWithPluginsEnabled": "%1$s with plugins %2$s enabled",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Browser family",
- "ColumnBrowserVersion": "Browser version",
"ColumnConfiguration": "Configuration",
"ColumnOperatingSystem": "Operating system",
"ColumnResolution": "Resolution",
"ColumnTypeOfScreen": "Type of screen",
+ "ScreenTypes": "Screen types",
"Configurations": "Configurations",
"GamingConsole": "Gaming Console",
"Language_aa": "Afar",
@@ -209,7 +208,6 @@
"WideScreen": "Wide Screen",
"WidgetBrowsers": "Visitor Browser",
"WidgetBrowsersDocumentation": "This report contains information about what kind of browser your visitors were using. Each browser version is listed separately.",
- "WidgetBrowserVersion": "Browser Version",
"WidgetGlobalVisitors": "Visitor Configuration",
"WidgetGlobalVisitorsDocumentation": "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.",
"WidgetOperatingSystems": "Operating System",
diff --git a/plugins/UserSettings/lang/es.json b/plugins/UserSettings/lang/es.json
index d67710035b..aa69f11fdd 100644
--- a/plugins/UserSettings/lang/es.json
+++ b/plugins/UserSettings/lang/es.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s sin complementos habilitados",
"BrowserWithPluginsEnabled": "%1$s con los complementos %2$s habilitados",
"ColumnBrowser": "Navegador",
- "ColumnBrowserFamily": "Buscadores por familia",
- "ColumnBrowserVersion": "Versión del navegador",
"ColumnConfiguration": "Configuración",
"ColumnOperatingSystem": "Sistemas operativos",
"ColumnResolution": "Resoluciones",
@@ -209,7 +207,6 @@
"WideScreen": "Pantalla panorámica",
"WidgetBrowsers": "Navegadores de los visitantes",
"WidgetBrowsersDocumentation": "Este informe contiene información acerca de qué tipo de navegador el visitante está utilizando. Cada versión de navegador está alistado separadamente.",
- "WidgetBrowserVersion": "Versión del navegador",
"WidgetGlobalVisitors": "Configuración global de visitantes",
"WidgetGlobalVisitorsDocumentation": "Este informe muestra las más usuales configuraciones que poseen sus visitantes. Una configuración es una combinación de un sistema operativo, un tipo de navegador de internet y una resolución de pantalla.",
"WidgetOperatingSystems": "Sistemas operativos",
diff --git a/plugins/UserSettings/lang/et.json b/plugins/UserSettings/lang/et.json
index 2ed193a489..5609139a44 100644
--- a/plugins/UserSettings/lang/et.json
+++ b/plugins/UserSettings/lang/et.json
@@ -4,8 +4,6 @@
"BrowserLanguage": "Veebisirvija keel",
"Browsers": "Veebisirvijad",
"ColumnBrowser": "Veebisirvija",
- "ColumnBrowserFamily": "Sirvija tüüp",
- "ColumnBrowserVersion": "Sirvija versioon",
"ColumnConfiguration": "Konfiguratsioon",
"ColumnOperatingSystem": "Operatsioonisüsteem",
"ColumnResolution": "Resolutsioon",
@@ -205,7 +203,6 @@
"VisitorSettings": "Külastajate seaded",
"WideScreen": "Laiekraan",
"WidgetBrowsers": "Külastajate veebisirvijad",
- "WidgetBrowserVersion": "Veebisirvija versioon",
"WidgetGlobalVisitors": "Kohalike külastajate seaded",
"WidgetOperatingSystems": "Operatsioonisüsteemid",
"WidgetPlugins": "Sirviku lisatarkvarad",
diff --git a/plugins/UserSettings/lang/eu.json b/plugins/UserSettings/lang/eu.json
index d99850219e..7fc63dc700 100644
--- a/plugins/UserSettings/lang/eu.json
+++ b/plugins/UserSettings/lang/eu.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Nabigatzaile-familiak",
"Browsers": "Nabigatzaileak",
"ColumnBrowser": "Nabigatzailea",
- "ColumnBrowserFamily": "Nabigatzaile-familia",
"ColumnConfiguration": "Konfigurazioa",
"ColumnOperatingSystem": "Sistema eragilea",
"ColumnResolution": "Bereizmena",
diff --git a/plugins/UserSettings/lang/fa.json b/plugins/UserSettings/lang/fa.json
index c6671a3aa0..8efab419d8 100644
--- a/plugins/UserSettings/lang/fa.json
+++ b/plugins/UserSettings/lang/fa.json
@@ -5,8 +5,6 @@
"Browsers": "مرورگر ها",
"BrowserWithNoPluginsEnabled": "%1$s با هیچ پلاگین را فعال کنید",
"ColumnBrowser": "مرورگر",
- "ColumnBrowserFamily": "خانواده مرورگر",
- "ColumnBrowserVersion": "نسخه مرورگر",
"ColumnConfiguration": "پیکربندی",
"ColumnOperatingSystem": "پیکربندی سیستم",
"ColumnResolution": "رزلوشن",
@@ -208,7 +206,6 @@
"WideScreen": "نمایشگر عریض",
"WidgetBrowsers": "مرورگر بازدید کننده",
"WidgetBrowsersDocumentation": "این گزارش حاوی اطلاعات در مورد چه نوع مرورگر بازدید کنندگان خود را با استفاده از. هر مرورگر بطور جداگانه ذکر شده است.",
- "WidgetBrowserVersion": "نسخه مرورگر",
"WidgetGlobalVisitors": "پیکربندی بازدیدکنندگان جهانی",
"WidgetGlobalVisitorsDocumentation": "این گزارش نشان می دهد پیکربندی کلی شایع ترین است که بازدید کنندگان شما است. پیکربندی ترکیبی از سیستم عامل، نوع مرورگر و صفحه نمایش با وضوح است.",
"WidgetOperatingSystems": "سیستم عامل ها",
diff --git a/plugins/UserSettings/lang/fi.json b/plugins/UserSettings/lang/fi.json
index 3620448551..ba070f16b9 100644
--- a/plugins/UserSettings/lang/fi.json
+++ b/plugins/UserSettings/lang/fi.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s ilman liitännäisiä aktivoitu",
"BrowserWithPluginsEnabled": "%1$s liitännäisillä %2$s on aktivoitu",
"ColumnBrowser": "Selain",
- "ColumnBrowserFamily": "Selainperhe",
- "ColumnBrowserVersion": "Selaimen versio",
"ColumnConfiguration": "Asetukset",
"ColumnOperatingSystem": "Käyttöjärjestelmä",
"ColumnResolution": "Resoluutio",
@@ -209,7 +207,6 @@
"WideScreen": "Laajakulma",
"WidgetBrowsers": "Kävijöiden selaimet",
"WidgetBrowsersDocumentation": "Tämä raportti näyttää, mitä selaimia vierailijoillasi oli. Jokainen selaimen versio näytetään erikseen.",
- "WidgetBrowserVersion": "Selaimen versio",
"WidgetGlobalVisitors": "Kaikkien kävijöiden asetukset",
"WidgetGlobalVisitorsDocumentation": "Tämä raportti näyttää yleiskuvan eri käyttäjien asetuksista. Asetukset on yhdistelmä käyttöjärjestelmästä, selaimen tyypistä ja näytön resoluutiosta.",
"WidgetOperatingSystems": "Käyttöjärjestelmät",
diff --git a/plugins/UserSettings/lang/fr.json b/plugins/UserSettings/lang/fr.json
index 8bd67eb6b0..6fdbf6c3f5 100644
--- a/plugins/UserSettings/lang/fr.json
+++ b/plugins/UserSettings/lang/fr.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s avec aucun plugin activé",
"BrowserWithPluginsEnabled": "%1$s avec les plugins %2$s activés",
"ColumnBrowser": "Navigateur",
- "ColumnBrowserFamily": "Famille de navigateurs",
- "ColumnBrowserVersion": "Version du navigateur",
"ColumnConfiguration": "Configuration",
"ColumnOperatingSystem": "Système d'exploitation",
"ColumnResolution": "Résolution",
@@ -209,7 +207,6 @@
"WideScreen": "Largeur d'écran",
"WidgetBrowsers": "Navigateurs du visiteur",
"WidgetBrowsersDocumentation": "Ce rapport contient des informations à propos de quel type de navigateur vos visiteurs utilisent. Chaque version du navigateur est listée séparément.",
- "WidgetBrowserVersion": "Version du navigateur",
"WidgetGlobalVisitors": "Configuration globale des visiteurs",
"WidgetGlobalVisitorsDocumentation": "Ce rapport montre les configurations globales les plus communes de vos visiteurs. Une configuration est la combinaison d'un système d'exploitation, d'un type de navigateur et d'une résolution d'écran.",
"WidgetOperatingSystems": "Systèmes d'exploitation",
diff --git a/plugins/UserSettings/lang/he.json b/plugins/UserSettings/lang/he.json
index 8350191b7c..0e17e41db0 100644
--- a/plugins/UserSettings/lang/he.json
+++ b/plugins/UserSettings/lang/he.json
@@ -1,8 +1,6 @@
{
"UserSettings": {
"ColumnBrowser": "דפדפן",
- "ColumnBrowserFamily": "משפחת דפדפן",
- "ColumnBrowserVersion": "גרסת דפדפן",
"Language_aa": "אפארית",
"Language_ab": "אבחזית",
"Language_ae": "אבסטן",
diff --git a/plugins/UserSettings/lang/hi.json b/plugins/UserSettings/lang/hi.json
index 33e0efeaff..ca543074ef 100644
--- a/plugins/UserSettings/lang/hi.json
+++ b/plugins/UserSettings/lang/hi.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s के साथ प्लगइन सक्रिय नहीं",
"BrowserWithPluginsEnabled": "प्लगिन %2$s से %1$s सक्षम",
"ColumnBrowser": "ब्राउज़र",
- "ColumnBrowserFamily": "ब्राउज़र परिवार",
- "ColumnBrowserVersion": "ब्राउज़र संस्करण",
"ColumnConfiguration": "विन्यास",
"ColumnOperatingSystem": "आपरेटिंग सिस्टम",
"ColumnResolution": "संकल्प",
@@ -208,7 +206,6 @@
"VisitorSettings": "आगंतुक सेटिंग्स",
"WideScreen": "वाइड स्क्रीन",
"WidgetBrowsers": "आगंतुक ब्राउज़र",
- "WidgetBrowserVersion": "ब्राउज़र संस्करण",
"WidgetGlobalVisitors": "आगंतुक विन्यास",
"WidgetOperatingSystems": "ऑपरेटिंग सिस्टम"
}
diff --git a/plugins/UserSettings/lang/hr.json b/plugins/UserSettings/lang/hr.json
index 178b9308f0..b03f52f5a3 100644
--- a/plugins/UserSettings/lang/hr.json
+++ b/plugins/UserSettings/lang/hr.json
@@ -1,7 +1,6 @@
{
"UserSettings": {
"Browsers": "Pretraživači",
- "ColumnBrowserVersion": "Verzija pretraživača",
"ColumnConfiguration": "KOnfiguracija",
"ColumnOperatingSystem": "Operativni sustav",
"ColumnResolution": "Rezolucija",
diff --git a/plugins/UserSettings/lang/hu.json b/plugins/UserSettings/lang/hu.json
index 4b67e70246..e9d1e42105 100644
--- a/plugins/UserSettings/lang/hu.json
+++ b/plugins/UserSettings/lang/hu.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Böngészőcsaládok",
"Browsers": "Böngészők",
"ColumnBrowser": "Böngésző",
- "ColumnBrowserFamily": "Böngészőcsalád",
"ColumnConfiguration": "Konfiguráció",
"ColumnOperatingSystem": "Operációs rendszer",
"ColumnResolution": "Felbontás",
diff --git a/plugins/UserSettings/lang/id.json b/plugins/UserSettings/lang/id.json
index 96c80d7da3..02b062e6be 100644
--- a/plugins/UserSettings/lang/id.json
+++ b/plugins/UserSettings/lang/id.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s dengan tanpa pengaya diaktifkan",
"BrowserWithPluginsEnabled": "%1$s dengan %2$s pengaya diaktifkan",
"ColumnBrowser": "Peramban",
- "ColumnBrowserFamily": "Keluarga Peramban",
- "ColumnBrowserVersion": "Versi Perambang",
"ColumnConfiguration": "Pengaturan",
"ColumnOperatingSystem": "Sistem Operasi",
"ColumnResolution": "Resolusi",
@@ -209,7 +207,6 @@
"WideScreen": "Layar Lebar",
"WidgetBrowsers": "Peramban Pengunjung",
"WidgetBrowsersDocumentation": "Laporan ini mengandung informasi tentabg jenis peramban yang pengunjung Anda gunakan. Setiap versi peramban diurutkan terpisah.",
- "WidgetBrowserVersion": "Versi Peramban",
"WidgetGlobalVisitors": "Pengaturan pengunjung umum",
"WidgetGlobalVisitorsDocumentation": "Laporan ini menunjukkan pengaturan paling umum yang pengunjung miliki. Subuah pengaturan terdiri atas sistem operasi, jenis peramban, dan resolusi layar.",
"WidgetOperatingSystems": "Sistem Operasi",
diff --git a/plugins/UserSettings/lang/is.json b/plugins/UserSettings/lang/is.json
index 4320e6ca17..88618b0ef9 100644
--- a/plugins/UserSettings/lang/is.json
+++ b/plugins/UserSettings/lang/is.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Vafrafjölskyldur",
"Browsers": "Vafrar",
"ColumnBrowser": "Vafri",
- "ColumnBrowserFamily": "Vafrafjölskylda",
"ColumnConfiguration": "Uppsetning",
"ColumnOperatingSystem": "Stýrikerfi",
"ColumnResolution": "Skjáupplausn",
diff --git a/plugins/UserSettings/lang/it.json b/plugins/UserSettings/lang/it.json
index 7dc076f51d..35f000aa8b 100644
--- a/plugins/UserSettings/lang/it.json
+++ b/plugins/UserSettings/lang/it.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s con nessun plugin abilitato",
"BrowserWithPluginsEnabled": "%1$s con plugin %2$s abilitati",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Famiglia del Browser",
- "ColumnBrowserVersion": "Versione del browser",
"ColumnConfiguration": "Configurazione",
"ColumnOperatingSystem": "Sistema operativo",
"ColumnResolution": "Risoluzione",
@@ -209,7 +207,6 @@
"WideScreen": "Schermo panoramico",
"WidgetBrowsers": "Browser dei visitatori",
"WidgetBrowsersDocumentation": "Questo report contiene informazioni sul tipo di browser che i tuoi visitatori hanno utilizzato. Ciascuna versione del browser è elencata separatamente.",
- "WidgetBrowserVersion": "Versione del Browser",
"WidgetGlobalVisitors": "Riepilogo configurazione visitatori",
"WidgetGlobalVisitorsDocumentation": "Questo report mostra le configurazioni globali più comuni che i visitatori avevano. Una configurazione è la combinazione di un sistema operativo, un tipo browser e una risoluzione di schermo.",
"WidgetOperatingSystems": "Sistemi Operativi",
diff --git a/plugins/UserSettings/lang/ja.json b/plugins/UserSettings/lang/ja.json
index e41f1c1c87..24d46e5ac8 100644
--- a/plugins/UserSettings/lang/ja.json
+++ b/plugins/UserSettings/lang/ja.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s のプラグインが有効ではありません",
"BrowserWithPluginsEnabled": "%1$s のプラグイン %2$s は有効",
"ColumnBrowser": "ブラウザ",
- "ColumnBrowserFamily": "ブラウザファミリー",
- "ColumnBrowserVersion": "ブラウザのバージョン",
"ColumnConfiguration": "環境設定",
"ColumnOperatingSystem": "オペレーティングシステム",
"ColumnResolution": "解像度",
@@ -209,7 +207,6 @@
"WideScreen": "ワイド画面",
"WidgetBrowsers": "ブラウザ",
"WidgetBrowsersDocumentation": "ビジターがどのブラウザを使っているかについてのリポートです。各ブラウザのバージョンは別途記載されています。",
- "WidgetBrowserVersion": "ブラウザのバージョン",
"WidgetGlobalVisitors": "ビジターの全般的な環境設定",
"WidgetGlobalVisitorsDocumentation": "ビジターの最も一般的な利用環境についてのリポートです。オペレーティングシステム、ブラウザの種類と画面の解像度の組合せで表示します。",
"WidgetOperatingSystems": "オペレーティングシステム",
diff --git a/plugins/UserSettings/lang/ka.json b/plugins/UserSettings/lang/ka.json
index 0bd4375ee7..7823afc29f 100644
--- a/plugins/UserSettings/lang/ka.json
+++ b/plugins/UserSettings/lang/ka.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "ბრაუზერის ოჯახები",
"Browsers": "ბრაუზერები",
"ColumnBrowser": "ბრაუზერი",
- "ColumnBrowserFamily": "ბრაუზერის ოჯახი",
"ColumnConfiguration": "კონფიგურაცია",
"ColumnOperatingSystem": "ოპერაციული სისტემა",
"ColumnResolution": "რეზოლუცია",
diff --git a/plugins/UserSettings/lang/ko.json b/plugins/UserSettings/lang/ko.json
index 2000f9122d..75f573e91b 100644
--- a/plugins/UserSettings/lang/ko.json
+++ b/plugins/UserSettings/lang/ko.json
@@ -4,8 +4,6 @@
"BrowserLanguage": "브라우저 언어",
"Browsers": "브라우저",
"ColumnBrowser": "브라우저",
- "ColumnBrowserFamily": "브라우저 타입",
- "ColumnBrowserVersion": "브라우저 버전",
"ColumnConfiguration": "구성",
"ColumnOperatingSystem": "운영체제",
"ColumnResolution": "해상도",
@@ -207,7 +205,6 @@
"WideScreen": "와이드 스크린",
"WidgetBrowsers": "방문자 브라우저",
"WidgetBrowsersDocumentation": "사용자가 어떤 브라우저를 사용하는지에 대한 보고서입니다. 각 브라우저의 버전은 별도로 기재되어 있습니다.",
- "WidgetBrowserVersion": "브라우저 버전",
"WidgetGlobalVisitors": "글로벌 방문자 구성",
"WidgetGlobalVisitorsDocumentation": "방문자의 가장 일반적인 사용 환경에 대한 보고서입니다. 운영 체제, 브라우저 종류와 화면 해상도의 조합으로 표시합니다.",
"WidgetOperatingSystems": "운영체제",
diff --git a/plugins/UserSettings/lang/lt.json b/plugins/UserSettings/lang/lt.json
index 4dae840140..8fbc5a92aa 100644
--- a/plugins/UserSettings/lang/lt.json
+++ b/plugins/UserSettings/lang/lt.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Naršyklių šeimos",
"Browsers": "Naršyklės",
"ColumnBrowser": "Naršyklė",
- "ColumnBrowserFamily": "Naršyklių šeimos",
- "ColumnBrowserVersion": "Naršyklės versija",
"ColumnConfiguration": "Konfigūracija",
"ColumnOperatingSystem": "Operacinė sistema",
"ColumnResolution": "Ekrano raiška",
diff --git a/plugins/UserSettings/lang/lv.json b/plugins/UserSettings/lang/lv.json
index ec982e43ca..65e783596c 100644
--- a/plugins/UserSettings/lang/lv.json
+++ b/plugins/UserSettings/lang/lv.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Pārlūku ģimenes",
"Browsers": "Pārlūki",
"ColumnBrowser": "Pārlūks",
- "ColumnBrowserFamily": "Pārlūku ģimene",
- "ColumnBrowserVersion": "Pārlūka versija",
"ColumnConfiguration": "Konfigurācija",
"ColumnOperatingSystem": "Operētājsistēma",
"ColumnResolution": "Ekrāna izšķirtspēja",
diff --git a/plugins/UserSettings/lang/nb.json b/plugins/UserSettings/lang/nb.json
index 619e506adf..248c25fc80 100644
--- a/plugins/UserSettings/lang/nb.json
+++ b/plugins/UserSettings/lang/nb.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Nettleserfamilier",
"Browsers": "Nettlesere",
"ColumnBrowser": "Nettleser",
- "ColumnBrowserFamily": "Nettleserfamilie",
- "ColumnBrowserVersion": "Nettleserversjon",
"ColumnConfiguration": "Konfigurasjon",
"ColumnOperatingSystem": "Operativsystem",
"ColumnResolution": "Oppløsning",
@@ -201,7 +199,6 @@
"VisitorSettings": "Besøkendes innstillinger",
"WideScreen": "Widescreen",
"WidgetBrowsers": "Besøkendes nettlesere",
- "WidgetBrowserVersion": "Nettleserversjon",
"WidgetGlobalVisitors": "Besøkendes konfigurasjon",
"WidgetOperatingSystems": "Operativsystemer",
"WidgetPlugins": "Liste over tillegg",
diff --git a/plugins/UserSettings/lang/nl.json b/plugins/UserSettings/lang/nl.json
index 3f65c6d7d7..b9e442663f 100644
--- a/plugins/UserSettings/lang/nl.json
+++ b/plugins/UserSettings/lang/nl.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s zonder plugins ingeschakeld",
"BrowserWithPluginsEnabled": "%1$s met plugins %2$s ingeschakeld",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Browser per Type",
- "ColumnBrowserVersion": "Browserversie",
"ColumnConfiguration": "Configuratie",
"ColumnOperatingSystem": "Besturingssysteem",
"ColumnResolution": "Resolutie",
@@ -209,7 +207,6 @@
"WideScreen": "Breedbeeld",
"WidgetBrowsers": "Browsers bezoekers",
"WidgetBrowsersDocumentation": "Dit rapport bevat informatie over het type browsers dat door door uw bezoekers werd gebruikt. Elke browserversie wordt apart vermeld.",
- "WidgetBrowserVersion": "Browserversie",
"WidgetGlobalVisitors": "Algemene configuratie",
"WidgetGlobalVisitorsDocumentation": "Dit rapport toont de meest voorkomende configuraties die uw bezoekers hadden. Een configuratie is de combinatie van een besturingssysteem, een browser type en een schermresolutie.",
"WidgetOperatingSystems": "Besturings systemen",
diff --git a/plugins/UserSettings/lang/nn.json b/plugins/UserSettings/lang/nn.json
index 9ef089a241..72645a61a3 100644
--- a/plugins/UserSettings/lang/nn.json
+++ b/plugins/UserSettings/lang/nn.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Nettlesarfamiliar",
"Browsers": "Nettlesarar",
"ColumnBrowser": "Nettlesar",
- "ColumnBrowserFamily": "Nettlesarfamilar",
"ColumnConfiguration": "Konfigurasjon",
"ColumnOperatingSystem": "Operativsystem",
"ColumnResolution": "Oppløysing",
diff --git a/plugins/UserSettings/lang/pl.json b/plugins/UserSettings/lang/pl.json
index 71f6a2d18f..afe7c3bbdd 100644
--- a/plugins/UserSettings/lang/pl.json
+++ b/plugins/UserSettings/lang/pl.json
@@ -4,8 +4,6 @@
"BrowserLanguage": "Język przeglądarki",
"Browsers": "Przeglądarki",
"ColumnBrowser": "Przeglądarka",
- "ColumnBrowserFamily": "Rodzina przeglądarek",
- "ColumnBrowserVersion": "Wersja przeglądarki",
"ColumnConfiguration": "Konfiguracja",
"ColumnOperatingSystem": "System operacyjny",
"ColumnResolution": "Rozdzielczość",
@@ -206,7 +204,6 @@
"VisitorSettings": "Konfiguracje użytkownika",
"WideScreen": "Ekran monitora",
"WidgetBrowsers": "Przeglądarki odwiedzających",
- "WidgetBrowserVersion": "Wersja przeglądarki",
"WidgetGlobalVisitors": "Ogólna konfiguracja odwiedzających",
"WidgetOperatingSystems": "Systemy operacyjne",
"WidgetPlugins": "Lista wtyczek",
diff --git a/plugins/UserSettings/lang/pt-br.json b/plugins/UserSettings/lang/pt-br.json
index a4ee858e73..b4196f459d 100644
--- a/plugins/UserSettings/lang/pt-br.json
+++ b/plugins/UserSettings/lang/pt-br.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s sem plugins ativados",
"BrowserWithPluginsEnabled": "%1$s com os plugins %2$s ativados",
"ColumnBrowser": "Navegador",
- "ColumnBrowserFamily": "Família do Navegador",
- "ColumnBrowserVersion": "Versão do Browser",
"ColumnConfiguration": "Configuração",
"ColumnOperatingSystem": "Sistema Operacional",
"ColumnResolution": "Resolução",
@@ -209,7 +207,6 @@
"WideScreen": "Wide Screen",
"WidgetBrowsers": "Navegador dos Visitantes",
"WidgetBrowsersDocumentation": "Este relatório contém informações sobre o tipo de navegador que os visitantes estavam usando. Cada versão do navegador é listada separadamente.",
- "WidgetBrowserVersion": "Versão do Browser",
"WidgetGlobalVisitors": "Configuração Global de Visitante",
"WidgetGlobalVisitorsDocumentation": "Este relatório mostra as configurações mais comuns gerais que os visitantes tiveram. A configuração é a combinação de um sistema operacional, um tipo de navegador e uma resolução de tela.",
"WidgetOperatingSystems": "Sistemas Operacionais",
diff --git a/plugins/UserSettings/lang/pt.json b/plugins/UserSettings/lang/pt.json
index d85ac92a4a..693af9b8db 100644
--- a/plugins/UserSettings/lang/pt.json
+++ b/plugins/UserSettings/lang/pt.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Famílias de navegadores",
"Browsers": "Navegadores",
"ColumnBrowser": "Navegador",
- "ColumnBrowserFamily": "Família de navegadores",
- "ColumnBrowserVersion": "Versão do Navegador",
"ColumnConfiguration": "Configuração",
"ColumnOperatingSystem": "Sistema operativo",
"ColumnResolution": "Resolução",
diff --git a/plugins/UserSettings/lang/ro.json b/plugins/UserSettings/lang/ro.json
index ff0145ef37..db1dd50a02 100644
--- a/plugins/UserSettings/lang/ro.json
+++ b/plugins/UserSettings/lang/ro.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s fără plugin-uri activate",
"BrowserWithPluginsEnabled": "%1$s cu plugin-uri %2$s activate",
"ColumnBrowser": "Browser",
- "ColumnBrowserFamily": "Browser după familie",
- "ColumnBrowserVersion": "Versiunea browser-ului",
"ColumnConfiguration": "Configuraţia",
"ColumnOperatingSystem": "Sistem de operare",
"ColumnResolution": "Rezoluţie ecran",
@@ -209,7 +207,6 @@
"WideScreen": "Ecran extins",
"WidgetBrowsers": "Browsere vizitatori",
"WidgetBrowsersDocumentation": "Acest raport conține informații cu privire la ce fel de browser utilizeaza de vizitatori . Fiecare versiune de browser este listată separat.",
- "WidgetBrowserVersion": "Versiunea browser-ului",
"WidgetGlobalVisitors": "Configurare vizitatori globala",
"WidgetGlobalVisitorsDocumentation": "Acest raport arată cele mai comune configurații generale,pe care vizitatorii le au avut. O configurație este combinația dintre un sistem de operare, un tip de browser și o rezoluție a ecranului.",
"WidgetOperatingSystems": "Sisteme operare",
diff --git a/plugins/UserSettings/lang/ru.json b/plugins/UserSettings/lang/ru.json
index f62f7236c3..dbe7237fb7 100644
--- a/plugins/UserSettings/lang/ru.json
+++ b/plugins/UserSettings/lang/ru.json
@@ -4,8 +4,6 @@
"BrowserLanguage": "Язык браузера",
"Browsers": "По браузерам",
"ColumnBrowser": "Браузер",
- "ColumnBrowserFamily": "Семейство браузеров",
- "ColumnBrowserVersion": "Версия браузера",
"ColumnConfiguration": "Конфигурация",
"ColumnOperatingSystem": "Операционная система",
"ColumnResolution": "Разрешение",
@@ -207,7 +205,6 @@
"WideScreen": "По ширине экрана",
"WidgetBrowsers": "Браузеры посетителей",
"WidgetBrowsersDocumentation": "Этот отчет содержит информацию по браузерам, которые используют ваши посетители. Каждая версия браузера отображается отдельно.",
- "WidgetBrowserVersion": "Версия браузера",
"WidgetGlobalVisitors": "Глобальная конфигурация",
"WidgetGlobalVisitorsDocumentation": "Этот отчет показывает общую информацию по наиболее популяоным конфигурациям системы ваших посетителей. Конфигурация - это комбинация операционной системы, браузера и разрешения экрана.",
"WidgetOperatingSystems": "Операционные системы",
diff --git a/plugins/UserSettings/lang/sk.json b/plugins/UserSettings/lang/sk.json
index f28f4658df..eb66969c7a 100644
--- a/plugins/UserSettings/lang/sk.json
+++ b/plugins/UserSettings/lang/sk.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Rodina prehliadača",
"Browsers": "Prehliadače",
"ColumnBrowser": "Prehliadač",
- "ColumnBrowserFamily": "Rodina prehliadača",
"ColumnConfiguration": "Konfigurácia",
"ColumnOperatingSystem": "Operačný systém",
"ColumnResolution": "Rozlíšenie",
diff --git a/plugins/UserSettings/lang/sl.json b/plugins/UserSettings/lang/sl.json
index 3f68b6615c..940a9b87f2 100644
--- a/plugins/UserSettings/lang/sl.json
+++ b/plugins/UserSettings/lang/sl.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s brez omogočenih vtičnikov",
"BrowserWithPluginsEnabled": "%1$s z omogočenimi vtičniki %2$s",
"ColumnBrowser": "Brskalnik",
- "ColumnBrowserFamily": "Družina brskalnika",
- "ColumnBrowserVersion": "Različica brskalnika",
"ColumnConfiguration": "Nastavitev",
"ColumnOperatingSystem": "Operacijski sistem",
"ColumnResolution": "Resolucija",
@@ -204,7 +202,6 @@
"VisitorSettings": "Nastavitve obiskovalcev",
"WideScreen": "Širok Zaslon",
"WidgetBrowsers": "Brskalnik obiskovalca",
- "WidgetBrowserVersion": "Različica brskalnika",
"WidgetOperatingSystems": "Operacijski sistemi",
"WidgetPlugins": "Seznam Vtičnikov",
"WidgetResolutions": "Resolucija zaslona"
diff --git a/plugins/UserSettings/lang/sq.json b/plugins/UserSettings/lang/sq.json
index 4d9060cad9..6e457c2a6f 100644
--- a/plugins/UserSettings/lang/sq.json
+++ b/plugins/UserSettings/lang/sq.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Familje shfletuesi",
"Browsers": "Shfletuesa",
"ColumnBrowser": "Shfletues",
- "ColumnBrowserFamily": "Familje shfletuesi",
- "ColumnBrowserVersion": "Version shfletuesi",
"ColumnConfiguration": "Formësim",
"ColumnOperatingSystem": "Sistem operativ",
"ColumnResolution": "Qartësi",
diff --git a/plugins/UserSettings/lang/sr.json b/plugins/UserSettings/lang/sr.json
index 25e66855fd..1275da1156 100644
--- a/plugins/UserSettings/lang/sr.json
+++ b/plugins/UserSettings/lang/sr.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s sa isključenim dodacima",
"BrowserWithPluginsEnabled": "%1$s sa uključenim dodacima %2$s",
"ColumnBrowser": "Brauzer",
- "ColumnBrowserFamily": "Porodica brauzera",
- "ColumnBrowserVersion": "Verzija brauzera",
"ColumnConfiguration": "Podešavanja",
"ColumnOperatingSystem": "Operativni sistem",
"ColumnResolution": "Rezolucija",
@@ -209,7 +207,6 @@
"WideScreen": "Širok ekran",
"WidgetBrowsers": "Brauzeri posetilaca",
"WidgetBrowsersDocumentation": "Ovaj izveštaj prikazuje koje brauzere koriste vaši posetioci. Svaka verzija brauzera je prikazana posebno.",
- "WidgetBrowserVersion": "Verzija brauzera",
"WidgetGlobalVisitors": "Globalna podešavanja posetilaca",
"WidgetGlobalVisitorsDocumentation": "Ovaj izveštaj prikazuje najčešća podešavanja vaših posetilaca. Pod podešavanjem podrazumevamo kombinaciju operativnog sistema, tipa brauzera i ekranske rezolucije.",
"WidgetOperatingSystems": "Operativni sistemi",
diff --git a/plugins/UserSettings/lang/sv.json b/plugins/UserSettings/lang/sv.json
index 871dbf0959..c8eb3c0ac2 100644
--- a/plugins/UserSettings/lang/sv.json
+++ b/plugins/UserSettings/lang/sv.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s med inga plugins är aktiverad",
"BrowserWithPluginsEnabled": "%1$s med plugins %2$s är aktiverad",
"ColumnBrowser": "Webbläsare",
- "ColumnBrowserFamily": "Webbläsarfamilj",
- "ColumnBrowserVersion": "Webbläsarversion",
"ColumnConfiguration": "Konfiguration",
"ColumnOperatingSystem": "Operativsystem",
"ColumnResolution": "Skärmupplösning",
@@ -209,7 +207,6 @@
"WideScreen": "Widescreen",
"WidgetBrowsers": "Webbläsare",
"WidgetBrowsersDocumentation": "Denna rapport innehåller information om vilken typ av webbläsare dina besökare använde. Varje version av webbläsare är listad separat.",
- "WidgetBrowserVersion": "Webbläsarversion",
"WidgetGlobalVisitors": "Global besökarkonfiguration",
"WidgetGlobalVisitorsDocumentation": "Denna rapport visar de vanligaste övergripande konfigurationer som besökarna hade. En konfiguration är en kombination av ett operativsystem, en webbläsare och en skärmupplösning.",
"WidgetOperatingSystems": "Operativsystem",
diff --git a/plugins/UserSettings/lang/te.json b/plugins/UserSettings/lang/te.json
index 80bc779e59..880d70943e 100644
--- a/plugins/UserSettings/lang/te.json
+++ b/plugins/UserSettings/lang/te.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "విహారిణి కుటుంబాలు",
"Browsers": "విహారిణులు",
"ColumnBrowser": "విహారిణి",
- "ColumnBrowserFamily": "విహారిణి కుటుంబం",
- "ColumnBrowserVersion": "విహారిణి సంచిక",
"ColumnConfiguration": "స్వరూపణం",
"ColumnOperatingSystem": "నిర్వాహక వ్యవస్థ",
"ColumnTypeOfScreen": "తెర యొక్క రకం",
@@ -198,7 +196,6 @@
"OperatingSystems": "నిర్వాహక వ్యవస్థలు",
"VisitorSettings": "సందర్శకుల అమరికలు",
"WidgetBrowsers": "సందర్శకుల విహారిణులు",
- "WidgetBrowserVersion": "విహారిణి సంచిక",
"WidgetOperatingSystems": "నిర్వాహక వ్యవస్థలు"
}
} \ No newline at end of file
diff --git a/plugins/UserSettings/lang/th.json b/plugins/UserSettings/lang/th.json
index 5d7d22b914..56c97e8846 100644
--- a/plugins/UserSettings/lang/th.json
+++ b/plugins/UserSettings/lang/th.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "ตระกูลเบราว์เซอร์",
"Browsers": "เบราว์เซอร์",
"ColumnBrowser": "เบราว์เซอร์",
- "ColumnBrowserFamily": "ตระกูลของเบราว์เซอร์",
- "ColumnBrowserVersion": "รุ่นของโปรแกรมบราวเซอร์",
"ColumnConfiguration": "การตั้งค่า",
"ColumnOperatingSystem": "ระบบปฏิบัติการ",
"ColumnResolution": "ความละเอียด",
@@ -203,7 +201,6 @@
"VisitorSettings": "การตั้งค่าของผู้เข้าชม",
"WideScreen": "ความกว้างหน้าจอ",
"WidgetBrowsers": "เบราว์เซอร์ของผู้เข้าชม",
- "WidgetBrowserVersion": "รุ่นของโปรแกรมบราวเซอร์",
"WidgetGlobalVisitors": "การตั้งค่าผู้เข้าชมโดยรวม",
"WidgetOperatingSystems": "ระบบปฎิบัติการ",
"WidgetPlugins": "รายการปลั้กอิน",
diff --git a/plugins/UserSettings/lang/tl.json b/plugins/UserSettings/lang/tl.json
new file mode 100644
index 0000000000..3e520b8e71
--- /dev/null
+++ b/plugins/UserSettings/lang/tl.json
@@ -0,0 +1,216 @@
+{
+ "UserSettings": {
+ "BrowserFamilies": "pamilya ng mga browser",
+ "BrowserLanguage": "wika ng browser",
+ "Browsers": "Mga Browser",
+ "BrowserWithNoPluginsEnabled": "%1$s na may plugins na hindi pinapagana",
+ "BrowserWithPluginsEnabled": "%1$s na may mga plugin %2$s na naka-enable",
+ "ColumnBrowser": "Browser",
+ "ColumnConfiguration": "Configuration",
+ "ColumnResolution": "Resolusyon",
+ "ColumnTypeOfScreen": "Uri ng screen",
+ "Configurations": "Configurations",
+ "GamingConsole": "Gaming Console",
+ "Language_aa": "Afar",
+ "Language_ab": "Abkhazian",
+ "Language_ae": "Avestan",
+ "Language_af": "Aprikaans",
+ "Language_ak": "Akan",
+ "Language_am": "Amharic",
+ "Language_an": "Aragonese",
+ "Language_ar": "Arabe",
+ "Language_as": "Assamese",
+ "Language_av": "Avaric",
+ "Language_ay": "Aymara",
+ "Language_az": "Azerbaijani",
+ "Language_ba": "Bashkir",
+ "Language_be": "Belarusian",
+ "Language_bg": "Bulgarian",
+ "Language_bh": "Bihari",
+ "Language_bi": "Bislama",
+ "Language_bm": "Bambara",
+ "Language_bn": "Bengali",
+ "Language_bo": "Tibet",
+ "Language_br": "Breton",
+ "Language_bs": "Bosnian",
+ "Language_ca": "Katalan",
+ "Language_ce": "Chechen",
+ "Language_ch": "Chamorro",
+ "Language_co": "Cosican",
+ "Language_cr": "Cree",
+ "Language_cs": "Tsek",
+ "Language_cu": "Iglesia ng Eslabo",
+ "Language_cv": "Tsubas",
+ "Language_cy": "Welsh",
+ "Language_da": "Danish",
+ "Language_de": "Aleman",
+ "Language_dv": "Divehi",
+ "Language_dz": "Dzongka",
+ "Language_ee": "Ewe",
+ "Language_el": "Griyego",
+ "Language_en": "Ingles",
+ "Language_eo": "Esperanto",
+ "Language_es": "Espanyol",
+ "Language_et": "taga-Estonya",
+ "Language_eu": "Basko",
+ "Language_fa": "Persyano",
+ "Language_ff": "Fulah",
+ "Language_fi": "Finnish",
+ "Language_fj": "Fijian",
+ "Language_fo": "Faroese",
+ "Language_fr": "Pranses",
+ "Language_fy": "Western Frisian",
+ "Language_ga": "Irlandes",
+ "Language_gd": "Scottish Gaelic",
+ "Language_gl": "Galician",
+ "Language_gn": "Guarani",
+ "Language_gu": "Gujarati",
+ "Language_gv": "Manx",
+ "Language_ha": "Hausa",
+ "Language_he": "Hebrew",
+ "Language_hi": "Hindi",
+ "Language_ho": "Hiri Motu",
+ "Language_hr": "Kroatyano",
+ "Language_ht": "Haitian Creole",
+ "Language_hu": "Hanggaryan",
+ "Language_hy": "Armenyo",
+ "Language_hz": "Herero",
+ "Language_ia": "Interlingua",
+ "Language_id": "Indonesiyo",
+ "Language_ie": "Interlingue",
+ "Language_ii": "Sichuan Yi",
+ "Language_ik": "Inupiaq",
+ "Language_io": "Ido",
+ "Language_is": "Icelandic",
+ "Language_it": "Italyano",
+ "Language_iu": "Inuktitut",
+ "Language_ja": "Nippongo",
+ "Language_jv": "Javanese",
+ "Language_ka": "taga-Georgia",
+ "Language_kg": "Kongo",
+ "Language_ki": "Kukuyu",
+ "Language_kj": "Kuanyama",
+ "Language_kk": "Kasak",
+ "Language_kl": "Greenlandic",
+ "Language_km": "Central Khmer",
+ "Language_kn": "Kannada",
+ "Language_ko": "Koreano",
+ "Language_kr": "Kanuri",
+ "Language_ks": "Kashmiri",
+ "Language_ku": "Kurdish",
+ "Language_kv": "Komi",
+ "Language_kw": "Cornish",
+ "Language_ky": "Kirgis",
+ "Language_la": "Latin",
+ "Language_lb": "Luxembourgish",
+ "Language_lg": "Ganda",
+ "Language_li": "Limburgish",
+ "Language_ln": "Lingala",
+ "Language_lo": "Lao",
+ "Language_lt": "Lithuanian",
+ "Language_lu": "Luba-Katanga",
+ "Language_lv": "Latvian",
+ "Language_mg": "Malagasi",
+ "Language_mh": "Marshallese",
+ "Language_mi": "Maori",
+ "Language_mk": "Masidoniyan",
+ "Language_ml": "Malayalam",
+ "Language_mn": "Monggolyan",
+ "Language_mr": "Marathi",
+ "Language_ms": "Malay",
+ "Language_mt": "Maltis",
+ "Language_my": "Burmese",
+ "Language_na": "Nauru",
+ "Language_nb": "Norwegian Bokmål",
+ "Language_nd": "North Ndebele",
+ "Language_ne": "Nepali",
+ "Language_ng": "Ndonga",
+ "Language_nl": "Olandes",
+ "Language_nn": "Norwegian Nynorsk",
+ "Language_no": "Norwegian",
+ "Language_nr": "South Ndebele",
+ "Language_nv": "Navajo",
+ "Language_ny": "Chichewa",
+ "Language_oc": "Occitan",
+ "Language_oj": "Ojibwa",
+ "Language_om": "Oroma",
+ "Language_or": "Oriya",
+ "Language_os": "Osit",
+ "Language_pa": "Panjabi",
+ "Language_pi": "Pali",
+ "Language_pl": "Polish",
+ "Language_ps": "Pashto",
+ "Language_pt": "Portuguese",
+ "Language_qu": "Quechua",
+ "Language_rm": "Raeto-Romance",
+ "Language_rn": "Rundi",
+ "Language_ro": "Romano",
+ "Language_ru": "Ruso",
+ "Language_rw": "Kinyarwanda",
+ "Language_sa": "Sanskrit",
+ "Language_sc": "Sardiniyan",
+ "Language_sd": "Sindhi",
+ "Language_se": "Northern Sami",
+ "Language_sg": "Sango",
+ "Language_si": "Sinhala",
+ "Language_sk": "Eslobako",
+ "Language_sl": "Eslobenyan",
+ "Language_sm": "Samoan",
+ "Language_sn": "Shona",
+ "Language_so": "Somali",
+ "Language_sq": "Albanes",
+ "Language_sr": "Serbyan",
+ "Language_ss": "Swati",
+ "Language_st": "Sotho",
+ "Language_su": "Sundanese",
+ "Language_sv": "Suweko",
+ "Language_sw": "Swahili",
+ "Language_ta": "Tamil",
+ "Language_te": "Telugu",
+ "Language_tg": "Tadyiko",
+ "Language_th": "Thai",
+ "Language_ti": "Tigrinya",
+ "Language_tk": "Turkmen",
+ "Language_tl": "Tagalog",
+ "Language_tn": "Tswana",
+ "Language_to": "Tonga",
+ "Language_tr": "Turko",
+ "Language_ts": "Tsonga",
+ "Language_tt": "Tartaro",
+ "Language_tw": "Twi",
+ "Language_ty": "Tahitian",
+ "Language_ug": "Uighur",
+ "Language_uk": "Ukranian",
+ "Language_ur": "Urdu",
+ "Language_uz": "Usbek",
+ "Language_ve": "Venda",
+ "Language_vi": "Vietnamese",
+ "Language_vo": "Volapuk",
+ "Language_wa": "Walloon",
+ "Language_wo": "Wolof",
+ "Language_xh": "Xhosa",
+ "Language_yi": "Yidish",
+ "Language_yo": "Yoruba",
+ "Language_za": "Chuang",
+ "Language_zh": "Tsino",
+ "Language_zu": "Zulu",
+ "LanguageCode": "wika ng code",
+ "MobileVsDesktop": "Mobile vs Desktop",
+ "OperatingSystemFamily": "Pamilya ng Operating system",
+ "OperatingSystems": "Operating systems",
+ "PluginDescription": "Ulat para sa ibat-ibang mga Setting ng user: Browser Pamilya ng browser Operating System Plugins Resolution Pang-kalahatang settings.",
+ "PluginDetectionDoesNotWorkInIE": "Tandaan: Ang pagtingin ng Plugin ay hindi gumagana sa Internet Explorer. Ang ulat na ito ay batay lamang sa mga browser na hindi-IE.",
+ "Resolutions": "Mga Resolution",
+ "VisitorSettings": "Mga Setting ng bisita",
+ "WideScreen": "Wide Screen",
+ "WidgetBrowsers": "Browser ng Bisita",
+ "WidgetBrowsersDocumentation": "Ang ulat na ito ay naglalaman ng mga impormasyon tungkol sa kung anong browser ang gamit ng iyong bisita. Bawat browser bersyon ay magkakahiwalay na naka-lista.",
+ "WidgetGlobalVisitors": "Configuration ng bisita",
+ "WidgetGlobalVisitorsDocumentation": "Ang ulat na ito ay nagpapakita ng karaniwang pangkalahatang configuration na meron ang iyong bisita. Ang configuration ay binubuo ng operating system uri ng mga browser at screen resolution.",
+ "WidgetOperatingSystems": "Operating System",
+ "WidgetPlugins": "Browser Plugins",
+ "WidgetPluginsDocumentation": "Ang ulat na ito ay ipinapakita kung anong browser plugis ang gumagana sa iyong bisita. Ang impormasyon na ito may maaring mahalaga sa pagpili kung paanu ihahatid ang nilalaman nito.",
+ "WidgetResolutions": "Screen Resolution",
+ "WidgetWidescreen": "Normal \/ Widescreen"
+ }
+} \ No newline at end of file
diff --git a/plugins/UserSettings/lang/tr.json b/plugins/UserSettings/lang/tr.json
index 662b89e309..7d33de6d4f 100644
--- a/plugins/UserSettings/lang/tr.json
+++ b/plugins/UserSettings/lang/tr.json
@@ -3,8 +3,6 @@
"BrowserFamilies": "Tarayıcı aileleri",
"Browsers": "Tarayıcılar",
"ColumnBrowser": "Tarayıcı",
- "ColumnBrowserFamily": "Tarayıcı ailesi",
- "ColumnBrowserVersion": "Tarayıcı sürümü",
"ColumnConfiguration": "Konfigürasyon",
"ColumnOperatingSystem": "İşletim sistemi",
"ColumnResolution": "Çözünürlük",
diff --git a/plugins/UserSettings/lang/uk.json b/plugins/UserSettings/lang/uk.json
index fb07fa7e2f..32c3420a86 100644
--- a/plugins/UserSettings/lang/uk.json
+++ b/plugins/UserSettings/lang/uk.json
@@ -3,7 +3,6 @@
"BrowserFamilies": "Категорії веб-оглядачів",
"Browsers": "Веб-оглядачі",
"ColumnBrowser": "Веб-оглядач",
- "ColumnBrowserFamily": "Родина веб-оглядача",
"ColumnConfiguration": "Конфігурація",
"ColumnOperatingSystem": "Операційна система",
"ColumnResolution": "Роздільна здатність",
diff --git a/plugins/UserSettings/lang/vi.json b/plugins/UserSettings/lang/vi.json
index f50ada4a88..1f3c85e7a1 100644
--- a/plugins/UserSettings/lang/vi.json
+++ b/plugins/UserSettings/lang/vi.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s không có plugin nào được kích hoạt",
"BrowserWithPluginsEnabled": "%1$s với plugin %2$s đã kích hoạt",
"ColumnBrowser": "Trình duyệt",
- "ColumnBrowserFamily": "Họ trình duyệt",
- "ColumnBrowserVersion": "Phiên bản trình duyệt",
"ColumnConfiguration": "Cấu hình",
"ColumnOperatingSystem": "Hệ điều hành",
"ColumnResolution": "Độ phân giải",
@@ -209,7 +207,6 @@
"WideScreen": "Màn hình rộng",
"WidgetBrowsers": "Trình duyệt khách truy cập",
"WidgetBrowsersDocumentation": "Báo cáo này chứa thông tin về loại trình duyệt mà khách truy cập của bạn sử dụng. Mỗi phiên bản trình duyệt được liệt kê một cách riêng biệt.",
- "WidgetBrowserVersion": "Phiên bản trình duyệt",
"WidgetGlobalVisitors": "Cấu hình khách truy cập",
"WidgetGlobalVisitorsDocumentation": "Báo cáo này cho thấy các cấu hình tổng thể phổ biến nhất mà khách truy cập của bạn đã có. Một cấu hình là sự kết hợp của một hệ điều hành, một loại trình duyệt và độ phân giải màn hình.",
"WidgetOperatingSystems": "Hệ điều hành",
diff --git a/plugins/UserSettings/lang/zh-cn.json b/plugins/UserSettings/lang/zh-cn.json
index 30c8f021db..c265c302a7 100644
--- a/plugins/UserSettings/lang/zh-cn.json
+++ b/plugins/UserSettings/lang/zh-cn.json
@@ -6,8 +6,6 @@
"BrowserWithNoPluginsEnabled": "%1$s 没有启用插件",
"BrowserWithPluginsEnabled": "%1$s 启用插件%2$s",
"ColumnBrowser": "浏览器名称",
- "ColumnBrowserFamily": "浏览器种类",
- "ColumnBrowserVersion": "浏览器版本",
"ColumnConfiguration": "客户端配置",
"ColumnOperatingSystem": "操作系统",
"ColumnResolution": "分辨率",
@@ -209,7 +207,6 @@
"WideScreen": "宽屏幕",
"WidgetBrowsers": "访客浏览器",
"WidgetBrowsersDocumentation": "本报表包含访客所用的浏览器信息,每个浏览器版本单独列出。",
- "WidgetBrowserVersion": "浏览器版本",
"WidgetGlobalVisitors": "访客设置",
"WidgetGlobalVisitorsDocumentation": "本报表显示您的访客最常用的系统配置。系统配置是操作系统、浏览器类型及显示器分辨率的组合。",
"WidgetOperatingSystems": "操作系统",
diff --git a/plugins/UserSettings/lang/zh-tw.json b/plugins/UserSettings/lang/zh-tw.json
index 36fe4f3de2..ad0493589c 100644
--- a/plugins/UserSettings/lang/zh-tw.json
+++ b/plugins/UserSettings/lang/zh-tw.json
@@ -4,7 +4,6 @@
"BrowserLanguage": "瀏覽器語系",
"Browsers": "使用瀏覽器",
"ColumnBrowser": "瀏覽器",
- "ColumnBrowserFamily": "瀏覽器家族",
"ColumnConfiguration": "客戶端配置",
"ColumnOperatingSystem": "作業系統",
"ColumnResolution": "解析度",
@@ -203,7 +202,6 @@
"VisitorSettings": "造訪者設定值",
"WideScreen": "寬螢幕",
"WidgetBrowsers": "使用瀏覽器",
- "WidgetBrowserVersion": "瀏覽器版本",
"WidgetGlobalVisitors": "全域訪客配置",
"WidgetGlobalVisitorsDocumentation": "此報表列出貴站訪客最常見的設定配置。設定配置包含作業系統、瀏覽器、螢幕解析度等資訊。",
"WidgetOperatingSystems": "作業系統",
diff --git a/plugins/UserSettings/templates/index.twig b/plugins/UserSettings/templates/index.twig
index 79f6d6072e..7b6d236d47 100644
--- a/plugins/UserSettings/templates/index.twig
+++ b/plugins/UserSettings/templates/index.twig
@@ -1,25 +1,19 @@
<div id='leftcolumn'>
-
- <h2 piwik-enriched-headline>{{ 'UserSettings_Browsers'|translate }}</h2>
- {{ dataTableBrowser|raw }}
-
<h2 piwik-enriched-headline>{{ 'General_Plugins'|translate }}</h2>
{{ dataTablePlugin|raw }}
+
+ <h2 piwik-enriched-headline>{{ 'UserSettings_BrowserLanguage'|translate }}</h2>
+ {{ dataTableBrowserLanguage|raw }}
</div>
<div id='rightcolumn'>
- <h2 piwik-enriched-headline>{{ 'UserSettings_Configurations'|translate }}</h2>
- {{ dataTableConfiguration|raw }}
-
- <h2 piwik-enriched-headline>{{ 'UserSettings_OperatingSystems'|translate }}</h2>
- {{ dataTableOS|raw }}
<h2 piwik-enriched-headline>{{ 'UserSettings_Resolutions'|translate }}</h2>
{{ dataTableResolution|raw }}
- <h2 piwik-enriched-headline>{{ 'UserSettings_MobileVsDesktop'|translate }}</h2>
- {{ dataTableMobileVsDesktop|raw }}
+ <h2 piwik-enriched-headline>{{ 'UserSettings_ScreenTypes'|translate }}</h2>
+ {{ dataTableScreenType|raw }}
- <h2 piwik-enriched-headline>{{ 'UserSettings_BrowserLanguage'|translate }}</h2>
- {{ dataTableBrowserLanguage|raw }}
+ <h2 piwik-enriched-headline>{{ 'UserSettings_Configurations'|translate }}</h2>
+ {{ dataTableConfiguration|raw }}
</div>
diff --git a/plugins/UserSettings/tests/Unit/UserSettingsTest.php b/plugins/UserSettings/tests/Unit/UserSettingsTest.php
deleted file mode 100644
index 408420ed6f..0000000000
--- a/plugins/UserSettings/tests/Unit/UserSettingsTest.php
+++ /dev/null
@@ -1,1036 +0,0 @@
-<?php
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */
-namespace Piwik\Plugins\UserSettings\tests\Unit;
-
-use UserAgentParser;
-
-require_once PIWIK_INCLUDE_PATH . '/plugins/UserSettings/UserSettings.php';
-require_once PIWIK_INCLUDE_PATH . '/plugins/UserSettings/functions.php';
-
-class UserSettingsTest extends \PHPUnit_Framework_TestCase
-{
- // User agent strings and expected parser results
- public function getUserAgents()
- {
- return array(
- // array('User Agent String', array(
- // array( browser_id, name, short_name, version, major_number, minor_number, family ),
- // array( os_id, name, short_name ))),
-
- // Special: URL encoded IE8
- array('Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.1;+WOW64;+Trident/4.0;+GTB7.4;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+PC+6.0;+.NET4.0C;+.NET4.0E;+MS-RTC+LM+8;+InfoPath.2)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
-
- // ABrowse
- array('Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)', array(
- array('AB', 'ABrowse', 'ABrowse', '0.6', '0', '6', 'webkit'),
- array('SYL', 'Syllable', 'Syllable'))),
- array('Mozilla/5.0 (compatible; ABrowse 0.4; Syllable)', array(
- array('AB', 'ABrowse', 'ABrowse', '0.4', '0', '4', 'webkit'),
- array('SYL', 'Syllable', 'Syllable'))),
-
- // Acoo Browser (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6; Acoo Browser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Acoo Browser; .NET CLR 2.0.50727; .NET CLR 1.1.4322)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Acoo Browser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Amaya
- array('amaya/9.52 libwww/5.4.0', array(
- array('AM', 'Amaya', 'Amaya', '9.52', '9', '52', 'unknown'),
- false)),
-
- // AmigaVoyager
- array('AmigaVoyager/3.2 (AmigaOS/MC680x0)', array(
- array('AV', 'AmigaVoyager', 'AmigaVoyager', '3.2', '3', '2', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('AmigaVoyager/2.95 (compatible; MC680x0; AmigaOS; SV1)', array(
- array('AV', 'AmigaVoyager', 'AmigaVoyager', '2.95', '2', '95', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('AmigaVoyager/2.95 (compatible; MC680x0; AmigaOS)', array(
- array('AV', 'AmigaVoyager', 'AmigaVoyager', '2.95', '2', '95', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
-
- // Android
- array('Mozilla/5.0 (Linux; U; Android 1.1; en-us; dream) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2', array(
- array('SF', 'Safari', 'Safari', '3.0', '3', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
- array('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; Nexus One Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
- array('Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; device Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Safari/533.1', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
- array('Mozilla/5.0 (Linux; U; Android 4.0.1; en-us; Galaxy Nexus Build/ITL41D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
-
- // Android - Mobile Chrome
- /*
- array('rray('Mozilla/5.0 (Linux; U; Android 4.1; en-us) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.16 Safari/534.24', array(
- array('CH', 'Chrome', 'Chrome', '11.0', '11', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
- */
- array('Mozilla/5.0 (Linux; U; Android 4.0.1; en-us; Galaxy Nexus Build/ITL41F) AppleWebKit/535.7 (KHTML, like Gecko) CrMo/16.0.912.75 Mobile Safari/535.7', array(
- array('CH', 'Chrome', 'Chrome', '16.0', '16', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
-
- // AOL / America Online Browser (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.43; Windows NT 5.1; .NET CLR 1.1.4322)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.1; AOLBuild 4334.5009; Windows NT 5.1; GTB5; .NET CLR 1.1.4322)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.0; Windows NT 5.1; InfoPath.1)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; AOL 8.0; Windows NT 5.1; SV1)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; AOL 7.0; Windows NT 5.1)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 5.5; AOL 6.0; Windows 98; Win 9x 4.90)', array(
- array('IE', 'Internet Explorer', 'IE', '5.5', '5', '5', 'ie'),
- array('WME', 'Windows Me', 'Win Me'))),
- array('Mozilla/4.0 (compatible; MSIE 5.5; AOL 5.0; Windows NT 5.0)', array(
- array('IE', 'Internet Explorer', 'IE', '5.5', '5', '5', 'ie'),
- array('W2K', 'Windows 2000', 'Win 2000'))),
- array('Mozilla/4.0 (compatible; MSIE 4.01; AOL 4.0; Windows 95)', array(
- array('IE', 'Internet Explorer', 'IE', '4.01', '4', '01', 'ie'),
- array('W95', 'Windows 95', 'Win 95'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; America Online Browser 1.1; Windows NT 5.1; (R1 1.5); .NET CLR 2.0.50727; InfoPath.1)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; America Online Browser 1.1; Windows 98)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('W98', 'Windows 98', 'Win 98'))),
-
- // Arora
- array('Mozilla/5.0 (X11; U; Linux; de-DE) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.8.0', array(
- array('AR', 'Arora', 'Arora', '0.8', '0', '8', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6', array(
- array('AR', 'Arora', 'Arora', '0.6', '0', '6', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.2; pt-BR) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.4 (Change: )', array(
- array('AR', 'Arora', 'Arora', '0.4', '0', '4', 'webkit'),
- array('WS3', 'Windows Server 2003 / XP x64', 'Win S2003'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)', array(
- array('AR', 'Arora', 'Arora', '0.3', '0', '3', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.2 (Change: 189 35c14e0)', array(
- array('AR', 'Arora', 'Arora', '0.2', '0', '2', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Avant (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Avant Browser; .NET CLR 2.0.50727; MAXTHON 2.0)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; Avant Browser; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
-
- // AWeb
- array('Amiga-AWeb/3.5.07 beta', array(
- array('AW', 'Amiga AWeb', 'AWeb', '3.5', '3', '5', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('Mozilla/6.0; (Spoofed by Amiga-AWeb/3.5.07 beta)', array(
- array('AW', 'Amiga AWeb', 'AWeb', '3.5', '3', '5', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('MSIE/6.0; (Spoofed by Amiga-AWeb/3.4APL)', array(
- array('AW', 'Amiga AWeb', 'AWeb', '3.4', '3', '4', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
-
- // Beonex
- array('Mozilla/5.0 (Windows; U; WinNT; en; rv:1.0.2) Gecko/20030311 Beonex/0.8.2-stable', array(
- array('BE', 'Beonex', 'Beonex', '0.8', '0', '8', 'unknown'),
- array('WNT', 'Windows NT', 'Win NT'))),
- array('Mozilla/5.0 (Windows; U; WinNT; en; Preview) Gecko/20020603 Beonex/0.8-stable', array(
- array('BE', 'Beonex', 'Beonex', '0.8', '0', '8', 'unknown'),
- array('WNT', 'Windows NT', 'Win NT'))),
-
- // BlackBerry
- array('BlackBerry8700/4.1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1', array(
- array('BB', 'BlackBerry', 'BlackBerry', '4.1', '4', '1', 'webkit'),
- array('BLB', 'BlackBerry', 'BlackBerry'))),
-
- array('Mozilla/5.0 (BlackBerry; U; BlackBerry 9800; en) AppleWebKit/534.1+ (KHTML, Like Gecko) Version/6.0.0.141 Mobile Safari/534.1+', array(
- array('BB', 'BlackBerry', 'BlackBerry', '6.0', '6', '0', 'webkit'),
- array('BLB', 'BlackBerry', 'BlackBerry'))),
-
- array('Mozilla/5.0 (PlayBook; U; RIM Tablet OS 1.0.0; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/0.0.1 Safari/534.11+', array(
- array('BP', 'PlayBook', 'PlayBook', '0.0', '0', '0', 'webkit'),
- array('QNX', 'QNX', 'QNX'))),
-
- // BrowseX
- array('Mozilla/4.61 [en] (X11; U; ) - BrowseX (2.0.0 Windows)', array(
- array('BX', 'BrowseX', 'BrowseX', '2.0', '2', '0', 'unknown'),
- false)),
-
- // Camino (formerly known as Chimera; not to be confused with another browser also named Chimera)
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en; rv:1.9.0.8pre) Gecko/2009022800 Camino/2.0b3pre', array(
- array('CA', 'Camino', 'Camino', '2.0', '2', '0', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en; rv:1.9.0.10pre) Gecko/2009041800 Camino/2.0b3pre (like Firefox/3.0.10pre)', array(
- array('CA', 'Camino', 'Camino', '2.0', '2', '0', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en; rv:1.8.1.4pre) Gecko/20070511 Camino/1.6pre', array(
- array('CA', 'Camino', 'Camino', '1.6', '1', '6', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en; rv:1.8.1.6) Gecko/20070809 Firefox/2.0.0.6 Camino/1.5.1', array(
- array('CA', 'Camino', 'Camino', '1.5', '1', '5', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.0.1) Gecko/20030306 Camino/0.7', array(
- array('CA', 'Camino', 'Camino', '0.7', '0', '7', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; pl-PL; rv:1.0.1) Gecko/20021111 Chimera/0.6', array(
- array('CA', 'Camino', 'Camino', '0.6', '0', '6', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Cheshire
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.8 (KHTML, like Gecko, Safari) Cheshire/1.0.UNOFFICIAL', array(
- array('CS', 'Cheshire', 'Cheshire', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/419 (KHTML, like Gecko, Safari/419.3) Cheshire/1.0.ALPHA', array(
- array('CS', 'Cheshire', 'Cheshire', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.9 (KHTML, like Safari) Cheshire/1.0.ALPHA', array(
- array('CS', 'Cheshire', 'Cheshire', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Chrome / Chromium
- array('Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US) AppleWebKit/532.9 (KHTML, like Gecko) Chrome/5.0.310.0 Safari/532.9', array(
- array('CH', 'Chrome', 'Chrome', '5.0', '5', '0', 'webkit'),
- array('WS3', 'Windows Server 2003 / XP x64', 'Win S2003'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.48 Safari/525.19', array(
- array('CH', 'Chrome', 'Chrome', '1.0', '1', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Linux; U; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13', array(
- array('CH', 'Chrome', 'Chrome', '0.2', '0', '2', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows NT 6.0; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.16 Safari/534.24', array(
- array('CH', 'Chrome', 'Chrome', '11.0', '11', '0', 'webkit'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.16 Safari/534.24', array(
- array('CH', 'Chrome', 'Chrome', '11.0', '11', '0', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Chrome Frame
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; chromeframe/11.0.660.0)', array(
- array('CF', 'Chrome Frame', 'Chrome Frame', '11.0', '11', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) chromeframe/11.0.660.0', array(
- array('CF', 'Chrome Frame', 'Chrome Frame', '11.0', '11', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; chromeframe/11.0.660.0) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.660.0 Safari/534.18', array(
- array('CF', 'Chrome Frame', 'Chrome Frame', '11.0', '11', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.18 (KHTML, like Gecko) Chrome/11.0.660.0 Safari/534.18', array(
- array('CH', 'Chrome', 'Chrome', '11.0', '11', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // ChromePlus (treat as Chrome)
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.2 (KHTML, like Gecko) ChromePlus/4.0.222.3 Chrome/4.0.222.3 Safari/532.2', array(
- array('CH', 'Chrome', 'Chrome', '4.0', '4', '0', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.28.3 (KHTML, like Gecko) Version/3.2.3 ChromePlus/4.0.222.3 Chrome/4.0.222.3 Safari/525.28.3', array(
- array('CH', 'Chrome', 'Chrome', '3.2', '3', '2', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // CometBird
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2009011615 Firefox/3.0.5 CometBird/3.0.5', array(
- array('CO', 'CometBird', 'CometBird', '3.0', '3', '0', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Crazy Browser (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 1.1.4322; Crazy Browser 3.0.0 Beta2)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Avant Browser; .NET CLR 2.0.50727; .NET CLR 3.0.04506.590; .NET CLR 3.5.20706; Crazy Browser 2.0.1)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Dillo
- array('Dillo/2.0', array(
- array('DI', 'Dillo', 'Dillo', '2.0', '2', '0', 'unknown'),
- false)),
- array('Dillo/0.6.4', array(
- array('DI', 'Dillo', 'Dillo', '0.6', '0', '6', 'unknown'),
- false)),
-
- // Dolfin (or Dolphin, depending on which Samsung documentation you read); and yes, it's "bada" (lower-case)
- array('Mozilla/5.0 (SAMSUNG; SAMSUNG-GT-S5250/S5250AIJI3; U; Bada/1.0; it-it) AppleWebKit/533.1 (KHTML, like Gecko) Dolfin/2.0 Mobile WQVGA SMM-MMS/1.2.0 NexPlayer/3.0 profile/MIDP-2.1 configuration/CLDC-1.1 OPN-B', array(
- array('DF', 'Dolfin', 'Dolfin', '2.0', '2', '0', 'webkit'),
- array('SBA', 'bada', 'bada'))),
- array('Mozilla/5.0 (SAMSUNG; SAMSUNG-GT-S8530/S8530XXJKA; U; Bada/1.2; en-us) AppleWebKit/533.1 (KHTML, like Gecko) Dolfin/2.2 Mobile WVGA SMM-MMS/1.2.0 OPN-B', array(
- array('DF', 'Dolfin', 'Dolfin', '2.2', '2', '2', 'webkit'),
- array('SBA', 'bada', 'bada'))),
-
- // ELinks
- array('ELinks/0.12~pre2.dfsg0-1ubuntu1-lite (textmode; Debian; Linux 2.6.32-4-jolicloud i686; 143x37-2)', array(
- array('EL', 'ELinks', 'ELinks', '0.12', '0', '12', 'unknown'),
- array('LIN', 'Linux', 'Linux'))),
- array('ELinks/0.12pre5.GIT (textmode; CYGWIN_NT-6.1 1.7.1(0.218/5/3) i686; 80x24-2)', array(
- array('EL', 'ELinks', 'ELinks', '0.12', '0', '12', 'unknown'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('ELinks (0.4.3; NetBSD 3.0.2_PATCH sparc64; 141x19)', array(
- array('EL', 'ELinks', 'ELinks', '0.4', '0', '4', 'unknown'),
- array('NBS', 'NetBSD', 'NetBSD'))),
-
- // Epiphany
- array('Mozilla/5.0 (X11; U; Linux i686; en-us) AppleWebKit/531.2+ (KHTML, like Gecko) Safari/531.2+ Epiphany/2.29.5', array(
- array('EP', 'Epiphany', 'Epiphany', '2.29', '2', '29', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en; rv:1.9.0.11) Gecko/20080528 Epiphany/2.22 Firefox/3.0', array(
- // technically, this should be 'gecko' but UserAgentParser only supports one browserType (family) per browser
- array('EP', 'Epiphany', 'Epiphany', '2.22', '2', '22', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Fennec
- array('Mozilla/5.0 (Android; Linux armv7l; rv:2.0.1) Gecko/20100101 Firefox/4.0.1 Fennec/2.0.1', array(
- array('FE', 'Fennec', 'Fennec', '2.0', '2', '0', 'gecko'),
- array('AND', 'Android', 'Android'))),
- array('Mozilla/5.0 (Maemo; Linux armv7l; rv2.0.1) Gecko/20100101 Firefox/4.0.1 Fennec/2.0.1', array(
- array('FE', 'Fennec', 'Fennec', '2.0', '2', '0', 'gecko'),
- array('MAE', 'Maemo', 'Maemo'))),
- array('Mozilla/5.0 (X11; Linux i686; rv2.0.1) Gecko/20100101 Firefox/4.0.1 Fennec/2.0.1', array(
- array('FE', 'Fennec', 'Fennec', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2a1pre) Gecko/20090626 Fennec/1.0b2', array(
- array('FE', 'Fennec', 'Fennec', '1.0', '1', '0', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20081005220218 Gecko/2008052201 Fennec/0.9pre', array(
- array('FE', 'Fennec', 'Fennec', '0.9', '0', '9', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1a1pre) Gecko/2008071707 Fennec/0.5', array(
- array('FE', 'Fennec', 'Fennec', '0.5', '0', '5', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Firefox (formerly Firebird, formerly Phoenix; and rebranded versions)
- array('Mozilla/5.0 (X11; Linux i686; rv:5.0a2) Gecko/20110413 Firefox/5.0a2', array(
- array('FF', 'Firefox', 'Firefox', '5.0', '5', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1', array(
- array('FF', 'Firefox', 'Firefox', '4.0', '4', '0', 'gecko'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:2.0a1pre) Gecko/2008060602 Minefield/4.0a1pre', array(
- array('FF', 'Firefox', 'Firefox', '4.0', '4', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:2.0a1pre) Gecko/2008060602 Minefield/4.0a1p', array(
- array('FF', 'Firefox', 'Firefox', '4.0', '4', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.2a2pre) Gecko/20090826 Namoroka/3.6a2pre', array(
- array('FF', 'Firefox', 'Firefox', '3.6', '3', '6', 'gecko'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2) Gecko/20100119 Namoroka/3.6', array(
- array('FF', 'Firefox', 'Firefox', '3.6', '3', '6', 'gecko'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1b4pre) Gecko/20090420 Shiretoko/3.5b4pre (.NET CLR 3.5.30729)', array(
- array('FF', 'Firefox', 'Firefox', '3.5', '3', '5', 'gecko'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.2) Gecko/20090803 Ubuntu/9.04 (jaunty) Shiretoko/3.5.2', array(
- array('FF', 'Firefox', 'Firefox', '3.5', '3', '5', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6', array(
- array('FF', 'Firefox', 'Firefox', '3.0', '3', '0', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a7) Gecko/2007080210 GranParadiso/3.0a7', array(
- array('FF', 'Firefox', 'Firefox', '3.0', '3', '0', 'gecko'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072716 IceCat/3.0.1-g1', array(
- array('FF', 'Firefox', 'Firefox', '3.0', '3', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.1) Gecko/2008071420 Iceweasel/3.0.1 (Debian-3.0.1-1)', array(
- array('FF', 'Firefox', 'Firefox', '3.0', '3', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1b2) Gecko/20060821 BonEcho/2.0b2', array(
- array('FF', 'Firefox', 'Firefox', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Darwin Power Macintosh; en-US; rv:1.8.0.12) Gecko/20070803 Firefox/1.5.0.12 Fink Community Edition', array(
- array('FF', 'Firefox', 'Firefox', '1.5', '1', '5', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6b) Gecko/20031212 Firebird/0.7+', array(
- array('FB', 'Firebird', 'Firebird', '0.7', '0', '7', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Win98; de-DE; rv:1.4b) Gecko/20030516 Mozilla Firebird/0.6', array(
- array('FB', 'Firebird', 'Firebird', '0.6', '0', '6', 'gecko'),
- array('W98', 'Windows 98', 'Win 98'))),
- array('Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.3a) Gecko/20021207 Phoenix/0.5', array(
- array('PX', 'Phoenix', 'Phoenix', '0.5', '0', '5', 'gecko'),
- array('WNT', 'Windows NT', 'Win NT'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.2b) Gecko/20020923 Phoenix/0.1', array(
- array('PX', 'Phoenix', 'Phoenix', '0.1', '0', '1', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Nintendo DS v4; U; M3 Adapter CF + PassMe2; en-US; rv:1.8.0.6 ) Gecko/20060728 Firefox/1.5.0.6 (firefox.gba.ds)', array(
- array('FF', 'Firefox', 'Firefox', '1.5', '1', '5', 'gecko'),
- array('NDS', 'Nintendo DS', 'DS'))),
- array('Mozilla/5.0 (Android; Mobile; rv:15.0) Gecko/15.0 Firefox/15.0a1', array(
- array('FF', 'Firefox', 'Firefox', '15.0', '15', '0', 'gecko'),
- array('AND', 'Android', 'Android'))),
-
- // Flock
- array('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Flock/3.0.0.3737 Chrome/4.1.249.1071 Safari/532.5', array(
- array('FL', 'Flock', 'Flock', '3.0', '3', '0', 'webkit'),
- array('WI7', 'Windows 7', 'Win 7'))),
- // pre-3.0 is actually gecko
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7 Flock/2.5.6 (.NET CLR 3.5.30729)', array(
- array('FL', 'Flock', 'Flock', '2.5', '2', '5', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 AppleWebKit/531.21.8 KHTML/4.3.5 (like Gecko) Firefox/3.5.7 Flock/2.5.6 (.NET CLR 3.5.30729)', array(
- array('FL', 'Flock', 'Flock', '2.5', '2', '5', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 AppleWebKit/531.21.8 (KHTML, like Gecko) Firefox/3.5.7 Flock/2.5.6 (.NET CLR 3.5.30729)', array(
- array('FL', 'Flock', 'Flock', '2.5', '2', '5', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.9) Gecko/20071106 Firefox/2.0.0.9 Flock/1.0.1', array(
- array('FL', 'Flock', 'Flock', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1.8) Gecko/20071101 Firefox/2.0.0.8 Flock/1.0', array(
- array('FL', 'Flock', 'Flock', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b5) Gecko/20051021 Flock/0.4 Firefox/1.0+', array(
- array('FL', 'Flock', 'Flock', '0.4', '0', '4', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Fluid
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_1; nl-nl) AppleWebKit/532.3+ (KHTML, like Gecko) Fluid/0.9.6 Safari/532.3+', array(
- array('FD', 'Fluid', 'Fluid', '0.9', '0', '9', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Fluid/0.9.4 Safari/525.13', array(
- array('FD', 'Fluid', 'Fluid', '0.9', '0', '9', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Galeon
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/20090327 Galeon/2.0.7', array(
- array('GA', 'Galeon', 'Galeon', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; OpenBSD i386; en-US; rv:1.8.1.19) Gecko/20090701 Galeon/2.0.7', array(
- array('GA', 'Galeon', 'Galeon', '2.0', '2', '0', 'gecko'),
- array('OBS', 'OpenBSD', 'OpenBSD'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.19) Gecko/20081216 Galeon/2.0.4 Firefox/2.0.0.19', array(
- array('GA', 'Galeon', 'Galeon', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.13pre) Gecko/20080207 Galeon/2.0.1 (Ubuntu package 2.0.1-1ubuntu2) Firefox/1.5.0.13pre', array(
- array('GA', 'Galeon', 'Galeon', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.6) Gecko/20040406 Galeon/1.3.15', array(
- array('GA', 'Galeon', 'Galeon', '1.3', '1', '3', 'gecko'),
- array('BSD', 'FreeBSD', 'FreeBSD'))),
- array('Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk', array(
- array('GA', 'Galeon', 'Galeon', '1.2', '1', '2', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0', array(
- array('GA', 'Galeon', 'Galeon', '1.0', '1', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Google Earth embedded browser
- array('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.4 (KHTML, like Gecko) Google Earth/5.2.1.1329 Safari/532.4', array(
- array('GE', 'Google Earth', 'Google Earth', '5.2', '5', '2', 'webkit'),
- array('WI7', 'Windows 7', 'Win 7'))),
-
- // GreenBrowser (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; Media Center PC 5.0; .NET CLR 3.5.21022; GreenBrowser)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.5.30729; InfoPath.2; .NET CLR 3.0.30729; GreenBrowser)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
-
- // Hana
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.9 (KHTML, like Gecko) Hana/1.1', array(
- array('HA', 'Hana', 'Hana', '1.1', '1', '1', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/417.9 (KHTML, like Gecko) Hana/1.0', array(
- array('HA', 'Hana', 'Hana', '1.0', '1', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // HotJava
- array('HotJava/1.1.2 FCS', array(
- array('HJ', 'HotJava', 'HotJava', '1.1', '1', '1', 'unknown'),
- false)),
- array('HotJava/1.0.1/JRE1.1.x', array(
- array('HJ', 'HotJava', 'HotJava', '1.0', '1', '0', 'unknown'),
- false)),
-
- // iBrowse
- array('Mozilla/5.0 (compatible; IBrowse 3.0; AmigaOS4.0)', array(
- array('IB', 'IBrowse', 'IBrowse', '3.0', '3', '0', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('Mozilla/4.0 (compatible; IBrowse 2.3; AmigaOS4.0)', array(
- array('IB', 'IBrowse', 'IBrowse', '2.3', '2', '3', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('IBrowse/2.4 (AmigaOS 3.9; 68K)', array(
- array('IB', 'IBrowse', 'IBrowse', '2.4', '2', '4', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('IBrowse/2.3 (AmigaOS V51)', array(
- array('IB', 'IBrowse', 'IBrowse', '2.3', '2', '3', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
- array('IBrowse/2.3 (AmigaOS 4.0)', array(
- array('IB', 'IBrowse', 'IBrowse', '2.3', '2', '3', 'unknown'),
- array('AMI', 'AmigaOS', 'AmigaOS'))),
-
- // iCab
- array('iCab/4.5 (Macintosh; U; PPC Mac OS X)', array(
- array('IC', 'iCab', 'iCab', '4.5', '4', '5', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('iCab/4.5 (Macintosh; U; Mac OS X Leopard 10.5.7)', array(
- array('IC', 'iCab', 'iCab', '4.5', '4', '5', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (compatible; iCab 3.0.5; Macintosh; U; PPC Mac OS)', array(
- array('IC', 'iCab', 'iCab', '3.0', '3', '0', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (compatible; iCab 3.0.5; Macintosh; U; PPC Mac OS X)', array(
- array('IC', 'iCab', 'iCab', '3.0', '3', '0', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS; en) iCab 3', array(
- array('IC', 'iCab', 'iCab', '3.0', '3', '0', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/4.5 (compatible; iCab 2.7.1; Macintosh; I; PPC)', array(
- array('IC', 'iCab', 'iCab', '2.7', '2', '7', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('iCab/2.9.8 (Macintosh; U; 68K)', array(
- array('IC', 'iCab', 'iCab', '2.9', '2', '9', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Lynx/2.8 (compatible; iCab 2.9.8; Macintosh; U; 68K)', array(
- array('IC', 'iCab', 'iCab', '2.9', '2', '9', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/4/5 (compatible; iCab 2.9.8; Macintosh; U; 68K)', array(
- array('IC', 'iCab', 'iCab', '2.9', '2', '9', 'unknown'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC)', array(
- array('IE', 'Internet Explorer', 'IE', '5.0', '5', '0', 'ie'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/4.76 (Macintosh; I; PPC)', array(
- array('NS', 'Netscape', 'Netscape', '4.76', '4', '76', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Internet Explorer
- array('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; Xbox)', array(
- array('IE', 'Internet Explorer', 'IE', '9.0', '9', '0', 'ie'),
- array('XBX', 'Xbox', 'Xbox'))),
- array('Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; Xbox)', array(
- array('IE', 'Internet Explorer', 'IE', '9.0', '9', '0', 'ie'),
- array('XBX', 'Xbox', 'Xbox'))),
- array('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)', array(
- array('IE', 'Internet Explorer', 'IE', '10.0', '10', '0', 'ie'),
- array('WI8', 'Windows 8', 'Win 8'))),
- array('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)', array(
- array('IE', 'Internet Explorer', 'IE', '10.0', '10', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)', array(
- array('IE', 'Internet Explorer', 'IE', '10.0', '10', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)', array(
- array('IE', 'Internet Explorer', 'IE', '9.0', '9', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/5.0)', array(
- array('IE', 'Internet Explorer', 'IE', '9.0', '9', '0', 'ie'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET CLR 3.0.04506; .NET CLR 3.5.21022; InfoPath.2; SLCC1; Zune 3.0)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WI7', 'Windows 7', 'Win 7'))),
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WS3', 'Windows Server 2003 / XP x64', 'Win S2003'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; WOW64; SV1; .NET CLR 2.0.50727)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WS3', 'Windows Server 2003 / XP x64', 'Win S2003'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; Win64; x64; SV1; .NET CLR 2.0.50727)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WS3', 'Windows Server 2003 / XP x64', 'Win S2003'))),
-
- // IE Mobile
- array('Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; SAMSUNG; SGH-i917)', array(
- array('IE', 'Internet Explorer', 'IE', '9.0', '9', '0', 'ie'),
- array('WPH', 'Windows Phone OS', 'WinPhone'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; XBLWP7; ZuneWP7)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WPH', 'Windows Phone OS', 'WinPhone'))),
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows Phone OS 7.0; Trident/3.1; IEMobile/7.0; DeviceManufacturer; DeviceModel)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WPH', 'Windows Phone OS', 'WinPhone'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.11)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WMO', 'Windows Mobile', 'WinMo'))),
- array('Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320)', array(
- array('IE', 'Internet Explorer', 'IE', '4.01', '4', '01', 'ie'),
- array('WCE', 'Windows CE', 'Win CE'))),
-
- // Internet Explorer with misbehaving Google Tool Bar
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.5; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB0.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)', array(
- array('IE', 'Internet Explorer', 'IE', '8.0', '8', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Iron
- array('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/531.0 (KHTML, like Gecko) Iron/3.0.189.0 Safari/531.0', array(
- array('IR', 'Iron', 'Iron', '3.0', '3', '0', 'webkit'),
- array('WI7', 'Windows 7', 'Win 7'))),
-
- // K-Meleon
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.21) Gecko/20090331 K-Meleon/1.5.3', array(
- array('KM', 'K-Meleon', 'K-Meleon', '1.5', '1', '5', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Darwin; FreeBSD 5.6; en-GB; rv:1.8.1.17pre) Gecko/20080716 K-Meleon/1.5.0', array(
- array('KM', 'K-Meleon', 'K-Meleon', '1.5', '1', '5', 'gecko'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.2b) Gecko/20021016 K-Meleon 0.7', array(
- array('KM', 'K-Meleon', 'K-Meleon', '0.7', '0', '7', 'gecko'),
- array('WNT', 'Windows NT', 'Win NT'))),
-
- // Kapiko
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.1) Gecko/20080722 Firefox/3.0.1 Kapiko/3.0', array(
- array('KP', 'Kapiko', 'Kapiko', '3.0', '3', '0', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Kazehakase
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.11) Gecko Kazehakase/0.5.4 Debian/0.5.4-2.1ubuntu3', array(
- array('KZ', 'Kazehakase', 'Kazehakase', '0.5', '0', '5', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.13) Gecko/20080311 (Debian-1.8.1.13+nobinonly-0ubuntu1) Kazehakase/0.5.2', array(
- array('KZ', 'Kazehakase', 'Kazehakase', '0.5', '0', '5', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; Linux x86_64; U;) Gecko/20060207 Kazehakase/0.3.5 Debian/0.3.5-1', array(
- array('KZ', 'Kazehakase', 'Kazehakase', '0.3', '0', '3', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // KKMAN (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; KKMAN3.2)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Konqueror
- array('Mozilla/5.0 (compatible; Konqueror/4.0; Linux) KHTML/4.0.5 (like Gecko)', array(
- array('KO', 'Konqueror', 'Konqueror', '4.0', '4', '0', 'khtml'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (compatible; Konqueror/4.0; Microsoft Windows) KHTML/4.0.80 (like Gecko)', array(
- array('KO', 'Konqueror', 'Konqueror', '4.0', '4', '0', 'khtml'),
- false)),
- array('Mozilla/5.0 (compatible; Konqueror/3.5; GNU/kFreeBSD) KHTML/3.5.9 (like Gecko) (Debian)', array(
- array('KO', 'Konqueror', 'Konqueror', '3.5', '3', '5', 'khtml'),
- array('BSD', 'FreeBSD', 'FreeBSD'))),
- array('Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)', array(
- array('KO', 'Konqueror', 'Konqueror', '2.1', '2', '1', 'khtml'),
- false)),
-
- // Links
- array('Links', array(
- false,
- false)),
- array('Links (2.1pre31; Linux 2.6.21-omap1 armv6l; x)', array(
- array('LI', 'Links', 'Links', '2.1', '2', '1', 'unknown'),
- array('LIN', 'Linux', 'Linux'))),
- array('Links (0.99; OS/2 1 i386; 80x33)', array(
- array('LI', 'Links', 'Links', '0.99', '0', '99', 'unknown'),
- array('OS2', 'OS/2', 'OS/2'))),
-
- // Lunascape (identity crisis)
- array('Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1) Gecko/20090701 Firefox/3.5 Lunascape/5.1.2.3', array(
- array('FF', 'Firefox', 'Firefox', '3.5', '3', '5', 'gecko'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/5.0 (Windows; U; ; cs-CZ) AppleWebKit/532+ (KHTML, like Gecko, Safari/532.0) Lunascape/5.1.2.3', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- false)),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; InfoPath.1; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Lunascape 5.1.2.3)', array(
- array('IE', 'Internet Explorer', 'IE', '6.0', '6', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Lynx
- array('Lynx (textmode)', array(
- false,
- false)),
- array('Lynx/2.8.7dev.9 libwww-FM/2.14', array(
- array('LX', 'Lynx', 'Lynx', '2.8', '2', '8', 'unknown'),
- false)),
-
- // Maxathon (treat as IE)
- array('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 1.1.4322)', array(
- array('IE', 'Internet Explorer', 'IE', '7.0', '7', '0', 'ie'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Midori
- array('Midori/0.1.9 (X11; Linux i686; U; fr-fr) WebKit/532+', array(
- array('MI', 'Midori', 'Midori', '0.1', '0', '1', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux; pt-br) AppleWebKit/531+ (KHTML, like Gecko) Safari/531.2+ Midori/0.3', array(
- array('MI', 'Midori', 'Midori', '0.3', '0', '3', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Mozilla Suite
- array('Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7) Gecko/20070606', array(
- array('MO', 'Mozilla', 'Mozilla', '1.7', '1', '7', 'gecko'),
- array('SOS', 'SunOS', 'SunOS'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050927 Debian/1.7.8-1sarge3', array(
- array('MO', 'Mozilla', 'Mozilla', '1.7', '1', '7', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // NCSA Mosaic
- array('PATHWORKS Mosaic/1.0 libwww/2.15_Spyglass', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '1.0', '1', '0', 'unknown'),
- false)),
- array('WinMosaic/Version 2.0 (ALPHA 2)', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '2.0', '2', '0', 'unknown'),
- false)),
- array('VMS_Mosaic/3.8-1 (Motif;OpenVMS V7.3-2 DEC 3000 - M700) libwww/2.12_Mosaic', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '3.8', '3', '8', 'unknown'),
- array('VMS', 'OpenVMS', 'OpenVMS'))),
- array('Mosaic from Digital/1.02_Win32', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '1.02', '1', '02', 'unknown'),
- array('W95', 'Windows 95', 'Win 95'))),
- array('NCSA Mosaic/2.0.0b4 (Windows AXP)', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '2.0', '2', '0', 'unknown'),
- false)),
- array('NCSA_Mosaic/2.7b5 (X11;Linux 2.6.7 i686) libwww/2.12 modified', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '2.7', '2', '7', 'unknown'),
- array('LIN', 'Linux', 'Linux'))),
- array('mMosaic/3.6.6 (X11;SunOS 5.8 sun4m)', array(
- array('MC', 'NCSA Mosaic', 'Mosaic', '3.6', '3', '6', 'unknown'),
- array('SOS', 'SunOS', 'SunOS'))),
-
- // Netscape Navigator (9.x)
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.8pre) Gecko/20071015 Firefox/2.0.0.7 Navigator/9.0', array(
- array('NS', 'Netscape', 'Netscape', '9.0', '9', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20070321 Netscape/9.0', array(
- array('NS', 'Netscape', 'Netscape', '9.0', '9', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Netscape (6.x - 8.x)
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20070321 Netscape/8.1.3', array(
- array('NS', 'Netscape', 'Netscape', '8.1', '8', '1', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax)', array(
- array('NS', 'Netscape', 'Netscape', '7.2', '7', '2', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (X11; U; OSF1 alpha; en-US; rv:0.9.4.1) Gecko/20020517 Netscape6/6.2.3', array(
- array('NS', 'Netscape', 'Netscape', '6.2', '6', '2', 'gecko'),
- array('T64', 'Tru64', 'Tru64'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2) Gecko/20010726 Netscape6/6.1', array(
- array('NS', 'Netscape', 'Netscape', '6.1', '6', '1', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Netscape Communicator (4.x)
- array('Mozilla/4.76C-SGI [en] (X11; I; IRIX64 6.5 IP30)', array(
- array('NS', 'Netscape', 'Netscape', '4.76', '4', '76', 'gecko'),
- array('IRI', 'IRIX', 'IRIX'))),
- array('Mozilla/4.72 [en] (X11; I; HP-UX B.11.00 9000/800)', array(
- array('NS', 'Netscape', 'Netscape', '4.72', '4', '72', 'gecko'),
- array('HPX', 'HP-UX', 'HP-UX'))),
- array('Mozilla/4.41 (BEOS; U ;Nav)', array(
- array('NS', 'Netscape', 'Netscape', '4.41', '4', '41', 'gecko'),
- array('BEO', 'BeOS', 'BeOS'))),
- array('Mozilla/4.0 (compatible; Windows NT 5.1; U; en)', array(
- array('NS', 'Netscape', 'Netscape', '4.0', '4', '0', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Netscape Navigator (up to 3.x)
- array('Mozilla/3.0 (X11; I; AIX 2)', array(
- array('NS', 'Netscape', 'Netscape', '3.0', '3', '0', 'gecko'),
- array('AIX', 'AIX', 'AIX'))),
- array('Mozilla/2.02 [fr] (WinNT; I)', array(
- array('NS', 'Netscape', 'Netscape', '2.02', '2', '02', 'gecko'),
- array('WNT', 'Windows NT', 'Win NT'))),
-
- // NetFront NX
- array('Mozilla/5.0 (Nintendo WiiU) AppleWebKit/534.52 (KHTML, like Gecko) NX/2.1.0.8.21 NintendoBrowser/1.0.0.7494.US', array(
- array('NF', 'NetFront', 'NetFront', '2.1', '2', '1', 'webkit'),
- array('WIU', 'Nintendo Wii U', 'Wii U'))),
- array('Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1.7498.US', array(
- array('NF', 'NetFront', 'NetFront', '1.7498', '1', '7498', 'webkit'),
- array('3DS', 'Nintendo 3DS', '3DS'))),
- array('Mozilla/5.0 (Playstation Vita 1.61) AppleWebKit/531.22.8 (KHTML, like Gecko) Silk/3.2', array(
- array('NF', 'NetFront', 'NetFront', '3.2', '3', '2', 'webkit'),
- array('PSV', 'PlayStation Vita', 'PS Vita'))),
-
- // Kindle
- array('Mozilla/4.0 (compatible; Linux 2.6.10) NetFront/3.3 Kindle/1.0 (screen 600x800)', array(
- array('NF', 'NetFront', 'NetFront', '3.3', '3', '3', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; Kindle Fire Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('AND', 'Android', 'Android'))),
- array('Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (screen 600×800; rotate)', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us; Silk/1.1.0-80) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 Silk-Accelerated=true', array(
- array('SF', 'Safari', 'Safari', '5.0', '5', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Omniweb
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US) AppleWebKit/525.18 (KHTML, like Gecko, Safari/525.20) OmniWeb/v622.3.0.105198', array(
- array('OW', 'OmniWeb', 'OmniWeb', '5.8', '5', '8', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/522+ (KHTML, like Gecko, Safari/522) OmniWeb/v613', array(
- array('OW', 'OmniWeb', 'OmniWeb', '5.6', '5', '6', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/420+ (KHTML, like Gecko, Safari/420) OmniWeb/v607', array(
- array('OW', 'OmniWeb', 'OmniWeb', '5.5', '5', '5', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/125.4 (KHTML, like Gecko, Safari) OmniWeb/v563.34', array(
- array('OW', 'OmniWeb', 'OmniWeb', '5.1', '5', '1', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/85 (KHTML, like Gecko) OmniWeb/v558.36', array(
- array('OW', 'OmniWeb', 'OmniWeb', '5.0', '5', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/85 (KHTML, like Gecko) OmniWeb/v496', array(
- array('OW', 'OmniWeb', 'OmniWeb', '4.5', '4', '5', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Opera
- array('Opera/9.63 (Windows NT 5.1; U; en) Presto/2.1.1', array(
- array('OP', 'Opera', 'Opera', '9.63', '9', '63', 'opera'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)', array(
- array('OP', 'Opera', 'Opera', '9.30', '9', '30', 'opera'),
- array('WII', 'Nintendo Wii', 'Wii'))),
- array('Opera/9.64 (Windows ME; U; en) Presto/2.1.1', array(
- array('OP', 'Opera', 'Opera', '9.64', '9', '64', 'opera'),
- array('WME', 'Windows Me', 'Win Me'))),
- array('Opera/9.80 (Windows NT 5.1; U; en) Presto/2.2.15 Version/10.00', array(
- array('OP', 'Opera', 'Opera', '10.00', '10', '0', 'opera'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/4.0 (compatible; MSIE 6.0; Nitro) Opera 8.50 [en Mozilla/4.0 (compatible; MSIE 6.0; Nitro) Opera 8.50 [ja]', array(
- array('OP', 'Opera', 'Opera', '8.50', '8', '50', 'opera'),
- array('NDS', 'Nintendo DS', 'DS'))),
- array('Opera/9.00 (Nintendo DS U; ; 1309-9; de)', array(
- array('OP', 'Opera', 'Opera', '9.00', '9', '00', 'opera'),
- array('NDS', 'Nintendo DS', 'DS'))),
- array('Opera/9.50 (Nintendo DSi; Opera/507; U; en-US) ', array(
- array('OP', 'Opera', 'Opera', '9.50', '9', '50', 'opera'),
- array('DSI', 'Nintendo DSi', 'DSi'))),
-
- // PlayStation
- array('Mozilla/5.0 (PLAYSTATION 3; 1.00)', array(
- false,
- array('PS3', 'PlayStation 3', 'PS3'))),
-
- // PSP
- array('PSP (PlayStation Portable); 2.00', array(
- false,
- array('PSP', 'PlayStation Portable', 'PSP'))),
- array('Mozilla/4.0 (PSP (PlayStation Portable); 2.00)', array(
- false,
- array('PSP', 'PlayStation Portable', 'PSP'))),
-
- // Rekonq 1.0+
- array('Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.34 (KHTML, like Gecko) rekonq/1.0 Safari/534.34', array(
- array('RK', 'Rekonq', 'Rekonq', '1.0', '1', '0', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Safari
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Version/3.1.2 Safari/525.21', array(
- array('SF', 'Safari', 'Safari', '3.1', '3', '1', 'webkit'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5G77 Safari/525.20', array(
- array('SF', 'Safari', 'Safari', '3.1', '3', '1', 'webkit'),
- array('IPH', 'iPhone', 'iPhone'))),
- array('Mozilla/5.0 (iPod; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3A100a Safari/419.3', array(
- array('SF', 'Safari', 'Safari', '3.0', '3', '0', 'webkit'),
- array('IPD', 'iPod', 'iPod'))),
- array('Mozilla/5.0 (iPod; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11a Safari/525.20', array(
- array('SF', 'Safari', 'Safari', '3.1', '3', '1', 'webkit'),
- array('IPD', 'iPod', 'iPod'))),
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; en-us) AppleWebKit/527.3+ (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1', array(
- array('SF', 'Safari', 'Safari', '3.1', '3', '1', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('IPA', 'iPad', 'iPad'))),
- array('Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('IPA', 'iPad', 'iPad'))),
- array('Mozilla/5.0 (iPod; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('IPD', 'iPod', 'iPod'))),
- array('Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7', array(
- array('SF', 'Safari', 'Safari', '4.0', '4', '0', 'webkit'),
- array('IPH', 'iPhone', 'iPhone'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.19.4 (KHTML, like Gecko) ', array(
- array('SF', 'Safari', 'Safari', '5.0', '5', '0', 'webkit'),
- array('WVI', 'Windows Vista', 'Win Vista'))),
- array('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50', array(
- array('SF', 'Safari', 'Safari', '5.1', '5', '1', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (iPhone; CPU iPhone OS 6_1 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B141', array(
- array('SF', 'Safari', 'Safari', '6.0', '6', '0', 'webkit'),
- array('IPH', 'iPhone', 'iPhone'))),
- array('Mozilla/5.0 (iPhone; CPU iPhone OS 6_1 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10B141 Safari/8536.25', array(
- array('SF', 'Safari', 'Safari', '6.0', '6', '0', 'webkit'),
- array('IPH', 'iPhone', 'iPhone'))),
-
- // SeaMonkey (formerly Mozilla Suite and rebranded versions)
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.8) Gecko/20071008 Iceape/1.1.5 (Ubuntu-1.1.5-1ubuntu0.7.10)', array(
- array('SM', 'SeaMonkey', 'SeaMonkey', '1.1', '1', '1', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1b4pre) Gecko/20090405 SeaMonkey/2.0b1pre', array(
- array('SM', 'SeaMonkey', 'SeaMonkey', '2.0', '2', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko', array(
- // this pre-2.0 UA is missing the SeaMonkey/X.Y
- array('SM', 'SeaMonkey', 'SeaMonkey', '1.9', '1', '9', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
- array('Mozilla/5.0 (Windows; U; Windows NT 5.1; cs; rv:1.9) Gecko/2008052906', array(
- // this pre-2.0 UA is missing the SeaMonkey/X.Y
- array('SM', 'SeaMonkey', 'SeaMonkey', '1.9', '1', '9', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- // Palm webOS
- array('Mozilla/5.0 (webOS/1.0; U; en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/1.0 Safari/525.27.1 Pre/1.0', array(
- array('WO', 'Palm webOS', 'webOS', '1.0', '1', '0', 'webkit'),
- array('WOS', 'Palm webOS', 'webOS'))),
- array('Mozilla/5.0 (webOS/Palm webOS 1.2.9; U; en-US) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/1.0 Safari/525.27.1 Pixi/1.0', array(
- array('WO', 'Palm webOS', 'webOS', '1.0', '1', '0', 'webkit'),
- array('WOS', 'Palm webOS', 'webOS'))),
- array('Mozilla/5.0 [en] (PalmOS; U; WebPro/3.5; Palm-Zi72)', array(
- array('WP', 'WebPro', 'WebPro', '3.5', '3', '5', 'unknown'),
- array('POS', 'Palm OS', 'Palm OS'))),
-
- // Palm WebPro
- array('Mozilla/4.76 [en] (PalmOS; U; WebPro/3.0.1a; Palm-Cct1)', array(
- array('WP', 'WebPro', 'WebPro', '3.0', '3', '0', 'unknown'),
- array('POS', 'Palm OS', 'Palm OS'))),
- array('Mozilla/4.76 [en] (PalmOS; U; WebPro/3.0; Palm-Arz1)', array(
- array('WP', 'WebPro', 'WebPro', '3.0', '3', '0', 'unknown'),
- array('POS', 'Palm OS', 'Palm OS'))),
-
- // Shiira 1.x - treat as Safari since it uses the installed version of Safari's WebKit
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/417.9 (KHTML, like Gecko, Safari) Shiira/1.1', array(
- array('SF', 'Safari', 'Safari', '2.0', '2', '0', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
- array('Mozilla/5.0 (Macintosh; U; PPC Mac OS X; pl-pl) AppleWebKit/312.8 (KHTML, like Gecko) Shiira/1.2.1 Safari/125', array(
- array('SF', 'Safari', 'Safari', '1.3', '1', '3', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // Shiira 2.x - ditto
- array('Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/525.28.3 (KHTML, like Gecko) Shiira Safari/125', array(
- array('SF', 'Safari', 'Safari', '3.2', '3', '2', 'webkit'),
- array('MAC', 'Mac OS', 'Mac OS'))),
-
- // SymbianOS
- array('Nokia3650/1.0 SymbianOS/6.1 Series60/1.2 Profile/MIDP-1.0 Configuration/CLDC-1.0', array(
- false,
- array('SYM', 'SymbianOS', 'SymbianOS'))),
- array('Mozilla/5.0 (SymbianOS/9.4; U; Series60/5.0 Nokia5800d-1b/20.2.014; Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/413', array(
- array('SF', 'Safari', 'Safari', '2.0', '2', '0', 'webkit'),
- array('SYM', 'SymbianOS', 'SymbianOS'))),
- array('Opera/9.80 (S60; SymbOS; Opera Mobi/499; U; en-GB) Presto/2.4.18 Version/10.00', array(
- array('OP', 'Opera', 'Opera', '10.00', '10', '00', 'opera'),
- array('SYM', 'SymbianOS', 'SymbianOS'))),
- array('SonyEricssonG700/R100 Mozilla/4.0 (compatible; MSIE 6.0; Symbian OS; 958) Opera 8.65 [ru]', array(
- array('OP', 'Opera', 'Opera', '8.65', '8', '65', 'opera'),
- array('SYM', 'SymbianOS', 'SymbianOS'))),
-
- // Appcelerator Titanium
- array('Appcelerator Titanium/1.8.0 (iPhone Simulator/4.3; iPhone OS; en_US;)', array(
- array('TI', 'Titanium', 'Titanium', '1.8', '1', '8', 'webkit'),
- array('IPH', 'iPhone', 'iPhone'))),
-
- array('Appcelerator Titanium/1.8.0 (iPod touch/4.3.1; iPhone OS; de_DE;)', array(
- array('TI', 'Titanium', 'Titanium', '1.8', '1', '8', 'webkit'),
- array('IPD', 'iPod', 'iPod'))),
-
- array('Appcelerator Titanium/1.8.0 (iPad/4.3.3; iPhone OS; de_DE;)', array(
- array('TI', 'Titanium', 'Titanium', '1.8', '1', '8', 'webkit'),
- array('IPA', 'iPad', 'iPad'))),
-
- array('Dalvik/1.1.0 (Linux; U; Android 2.1; google_sdk Build/ERD79) Titanium/1.8.0', array(
- array('TI', 'Titanium', 'Titanium', '1.8', '1', '8', 'webkit'),
- array('AND', 'Android', 'Android'))),
-
- array('Dalvik/1.4.0 (Linux; U; Android 2.3.3; GT-I9100 Build/GINGERBREAD) Titanium/1.8.0', array(
- array('TI', 'Titanium', 'Titanium', '1.8', '1', '8', 'webkit'),
- array('AND', 'Android', 'Android'))),
-
- array('Mozilla/5.0 (X11; U; CrOS i686 9.10.0; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.253.0 Safari/532.5', array(
- array('CH', 'Chrome', 'Chrome', '4.0', '4', '0', 'webkit'),
- array('LIN', 'Linux', 'Linux'))),
-
- // Email Clients
-
- // Thunderbird
- array('Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120713 Thunderbird/14.0 Lightning/1.6', array(
- array('TB', 'Thunderbird', 'Thunderbird', '14.0', '14', '0', 'gecko'),
- array('WXP', 'Windows XP', 'Win XP'))),
-
- array('Mozilla/5.0 (X11; Linux i686; rv:16.0) Gecko/20121011 Thunderbird/16.0.1', array(
- array('TB', 'Thunderbird', 'Thunderbird', '16.0', '16', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux'))),
-
- array('Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 Lightning/1.9', array(
- array('TB', 'Thunderbird', 'Thunderbird', '17.0', '17', '0', 'gecko'),
- array('WI7', 'Windows 7', 'Win 7'))),
-
- array('Mozilla/5.0 (X11; Linux i686 on x86_64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1', array(
- array('TB', 'Thunderbird', 'Thunderbird', '15.0', '15', '0', 'gecko'),
- array('LIN', 'Linux', 'Linux')))
-
- );
- }
-
- /**
- * Test getBrowser()
- *
- * @dataProvider getUserAgents
- * @group Plugins
- */
- public function testGetBrowser($userAgent, $expected)
- {
- $res = UserAgentParser::getBrowser($userAgent);
- $family = false;
-
- if ($res === false)
- $this->assertFalse($expected[0]);
- else {
- $family = \Piwik\Plugins\UserSettings\getBrowserFamily($res['id']);
- $this->assertEquals($expected[0][0], $res['id']);
- $this->assertEquals($expected[0][1], $res['name']);
- $this->assertEquals($expected[0][2], $res['short_name']);
- $this->assertEquals($expected[0][3], $res['version']);
- $this->assertEquals($expected[0][4], $res['major_number']);
- $this->assertEquals($expected[0][5], $res['minor_number']);
- $this->assertEquals($expected[0][6], $family);
- }
- }
-
- /**
- * Test getOperatingSystem()
- *
- * @dataProvider getUserAgents
- * @group Plugins
- */
- public function testGetOperatingSystem($userAgent, $expected)
- {
- $res = UserAgentParser::getOperatingSystem($userAgent);
-
- $this->assertEquals($expected[1][0], $res['id']);
- $this->assertEquals($expected[1][1], $res['name']);
- $this->assertEquals($expected[1][2], $res['short_name']);
- }
-}
diff --git a/plugins/UsersManager/lang/tl.json b/plugins/UsersManager/lang/tl.json
new file mode 100644
index 0000000000..3f0809ba05
--- /dev/null
+++ b/plugins/UsersManager/lang/tl.json
@@ -0,0 +1,65 @@
+{
+ "UsersManager": {
+ "AddUser": "Magdagdag ng bagong user",
+ "Alias": "Palayaw",
+ "AllWebsites": "Ang lahat ng mga website",
+ "AnonymousUserHasViewAccess": "Tandaan: ang %1$s user ay may %2$s na access sa website na ito",
+ "AnonymousUserHasViewAccess2": "Ang iyong ulat na pang analytics at ang mga impormasyon ng iyong mga bisita ay makikita ng publiko.",
+ "ApplyToAllWebsites": "Mai-aapply sa lahat ng mga website",
+ "ChangeAllConfirm": "Sigurado ka bang gusto mong baguhin ang mga permission sa '%s' sa lahat ng website?",
+ "ChangePasswordConfirm": "Kasamang ring mapapalitan ang user's token_auth kapag ikaw ay nagpalita ng password. Gusto mo ba talang ituloy ito?",
+ "ClickHereToDeleteTheCookie": "Pindutin dito upang burahin ang cookie at matala ng Piwik ang iyong pagbisita.",
+ "ClickHereToSetTheCookieOnDomain": "I-click dito upang magtakda ng cookie na mag buibukod sa iyong mga pagbisita sa mga website na sinusubaybayan ng Piwik sa %s.",
+ "ConfirmGrantSuperUserAccess": "Nais mo bang bigyan '%s' Super User access? Babala: ang user ay mag kakaroon ng access sa lahat ng websites at makakagawa ng pang administratibong gawain.",
+ "ConfirmProhibitMySuperUserAccess": "%s gusto mo bang alisin ang iyong Super User access? Maaring mawala lahat ang iyong permiso at access sa lahat ng websites at ikaw ay malala log-out sa Piwik.",
+ "ConfirmProhibitOtherUsersSuperUserAccess": "Gusto mo ba talagang alisin ang Super User access mula kay '%s'? Ang user na ito ay mawawala ang lahat ng permiso at access sa lahat ng websites. Tiyakin na i-set ang mga permiso sa mga website na kailagan at kung itoy kinakailangan.",
+ "DeleteConfirm": "Sigurado ka bang gusto mong tanggalin ang user %s?",
+ "Email": "Email",
+ "EmailYourAdministrator": "%1$s I-e-mail sa iyong administrator tungkol sa problemang ito %2$s.",
+ "ExceptionAccessValues": "Ang parameter ng access ay dapat na mayroong isa sa mga sumusunod na value: [ %s ]",
+ "ExceptionAdminAnonymous": "Hindi ka maaaring makapasok bilang 'admin' sa isang 'anonymous' na user.",
+ "ExceptionDeleteDoesNotExist": "Ang user '%s' ay hindi nag-eexist,",
+ "ExceptionDeleteOnlyUserWithSuperUserAccess": "Ang pag-tanggal ng user '%s' ay hindi posible.",
+ "ExceptionEditAnonymous": "Ang mga hindi kilalang user ay hindi maaaring i-edit o tanggaling. Ito ay ginagamit ng Piwik upang tukuyin kung hindi pa naka logged ang user. maari mong gawing pampubliko ang iyong mga statistics sa pamamagitan ng pagbibigay ng 'view' access na gumagamit ng 'anonymous' user.",
+ "ExceptionEmailExists": "Ang email na '%s' para sa user na ito ay may iba nang gumagamit.",
+ "ExceptionInvalidEmail": "Ang e-mail ay walang wastong format.",
+ "ExceptionInvalidPassword": "Ang haba ng password ay dapat nasa pagitan ng %1$s at %2$s na character.",
+ "ExceptionLoginExists": "Meron ng tulad nitong login '%s'.",
+ "ExceptionPasswordMD5HashExpected": "Ang UserManager.get Token Auth ay kinikilala lamang ang MD5-hashed password (32 chars long string). Mangyaring gamitin ang md5() function sa password bago gamitin ang method na ito.",
+ "ExceptionRemoveSuperUserAccessOnlySuperUser": "Ang pag-alis sa Super User access mula sa user '%s' ay hindi posible.",
+ "ExceptionSuperUserAccess": "Ang user na ito ay mayroong Super User access at meroong permiso na e-access at magbago sa lahat ng website na nasa Piwik. Maari mong alisin ang Super User access mula sa user na ito at subukang muli.",
+ "ExceptionUserDoesNotExist": "Walang tulad nitong User '%s'.",
+ "ExceptionYouMustGrantSuperUserAccessFirst": "Merong dapat na hindi bababa sa isang user na mayroong Super-access. Mangyaring bigyan ng Super-access ang iba pang naunang user.",
+ "ExcludeVisitsViaCookie": "Ibukod ang iyong mga pagbisita sa pamamagitan ng pag-gamit ng cookie.",
+ "ForAnonymousUsersReportDateToLoadByDefault": "Para sa hindi kilalang gumagamit iulat ang petsa upang i-load ng default",
+ "IfYouWouldLikeToChangeThePasswordTypeANewOne": "Kung nais mong baguhin ang iyong passoword mag type ng bago. Kung hindi man iwan itong blangko.",
+ "InjectedHostCannotChangePwd": "Ikaw ay kasalukuyang bumibisita sa isang hindi kilalang host (%1$s). Hindi mo maaaring baguhin ang iyong password hanggat hindi naayos ang problemang ito.",
+ "LastSeen": "Huling nakita",
+ "MainDescription": "Magpasya kung aling mga gumagamit ay may na Piwik access sa iyong mga website. Maaari mong e-set ang mga permiso sa lahat ng website ng sabay-sabay.",
+ "ManageAccess": "Pamahalaan ang access",
+ "MenuAnonymousUserSettings": "Mga settings ng anonymous na user",
+ "MenuUsers": "Users",
+ "MenuUserSettings": "Mga setting ng user",
+ "NoteNoAnonymousUserAccessSettingsWontBeUsed2": "Tandaan: Hindi mo maaring baguhin ang mga setting sa seksyo na ito dahil wala kang anumang website na maaaring ma-access sa pamamagitan ng anonymous user",
+ "NoUsersExist": "Walang pang mga gumagamit.",
+ "PluginDescription": "Pamamahala ng user sa Piwik: magdagdag ng bagong User mag-edit ng user kung meron na i-update ang permiso. Ang lahat ng ginawa na may kinalaman sa Piwik ay makikita sa pamamagitan ng API",
+ "PrivAdmin": "Admin",
+ "PrivNone": "Walang access",
+ "PrivView": "Tingnan",
+ "ReportDateToLoadByDefault": "Petsa upang i-load ang default na Ulat.",
+ "ReportToLoadByDefault": "Ulat na nakaload ng default",
+ "SuperUserAccessManagement": "Pamamahala ng Super User access",
+ "SuperUserAccessManagementGrantMore": "Maaari kang magbigay ng Super-access ng user sa ibang mga gumagamit ng Piwik. Mangyaring maingat na gamitin ang feature na ito.",
+ "SuperUserAccessManagementMainDescription": "Supers users ay may pinakamataas na permiso. Maaari silang magsagawa ng lahat ng mga administratibong gawain gaya ng pagdaragdag ng mga bagong website upang ito ay masubay-bayan ang pag-dagdag ng mga users pagbabago ng mga permiso sa mga user pag activate at pag de-activate ng mga plugis at pati na ang pag-install ng bagong plugins mula sa Market Place.",
+ "TheLoginScreen": "Ang screen sa pag-login",
+ "ThereAreCurrentlyNRegisteredUsers": "Sa kasalukuyan may mga nakarehistrong user %s.",
+ "TypeYourPasswordAgain": "I-type muli ang iyong bagong password.",
+ "User": "User",
+ "UsersManagement": "Pamamahala ng mga User",
+ "UsersManagementMainDescription": "Lumikha ng mga bagong user o i-update ang mga mayroon nang user. Pagkatapos ay maaari mong itakda ang kanilang mga permiso sa itaas.",
+ "WhenUsersAreNotLoggedInAndVisitPiwikTheyShouldAccess": "Kung ang gumagamit ay hindi naka log-in at bumisita sa Piwik kailangan nilang mag-access",
+ "YourUsernameCannotBeChanged": "Hindi maaaring mabago ang iyong username.",
+ "YourVisitsAreIgnoredOnDomain": "%s Ang iyong bisita ay hindi na-ignore ng Piwik %s %s (ang Piwik ignore cookie ay hindi nakita sa iyong browser).",
+ "YourVisitsAreNotIgnored": "%s Ang iyong bisita ay hindi na-ignore ng Piwik%s (ang Piwik ignore cookie ay hindi nakita sa iyong browser)."
+ }
+} \ No newline at end of file
diff --git a/plugins/UsersManager/tests/Integration/APITest.php b/plugins/UsersManager/tests/Integration/APITest.php
index 038fee2934..1cf2cf71bb 100644
--- a/plugins/UsersManager/tests/Integration/APITest.php
+++ b/plugins/UsersManager/tests/Integration/APITest.php
@@ -8,10 +8,10 @@
namespace Piwik\Plugins\UsersManager\tests;
use Piwik\Access;
-use FakeAccess;
use Piwik\Piwik;
use Piwik\Plugins\UsersManager\API;
use Piwik\Tests\Framework\Fixture;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
diff --git a/plugins/UsersManager/tests/Integration/UserPreferencesTest.php b/plugins/UsersManager/tests/Integration/UserPreferencesTest.php
index 34a5907c0a..34a8aeabbc 100644
--- a/plugins/UsersManager/tests/Integration/UserPreferencesTest.php
+++ b/plugins/UsersManager/tests/Integration/UserPreferencesTest.php
@@ -11,9 +11,9 @@ namespace Piwik\Plugins\UsersManager\tests;
use Piwik\Piwik;
use Piwik\Plugins\UsersManager\UserPreferences;
use Piwik\Plugins\UsersManager\API as APIUsersManager;
-use FakeAccess;
use Piwik\Access;
use Piwik\Tests\Framework\Fixture;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
diff --git a/plugins/UsersManager/tests/Integration/UsersManagerTest.php b/plugins/UsersManager/tests/Integration/UsersManagerTest.php
index ddf6f69e48..74f7fe3369 100644
--- a/plugins/UsersManager/tests/Integration/UsersManagerTest.php
+++ b/plugins/UsersManager/tests/Integration/UsersManagerTest.php
@@ -12,9 +12,9 @@ use Piwik\Access;
use Piwik\Plugins\SitesManager\API as APISitesManager;
use Piwik\Plugins\UsersManager\API;
use Piwik\Plugins\UsersManager\Model;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Translate;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-use FakeAccess;
use Exception;
diff --git a/plugins/VisitFrequency/lang/da.json b/plugins/VisitFrequency/lang/da.json
index 2853683a0d..d398450f6b 100644
--- a/plugins/VisitFrequency/lang/da.json
+++ b/plugins/VisitFrequency/lang/da.json
@@ -7,6 +7,7 @@
"ColumnBounceRateForReturningVisits": "Afvisningsprocent for tilbagevendende besøg",
"ColumnMaxActionsInReturningVisit": "Maks. handlinger i et tilbagevendende besøg",
"ColumnNbReturningVisitsConverted": "Antal konverterede tilbagevendende besøg",
+ "ColumnReturningUsers": "Tilbagevendende brugere",
"ColumnReturningVisits": "Tilbagevendende besøg",
"ColumnSumVisitLengthReturning": "Samlet tidsforbrug for tilbagevendende besøgende (i sekunder)",
"ColumnUniqueReturningVisitors": "Unikke tilbagevendende besøgende",
diff --git a/plugins/VisitFrequency/lang/fr.json b/plugins/VisitFrequency/lang/fr.json
index 1246849d48..e65edecefc 100644
--- a/plugins/VisitFrequency/lang/fr.json
+++ b/plugins/VisitFrequency/lang/fr.json
@@ -7,6 +7,7 @@
"ColumnBounceRateForReturningVisits": "Pourcentage de rebond pour les visites retour",
"ColumnMaxActionsInReturningVisit": "Actions maximum dans une visite de retour",
"ColumnNbReturningVisitsConverted": "Nombre de visites converties de retour",
+ "ColumnReturningUsers": "Visiteurs connus",
"ColumnReturningVisits": "Visites retour",
"ColumnSumVisitLengthReturning": "Le temps total passé par les visiteurs de retour (en secondes)",
"ColumnUniqueReturningVisitors": "Visiteurs uniques de retour",
diff --git a/plugins/VisitFrequency/lang/tl.json b/plugins/VisitFrequency/lang/tl.json
new file mode 100644
index 0000000000..0f5d810da6
--- /dev/null
+++ b/plugins/VisitFrequency/lang/tl.json
@@ -0,0 +1,25 @@
+{
+ "VisitFrequency": {
+ "ColumnActionsByReturningVisits": "Aksyon ng mga bumabalik na bisita",
+ "ColumnAverageVisitDurationForReturningVisitors": "Pamantayang tagal ng bumalik na pagbisita (sa segundo)",
+ "ColumnAvgActionsPerReturningVisit": "Pamangtayan. Pagkilos sa bawat bumabalik na Pagbisita.",
+ "ColumnBounceCountForReturningVisits": "Bilangin ng Bounce para sa mga bumalik na bisita.",
+ "ColumnBounceRateForReturningVisits": "Bounce Rate para sa mga bumabalik na mga bisita.",
+ "ColumnMaxActionsInReturningVisit": "Ang pinakamataas na mga aksyon ng nagbabalik na bisita.",
+ "ColumnNbReturningVisitsConverted": "Bilang ng mga na convert na bumabalik na pagbisita",
+ "ColumnReturningVisits": "Mga bumabalik na pagbisita",
+ "ColumnSumVisitLengthReturning": "Kabuuang oras na ginugol ng mga bumabalik na bisita (sa segundo)",
+ "ColumnUniqueReturningVisitors": "Natatanging mga bumabalik na bisita",
+ "PluginDescription": "Ulat ayon sa iba't ibang mga istatistika tungkol sa mga nag balik na bisita kumpara sa unang bisita.",
+ "ReturnActions": "Mga pagkilos %s ng mga bumabalik na mga bisita.",
+ "ReturnAverageVisitDuration": "%s ang karaniwang tagal ng pagbisita para sa mga bumabalik na bisita",
+ "ReturnAvgActions": "pagkilos %s bawat bumabalik na pagbisita",
+ "ReturnBounceRate": "%s pagbalikna pagbisita ay nagbounce (umalis sa website pagkatapos ng isang pahina)",
+ "ReturningVisitDocumentation": "Ang muling pagbisita ay (kumpara sa isang bagong pagbisita) na ginawa ng isang tao na binisita ang website ng hindi bababa sa isang beses bago.",
+ "ReturningVisitsDocumentation": "Ito ay isang pangkalahatang-ideya sa mga bumabalik na pagbisita.",
+ "ReturnVisits": "%s mga bumabalik na mga pagbisita",
+ "SubmenuFrequency": "Kadalasan",
+ "WidgetGraphReturning": "Mga bumabalik na pagbisita sa paglipas ng panahon",
+ "WidgetOverview": "Frequency Overview"
+ }
+} \ No newline at end of file
diff --git a/plugins/VisitTime/lang/tl.json b/plugins/VisitTime/lang/tl.json
new file mode 100644
index 0000000000..3708b54fa1
--- /dev/null
+++ b/plugins/VisitTime/lang/tl.json
@@ -0,0 +1,18 @@
+{
+ "VisitTime": {
+ "ColumnLocalTime": "Lokal na oras",
+ "ColumnServerTime": "Oras ng server",
+ "DayOfWeek": "Araw ng linggo",
+ "LocalTime": "Mga pagbisita sa bawat lokal na oras",
+ "NHour": "%sh",
+ "PluginDescription": "Ulat sa oras ng iyong local server. Ang impormasyon sa oras ng iyong server ay malaking tulong upang ma e-schedule ang maintenance ng website.",
+ "ServerTime": "Mga pagbisita sa bawat oras mula sa server",
+ "SubmenuTimes": "Times",
+ "VisitsByDayOfWeek": "Mga pagbisita araw-araw",
+ "WidgetByDayOfWeekDocumentation": "Ipinapakita ng graph na ito ang bilang ng mga pagbisita na natanggap ng iyong website sa bawat araw sa loob ng isang linggo.",
+ "WidgetLocalTime": "Mga pagbisita sa pamamagitan ng Lokal na Oras",
+ "WidgetLocalTimeDocumentation": "Ang graph na ito ay nagpapakita kung anong oras sa lugar ng iyong %s bisita %s habang sila ay nasa iyong website.",
+ "WidgetServerTime": "Mga pagbisita ng may oras na mula sa Server",
+ "WidgetServerTimeDocumentation": "Ang graph na ito ay nagpapakita kung anong oras ito sa %s server time zone %s habang bumibisita."
+ }
+} \ No newline at end of file
diff --git a/plugins/VisitorGenerator b/plugins/VisitorGenerator
-Subproject 26f7a686abecca3fb04c91bf006b644eddb0527
+Subproject f516179c7e7d5ae3cf28123c8e09f168e03dfca
diff --git a/plugins/VisitorInterest/lang/tl.json b/plugins/VisitorInterest/lang/tl.json
new file mode 100644
index 0000000000..e229bdd546
--- /dev/null
+++ b/plugins/VisitorInterest/lang/tl.json
@@ -0,0 +1,24 @@
+{
+ "VisitorInterest": {
+ "BetweenXYMinutes": "%1$s-%2$s min",
+ "BetweenXYSeconds": "%1$s-%2$ss",
+ "ColumnPagesPerVisit": "Mga Pahina bawat Pagbisita",
+ "ColumnVisitDuration": "Tagal ng pagbisita",
+ "Engagement": "Engagement",
+ "NPages": "%s mga pahina",
+ "PluginDescription": "Mga Ulat tungkol sa Interes ng isang bisita: bilang ng mga pahina na natingnan",
+ "PlusXMin": "%s min",
+ "VisitNum": "numero ng pagbisita",
+ "VisitsByDaysSinceLast": "Mga araw araw na pagbisita mula noong huling pagbisita.",
+ "visitsByVisitCount": "Bilang ng pagbisita",
+ "VisitsPerDuration": "Tagal ng bawat pagbisita",
+ "VisitsPerNbOfPages": "Mga pagbisita sa bawat bilang ng mga pahina",
+ "WidgetLengths": "Tagal ng pagbisita",
+ "WidgetLengthsDocumentation": "Sa ulat na ito maari mong makita kung gaano karami ang bumisita na may kabuohang total na tinagal. Sa simula Ang ulat na ito ay ipapakita bilang tag cloud ang karaniwang tagal ng pagbisita ay pinapakita na may malaking font.",
+ "WidgetPages": "Mga Pahina bawat Pagbisita",
+ "WidgetPagesDocumentation": "Sa ulat na ito maari mong makita ang dami ng bumisita na may tiyak na bilang ng mga pageview. Sa simula ang ulat ay ipinapakita bilang tag clound ang karaniwang bilang ng pahina ay ipinapakita na may malaking font.",
+ "WidgetVisitsByDaysSinceLast": "Mga pagbisita sa pamamagitan ng mga araw mula sa huling pagbisita.",
+ "WidgetVisitsByDaysSinceLastDocumentation": "Sa ulat na ito maaari mong makita kung gaano karami ang pagbisita mula sa isang piling bilang ng nakapalipas na araw.",
+ "WidgetVisitsByNumDocumentation": "Sa ulat na ito maaari mong makita ang bilang ng mga pagbisita kung saan pati ang nth na pagbisita ie. ang mga bumisita sa iyong websita na hindi bababa sa N na ulit na bilang"
+ }
+} \ No newline at end of file
diff --git a/plugins/VisitsSummary/lang/tl.json b/plugins/VisitsSummary/lang/tl.json
new file mode 100644
index 0000000000..cd9e4ab19d
--- /dev/null
+++ b/plugins/VisitsSummary/lang/tl.json
@@ -0,0 +1,27 @@
+{
+ "VisitsSummary": {
+ "AverageGenerationTime": "%s average na henerasyon ng panahon",
+ "AverageVisitDuration": "average na tagal ng pagbisita %s",
+ "GenerateQueries": "mga query sa %s isagawa",
+ "GenerateTime": "segundo %s upang makabuo ng pahina.",
+ "MaxNbActions": "max na mga aksyon %s ng isang pagbisita",
+ "NbActionsDescription": "%s mga aksyon",
+ "NbActionsPerVisit": "Mga aksyon %s (mga page view downloads outlinks at panloob na paghahanap sa site) sa bawat pagbisita",
+ "NbDownloadsDescription": "%s downloads",
+ "NbKeywordsDescription": "mga natatanging mga keyword %s",
+ "NbOutlinksDescription": "%s outlinks",
+ "NbPageviewsDescription": "mga pageview %s",
+ "NbSearchesDescription": "Kabuuan ng mga paghahanap %s sa iyong website.",
+ "NbUniqueDownloadsDescription": "natatanging pag-download %s",
+ "NbUniqueOutlinksDescription": "natatanging outlinks %s",
+ "NbUniquePageviewsDescription": "%s natatanging mga pageview",
+ "NbUniqueVisitors": "mga natatanging bisita %s",
+ "NbVisitsBounced": "%s na pagbisita ay bumalik (umalis sa website pagkatapos ng isang pahina)",
+ "PluginDescription": "Mga bilang na may Ulat ng pangkalahatang ng Analytics: pagbisita mga natatanging bisita bilang ng mga aksyon rate ng biglaang pag-alis atbp.",
+ "VisitsSummary": "Buod ng mga Pagbisita",
+ "VisitsSummaryDocumentation": "Ito ay isang pangkalahatang-ideya sa ebolusyon ng pagbisita",
+ "WidgetLastVisits": "Mga pagbisita sa paglipas ng panahon",
+ "WidgetOverviewGraph": "Mga pagbisita pangkalahatang-ideya ng (na may mga graph)",
+ "WidgetVisits": "Visits Overview"
+ }
+} \ No newline at end of file
diff --git a/plugins/Widgetize/Controller.php b/plugins/Widgetize/Controller.php
index 043ff8134d..5b1d31b586 100644
--- a/plugins/Widgetize/Controller.php
+++ b/plugins/Widgetize/Controller.php
@@ -22,7 +22,7 @@ class Controller extends \Piwik\Plugin\Controller
public function index()
{
$view = new View('@Widgetize/index');
- $view->availableWidgets = Common::json_encode(WidgetsList::get());
+ $view->availableWidgets = json_encode(WidgetsList::get());
$this->setGeneralVariablesView($view);
return $view->render();
}
diff --git a/plugins/Widgetize/lang/tl.json b/plugins/Widgetize/lang/tl.json
new file mode 100644
index 0000000000..cfd5e8e25a
--- /dev/null
+++ b/plugins/Widgetize/lang/tl.json
@@ -0,0 +1,7 @@
+{
+ "Widgetize": {
+ "OpenInNewWindow": "Bukas sa isang bagong window",
+ "PluginDescription": "Ang plugin ay pinapadali ang pag-export ng kahit na anong Piwik widget sa iyong Blog Websit o sa Igoogle at Netvibes!",
+ "TopLinkTooltip": "i-export ang ulat ng Piwik bilang isang Widget at ilagay sa Dashboard ng iyong app bilang iframe."
+ }
+} \ No newline at end of file
diff --git a/plugins/ZenMode/lang/tl.json b/plugins/ZenMode/lang/tl.json
new file mode 100644
index 0000000000..0363430b80
--- /dev/null
+++ b/plugins/ZenMode/lang/tl.json
@@ -0,0 +1,9 @@
+{
+ "ZenMode": {
+ "Activated": "Ang Zen mode ay na activate",
+ "HowToSearch": "Para maghanap ng items sa menu ulat o websites gamitin ang search box sa kanang tuktok o pindutin ang 'alt+f'.",
+ "HowToToggleZenMode": "Upang umalis o ipasok ang Zen mode i-click ang arrow sa kanang tuktok o pindutin ang 'alt + z'.",
+ "QuickAccessTitle": "Maghanap ng mga entry ng menu mga ulat at mga website.",
+ "SearchForAnything": "Paghahanap sa kahit ano"
+ }
+} \ No newline at end of file
diff --git a/tests/PHPUnit/BenchmarkTestCase.php b/tests/PHPUnit/BenchmarkTestCase.php
index d3775bb15d..a067a3286a 100755
--- a/tests/PHPUnit/BenchmarkTestCase.php
+++ b/tests/PHPUnit/BenchmarkTestCase.php
@@ -8,6 +8,8 @@
/**
* Base class for benchmarks.
+ *
+ * @deprecated since 2.10.0 use Piwik\Tests\Framework\TestCase\BenchmarkTestCase instead
*/
abstract class BenchmarkTestCase extends \Piwik\Tests\Framework\TestCase\BenchmarkTestCase
{
diff --git a/tests/PHPUnit/ConsoleCommandTestCase.php b/tests/PHPUnit/ConsoleCommandTestCase.php
index f32533077c..138e6e77eb 100644
--- a/tests/PHPUnit/ConsoleCommandTestCase.php
+++ b/tests/PHPUnit/ConsoleCommandTestCase.php
@@ -8,6 +8,9 @@
namespace Piwik\Tests;
+/**
+ * @deprecated since 2.10.0 use \Piwik\Tests\Framework\TestCase\ConsoleCommandTestCase instead
+ */
class ConsoleCommandTestCase extends Framework\TestCase\ConsoleCommandTestCase
{
} \ No newline at end of file
diff --git a/tests/PHPUnit/FakeAccess.php b/tests/PHPUnit/FakeAccess.php
index 2cac223994..66f58c795b 100644
--- a/tests/PHPUnit/FakeAccess.php
+++ b/tests/PHPUnit/FakeAccess.php
@@ -10,6 +10,8 @@ use \Piwik\Tests\Framework\Mock\FakeAccess as MockFakeAccess;
/**
* FakeAccess for UnitTests
+ *
+ * @deprecated since 2.10.0 use \Piwik\Tests\Framework\Mock\FakeAccess instead
*/
class FakeAccess extends MockFakeAccess
{
diff --git a/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php b/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
index 07e2ca357c..b516c85d65 100644
--- a/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
+++ b/tests/PHPUnit/Fixtures/ManySitesImportedLogsWithXssAttempts.php
@@ -32,6 +32,8 @@ class ManySitesImportedLogsWithXssAttempts extends ManySitesImportedLogs
{
parent::setUp();
+ $this->trackVisitWithActionsXss();
+
$this->trackVisitsForRealtimeMap(Date::factory('2012-08-11 11:22:33'), $createSeperateVisitors = false);
$this->addAnnotations();
@@ -120,4 +122,18 @@ class ManySitesImportedLogsWithXssAttempts extends ManySitesImportedLogs
$t->setLongitude(-46.64);
self::checkResponse($t->doTrackPageView('incredible title!'));
}
+
+ private function trackVisitWithActionsXss()
+ {
+ $urlXss = self::makeXssContent('page url');
+ $titleXss = self::makeXssContent('page title');
+
+ $t = self::getTracker($this->idSite, $this->dateTime, $defaultInit= true);
+ $t->setUrl('http://example.org/' . urlencode($urlXss));
+ self::checkResponse($t->doTrackPageView(urlencode($titleXss)));
+
+ $t->setForceVisitDateTime(Date::factory($this->dateTime)->addHour(1)->getDateTime());
+ $t->setUrl('http://example.org/' . $urlXss);
+ self::checkResponse($t->doTrackPageView($titleXss));
+ }
} \ No newline at end of file
diff --git a/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php b/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
index b549bb6c8e..e0cfca3dd5 100644
--- a/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
+++ b/tests/PHPUnit/Fixtures/TwoSitesWithAnnotations.php
@@ -11,7 +11,7 @@ use Piwik\Access;
use Piwik\Date;
use Piwik\Plugins\Annotations\API;
use Piwik\Tests\Framework\Fixture;
-use FakeAccess;
+use Piwik\Tests\Framework\Mock\FakeAccess;
/**
* A fixture that adds two websites and annotations for each website.
diff --git a/tests/PHPUnit/Fixtures/UITestFixture.php b/tests/PHPUnit/Fixtures/UITestFixture.php
index 8ff2282402..5eb6cf2610 100644
--- a/tests/PHPUnit/Fixtures/UITestFixture.php
+++ b/tests/PHPUnit/Fixtures/UITestFixture.php
@@ -249,7 +249,7 @@ class UITestFixture extends SqlDump
} else {
$_GET['name'] = 'dashboard name' . $id;
}
- $_GET['layout'] = Common::json_encode($layout);
+ $_GET['layout'] = json_encode($layout);
$_GET['idDashboard'] = $id + 1;
FrontController::getInstance()->fetchDispatch('Dashboard', 'saveLayout');
}
@@ -271,7 +271,7 @@ class UITestFixture extends SqlDump
);
$_GET['name'] = 'D4';
- $_GET['layout'] = Common::json_encode($dashboard);
+ $_GET['layout'] = json_encode($dashboard);
$_GET['idDashboard'] = 5;
$_GET['idSite'] = 2;
FrontController::getInstance()->fetchDispatch('Dashboard', 'saveLayout');
diff --git a/tests/PHPUnit/Framework/Constraint/ResponseCode.php b/tests/PHPUnit/Framework/Constraint/ResponseCode.php
new file mode 100644
index 0000000000..c23b136a82
--- /dev/null
+++ b/tests/PHPUnit/Framework/Constraint/ResponseCode.php
@@ -0,0 +1,59 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+namespace Piwik\Tests\Framework\Constraint;
+
+class ResponseCode extends \PHPUnit_Framework_Constraint
+{
+ private $actualCode;
+
+ /**
+ * @param integer $value Expected response code
+ */
+ public function __construct($value)
+ {
+ parent::__construct();
+ $this->value = $value;
+ }
+
+ /**
+ * Evaluates the constraint for parameter $other. Returns TRUE if the
+ * constraint is met, FALSE otherwise.
+ *
+ * @param mixed $other Value or object to evaluate.
+ * @return bool
+ */
+ public function matches($other)
+ {
+ $options = array(
+ CURLOPT_URL => $other,
+ CURLOPT_HEADER => true,
+ CURLOPT_TIMEOUT => 1,
+ CURLOPT_RETURNTRANSFER => true
+ );
+
+ $ch = curl_init();
+ curl_setopt_array($ch, $options);
+ @curl_exec($ch);
+ $responseCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
+ curl_close($ch);
+
+ $this->actualCode = (int) $responseCode;
+
+ return $this->value === $this->actualCode;
+ }
+
+ /**
+ * Returns a string representation of the constraint.
+ *
+ * @return string
+ */
+ public function toString()
+ {
+ return 'does not return response code ' . $this->exporter->export($this->value) . ' it is ' . $this->actualCode;
+ }
+}?> \ No newline at end of file
diff --git a/tests/PHPUnit/Framework/Fixture.php b/tests/PHPUnit/Framework/Fixture.php
index f61beffbb1..f12e522c9a 100644
--- a/tests/PHPUnit/Framework/Fixture.php
+++ b/tests/PHPUnit/Framework/Fixture.php
@@ -8,6 +8,7 @@
namespace Piwik\Tests\Framework;
use Piwik\Access;
+use Piwik\CacheFile;
use Piwik\Common;
use Piwik\Config;
use Piwik\DataAccess\ArchiveTableCreator;
@@ -15,27 +16,34 @@ use Piwik\DataTable\Manager as DataTableManager;
use Piwik\Date;
use Piwik\Db;
use Piwik\DbHelper;
+use Piwik\EventDispatcher;
use Piwik\Log;
use Piwik\Option;
use Piwik\Piwik;
use Piwik\Plugin;
+use Piwik\Plugin\Manager;
use Piwik\Plugins\LanguagesManager\API as APILanguageManager;
use Piwik\Plugins\MobileMessaging\MobileMessaging;
+use Piwik\Plugins\PrivacyManager\DoNotTrackHeaderChecker;
+use Piwik\Plugins\PrivacyManager\IPAnonymizer;
use Piwik\Plugins\ScheduledReports\API as APIScheduledReports;
use Piwik\Plugins\ScheduledReports\ScheduledReports;
use Piwik\Plugins\SitesManager\API as APISitesManager;
use Piwik\Plugins\UserCountry\LocationProvider;
use Piwik\Plugins\UsersManager\API as APIUsersManager;
use Piwik\Plugins\UsersManager\UsersManager;
+use Piwik\Registry;
use Piwik\ReportRenderer;
+use Piwik\SettingsPiwik;
+use Piwik\SettingsServer;
use Piwik\Site;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
use Piwik\Tracker\Cache;
use Piwik\Translate;
use Piwik\Url;
use PHPUnit_Framework_Assert;
use Piwik_TestingEnvironment;
-use FakeAccess;
use PiwikTracker;
use Piwik_LocalTracker;
use Piwik\Updater;
@@ -91,7 +99,7 @@ class Fixture extends \PHPUnit_Framework_Assert
*/
protected static function getPythonBinary()
{
- if (\Piwik\SettingsServer::isWindows()) {
+ if (SettingsServer::isWindows()) {
return "C:\Python27\python.exe";
}
@@ -172,7 +180,7 @@ class Fixture extends \PHPUnit_Framework_Assert
DbHelper::createTables();
- \Piwik\Plugin\Manager::getInstance()->unloadPlugins();
+ Manager::getInstance()->unloadPlugins();
} catch (Exception $e) {
static::fail("TEST INITIALIZATION FAILED: " . $e->getMessage() . "\n" . $e->getTraceAsString());
@@ -214,12 +222,13 @@ class Fixture extends \PHPUnit_Framework_Assert
FakeAccess::$superUserLogin = 'superUserLogin';
- \Piwik\SettingsPiwik::$cachedKnownSegmentsToArchive = null;
- \Piwik\CacheFile::$invalidateOpCacheBeforeRead = true;
+ SettingsPiwik::$cachedKnownSegmentsToArchive = null;
+ CacheFile::$invalidateOpCacheBeforeRead = true;
if ($this->configureComponents) {
- \Piwik\Plugins\PrivacyManager\IPAnonymizer::deactivate();
- \Piwik\Plugins\PrivacyManager\DoNotTrackHeaderChecker::deactivate();
+ IPAnonymizer::deactivate();
+ $dntChecker = new DoNotTrackHeaderChecker();
+ $dntChecker->deactivate();
}
if ($this->createSuperUser) {
@@ -295,15 +304,15 @@ class Fixture extends \PHPUnit_Framework_Assert
Config::getInstance()->clear();
ArchiveTableCreator::clear();
\Piwik\Plugins\ScheduledReports\API::$cache = array();
- \Piwik\Registry::unsetInstance();
- \Piwik\EventDispatcher::getInstance()->clearAllObservers();
+ Registry::unsetInstance();
+ EventDispatcher::getInstance()->clearAllObservers();
$_GET = $_REQUEST = array();
Translate::unloadEnglishTranslation();
Config::unsetInstance();
- \Piwik\Config::getInstance()->Plugins; // make sure Plugins exists in a config object for next tests that use Plugin\Manager
+ Config::getInstance()->Plugins; // make sure Plugins exists in a config object for next tests that use Plugin\Manager
// since Plugin\Manager uses getFromGlobalConfig which doesn't init the config object
}
@@ -314,15 +323,15 @@ class Fixture extends \PHPUnit_Framework_Assert
}
DbHelper::createTables();
- $pluginsManager = \Piwik\Plugin\Manager::getInstance();
+ $pluginsManager = Manager::getInstance();
$plugins = $testEnvironment->getCoreAndSupportedPlugins();
// make sure the plugin that executed this method is included in the plugins to load
$extraPlugins = array_merge($extraPluginsToLoad, array(
- \Piwik\Plugin::getPluginNameFromBacktrace(debug_backtrace()),
- \Piwik\Plugin::getPluginNameFromNamespace($testCaseClass),
- \Piwik\Plugin::getPluginNameFromNamespace(get_called_class())
+ Plugin::getPluginNameFromBacktrace(debug_backtrace()),
+ Plugin::getPluginNameFromNamespace($testCaseClass),
+ Plugin::getPluginNameFromNamespace(get_called_class())
));
foreach ($extraPlugins as $pluginName) {
if (empty($pluginName)) {
@@ -346,7 +355,7 @@ class Fixture extends \PHPUnit_Framework_Assert
public static function installAndActivatePlugins()
{
- $pluginsManager = \Piwik\Plugin\Manager::getInstance();
+ $pluginsManager = Manager::getInstance();
// Install plugins
$messages = $pluginsManager->installLoadedPlugins();
@@ -366,12 +375,12 @@ class Fixture extends \PHPUnit_Framework_Assert
public static function unloadAllPlugins()
{
try {
- $manager = \Piwik\Plugin\Manager::getInstance();
+ $manager = Manager::getInstance();
$plugins = $manager->getLoadedPlugins();
foreach ($plugins as $plugin) {
$plugin->uninstall();
}
- \Piwik\Plugin\Manager::getInstance()->unloadPlugins();
+ Manager::getInstance()->unloadPlugins();
} catch (Exception $e) {
}
}
diff --git a/tests/PHPUnit/Framework/Mock/File.php b/tests/PHPUnit/Framework/Mock/File.php
new file mode 100644
index 0000000000..aa17325a94
--- /dev/null
+++ b/tests/PHPUnit/Framework/Mock/File.php
@@ -0,0 +1,62 @@
+<?php
+/**
+* Piwik - free/libre analytics platform
+*
+* @link http://piwik.org
+* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+*/
+namespace Piwik;
+
+use Piwik\Tests\Framework\Mock\File;
+
+function filesize($filename)
+{
+ if (File::getFileSize() !== null) {
+ return File::getFileSize();
+ }
+
+ return \filesize($filename);
+}
+
+function file_exists($filename)
+{
+ if (File::getFileExists() !== null) {
+ return File::getFileExists();
+ }
+
+ return \file_exists($filename);
+}
+
+namespace Piwik\Tests\Framework\Mock;
+
+class File
+{
+ static $filesize = null;
+ static $fileExists = null;
+
+ public static function getFileSize()
+ {
+ return self::$filesize;
+ }
+
+ public static function setFileSize($filesize)
+ {
+ self::$filesize = $filesize;
+ }
+
+ public static function reset()
+ {
+ self::$filesize = null;
+ self::$fileExists = null;
+ }
+
+ public static function getFileExists()
+ {
+ return self::$fileExists;
+ }
+
+ public static function setFileExists($exists)
+ {
+ self::$fileExists = $exists;
+ }
+}
diff --git a/tests/PHPUnit/Framework/TestCase/SystemTestCase.php b/tests/PHPUnit/Framework/TestCase/SystemTestCase.php
index e153dc5f2f..d0a7c340ca 100755
--- a/tests/PHPUnit/Framework/TestCase/SystemTestCase.php
+++ b/tests/PHPUnit/Framework/TestCase/SystemTestCase.php
@@ -16,6 +16,7 @@ use Piwik\DataAccess\ArchiveTableCreator;
use Piwik\Db;
use Piwik\DbHelper;
use Piwik\ReportRenderer;
+use Piwik\Tests\Framework\Constraint\ResponseCode;
use Piwik\Tests\Framework\TestRequest\ApiTestConfig;
use Piwik\Tests\Framework\TestRequest\Collection;
use Piwik\Tests\Framework\TestRequest\Response;
@@ -431,7 +432,7 @@ abstract class SystemTestCase extends PHPUnit_Framework_TestCase
$this->changeLanguage($testConfig->language);
}
- $testRequests = new Collection($api, $testConfig, $api);
+ $testRequests = $this->getTestRequestsCollection($api, $testConfig, $api);
foreach ($testRequests->getRequestUrls() as $apiId => $requestUrl) {
$this->_testApiUrl($testName . $testConfig->testSuffix, $apiId, $requestUrl, $testConfig->compareAgainst, $testConfig->xmlFieldsToRemove, $params);
@@ -459,6 +460,11 @@ abstract class SystemTestCase extends PHPUnit_Framework_TestCase
return count($this->comparisonFailures) == 0;
}
+ protected function getTestRequestsCollection($api, $testConfig, $api)
+ {
+ return new Collection($api, $testConfig, $api);
+ }
+
private function printComparisonFailures()
{
$messages = '';
@@ -578,4 +584,20 @@ abstract class SystemTestCase extends PHPUnit_Framework_TestCase
$this->markTestSkipped('Sometimes fail on php 5.3');
}
}
+
+ public function assertResponseCode($expectedResponseCode, $url, $message = '')
+ {
+ self::assertThat($url, new ResponseCode($expectedResponseCode), $message);
+ }
+
+ public function assertNotDbConnectionCreated($message = 'A database connection was created but should not.')
+ {
+ self::assertFalse(Db::hasDatabaseObject(), $message);
+ }
+
+ public function assertDbConnectionCreated($message = 'A database connection was not created but should.')
+ {
+ self::assertTrue(Db::hasDatabaseObject(), $message);
+ }
+
}
diff --git a/tests/PHPUnit/Framework/TestCase/UnitTestCase.php b/tests/PHPUnit/Framework/TestCase/UnitTestCase.php
new file mode 100755
index 0000000000..e12bec330f
--- /dev/null
+++ b/tests/PHPUnit/Framework/TestCase/UnitTestCase.php
@@ -0,0 +1,31 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Tests\Framework\TestCase;
+use Piwik\Tests\Framework\Mock\File;
+
+
+/**
+ * Base class for Unit tests.
+ *
+ * @since 2.10.0
+ */
+abstract class UnitTestCase extends \PHPUnit_Framework_TestCase
+{
+ public function setup()
+ {
+ parent::setUp();
+ File::reset();
+ }
+
+ public function tearDown()
+ {
+ parent::tearDown();
+ File::reset();
+ }
+}
diff --git a/tests/PHPUnit/Framework/TestRequest/Collection.php b/tests/PHPUnit/Framework/TestRequest/Collection.php
index 0e9c565d80..e05ef7d5cd 100644
--- a/tests/PHPUnit/Framework/TestRequest/Collection.php
+++ b/tests/PHPUnit/Framework/TestRequest/Collection.php
@@ -288,7 +288,7 @@ class Collection
return $result;
}
- private function shouldSkipApiMethod($moduleName, $methodName) {
+ protected function shouldSkipApiMethod($moduleName, $methodName) {
$apiId = $moduleName . '.' . $methodName;
// If Api to test were set, we only test these
diff --git a/tests/PHPUnit/Integration/AccessTest.php b/tests/PHPUnit/Integration/AccessTest.php
index 94143fff5e..cb2d201c84 100644
--- a/tests/PHPUnit/Integration/AccessTest.php
+++ b/tests/PHPUnit/Integration/AccessTest.php
@@ -5,16 +5,18 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
+use Exception;
use Piwik\Access;
use Piwik\AuthResult;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_AccessTest
- *
* @group Core
*/
-class Core_AccessTest extends IntegrationTestCase
+class AccessTest extends IntegrationTestCase
{
public function setUp()
{
@@ -88,7 +90,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasSuperUserAccessWithEmptyAccess()
{
@@ -104,7 +106,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasSomeAdminAccessWithEmptyAccess()
{
@@ -134,7 +136,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasSomeViewAccessWithEmptyAccess()
{
@@ -164,7 +166,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasViewAccessWithEmptyAccessNoSiteIdsGiven()
{
@@ -208,7 +210,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasViewAccessWithSomeAccessFailure()
{
@@ -232,7 +234,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasAdminAccessWithEmptyAccessNoSiteIdsGiven()
{
@@ -273,7 +275,7 @@ class Core_AccessTest extends IntegrationTestCase
}
/**
- * @expectedException Piwik\NoAccessException
+ * @expectedException \Piwik\NoAccessException
*/
public function testCheckUserHasAdminAccessWithSomeAccessFailure()
{
@@ -304,8 +306,8 @@ class Core_AccessTest extends IntegrationTestCase
public function testReloadAccessWithMockedAuthValid()
{
- $mock = $this->getMock('\\Piwik\\Auth', array('authenticate', 'getName', 'getTokenAuthSecret', 'getLogin', 'setTokenAuth', 'setLogin',
- 'setPassword', 'setPasswordHash'));
+ $mock = $this->getMock('Piwik\\Auth', array('authenticate', 'getName', 'getTokenAuthSecret', 'getLogin', 'setTokenAuth', 'setLogin',
+ 'setPassword', 'setPasswordHash'));
$mock->expects($this->once())
->method('authenticate')
->will($this->returnValue(new AuthResult(AuthResult::SUCCESS, 'login', 'token')));
@@ -324,7 +326,7 @@ class Core_AccessTest extends IntegrationTestCase
$this->assertFalse(Access::getInstance()->hasSuperUserAccess());
Access::doAsSuperUser(function () {
- Core_AccessTest::assertTrue(Access::getInstance()->hasSuperUserAccess());
+ AccessTest::assertTrue(Access::getInstance()->hasSuperUserAccess());
});
$this->assertFalse(Access::getInstance()->hasSuperUserAccess());
@@ -365,9 +367,9 @@ class Core_AccessTest extends IntegrationTestCase
Access::doAsSuperUser(function () {
$access = Access::getInstance();
- Core_AccessTest::assertTrue($access->hasSuperUserAccess());
+ AccessTest::assertTrue($access->hasSuperUserAccess());
$access->reloadAccess();
- Core_AccessTest::assertTrue($access->hasSuperUserAccess());
+ AccessTest::assertTrue($access->hasSuperUserAccess());
});
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/ArchiveProcessingTest.php b/tests/PHPUnit/Integration/ArchiveProcessingTest.php
index 6514a10134..7c9f24e096 100644
--- a/tests/PHPUnit/Integration/ArchiveProcessingTest.php
+++ b/tests/PHPUnit/Integration/ArchiveProcessingTest.php
@@ -6,6 +6,9 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration;
+
+use Exception;
use Piwik\Access;
use Piwik\ArchiveProcessor;
use Piwik\ArchiveProcessor\Rules;
@@ -20,18 +23,21 @@ use Piwik\Plugins\SitesManager\API;
use Piwik\Segment;
use Piwik\SettingsServer;
use Piwik\Site;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-class Core_ArchiveProcessorTest extends ArchiveProcessor\Loader {
-
+class ArchiveProcessorTest extends ArchiveProcessor\Loader
+{
public function getParams()
{
return $this->params;
}
+
public function public_getMinTimeArchiveProcessed()
{
return $this->getMinTimeArchiveProcessed();
}
+
public function public_isArchiveTemporary()
{
return $this->isArchiveTemporary();
@@ -39,11 +45,9 @@ class Core_ArchiveProcessorTest extends ArchiveProcessor\Loader {
}
/**
- * Class Core_ArchiveProcessorTest
- *
* @group Core
*/
-class Core_ArchiveProcessingTest extends IntegrationTestCase
+class ArchiveProcessingTest extends IntegrationTestCase
{
public function setUp()
{
@@ -90,7 +94,7 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
* @param string $periodLabel
* @param string $dateLabel
* @param string $siteTimezone
- * @return \Core_ArchiveProcessorTest
+ * @return ArchiveProcessorTest
*/
private function _createArchiveProcessor($periodLabel, $dateLabel, $siteTimezone)
{
@@ -100,12 +104,11 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
$segment = new Segment('', $site->getId());
$params = new ArchiveProcessor\Parameters($site, $period, $segment);
- return new \Core_ArchiveProcessorTest($params);
+ return new ArchiveProcessorTest($params);
}
/**
* test of validity of an archive, for a month not finished
- * @group Core
*/
public function testInitCurrentMonth()
{
@@ -138,7 +141,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for a month in the past
- * @group Core
*/
public function testInitDayInPast()
{
@@ -155,7 +157,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for a non UTC date in the past
- * @group Core
*/
public function testInitDayInPastNonUTCWebsite()
{
@@ -172,7 +173,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for a non UTC month in the past
- * @group Core
*/
public function testInitMonthInPastNonUTCWebsite()
{
@@ -189,7 +189,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for today's archive
- * @group Core
*/
public function testInitToday()
{
@@ -222,7 +221,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for today's archive with european timezone
- * @group Core
*/
public function testInitTodayEurope()
{
@@ -263,7 +261,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* test of validity of an archive, for today's archive with toronto's timezone
- * @group Core
*/
public function testInitTodayToronto()
{
@@ -303,7 +300,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* Testing batch insert
- * @group Core
*/
public function testTableInsertBatch()
{
@@ -351,7 +347,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* Testing plain inserts
- * @group Core
*/
public function testTableInsertBatchIterate()
{
@@ -374,7 +369,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* Testing batch insert (BLOB)
- * @group Core
*/
public function testTableInsertBatchBlob()
{
@@ -405,7 +399,6 @@ class Core_ArchiveProcessingTest extends IntegrationTestCase
/**
* Testing plain inserts (BLOB)
- * @group Core
*/
public function testTableInsertBatchIterateBlob()
{
diff --git a/tests/PHPUnit/Integration/AssetManager/UIAssetMinifierTest.php b/tests/PHPUnit/Integration/AssetManager/UIAssetMinifierTest.php
index 968c68c35f..e1dc6c4a3c 100644
--- a/tests/PHPUnit/Integration/AssetManager/UIAssetMinifierTest.php
+++ b/tests/PHPUnit/Integration/AssetManager/UIAssetMinifierTest.php
@@ -1,5 +1,4 @@
<?php
-
/**
* Piwik - free/libre analytics platform
*
@@ -7,12 +6,13 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\AssetManager;
+
use Piwik\AssetManager\UIAsset\OnDiskUIAsset;
use Piwik\AssetManager\UIAssetMinifier;
-class Piwik_Test_UIAssetMinifierTest extends PHPUnit_Framework_TestCase
+class UIAssetMinifierTest extends \PHPUnit_Framework_TestCase
{
-
/**
* @var UIAssetMinifier
*/
diff --git a/tests/PHPUnit/Integration/CronArchive/FixedSiteIdsTest.php b/tests/PHPUnit/Integration/CronArchive/FixedSiteIdsTest.php
index 259df6fc9e..3f74af2bec 100644
--- a/tests/PHPUnit/Integration/CronArchive/FixedSiteIdsTest.php
+++ b/tests/PHPUnit/Integration/CronArchive/FixedSiteIdsTest.php
@@ -6,12 +6,14 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\CronArchive;
+
use Piwik\CronArchive\FixedSiteIds;
/**
* @group Core
*/
-class FixedSiteIdsTest extends PHPUnit_Framework_TestCase
+class FixedSiteIdsTest extends \PHPUnit_Framework_TestCase
{
/**
* @var FixedSiteIds
@@ -50,5 +52,4 @@ class FixedSiteIdsTest extends PHPUnit_Framework_TestCase
$this->assertNull($this->fixedSiteIds->getNextSiteId());
$this->assertEquals(4, $this->fixedSiteIds->getNumProcessedWebsites());
}
-
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/CronArchive/SharedSiteIdsTest.php b/tests/PHPUnit/Integration/CronArchive/SharedSiteIdsTest.php
index 43962ff17b..6e3959ceda 100644
--- a/tests/PHPUnit/Integration/CronArchive/SharedSiteIdsTest.php
+++ b/tests/PHPUnit/Integration/CronArchive/SharedSiteIdsTest.php
@@ -6,6 +6,8 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration;
+
use Piwik\CronArchive\SharedSiteIds;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
@@ -111,5 +113,4 @@ class SharedSiteIdsTest extends IntegrationTestCase
$this->assertEquals(4, $this->sharedSiteIds->getNumProcessedWebsites());
$this->assertEquals(array(), $this->sharedSiteIds->getAllSiteIdsToArchive());
}
-
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/DataAccess/ModelTest.php b/tests/PHPUnit/Integration/DataAccess/ModelTest.php
index 270253b82a..1ec10bdebf 100644
--- a/tests/PHPUnit/Integration/DataAccess/ModelTest.php
+++ b/tests/PHPUnit/Integration/DataAccess/ModelTest.php
@@ -6,6 +6,8 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\DataAccess;
+
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
use Piwik\DataAccess\Model;
@@ -13,7 +15,7 @@ use Piwik\DataAccess\Model;
* @group Core
* @group DataAccess
*/
-class Core_DataAccess_ModelTest extends IntegrationTestCase
+class ModelTest extends IntegrationTestCase
{
/**
* @var Model
@@ -45,5 +47,4 @@ class Core_DataAccess_ModelTest extends IntegrationTestCase
$this->assertEquals($expectedId, $id);
}
-
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/DbTest.php b/tests/PHPUnit/Integration/DbTest.php
index c7a8e465eb..e450ec7bae 100644
--- a/tests/PHPUnit/Integration/DbTest.php
+++ b/tests/PHPUnit/Integration/DbTest.php
@@ -5,18 +5,18 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
use Piwik\Common;
use Piwik\Db;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_DbTest
- *
* @group Core
*/
-class Core_DbTest extends IntegrationTestCase
+class DbTest extends IntegrationTestCase
{
-
public function test_getColumnNamesFromTable()
{
$this->assertColumnNames('access', array('login', 'idsite', 'access'));
@@ -29,5 +29,4 @@ class Core_DbTest extends IntegrationTestCase
$this->assertEquals($expectedColumnNames, $colmuns);
}
-
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Core/API/DocumentationGeneratorTest.php b/tests/PHPUnit/Integration/DocumentationGeneratorTest.php
index 5fb119f6a0..253844cd18 100644
--- a/tests/PHPUnit/Core/API/DocumentationGeneratorTest.php
+++ b/tests/PHPUnit/Integration/DocumentationGeneratorTest.php
@@ -1,16 +1,17 @@
<?php
/**
- * Copyright (C) Piwik PRO - All rights reserved.
+ * Piwik - free/libre analytics platform
*
- * Using this code requires that you first get a license from Piwik PRO.
- * Unauthorized copying of this file, via any medium is strictly prohibited.
- *
- * @link http://piwik.pro
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
+use PHPUnit_Framework_TestCase;
use Piwik\API\DocumentationGenerator;
use Piwik\API\Proxy;
use Piwik\EventDispatcher;
-use Piwik\Plugin\Manager as PluginManager;
/**
* @group Core
diff --git a/tests/PHPUnit/Integration/FilesystemTest.php b/tests/PHPUnit/Integration/FilesystemTest.php
new file mode 100644
index 0000000000..f3879927e5
--- /dev/null
+++ b/tests/PHPUnit/Integration/FilesystemTest.php
@@ -0,0 +1,33 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Tests\Integration;
+
+use Piwik\Filesystem;
+
+/**
+ * @group Core
+ */
+class FilesystemTest extends \PHPUnit_Framework_TestCase
+{
+ public function test_getFileSize_ShouldRecognizeLowerUnits()
+ {
+ $size = Filesystem::getFileSize(__FILE__, 'b');
+
+ $this->assertGreaterThan(400, $size);
+ $this->assertLessThan(400000, $size);
+ }
+
+ public function test_getFileSize_ShouldReturnNull_IfFileDoesNotExists()
+ {
+ $size = Filesystem::getFileSize(PIWIK_INCLUDE_PATH . '/tests/NotExisting.File');
+
+ $this->assertNull($size);
+ }
+
+} \ No newline at end of file
diff --git a/tests/PHPUnit/Integration/HttpTest.php b/tests/PHPUnit/Integration/HttpTest.php
index 68988d78a9..a5d62b3060 100644
--- a/tests/PHPUnit/Integration/HttpTest.php
+++ b/tests/PHPUnit/Integration/HttpTest.php
@@ -5,13 +5,17 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
use Piwik\Http;
use Piwik\Tests\Framework\Fixture;
/**
+ * @group Core
* @group HttpTest
*/
-class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
+class HttpTest extends \PHPUnit_Framework_TestCase
{
/**
* Dataprovider for testFetchRemoteFile
@@ -26,8 +30,6 @@ class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
}
/**
- * @group Core
- *
* @dataProvider getMethodsToTest
*/
public function testFetchRemoteFile($method)
@@ -37,9 +39,6 @@ class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
$this->assertTrue(strpos($result, 'Piwik') !== false);
}
- /**
- * @group Core
- */
public function testFetchApiLatestVersion()
{
$destinationPath = PIWIK_USER_PATH . '/tmp/latest/LATEST';
@@ -48,9 +47,6 @@ class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
$this->assertGreaterThan(0, filesize($destinationPath));
}
- /**
- * @group Core
- */
public function testFetchLatestZip()
{
$destinationPath = PIWIK_USER_PATH . '/tmp/latest/latest.zip';
@@ -60,7 +56,6 @@ class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
}
/**
- * @group Core
* @dataProvider getMethodsToTest
*/
public function testCustomByteRange($method)
@@ -88,8 +83,6 @@ class Piwik_Test_HttpTest extends PHPUnit_Framework_TestCase
}
/**
- * @group Core
- *
* @dataProvider getMethodsToTest
*/
public function testHEADOperation($method)
diff --git a/tests/PHPUnit/Integration/JsProxyTest.php b/tests/PHPUnit/Integration/JsProxyTest.php
index 92a6461acc..e968fec50e 100644
--- a/tests/PHPUnit/Integration/JsProxyTest.php
+++ b/tests/PHPUnit/Integration/JsProxyTest.php
@@ -6,14 +6,16 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration;
+
use Piwik\Tests\Framework\Fixture;
-class Test_Piwik_JsProxy extends PHPUnit_Framework_TestCase
+/**
+ * @group Core
+ */
+class JsProxyTest extends \PHPUnit_Framework_TestCase
{
- /**
- * @group Core
- */
- function testPiwikJs()
+ public function testPiwikJs()
{
$curlHandle = curl_init();
curl_setopt($curlHandle, CURLOPT_URL, $this->getStaticSrvUrl() . '/js/');
@@ -28,10 +30,7 @@ class Test_Piwik_JsProxy extends PHPUnit_Framework_TestCase
$this->assertEquals($piwik_js, $fullResponse, 'script content');
}
- /**
- * @group Core
- */
- function testPiwikJsNoComment()
+ public function testPiwikJsNoComment()
{
$curlHandle = curl_init();
curl_setopt($curlHandle, CURLOPT_URL, $this->getStaticSrvUrl() . '/js/tracker.php');
@@ -47,10 +46,7 @@ class Test_Piwik_JsProxy extends PHPUnit_Framework_TestCase
$this->assertEquals($piwikNoCommentJs, $fullResponse, 'script content (if comment shows, $byteStart value in /js/tracker.php)');
}
- /**
- * @group Core
- */
- function testPiwikPhp()
+ public function testPiwikPhp()
{
$curlHandle = curl_init();
$url = $this->getStaticSrvUrl() . '/js/?idsite=1';
diff --git a/tests/PHPUnit/Integration/LogTest.php b/tests/PHPUnit/Integration/LogTest.php
index 9c3e52b405..fd3debdbc9 100644
--- a/tests/PHPUnit/Integration/LogTest.php
+++ b/tests/PHPUnit/Integration/LogTest.php
@@ -5,6 +5,10 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
+use Exception;
use Piwik\Common;
use Piwik\Config;
use Piwik\Container\StaticContainer;
@@ -18,12 +22,10 @@ use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
require_once PIWIK_INCLUDE_PATH . '/tests/resources/TestPluginLogClass.php';
/**
- * Class Core_LogTest
- *
* @group Core
* @group Core_LogTest
*/
-class Core_LogTest extends IntegrationTestCase
+class LogTest extends IntegrationTestCase
{
const TESTMESSAGE = 'test%smessage';
const STRING_MESSAGE_FORMAT = '[%tag%] %message%';
@@ -33,9 +35,9 @@ class Core_LogTest extends IntegrationTestCase
'screen' => 'dummy error message<br />
<br />
--&gt; To temporarily debug this error further, set const PIWIK_PRINT_ERROR_BACKTRACE=true; in index.php',
- 'file' => '[Core_LogTest] LogTest.php(168): dummy error message
+ 'file' => '[Piwik\Tests\Integration\LogTest] LogTest.php(160): dummy error message
dummy backtrace',
- 'database' => '[Core_LogTest] LogTest.php(168): dummy error message
+ 'database' => '[Piwik\Tests\Integration\LogTest] LogTest.php(160): dummy error message
dummy backtrace'
);
@@ -47,9 +49,9 @@ dummy backtrace'
<br /><br />Backtrace --&gt;<div style="font-family:Courier;font-size:10pt"><br />
dummy backtrace</div><br />
</pre></div><br />',
- 'file' => '[Core_LogTest] dummyerrorfile.php(145): Unknown error (102) - dummy error string
+ 'file' => '[Piwik\Tests\Integration\LogTest] dummyerrorfile.php(145): Unknown error (102) - dummy error string
dummy backtrace',
- 'database' => '[Core_LogTest] dummyerrorfile.php(145): Unknown error (102) - dummy error string
+ 'database' => '[Piwik\Tests\Integration\LogTest] dummyerrorfile.php(145): Unknown error (102) - dummy error string
dummy backtrace'
);
@@ -103,8 +105,6 @@ dummy backtrace'
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLoggingWorksWhenMessageIsString($backend)
@@ -116,12 +116,10 @@ dummy backtrace'
$this->screenOutput = ob_get_contents();
ob_end_clean();
- $this->checkBackend($backend, self::TESTMESSAGE, $formatMessage = true, $tag = 'Core_LogTest');
+ $this->checkBackend($backend, self::TESTMESSAGE, $formatMessage = true, $tag = __CLASS__);
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLoggingWorksWhenMessageIsSprintfString($backend)
@@ -133,12 +131,10 @@ dummy backtrace'
$this->screenOutput = ob_get_contents();
ob_end_clean();
- $this->checkBackend($backend, sprintf(self::TESTMESSAGE, " subst "), $formatMessage = true, $tag = 'Core_LogTest');
+ $this->checkBackend($backend, sprintf(self::TESTMESSAGE, " subst "), $formatMessage = true, $tag = __CLASS__);
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLoggingWorksWhenMessageIsError($backend)
@@ -151,13 +147,11 @@ dummy backtrace'
$this->screenOutput = ob_get_contents();
ob_end_clean();
- $this->checkBackend($backend, self::$expectedErrorOutput[$backend], $formatMessage = false, $tag = 'Core_LogTest');
+ $this->checkBackend($backend, self::$expectedErrorOutput[$backend], $formatMessage = false, $tag = __CLASS__);
$this->checkBackend('screen', self::$expectedErrorOutput['screen']); // errors should always written to the screen
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLoggingWorksWhenMessageIsException($backend)
@@ -170,13 +164,11 @@ dummy backtrace'
$this->screenOutput = ob_get_contents();
ob_end_clean();
- $this->checkBackend($backend, self::$expectedExceptionOutput[$backend], $formatMessage = false, $tag = 'Core_LogTest');
+ $this->checkBackend($backend, self::$expectedExceptionOutput[$backend], $formatMessage = false, $tag = __CLASS__);
$this->checkBackend('screen', self::$expectedExceptionOutput['screen']); // errors should always written to the screen
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLoggingCorrectlyIdentifiesPlugin($backend)
@@ -192,8 +184,6 @@ dummy backtrace'
}
/**
- * @group Core
- *
* @dataProvider getBackendsToTest
*/
public function testLogMessagesIgnoredWhenNotWithinLevel($backend)
@@ -210,7 +200,6 @@ dummy backtrace'
}
/**
- * @group Core
* @dataProvider getBackendsToTest
*/
public function testLogMessagesAreTrimmed($backend)
diff --git a/tests/PHPUnit/Integration/OptionTest.php b/tests/PHPUnit/Integration/OptionTest.php
index 0e6b8cba7d..616202f05f 100644
--- a/tests/PHPUnit/Integration/OptionTest.php
+++ b/tests/PHPUnit/Integration/OptionTest.php
@@ -5,22 +5,20 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
use Piwik\Common;
use Piwik\Db;
use Piwik\Option;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_OptionTest
- *
* @group Core
* @group Core_OptionTest
*/
-class Core_OptionTest extends IntegrationTestCase
+class OptionTest extends IntegrationTestCase
{
- /**
- * @group Core
- */
public function testGet()
{
// empty table, expect false (i.e., not found)
@@ -39,9 +37,6 @@ class Core_OptionTest extends IntegrationTestCase
$this->assertFalse(Option::get('anonymous_defaultReport'));
}
- /**
- * @group Core
- */
public function testGetOption()
{
// empty table, expect false (i.e., not found)
@@ -60,9 +55,6 @@ class Core_OptionTest extends IntegrationTestCase
$this->assertFalse(Option::get('anonymous_defaultReport'));
}
- /**
- * @group Core
- */
public function testSet()
{
// empty table, expect false (i.e., not found)
@@ -73,9 +65,6 @@ class Core_OptionTest extends IntegrationTestCase
$this->assertSame('1', Option::get('anonymous_defaultReport'));
}
- /**
- * @group Core
- */
public function testSetOption()
{
// empty table, expect false (i.e., not found)
@@ -86,9 +75,6 @@ class Core_OptionTest extends IntegrationTestCase
$this->assertSame('1', Option::get('anonymous_defaultReport'));
}
- /**
- * @group Core
- */
public function testDelete()
{
// empty table, expect false (i.e., not found)
@@ -121,9 +107,6 @@ class Core_OptionTest extends IntegrationTestCase
$this->assertFalse(Option::get('admin_defaultReport'));
}
- /**
- * @group Core
- */
public function testDeleteLike()
{
// empty table, expect false (i.e., not found)
diff --git a/tests/PHPUnit/Integration/PiwikTest.php b/tests/PHPUnit/Integration/PiwikTest.php
index 46cc79f0d2..252c08cd78 100644
--- a/tests/PHPUnit/Integration/PiwikTest.php
+++ b/tests/PHPUnit/Integration/PiwikTest.php
@@ -5,6 +5,9 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
use Piwik\Access;
use Piwik\Filesystem;
use Piwik\MetricsFormatter;
@@ -14,11 +17,9 @@ use Piwik\Translate;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_PiwikTest
- *
* @group Core
*/
-class Core_PiwikTest extends IntegrationTestCase
+class PiwikTest extends IntegrationTestCase
{
/**
* Dataprovider for testIsNumericValid
diff --git a/tests/PHPUnit/Integration/Plugin/SettingsTest.php b/tests/PHPUnit/Integration/Plugin/SettingsTest.php
index ffec54ce58..3c146f5d31 100644
--- a/tests/PHPUnit/Integration/Plugin/SettingsTest.php
+++ b/tests/PHPUnit/Integration/Plugin/SettingsTest.php
@@ -6,9 +6,13 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\Plugin;
+
use Piwik\Access;
+use Piwik\Db;
use Piwik\Plugin\Settings as PluginSettings;
use Piwik\Settings\Setting;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
class CorePluginSettingsTest extends \Piwik\Plugins\ExampleSettingsPlugin\Settings {
@@ -25,11 +29,10 @@ class CorePluginSettingsTest extends \Piwik\Plugins\ExampleSettingsPlugin\Settin
}
/**
- * Class Core_Plugin_SettingsTest
* @group Core
* @group PluginSettings
*/
-class Core_Plugin_SettingsTest extends IntegrationTestCase
+class SettingsTest extends IntegrationTestCase
{
/**
* @var CorePluginSettingsTest
@@ -40,6 +43,7 @@ class Core_Plugin_SettingsTest extends IntegrationTestCase
{
parent::setUp();
Access::setSingletonInstance(null);
+ Db::destroyDatabaseObject();
$this->settings = $this->createSettingsInstance();
}
@@ -54,6 +58,49 @@ class Core_Plugin_SettingsTest extends IntegrationTestCase
parent::tearDown();
}
+ public function test_constructor_shouldNotEstablishADatabaseConnection()
+ {
+ Db::destroyDatabaseObject();
+
+ $this->assertNotDbConnectionCreated();
+
+ $this->createSettingsInstance();
+
+ $this->assertNotDbConnectionCreated();
+ }
+
+ public function test_constructor_shouldEstablishADatabaseConnection_AsSoonAsWeGetAValue()
+ {
+ $this->setSuperUser();
+ Db::destroyDatabaseObject();
+
+ $setting = $this->buildUserSetting('testSetting', 'Test Setting');
+ $settings = $this->createSettingsInstance();
+ $settings->addSetting($setting);
+
+ $this->assertNotDbConnectionCreated();
+
+ $settings->getSettingValue($setting);
+
+ $this->assertDbConnectionCreated();
+ }
+
+ public function test_constructor_shouldEstablishADatabaseConnection_AsSoonAsWeSetAValue()
+ {
+ $this->setSuperUser();
+ Db::destroyDatabaseObject();
+
+ $setting = $this->buildUserSetting('testSetting', 'Test Setting');
+ $settings = $this->createSettingsInstance();
+ $settings->addSetting($setting);
+
+ $this->assertNotDbConnectionCreated();
+
+ $settings->setSettingValue($setting, '5');
+
+ $this->assertDbConnectionCreated();
+ }
+
/**
* @expectedException \Exception
* @expectedExceptionMessage A setting with name "myname" does already exist for plugin "ExampleSettingsPlugin"
@@ -604,7 +651,7 @@ class Core_Plugin_SettingsTest extends IntegrationTestCase
public function test_construct_shouldDetectTheNameOfThePluginAutomatically_IfPluginNameNotGiven()
{
- $setting = new Piwik\Plugins\ExampleSettingsPlugin\Settings();
+ $setting = new \Piwik\Plugins\ExampleSettingsPlugin\Settings();
$this->assertEquals('ExampleSettingsPlugin', $setting->getPluginName());
}
@@ -671,4 +718,4 @@ class Core_Plugin_SettingsTest extends IntegrationTestCase
{
return new CorePluginSettingsTest('ExampleSettingsPlugin');
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/ReleaseCheckListTest.php b/tests/PHPUnit/Integration/ReleaseCheckListTest.php
index 4362dacca1..2c4ab2a00d 100644
--- a/tests/PHPUnit/Integration/ReleaseCheckListTest.php
+++ b/tests/PHPUnit/Integration/ReleaseCheckListTest.php
@@ -5,13 +5,24 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
+use Exception;
+use Piwik\Config;
use Piwik\Filesystem;
+use Piwik\Plugin\Manager;
+use RecursiveDirectoryIterator;
+use RecursiveIteratorIterator;
/**
+ * @group Core
* @group ReleaseCheckListTest
*/
-class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
+class ReleaseCheckListTest extends \PHPUnit_Framework_TestCase
{
+ private $globalConfig;
+
public function setUp()
{
$this->globalConfig = _parse_ini_file(PIWIK_PATH_TEST_TO_ROOT . '/config/global.ini.php', true);
@@ -19,9 +30,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
parent::setUp();
}
- /**
- * @group Core
- */
public function test_icoFilesIconsShouldBeInPngFormat()
{
$files = Filesystem::globr(PIWIK_INCLUDE_PATH . '/plugins', '*.ico');
@@ -30,9 +38,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->checkFilesAreInPngFormat($files);
}
- /**
- * @group Core
- */
public function test_pngFilesIconsShouldBeInPngFormat()
{
$files = Filesystem::globr(PIWIK_INCLUDE_PATH . '/plugins', '*.png');
@@ -41,9 +46,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->checkFilesAreInPngFormat($files);
}
- /**
- * @group Core
- */
public function test_gifFilesIconsShouldBeInGifFormat()
{
$files = Filesystem::globr(PIWIK_INCLUDE_PATH . '/plugins', '*.gif');
@@ -52,9 +54,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->checkFilesAreInGifFormat($files);
}
- /**
- * @group Core
- */
public function test_jpgImagesShouldBeInJpgFormat()
{
$files = Filesystem::globr(PIWIK_INCLUDE_PATH . '/plugins', '*.jpg');
@@ -67,9 +66,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->checkFilesAreInJpgFormat($files);
}
- /**
- * @group Core
- */
public function testCheckThatConfigurationValuesAreProductionValues()
{
$this->_checkEqual(array('Debug' => 'always_archive_data_day'), '0');
@@ -106,9 +102,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->assertEquals($valueExpected, $value, "$section -> $optionName was '" . var_export($value, true) . "', expected '" . var_export($valueExpected, true) . "'");
}
- /**
- * @group Core
- */
public function testTemplatesDontContainDebug()
{
$patternFailIfFound = 'dump(';
@@ -123,9 +116,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
}
}
- /**
- * @group Core
- */
public function testCheckThatGivenPluginsAreDisabledByDefault()
{
$pluginsShouldBeDisabled = array(
@@ -141,7 +131,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
/**
* test that the profiler is disabled (mandatory on a production server)
- * @group Core
*/
public function testProfilingDisabledInProduction()
{
@@ -149,9 +138,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->assertTrue(\Piwik\Tracker\Db::isProfilingEnabled() === false, 'SQL profiler should be disabled in production! See Db::$profiling');
}
- /**
- * @group Core
- */
public function testPiwikTrackerDebugIsOff()
{
$this->assertTrue(!isset($GLOBALS['PIWIK_TRACKER_DEBUG']));
@@ -161,7 +147,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
/**
* This tests that all PHP files start with <?php
* This would help detect errors such as a php file starting with spaces
- * @group Core
*/
public function test_phpFilesStartWithRightCharacter()
{
@@ -187,9 +172,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
}
}
- /**
- * @group Core
- */
public function test_directoriesShouldBeChmod755()
{
$pluginsPath = realpath(PIWIK_INCLUDE_PATH . '/plugins/');
@@ -222,17 +204,15 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
* Check that directories in plugins/ folder are specifically either enabled or disabled.
*
* This fails when a new folder is added to plugins/* and forgot to enable or mark as disabled in Manager.php.
- *
- * @group Core
*/
public function test_DirectoriesInPluginsFolder_areKnown()
{
- $pluginsBundledWithPiwik = \Piwik\Config::getInstance()->getFromGlobalConfig('Plugins');
+ $pluginsBundledWithPiwik = Config::getInstance()->getFromGlobalConfig('Plugins');
$pluginsBundledWithPiwik = $pluginsBundledWithPiwik['Plugins'];
$magicPlugins = 42;
$this->assertTrue(count($pluginsBundledWithPiwik) > $magicPlugins);
- $plugins = _glob(\Piwik\Plugin\Manager::getPluginsDirectory() . '*', GLOB_ONLYDIR);
+ $plugins = _glob(Manager::getPluginsDirectory() . '*', GLOB_ONLYDIR);
$count = 1;
foreach($plugins as $pluginPath) {
$pluginName = basename($pluginPath);
@@ -243,7 +223,7 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
// if not added to git, then it is not part of the release checklist.
continue;
}
- $manager = \Piwik\Plugin\Manager::getInstance();
+ $manager = Manager::getInstance();
$isGitSubmodule = $manager->isPluginOfficialAndNotBundledWithCore($pluginName);
$disabled = in_array($pluginName, $manager->getCorePluginsDisabledByDefault()) || $isGitSubmodule;
@@ -258,9 +238,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->assertTrue($count > $magicPlugins);
}
- /**
- * @group Core
- */
public function testEndOfLines()
{
foreach (Filesystem::globr(PIWIK_DOCUMENT_ROOT, '*') as $file) {
@@ -300,9 +277,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
}
}
- /**
- * @group Core
- */
public function testPiwikJavaScript()
{
// check source against Snort rule 8443
@@ -316,9 +290,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->assertTrue(preg_match($pattern, $contents) == 0);
}
- /**
- * @param $files
- */
private function checkFilesAreInPngFormat($files)
{
$this->checkFilesAreInFormat($files, "png");
@@ -333,10 +304,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$this->checkFilesAreInFormat($files, "gif");
}
- /**
- * @param $files
- * @param $format
- */
private function checkFilesAreInFormat($files, $format)
{
$errors = array();
@@ -353,15 +320,12 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
}
if (!empty($errors)) {
- $icons = var_export($errors, true);
$icons = "gimp " . implode(" ", $errors);
$this->fail("$format format failed for following icons $icons \n");
}
}
/**
- * @param $file
- * @param $isIniFile
* @return bool
*/
protected function isSkipPhpFileStartWithPhpBlock($file, $isIniFile)
@@ -378,7 +342,6 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
}
/**
- * @param $pluginPath
* @return bool
*/
protected function isPathAddedToGit($pluginPath)
@@ -387,5 +350,4 @@ class Test_Piwik_ReleaseCheckListTest extends PHPUnit_Framework_TestCase
$addedToGit = (strlen($gitOutput) > 0) && strpos($gitOutput, 'error: pathspec') === false;
return $addedToGit;
}
-
}
diff --git a/tests/PHPUnit/Integration/ReportTest.php b/tests/PHPUnit/Integration/ReportTest.php
index a9a3ef74be..13c404375c 100644
--- a/tests/PHPUnit/Integration/ReportTest.php
+++ b/tests/PHPUnit/Integration/ReportTest.php
@@ -6,6 +6,8 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration;
+
use Piwik\API\Proxy;
use Piwik\Plugin\Report;
use Piwik\Plugins\ExampleReport\Reports\GetExampleReport;
@@ -72,7 +74,7 @@ class GetDisabledReport extends GetBasicReport
/**
* @group Core
*/
-class Plugin_ReportTest extends IntegrationTestCase
+class ReportTest extends IntegrationTestCase
{
/**
* @var Report
@@ -540,4 +542,4 @@ class Plugin_ReportTest extends IntegrationTestCase
{
Translate::reloadLanguage('en');
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/SegmentTest.php b/tests/PHPUnit/Integration/SegmentTest.php
index c4721b2339..889f4a8e04 100644
--- a/tests/PHPUnit/Integration/SegmentTest.php
+++ b/tests/PHPUnit/Integration/SegmentTest.php
@@ -5,12 +5,18 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration;
+
+use Exception;
use Piwik\Access;
use Piwik\Common;
use Piwik\Segment;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
+ * @group Core
* @group SegmentTest
*/
class SegmentTest extends IntegrationTestCase
@@ -91,7 +97,6 @@ class SegmentTest extends IntegrationTestCase
/**
* @dataProvider getCommonTestData
- * @group Core
*/
public function testCommon($segment, $expected)
{
@@ -121,9 +126,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals(32, strlen($segment->getHash()));
}
- /**
- * @group Core
- */
public function testGetSelectQueryNoJoin()
{
$select = '*';
@@ -151,9 +153,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinVisitOnAction()
{
$select = '*';
@@ -182,9 +181,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinActionOnVisit()
{
$select = 'sum(log_visit.visit_total_actions) as nb_actions, max(log_visit.visit_total_actions) as max_actions, sum(log_visit.visit_total_time) as sum_visit_length';
@@ -220,9 +216,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinConversionOnAction()
{
$select = '*';
@@ -251,9 +244,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinActionOnConversion()
{
$select = '*';
@@ -282,9 +272,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinConversionOnVisit()
{
$select = 'log_visit.*';
@@ -319,9 +306,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryConversionOnly()
{
$select = 'log_conversion.*';
@@ -349,9 +333,6 @@ class SegmentTest extends IntegrationTestCase
$this->assertEquals($this->_filterWhitsSpaces($expected), $this->_filterWhitsSpaces($query));
}
- /**
- * @group Core
- */
public function testGetSelectQueryJoinVisitOnConversion()
{
$select = '*';
@@ -383,8 +364,6 @@ class SegmentTest extends IntegrationTestCase
/**
* visit is joined on action, then conversion is joined
* make sure that conversion is joined on action not visit
- *
- * @group Core
*/
public function testGetSelectQueryJoinVisitAndConversionOnAction()
{
@@ -416,8 +395,6 @@ class SegmentTest extends IntegrationTestCase
/**
* join conversion on visit, then actions
* make sure actions are joined before conversions
- *
- * @group Core
*/
public function testGetSelectQueryJoinConversionAndActionOnVisit()
{
@@ -465,14 +442,12 @@ class SegmentTest extends IntegrationTestCase
}
/**
- * @group Core
- *
* @dataProvider getBogusSegments
*/
public function testBogusSegmentThrowsException($segment)
{
try {
- $segment = new Segment($segment, $idSites = array());
+ new Segment($segment, $idSites = array());
} catch (Exception $e) {
return;
}
diff --git a/tests/PHPUnit/Integration/ServeStaticFileTest.php b/tests/PHPUnit/Integration/ServeStaticFileTest.php
index 236bc748c3..31700eebef 100644
--- a/tests/PHPUnit/Integration/ServeStaticFileTest.php
+++ b/tests/PHPUnit/Integration/ServeStaticFileTest.php
@@ -11,10 +11,11 @@
* serverStaticFile.test.php has been created to avoid making too many modifications to /tests/core/Piwik.test.php
*/
-// This is Piwik logo, the static file used in this test suit
+namespace Piwik\Tests\Integration;
-// TODO this is an integration or system test! not a unit test
+// This is Piwik logo, the static file used in this test suit
+use Exception;
use Piwik\ProxyHttp;
use Piwik\SettingsServer;
use Piwik\Tests\Framework\Fixture;
@@ -46,7 +47,7 @@ define("PARTIAL_BYTE_START", 1204);
define("PARTIAL_BYTE_END", 14724);
// If the static file server has not been requested, the standard unit test case class is defined
-class Test_Piwik_ServeStaticFile extends PHPUnit_Framework_TestCase
+class ServeStaticFileTest extends \PHPUnit_Framework_TestCase
{
public function tearDown()
{
@@ -130,7 +131,7 @@ class Test_Piwik_ServeStaticFile extends PHPUnit_Framework_TestCase
// Restoring file mode
chmod(TEST_FILE_LOCATION, 0644);
- $this->assertEquals($responseInfo["http_code"], 505);
+ $this->assertEquals($responseInfo["http_code"], 500);
}
/**
diff --git a/tests/PHPUnit/Integration/SqlTest.php b/tests/PHPUnit/Integration/SqlTest.php
index aed82013c9..c5f673f17e 100755
--- a/tests/PHPUnit/Integration/SqlTest.php
+++ b/tests/PHPUnit/Integration/SqlTest.php
@@ -1,16 +1,20 @@
<?php
-use Piwik\Db;
-use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
-
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
+ */
+
+namespace Piwik\Tests\Integration;
+
+use Piwik\Db;
+use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
+
+/**
* @group Core
*/
-class Core_SqlTest extends IntegrationTestCase
+class SqlTest extends IntegrationTestCase
{
public function setUp()
{
@@ -30,9 +34,6 @@ class Core_SqlTest extends IntegrationTestCase
parent::tearDown();
}
- /**
- * @group Core
- */
public function testOptimize()
{
// make sure optimizing myisam tables works
diff --git a/tests/PHPUnit/Integration/Tracker/ActionTest.php b/tests/PHPUnit/Integration/Tracker/ActionTest.php
index dd3388a56c..1ca87f9678 100644
--- a/tests/PHPUnit/Integration/Tracker/ActionTest.php
+++ b/tests/PHPUnit/Integration/Tracker/ActionTest.php
@@ -5,9 +5,13 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration\Tracker;
+
use Piwik\Access;
use Piwik\Config;
use Piwik\Plugins\SitesManager\API;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tracker\Action;
use Piwik\Tracker\PageUrl;
use Piwik\Tracker\Request;
@@ -16,15 +20,10 @@ use Piwik\Plugin\Manager as PluginManager;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
* @group Core
* @group ActionTest
*/
-class Core_Tracker_ActionTest extends IntegrationTestCase
+class ActionTest extends IntegrationTestCase
{
public function setUp()
{
@@ -123,7 +122,6 @@ class Core_Tracker_ActionTest extends IntegrationTestCase
/**
* No excluded query parameters specified, apart from the standard "session" parameters, always excluded
*
- * @group Core
* @dataProvider getTestUrls
*/
public function testExcludeQueryParametersNone($url, $filteredUrl)
@@ -151,7 +149,6 @@ class Core_Tracker_ActionTest extends IntegrationTestCase
/**
* Test removing hash tag
- * @group Core
* @dataProvider getTestUrlsHashtag
*/
public function testRemoveTrailingHashtag($url, $expectedUrl)
@@ -161,7 +158,6 @@ class Core_Tracker_ActionTest extends IntegrationTestCase
/**
* Testing with some website specific parameters excluded
- * @group Core
* @dataProvider getTestUrls
*/
public function testExcludeQueryParametersSiteExcluded($url, $filteredUrl)
@@ -177,7 +173,6 @@ class Core_Tracker_ActionTest extends IntegrationTestCase
/**
* Testing with some website specific and some global excluded query parameters
- * @group Core
* @dataProvider getTestUrls
*/
public function testExcludeQueryParametersSiteAndGlobalExcluded($url, $filteredUrl)
@@ -367,7 +362,6 @@ class Core_Tracker_ActionTest extends IntegrationTestCase
/**
* @dataProvider getExtractUrlData
- * @group Core
*/
public function testExtractUrlAndActionNameFromRequest($request, $expected)
{
diff --git a/tests/PHPUnit/Integration/Tracker/DbTest.php b/tests/PHPUnit/Integration/Tracker/DbTest.php
index 8bfdd5232f..e55d87d2ef 100644
--- a/tests/PHPUnit/Integration/Tracker/DbTest.php
+++ b/tests/PHPUnit/Integration/Tracker/DbTest.php
@@ -5,9 +5,13 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
+namespace Piwik\Tests\Integration\Tracker;
+
use Piwik\Common;
use Piwik\Db;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
+use Piwik\Tracker;
/**
* Tracker DB test
@@ -15,11 +19,11 @@ use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
* @group Core
* @group TrackerDbTest
*/
-class Core_Tracker_DbTest extends IntegrationTestCase
+class DbTest extends IntegrationTestCase
{
public function test_rowCount_whenUpdating_returnsAllMatchedRowsNotOnlyUpdatedRows()
{
- $db = \Piwik\Tracker::getDatabase();
+ $db = Tracker::getDatabase();
// insert one record
$db->query("INSERT INTO `" . Common::prefixTable('option') . "` VALUES ('rowid', '1', false)");
@@ -39,5 +43,4 @@ class Core_Tracker_DbTest extends IntegrationTestCase
$result = $db->query($sqlUpdate . " WHERE option_name = 'rowid'");
$this->assertSame(1, $db->rowCount($result));
}
-
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/Tracker/Visit2Test.php b/tests/PHPUnit/Integration/Tracker/Visit2Test.php
index 5c191d90ee..3a64c6e54b 100644
--- a/tests/PHPUnit/Integration/Tracker/Visit2Test.php
+++ b/tests/PHPUnit/Integration/Tracker/Visit2Test.php
@@ -6,11 +6,13 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\Tracker;
// Tests Visits and Dimensions behavior which is a lot of logic so not in VisitTest
use Piwik\Plugin\Dimension\VisitDimension;
use Piwik\Tracker\Request;
+use Piwik\Tracker\Visit;
use Piwik\Tracker\Visitor;
use Piwik\Piwik;
use Piwik\EventDispatcher;
@@ -88,7 +90,7 @@ class FakeTrackerVisitDimension4 extends VisitDimension
}
-class FakeTrackerVisit extends \Piwik\Tracker\Visit
+class FakeTrackerVisit extends Visit
{
public function __construct($request)
{
@@ -124,12 +126,10 @@ class FakeTrackerVisit extends \Piwik\Tracker\Visit
protected function insertNewVisit($visit)
{
-
}
protected function updateExistingVisit($valuesToUpdate)
{
-
}
}
@@ -137,9 +137,8 @@ class FakeTrackerVisit extends \Piwik\Tracker\Visit
* @group Core
* @group VisitTest
*/
-class VisitTest extends IntegrationTestCase
+class Visit2Test extends IntegrationTestCase
{
-
public function setUp()
{
parent::setUp();
@@ -157,8 +156,8 @@ class VisitTest extends IntegrationTestCase
public function test_handleNewVisitWithoutConversion_shouldTriggerDimensions()
{
- $request = new \Piwik\Tracker\Request(array());
- $visitor = new \Piwik\Tracker\Visitor($request, '');
+ $request = new Request(array());
+ $visitor = new Visitor($request, '');
$visit = new FakeTrackerVisit($request);
$visit->handleNewVisit($visitor, null, false);
@@ -179,8 +178,8 @@ class VisitTest extends IntegrationTestCase
public function test_handleNewVisitWithConversion_shouldTriggerDimensions()
{
- $request = new \Piwik\Tracker\Request(array());
- $visitor = new \Piwik\Tracker\Visitor($request, '');
+ $request = new Request(array());
+ $visitor = new Visitor($request, '');
$visit = new FakeTrackerVisit($request);
$visit->handleNewVisit($visitor, null, true);
@@ -197,8 +196,8 @@ class VisitTest extends IntegrationTestCase
public function test_handleExistingVisitWithoutConversion_shouldTriggerDimensions()
{
- $request = new \Piwik\Tracker\Request(array());
- $visitor = new \Piwik\Tracker\Visitor($request, '');
+ $request = new Request(array());
+ $visitor = new Visitor($request, '');
$visit = new FakeTrackerVisit($request);
$visit->handleNewVisit($visitor, null, false);
@@ -220,8 +219,8 @@ class VisitTest extends IntegrationTestCase
public function test_handleExistingVisitWithConversion_shouldTriggerDimensions()
{
- $request = new \Piwik\Tracker\Request(array());
- $visitor = new \Piwik\Tracker\Visitor($request, '');
+ $request = new Request(array());
+ $visitor = new Visitor($request, '');
$visit = new FakeTrackerVisit($request);
$visit->handleNewVisit($visitor, null, false);
@@ -236,4 +235,4 @@ class VisitTest extends IntegrationTestCase
$this->assertEquals('converted3', $visitor->getVisitorColumn('custom_dimension_3'));
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/Tracker/VisitTest.php b/tests/PHPUnit/Integration/Tracker/VisitTest.php
index 292b98737d..3a516d1c53 100644
--- a/tests/PHPUnit/Integration/Tracker/VisitTest.php
+++ b/tests/PHPUnit/Integration/Tracker/VisitTest.php
@@ -6,19 +6,21 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\Tracker;
+
use Piwik\Access;
use Piwik\Network\IPUtils;
+use Piwik\Plugin\Manager;
use Piwik\Plugins\SitesManager\API;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tracker\Request;
use Piwik\Tracker\VisitExcluded;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_Tracker_VisitTest
- *
* @group Core
*/
-class Core_Tracker_VisitTest extends IntegrationTestCase
+class VisitTest extends IntegrationTestCase
{
public function setUp()
{
@@ -29,7 +31,7 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
FakeAccess::$superUser = true;
Access::setSingletonInstance($pseudoMockAccess);
- \Piwik\Plugin\Manager::getInstance()->loadPlugins(array('SitesManager'));
+ Manager::getInstance()->loadPlugins(array('SitesManager'));
}
/**
@@ -75,7 +77,6 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
}
/**
- * @group Core
* @dataProvider getExcludedIpTestData
*/
public function testIsVisitorIpExcluded($excludedIp, $tests)
@@ -120,7 +121,6 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
}
/**
- * @group Core
* @dataProvider getExcludedUserAgentTestData
*/
public function testIsVisitorUserAgentExcluded($excludedUserAgent, $tests)
@@ -143,7 +143,6 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
}
/**
- * @group Core
* @group referrerIsKnownSpam
*/
public function testIsVisitor_referrerIsKnownSpam()
@@ -173,7 +172,6 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
}
/**
- * @group Core
* @group IpIsKnownBot
*/
public function testIsVisitor_ipIsKnownBot()
@@ -203,7 +201,6 @@ class Core_Tracker_VisitTest extends IntegrationTestCase
}
/**
- * @group Core
* @group UserAgentIsKnownBot
*/
public function testIsVisitor_userAgentIsKnownBot()
diff --git a/tests/PHPUnit/Integration/TrackerTest.php b/tests/PHPUnit/Integration/TrackerTest.php
index 0da7445964..bc4c99090c 100644
--- a/tests/PHPUnit/Integration/TrackerTest.php
+++ b/tests/PHPUnit/Integration/TrackerTest.php
@@ -5,11 +5,11 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
namespace Piwik\Tests\Integration;
use Piwik\Common;
use Piwik\Db;
-use Piwik\Option;
use Piwik\Tests\Framework\Fixture;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
use Piwik\Tracker;
diff --git a/tests/PHPUnit/Integration/TravisEnvironmentTest.php b/tests/PHPUnit/Integration/TravisEnvironmentTest.php
index 5faf9cbe10..60a3664bc2 100644
--- a/tests/PHPUnit/Integration/TravisEnvironmentTest.php
+++ b/tests/PHPUnit/Integration/TravisEnvironmentTest.php
@@ -1,14 +1,21 @@
<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+namespace Piwik\Tests\Integration;
+
+use Piwik\Db;
use Piwik\Translate;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class TravisEnvironmentTest
- *
* @group Core
*/
-class Core_TravisEnvironmentTest extends IntegrationTestCase
+class TravisEnvironmentTest extends IntegrationTestCase
{
public function testUsageOfCorrectMysqlAdapter()
{
@@ -20,17 +27,16 @@ class Core_TravisEnvironmentTest extends IntegrationTestCase
$this->assertTrue(in_array($mysqlAdapter, array('PDO_MYSQL', 'PDO\MYSQL', 'MYSQLI')));
- $db = Piwik\Db::get();
+ $db = Db::get();
switch ($mysqlAdapter) {
case 'PDO_MYSQL':
case 'PDO\MYSQL':
- $this->assertInstanceOf('\Piwik\Db\Adapter\Pdo\Mysql', $db);
+ $this->assertInstanceOf('Piwik\Db\Adapter\Pdo\Mysql', $db);
break;
case 'MYSQLI':
- $this->assertInstanceOf('\Piwik\Db\Adapter\Mysqli', $db);
+ $this->assertInstanceOf('Piwik\Db\Adapter\Mysqli', $db);
break;
}
-
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/UpdaterTest.php b/tests/PHPUnit/Integration/UpdaterTest.php
index 563de9abfe..c15d6b0a88 100644
--- a/tests/PHPUnit/Integration/UpdaterTest.php
+++ b/tests/PHPUnit/Integration/UpdaterTest.php
@@ -5,15 +5,14 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
-namespace Piwik\Tests\Integration\Core;
+
+namespace Piwik\Tests\Integration;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
use Piwik\Updater;
use Piwik\Tests\Framework\Fixture;
/**
- * Class Core_UpdaterTest
- *
* @group Core
* @group Core_UpdaterTest
*/
@@ -74,4 +73,4 @@ class UpdaterTest extends IntegrationTestCase
throw new \Exception("Failed to force update (nothing to update).");
}
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/ViewDataTable/ManagerTest.php b/tests/PHPUnit/Integration/ViewDataTable/ManagerTest.php
index b6ef41d9f6..cc2d6b97aa 100644
--- a/tests/PHPUnit/Integration/ViewDataTable/ManagerTest.php
+++ b/tests/PHPUnit/Integration/ViewDataTable/ManagerTest.php
@@ -6,18 +6,18 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration\ViewDataTable;
+
use Piwik\Access;
use Piwik\ViewDataTable\Manager as ViewDataTableManager;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_Plugin_SettingsTest
* @group Core
* @group ViewDataTable
*/
-class Core_Plugin_ViewDataTable_ManagerTest extends IntegrationTestCase
+class ManagerTest extends IntegrationTestCase
{
-
public function setUp()
{
parent::setUp();
@@ -103,4 +103,4 @@ class Core_Plugin_ViewDataTable_ManagerTest extends IntegrationTestCase
return array('login' => $login, 'method' => $method, 'params' => $params);
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Integration/WidgetsListTest.php b/tests/PHPUnit/Integration/WidgetsListTest.php
index b5c5739365..cf1c778e84 100644
--- a/tests/PHPUnit/Integration/WidgetsListTest.php
+++ b/tests/PHPUnit/Integration/WidgetsListTest.php
@@ -6,22 +6,21 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+namespace Piwik\Tests\Integration;
+
use Piwik\Access;
use Piwik\Plugins\Goals\API;
+use Piwik\Tests\Framework\Mock\FakeAccess;
+use Piwik\Translate;
use Piwik\WidgetsList;
use Piwik\Tests\Framework\Fixture;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
/**
- * Class Core_WidgetsListTest
- *
* @group Core
*/
class Core_WidgetsListTest extends IntegrationTestCase
{
- /**
- * @group Core
- */
public function testGet()
{
// setup the access layer
@@ -42,7 +41,7 @@ class Core_WidgetsListTest extends IntegrationTestCase
'VisitsSummary_VisitsSummary' => 6,
'Live!' => 4,
'General_Visitors' => 12,
- 'UserSettings_VisitorSettings' => 11,
+ 'UserSettings_VisitorSettings' => 6,
'General_Actions' => 10,
'Events_Events' => 3,
'Actions_SubmenuSitesearch' => 5,
@@ -62,9 +61,6 @@ class Core_WidgetsListTest extends IntegrationTestCase
}
}
- /**
- * @group Core
- */
public function testGetWithGoals()
{
// setup the access layer
@@ -94,9 +90,6 @@ class Core_WidgetsListTest extends IntegrationTestCase
}
}
- /**
- * @group Core
- */
public function testGetWithGoalsAndEcommerce()
{
// setup the access layer
@@ -127,9 +120,6 @@ class Core_WidgetsListTest extends IntegrationTestCase
}
}
- /**
- * @group Core
- */
public function testRemove()
{
// setup the access layer
@@ -167,9 +157,6 @@ class Core_WidgetsListTest extends IntegrationTestCase
WidgetsList::_reset();
}
- /**
- * @group Core
- */
public function testIsDefined()
{
// setup the access layer
@@ -177,7 +164,7 @@ class Core_WidgetsListTest extends IntegrationTestCase
FakeAccess::$superUser = true;
Access::setSingletonInstance($pseudoMockAccess);
- \Piwik\Translate::loadEnglishTranslation();
+ Translate::loadEnglishTranslation();
Fixture::createWebsite('2009-01-04 00:11:42', true);
diff --git a/tests/PHPUnit/System/AnnotationsTest.php b/tests/PHPUnit/System/AnnotationsTest.php
index 722b104978..49a41e2c2e 100755
--- a/tests/PHPUnit/System/AnnotationsTest.php
+++ b/tests/PHPUnit/System/AnnotationsTest.php
@@ -10,9 +10,9 @@ namespace Piwik\Tests\System;
use Piwik\Access;
use Piwik\API\Request;
use Piwik\Plugins\Annotations\API;
+use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
use Piwik\Tests\Fixtures\TwoSitesWithAnnotations;
-use FakeAccess;
use Exception;
/**
diff --git a/tests/PHPUnit/System/AutoSuggestAPITest.php b/tests/PHPUnit/System/AutoSuggestAPITest.php
index 9f61982e66..2b08d2ef70 100644
--- a/tests/PHPUnit/System/AutoSuggestAPITest.php
+++ b/tests/PHPUnit/System/AutoSuggestAPITest.php
@@ -13,6 +13,7 @@ use Piwik\Date;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
use Piwik\Tests\Fixtures\ManyVisitsWithGeoIP;
use Piwik\Tests\Framework\Fixture;
+use Piwik\Tracker\Cache;
/**
* testing a the auto suggest API for all known segments
@@ -32,6 +33,9 @@ class AutoSuggestAPITest extends SystemTestCase
*/
public function testApi($api, $params)
{
+ // Refresh cache for CustomVariables\Model
+ Cache::clearCacheGeneral();
+
if(self::isPhpVersion53() && self::isTravisCI()) {
$this->markTestSkipped("Skipping this test as it seg faults on php 5.3 (bug triggered on travis)");
}
@@ -115,8 +119,9 @@ class AutoSuggestAPITest extends SystemTestCase
public function getAnotherApiForTesting()
{
+ $segments = self::getSegmentsMetadata(self::$fixture->idSite);
+
$apiForTesting = array();
- $segments = \Piwik\Plugins\API\API::getInstance()->getSegmentsMetadata(self::$fixture->idSite);
foreach ($segments as $segment) {
if(self::isTravisCI() && $segment['segment'] == 'deviceType') {
// test started failing after bc19503 and I cannot understand why
@@ -139,14 +144,27 @@ class AutoSuggestAPITest extends SystemTestCase
{
// Check that only a few haven't been tested specifically (these are all custom variables slots since we only test slot 1, 2, 5 (see the fixture) and example dimension slots)
$maximumSegmentsToSkip = 16;
- $this->assertTrue(count(self::$skipped) <= $maximumSegmentsToSkip, 'SKIPPED ' . count(self::$skipped) . ' segments --> some segments had no "auto-suggested values"
+ $this->assertLessThan($maximumSegmentsToSkip, count(self::$skipped) , 'SKIPPED ' . count(self::$skipped) . ' segments --> some segments had no "auto-suggested values"
but we should try and test the autosuggest for all new segments. Segments skipped were: ' . implode(', ', self::$skipped));
// and check that most others have been tested
- $minimumSegmentsToTest = 43;
+ $minimumSegmentsToTest = 46;
$message = 'PROCESSED ' . self::$processed . ' segments --> it seems some segments "auto-suggested values" haven\'t been tested as we were expecting. ';
- $this->assertTrue(self::$processed >= $minimumSegmentsToTest, $message);
+ $this->assertGreaterThan($minimumSegmentsToTest, self::$processed, $message);
}
+
+ public static function getSegmentsMetadata($idSite)
+ {
+ // Refresh cache for CustomVariables\Model
+ Cache::clearCacheGeneral();
+
+ \Piwik\Plugins\CustomVariables\Model::install();
+
+ // Segment matching NONE
+ $segments = \Piwik\Plugins\API\API::getInstance()->getSegmentsMetadata($idSite);
+ return $segments;
+ }
+
}
AutoSuggestAPITest::$fixture = new ManyVisitsWithGeoIP();
diff --git a/tests/PHPUnit/System/BlobReportLimitingTest.php b/tests/PHPUnit/System/BlobReportLimitingTest.php
index f54a6aaafd..8048c31de5 100755
--- a/tests/PHPUnit/System/BlobReportLimitingTest.php
+++ b/tests/PHPUnit/System/BlobReportLimitingTest.php
@@ -37,8 +37,8 @@ class BlobReportLimitingTest extends SystemTestCase
'CustomVariables.getCustomVariables',
'Referrers.getReferrerType', 'Referrers.getKeywords', 'Referrers.getSearchEngines',
'Referrers.getWebsites', 'Referrers.getAll', /* TODO 'Referrers.getCampaigns', */
- 'UserSettings.getResolution', 'UserSettings.getConfiguration', 'UserSettings.getOS',
- 'UserSettings.getBrowserVersion',
+ 'UserSettings.getResolution', 'UserSettings.getConfiguration', 'DevicesDetection.getOsVersions',
+ 'DevicesDetection.getBrowserVersions',
'UserCountry.getRegion', 'UserCountry.getCity',
);
diff --git a/tests/PHPUnit/System/CliMultiTest.php b/tests/PHPUnit/System/CliMultiTest.php
index 0802a7cc67..8797eeec7e 100644
--- a/tests/PHPUnit/System/CliMultiTest.php
+++ b/tests/PHPUnit/System/CliMultiTest.php
@@ -16,6 +16,7 @@ use Piwik\Tests\Framework\Fixture;
*
* @group Core
* @group Core_CliMultiTest
+ * @group CliMulti
*/
class Core_CliMultiTest extends SystemTestCase
{
diff --git a/tests/PHPUnit/System/FrontControllerTest.php b/tests/PHPUnit/System/FrontControllerTest.php
index 13ced79f6f..e0eb62df7d 100644
--- a/tests/PHPUnit/System/FrontControllerTest.php
+++ b/tests/PHPUnit/System/FrontControllerTest.php
@@ -8,7 +8,7 @@
namespace Piwik\Tests\System;
-use Piwik\Tests\Fixture;
+use Piwik\Tests\Framework\Fixture;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
/**
diff --git a/tests/PHPUnit/System/OneVisitorNoKeywordSpecifiedTest.php b/tests/PHPUnit/System/OneVisitorNoKeywordSpecifiedTest.php
index 0e2f56aa4d..bc2d209076 100755
--- a/tests/PHPUnit/System/OneVisitorNoKeywordSpecifiedTest.php
+++ b/tests/PHPUnit/System/OneVisitorNoKeywordSpecifiedTest.php
@@ -7,6 +7,7 @@
*/
namespace Piwik\Tests\System;
+use Piwik\Tests\Framework\Fixture;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
use Piwik\Tests\Fixtures\TwoVisitsNoKeywordWithBot;
@@ -34,11 +35,7 @@ class OneVisitorNoKeywordSpecifiedTest extends SystemTestCase
public function getApiForTesting()
{
$apiToCall = array('Referrers.getKeywords');
-
- // test started failing after bc19503 and I cannot understand why
- if(!self::isTravisCI()) {
- $apiToCall[] = 'Live.getLastVisitsDetails';
- }
+ $apiToCall[] = 'Live.getLastVisitsDetails';
return array(
array($apiToCall, array('idSite' => self::$fixture->idSite,
diff --git a/tests/PHPUnit/System/OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTestsTest.php b/tests/PHPUnit/System/OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTestsTest.php
index fe91a25fb4..4a9e4d2ff7 100755
--- a/tests/PHPUnit/System/OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTestsTest.php
+++ b/tests/PHPUnit/System/OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTestsTest.php
@@ -109,7 +109,7 @@ class OneVisitorOneWebsiteSeveralDaysDateRangeArchivingTest extends SystemTestCa
$tests = array(
// TODO Implement fix, then remove the +3 below
'archive_blob_2010_12' => ( ($expectedActionsBlobs+3) /*Actions*/
- + 7 /* UserSettings */
+ + 5 /* UserSettings */
+ 2 /* VisitTime */) * 3,
/**
diff --git a/tests/PHPUnit/System/OneVisitorTwoVisitsWithCookieSupportTest.php b/tests/PHPUnit/System/OneVisitorTwoVisitsWithCookieSupportTest.php
index 82ce3d5e23..1122a59c90 100755
--- a/tests/PHPUnit/System/OneVisitorTwoVisitsWithCookieSupportTest.php
+++ b/tests/PHPUnit/System/OneVisitorTwoVisitsWithCookieSupportTest.php
@@ -33,7 +33,7 @@ class OneVisitorTwoVisitsWithCookieSupportTest extends SystemTestCase
public function getApiForTesting()
{
$apiToCall = array(
- 'VisitTime', 'VisitsSummary', 'VisitorInterest', 'VisitFrequency', 'UserSettings',
+ 'VisitTime', 'VisitsSummary', 'VisitorInterest', 'VisitFrequency', 'UserSettings', 'DevicesDetection',
'UserCountry', 'Referrers', 'Provider', 'Goals', 'CustomVariables', 'CoreAdminHome',
'Actions', 'Live.getLastVisitsDetails');
diff --git a/tests/PHPUnit/System/RowEvolutionTest.php b/tests/PHPUnit/System/RowEvolutionTest.php
index 0fba18234d..efdf021061 100755
--- a/tests/PHPUnit/System/RowEvolutionTest.php
+++ b/tests/PHPUnit/System/RowEvolutionTest.php
@@ -163,8 +163,8 @@ class RowEvolutionTest extends SystemTestCase
'otherRequestParameters' => array(
'date' => '2010-03-01,2010-03-06',
'period' => 'month',
- 'apiModule' => 'UserSettings',
- 'apiAction' => 'getBrowser',
+ 'apiModule' => 'DevicesDetection',
+ 'apiAction' => 'getBrowsers',
'label' => 'Firefox,Chrome,Opera'
)
));
@@ -178,8 +178,8 @@ class RowEvolutionTest extends SystemTestCase
'otherRequestParameters' => array(
'date' => '2010-03-01,2010-03-06',
'period' => 'month',
- 'apiModule' => 'UserSettings',
- 'apiAction' => 'getMobileVsDesktop',
+ 'apiModule' => 'DevicesDetection',
+ 'apiAction' => 'getType',
'label' => 'Desktop,Mobile'
)
));
diff --git a/tests/PHPUnit/System/TrackerTest.php b/tests/PHPUnit/System/TrackerTest.php
new file mode 100755
index 0000000000..84f5db3aac
--- /dev/null
+++ b/tests/PHPUnit/System/TrackerTest.php
@@ -0,0 +1,97 @@
+<?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+namespace Piwik\Tests\System;
+
+use Piwik\Tests\Framework\Fixture;
+use Piwik\Tests\Framework\TestCase\SystemTestCase;
+
+/**
+ * @group TrackerTest
+ * @group Plugins
+ */
+class TrackerTest extends SystemTestCase
+{
+ public static $fixture = null;
+
+ /**
+ * @var \PiwikTracker
+ */
+ private $tracker;
+
+ public function setUp()
+ {
+ parent::setUp();
+
+ $idSite = 1;
+ $dateTime = '2014-01-01 00:00:01';
+
+ if (!Fixture::siteCreated($idSite)) {
+ Fixture::createWebsite($dateTime);
+ }
+
+ $this->tracker = Fixture::getTracker($idSite, $dateTime, $defaultInit = true);
+ }
+
+ public function test_response_ShouldContainAnImage()
+ {
+ $response = $this->tracker->doTrackPageView('Test');
+
+ Fixture::checkResponse($response);
+ $this->assertNotEmpty($response);
+ }
+
+ public function test_response_ShouldBeEmpty_IfImageIsDisabled()
+ {
+ $this->tracker->disableSendImageResponse();
+
+ $response = $this->tracker->doTrackPageView('Test');
+
+ $this->assertSame('', $response);
+ }
+
+ public function test_response_ShouldSend200ResponseCode_IfImageIsEnabled()
+ {
+ $url = $this->tracker->getUrlTrackPageView('Test');
+
+ $this->assertResponseCode(200, $url);
+ }
+
+ public function test_response_ShouldSend204ResponseCode_IfImageIsDisabled()
+ {
+ $url = $this->tracker->getUrlTrackPageView('Test');
+ $url .= '&send_image=0';
+
+ $this->assertResponseCode(204, $url);
+ }
+
+ public function test_response_ShouldSend400ResponseCode_IfSiteIdIsInvalid()
+ {
+ $url = $this->tracker->getUrlTrackPageView('Test');
+ $url .= '&idsite=100';
+
+ $this->assertResponseCode(400, $url);
+ }
+
+ public function test_response_ShouldSend400ResponseCode_IfSiteIdIsZero()
+ {
+ $url = $this->tracker->getUrlTrackPageView('Test');
+ $url .= '&idsite=0';
+
+ $this->assertResponseCode(400, $url);
+ }
+
+ public function test_response_ShouldSend400ResponseCode_IfInvalidRequestParameterIsGiven()
+ {
+ $url = $this->tracker->getUrlTrackPageView('Test');
+ $url .= '&cid=' . str_pad('1', 16, '1');
+
+ $this->assertResponseCode(200, $url);
+ $this->assertResponseCode(400, $url . '1'); // has to be 16 char, but is 17 now
+ }
+
+}
diff --git a/tests/PHPUnit/System/TwoVisitsWithCustomVariablesSegmentMatchNONETest.php b/tests/PHPUnit/System/TwoVisitsWithCustomVariablesSegmentMatchNONETest.php
index 2d9c155fee..9cbc606a1f 100755
--- a/tests/PHPUnit/System/TwoVisitsWithCustomVariablesSegmentMatchNONETest.php
+++ b/tests/PHPUnit/System/TwoVisitsWithCustomVariablesSegmentMatchNONETest.php
@@ -7,7 +7,6 @@
*/
namespace Piwik\Tests\System;
-use Piwik\Plugins\API\API;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
use Piwik\Tests\Fixtures\TwoVisitsWithCustomVariables;
use Piwik\Tests\Framework\Fixture;
@@ -48,11 +47,10 @@ class TwoVisitsWithCustomVariablesSegmentMatchNONETest extends SystemTestCase
public function getSegmentToTest()
{
- // Segment matching NONE
- $segments = API::getInstance()->getSegmentsMetadata(self::$fixture->idSite);
+ $segments = AutoSuggestAPITest::getSegmentsMetadata(self::$fixture->idSite);
$minimumExpectedSegmentsCount = 55; // as of Piwik 1.12
- $this->assertTrue( count($segments) >= $minimumExpectedSegmentsCount);
+ $this->assertGreaterThan($minimumExpectedSegmentsCount, count($segments));
$segmentExpression = array();
$seenVisitorId = false;
@@ -87,6 +85,7 @@ class TwoVisitsWithCustomVariablesSegmentMatchNONETest extends SystemTestCase
{
return 'twoVisitsWithCustomVariables_segmentMatchNONE';
}
+
}
TwoVisitsWithCustomVariablesSegmentMatchNONETest::$fixture = new TwoVisitsWithCustomVariables();
diff --git a/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_day.xml
index 9a6324b1bb..0ef089e70c 100644
--- a/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_day.xml
@@ -77,7 +77,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>webkit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
@@ -174,7 +173,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Linux</operatingSystem>
<operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -271,7 +269,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Linux</operatingSystem>
<operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>webkit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
@@ -368,7 +365,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Linux</operatingSystem>
<operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>webkit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
@@ -465,7 +461,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows 7</operatingSystem>
<operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>ie</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
@@ -562,7 +557,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Linux</operatingSystem>
<operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -659,7 +653,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Linux</operatingSystem>
<operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>webkit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
@@ -756,7 +749,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Android</operatingSystem>
<operatingSystemCode>AND</operatingSystemCode>
- <operatingSystemShortName>Android</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -853,7 +845,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
diff --git a/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_year.xml b/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_year.xml
index 17fe7bfe25..7bc0f5a098 100644
--- a/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_year.xml
+++ b/tests/PHPUnit/System/expected/test_ArchiveCronTest_preArchivedSegment_noOptions__Live.getLastVisitsDetails_year.xml
@@ -186,7 +186,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Unknown</operatingSystem>
<operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -301,7 +300,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>ie</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
@@ -411,7 +409,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -535,7 +532,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -648,7 +644,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -749,7 +744,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Bot</operatingSystem>
<operatingSystemCode>BOT</operatingSystemCode>
- <operatingSystemShortName>BOT</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -856,7 +850,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows 7</operatingSystem>
<operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>ie</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
@@ -947,7 +940,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Unknown</operatingSystem>
<operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -1054,7 +1046,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Android</operatingSystem>
<operatingSystemCode>AND</operatingSystemCode>
- <operatingSystemShortName>Android</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
@@ -1155,7 +1146,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Mac OS</operatingSystem>
<operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
diff --git a/tests/PHPUnit/System/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_range.xml b/tests/PHPUnit/System/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_range.xml
index 188f7cb3c2..121915e8e4 100644
--- a/tests/PHPUnit/System/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_range.xml
+++ b/tests/PHPUnit/System/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_range.xml
@@ -56,14 +56,6 @@
<referrerUrl>http://google.com/?q=Wikileaks FTW</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
<referrerSearchEngineIcon>plugins/Referrers/images/searchEngines/google.com.png</referrerSearchEngineIcon>
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Safari </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -79,8 +71,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -204,14 +204,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -227,8 +219,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -329,14 +329,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -352,8 +344,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -468,14 +468,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -491,8 +483,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -593,14 +593,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -616,8 +608,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -749,14 +749,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -772,8 +764,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -874,14 +874,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -897,8 +889,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1013,14 +1013,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1036,8 +1028,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1138,14 +1138,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1161,8 +1153,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1294,14 +1294,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1317,8 +1309,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1419,14 +1419,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1442,8 +1434,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1558,14 +1558,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1581,8 +1573,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1697,14 +1697,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1720,8 +1712,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>1</events>
<continent>Asia</continent>
<continentCode>asi</continentCode>
@@ -1814,14 +1814,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1837,8 +1829,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1939,14 +1939,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1962,8 +1954,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<continent>Asia</continent>
<continentCode>asi</continentCode>
@@ -2095,14 +2095,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2118,8 +2110,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -2251,14 +2251,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2274,8 +2266,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -2368,14 +2368,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2391,8 +2383,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -2493,14 +2493,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2516,8 +2508,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -2632,14 +2632,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2655,8 +2647,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -2771,14 +2771,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2794,8 +2786,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -2910,14 +2910,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -2933,8 +2925,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>1</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -3041,14 +3041,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3064,8 +3056,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Asia</continent>
<continentCode>asi</continentCode>
@@ -3166,14 +3166,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3189,8 +3181,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -3291,14 +3291,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3314,8 +3306,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -3416,14 +3416,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3439,8 +3431,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -3541,14 +3541,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3564,8 +3556,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Asia</continent>
<continentCode>asi</continentCode>
@@ -3697,14 +3697,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3720,8 +3712,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -3853,14 +3853,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -3876,8 +3868,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -4009,14 +4009,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4032,8 +4024,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>1</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -4157,14 +4157,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4180,8 +4172,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -4282,14 +4282,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4305,8 +4297,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -4407,14 +4407,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4430,8 +4422,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -4532,14 +4532,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4555,8 +4547,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -4657,14 +4657,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -4680,8 +4672,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_day.xml
index a0cd8d2485..9317026f72 100644
--- a/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_day.xml
@@ -46,8 +46,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -71,14 +79,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -148,8 +148,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -173,14 +181,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -318,8 +318,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>6</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -343,14 +351,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -420,8 +420,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -445,14 +453,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -757,8 +757,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>13</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -782,14 +790,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -859,8 +859,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -884,14 +892,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -957,8 +957,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -982,14 +990,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1123,8 +1123,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>6</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1148,14 +1156,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1221,8 +1221,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1246,14 +1254,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1554,8 +1554,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>13</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1579,14 +1587,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_month.xml
index a0cd8d2485..9317026f72 100644
--- a/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_CustomEvents__Live.getLastVisitsDetails_month.xml
@@ -46,8 +46,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -71,14 +79,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -148,8 +148,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -173,14 +181,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -318,8 +318,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>6</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -343,14 +351,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -420,8 +420,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -445,14 +453,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -757,8 +757,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>13</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -782,14 +790,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -859,8 +859,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -884,14 +892,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -957,8 +957,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -982,14 +990,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1123,8 +1123,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>6</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1148,14 +1156,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1221,8 +1221,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1246,14 +1254,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1554,8 +1554,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>13</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1579,14 +1587,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml
index 77308fd9e7..8723d1a05f 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml
@@ -14,27 +14,39 @@
</row>
<row>
<label>Chrome</label>
- <nb_visits>10</nb_visits>
- <nb_actions>13</nb_actions>
- <max_actions>3</max_actions>
- <sum_visit_length>305</sum_visit_length>
- <bounce_count>8</bounce_count>
- <nb_visits_converted>9</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>10</sum_daily_nb_uniq_visitors>
+ <nb_visits>5</nb_visits>
+ <nb_actions>5</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>5</bounce_count>
+ <nb_visits_converted>5</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/CH.gif</logo>
</row>
<row>
- <label>Unknown</label>
- <nb_visits>7</nb_visits>
- <nb_actions>7</nb_actions>
+ <label>Epiphany</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>5</nb_actions>
<max_actions>1</max_actions>
<sum_visit_length>0</sum_visit_length>
- <bounce_count>7</bounce_count>
- <nb_visits_converted>6</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors>
+ <bounce_count>5</bounce_count>
+ <nb_visits_converted>5</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
+ <logo>plugins/UserSettings/images/browsers/EP.gif</logo>
+ </row>
+ <row>
+ <label>RockMelt</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>8</nb_actions>
+ <max_actions>3</max_actions>
+ <sum_visit_length>305</sum_visit_length>
+ <bounce_count>3</bounce_count>
+ <nb_visits_converted>4</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
</row>
<row>
<label>Android Browser</label>
@@ -60,4 +72,16 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
</row>
+ <row>
+ <label>Unknown</label>
+ <nb_visits>2</nb_visits>
+ <nb_actions>2</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
+ </row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml
new file mode 100644
index 0000000000..8723d1a05f
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Internet Explorer</label>
+ <nb_visits>6</nb_visits>
+ <nb_actions>6</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>6</bounce_count>
+ <nb_visits_converted>6</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/IE.gif</logo>
+ </row>
+ <row>
+ <label>Chrome</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>5</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>5</bounce_count>
+ <nb_visits_converted>5</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
+ </row>
+ <row>
+ <label>Epiphany</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>5</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>5</bounce_count>
+ <nb_visits_converted>5</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/EP.gif</logo>
+ </row>
+ <row>
+ <label>RockMelt</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>8</nb_actions>
+ <max_actions>3</max_actions>
+ <sum_visit_length>305</sum_visit_length>
+ <bounce_count>3</bounce_count>
+ <nb_visits_converted>4</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
+ </row>
+ <row>
+ <label>Android Browser</label>
+ <nb_visits>2</nb_visits>
+ <nb_actions>2</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/AN.gif</logo>
+ </row>
+ <row>
+ <label>Firefox</label>
+ <nb_visits>2</nb_visits>
+ <nb_actions>2</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/FF.gif</logo>
+ </row>
+ <row>
+ <label>Unknown</label>
+ <nb_visits>2</nb_visits>
+ <nb_actions>2</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>2</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml
index 276e820253..0a059a62d6 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml
@@ -36,4 +36,39 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
</row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
+ </row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml
index cdcfa194b1..dd6812feea 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml
@@ -62,8 +62,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 8.1</operatingSystem>
+ <operatingSystemCode>W81</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/W81.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 33.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>33.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -87,14 +95,6 @@
<location>Raleigh, North Carolina, United States</location>
<latitude>35.771999</latitude>
<longitude>-78.639000</longitude>
- <operatingSystem>Windows 8.1</operatingSystem>
- <operatingSystemCode>W81</operatingSystemCode>
- <operatingSystemShortName>W81</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/W81.gif</operatingSystemIcon>
- <browserName>Chrome 33.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>33.0</browserVersion>
<screenType>wide</screenType>
<resolution>1366x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -200,8 +200,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 8.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>8.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -225,14 +233,6 @@
<location>Lake Forest, California, United States</location>
<latitude>33.645000</latitude>
<longitude>-117.679001</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 8.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>8.0</browserVersion>
<screenType>wide</screenType>
<resolution>1536x864</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -313,8 +313,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 34.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>34.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -338,14 +346,6 @@
<location>Germany</location>
<latitude>51</latitude>
<longitude>9</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 34.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>34.0</browserVersion>
<screenType>wide</screenType>
<resolution>1920x1200</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -459,8 +459,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari 7.0</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion>7.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -484,14 +492,6 @@
<location>United States</location>
<latitude>38</latitude>
<longitude>-97</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>Safari 7.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion>7.0</browserVersion>
<screenType>wide</screenType>
<resolution>2880x1800</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -574,8 +574,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 33.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>33.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -599,14 +607,6 @@
<location>Maaseik, Limburg, Belgium</location>
<latitude>51.099998</latitude>
<longitude>5.800000</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 33.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>33.0</browserVersion>
<screenType>wide</screenType>
<resolution>1920x1080</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -700,8 +700,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 33.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>33.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -725,14 +733,6 @@
<location>San Francisco, California, United States</location>
<latitude>37.792000</latitude>
<longitude>-122.408997</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>Chrome 33.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>33.0</browserVersion>
<screenType>wide</screenType>
<resolution>1360x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -833,8 +833,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari 7.0</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion>7.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -858,14 +866,6 @@
<location>Nihon'odori, Kanagawa, Japan</location>
<latitude>35.450001</latitude>
<longitude>139.649994</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>Safari 7.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion>7.0</browserVersion>
<screenType>wide</screenType>
<resolution>2560x1440</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -955,8 +955,16 @@
</row>
</customVariables>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Android</operatingSystem>
+ <operatingSystemCode>AND</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 27.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>27.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -980,14 +988,6 @@
<location>Weilerswist, Nordrhein-Westfalen, Germany</location>
<latitude>50.766998</latitude>
<longitude>6.833000</longitude>
- <operatingSystem>Android</operatingSystem>
- <operatingSystemCode>AND</operatingSystemCode>
- <operatingSystemShortName>Android</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
- <browserName>Firefox 27.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>27.0</browserVersion>
<screenType>mobile</screenType>
<resolution>360x640</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/mobile.gif</screenTypeIcon>
@@ -1069,8 +1069,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 27.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>27.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1094,14 +1102,6 @@
<location>Mainz, Rheinland-Pfalz, Germany</location>
<latitude>50</latitude>
<longitude>8.271000</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Firefox 27.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>27.0</browserVersion>
<screenType>wide</screenType>
<resolution>2560x1440</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -1238,8 +1238,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 8</operatingSystem>
+ <operatingSystemCode>WI8</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI8.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 27.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>27.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1263,14 +1271,6 @@
<location>Moscow, Moscow City, Russian Federation</location>
<latitude>55.751999</latitude>
<longitude>37.616001</longitude>
- <operatingSystem>Windows 8</operatingSystem>
- <operatingSystemCode>WI8</operatingSystemCode>
- <operatingSystemShortName>Win 8</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI8.gif</operatingSystemIcon>
- <browserName>Firefox 27.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>27.0</browserVersion>
<screenType>wide</screenType>
<resolution>1920x1080</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -1356,8 +1356,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 33.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>33.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1381,14 +1389,6 @@
<location>Esentepe, Rize, Turkey</location>
<latitude>40.979000</latitude>
<longitude>40.415001</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 33.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>33.0</browserVersion>
<screenType>wide</screenType>
<resolution>1366x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -1482,8 +1482,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Blink</browserFamily>
<browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription>
+ <browser>Chrome 33.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>33.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1507,14 +1515,6 @@
<location>Maaseik, Limburg, Belgium</location>
<latitude>51.099998</latitude>
<longitude>5.800000</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 33.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>33.0</browserVersion>
<screenType>wide</screenType>
<resolution>1920x1080</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -1766,8 +1766,16 @@
<customVariables>
</customVariables>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1791,14 +1799,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -1882,8 +1882,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 6.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>6.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -1907,14 +1915,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Internet Explorer 6.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>6.0</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1999,8 +1999,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Chrome 11.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>11.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2024,14 +2032,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Chrome 11.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>11.0</browserVersion>
<screenType>wide</screenType>
<resolution>1280x800</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/wide.gif</screenTypeIcon>
@@ -2132,8 +2132,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>RockMelt 0.9</browser>
+ <browserName>RockMelt</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>RM</browserCode>
+ <browserVersion>0.9</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2157,14 +2165,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>RockMelt 0.9</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>RM</browserCode>
- <browserVersion>0.9</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2257,8 +2257,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>RockMelt 0.9</browser>
+ <browserName>RockMelt</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>RM</browserCode>
+ <browserVersion>0.9</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2282,14 +2290,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>RockMelt 0.9</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>RM</browserCode>
- <browserVersion>0.9</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2389,8 +2389,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>RockMelt 0.9</browser>
+ <browserName>RockMelt</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>RM</browserCode>
+ <browserVersion>0.9</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2414,14 +2422,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>RockMelt 0.9</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>RM</browserCode>
- <browserVersion>0.9</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2497,8 +2497,16 @@
</row>
</customVariables>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Bot</operatingSystem>
+ <operatingSystemCode>BOT</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2522,14 +2530,6 @@
<location>Ashburn, Virginia, United States</location>
<latitude>39.043999</latitude>
<longitude>-77.487999</longitude>
- <operatingSystem>Bot</operatingSystem>
- <operatingSystemCode>BOT</operatingSystemCode>
- <operatingSystemShortName>BOT</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2605,8 +2605,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 9.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>9.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2630,14 +2638,6 @@
<location>Ashburn, Virginia, United States</location>
<latitude>39.043999</latitude>
<longitude>-77.487999</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 9.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>9.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2703,8 +2703,16 @@
</row>
</customVariables>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2728,14 +2736,6 @@
<location>Australia</location>
<latitude>-27</latitude>
<longitude>133</longitude>
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2811,8 +2811,16 @@
</row>
</customVariables>
<deviceType>Smartphone</deviceType>
+ <operatingSystem>Android</operatingSystem>
+ <operatingSystemCode>AND</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Android Browser</browser>
+ <browserName>Android Browser</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/AN.gif</browserIcon>
+ <browserCode>AN</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2836,14 +2844,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Android</operatingSystem>
- <operatingSystemCode>AND</operatingSystemCode>
- <operatingSystemShortName>Android</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
- <browserName>Android Browser </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/AN.gif</browserIcon>
- <browserCode>AN</browserCode>
- <browserVersion />
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -2919,8 +2919,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>RockMelt 0.9</browser>
+ <browserName>RockMelt</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>RM</browserCode>
+ <browserVersion>0.9</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -2944,14 +2952,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>RockMelt 0.9</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>RM</browserCode>
- <browserVersion>0.9</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3023,8 +3023,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Chrome 20.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>20.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3048,14 +3056,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 20.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>20.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3127,8 +3127,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Epiphany 2.30</browser>
+ <browserName>Epiphany</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
+ <browserCode>EP</browserCode>
+ <browserVersion>2.30</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3152,14 +3160,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Epiphany 2.30</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
- <browserCode>EP</browserCode>
- <browserVersion>2.30</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3231,8 +3231,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Chrome 20.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>20.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3256,14 +3264,6 @@
<location>Brazil</location>
<latitude>-10</latitude>
<longitude>-55</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Chrome 20.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>20.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3335,8 +3335,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Epiphany 2.30</browser>
+ <browserName>Epiphany</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
+ <browserCode>EP</browserCode>
+ <browserVersion>2.30</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3360,14 +3368,6 @@
<location>Brazil</location>
<latitude>-10</latitude>
<longitude>-55</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Epiphany 2.30</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
- <browserCode>EP</browserCode>
- <browserVersion>2.30</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3439,8 +3439,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 9.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>9.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3464,14 +3472,6 @@
<location>Brazil</location>
<latitude>-10</latitude>
<longitude>-55</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 9.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>9.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3543,8 +3543,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Epiphany 2.30</browser>
+ <browserName>Epiphany</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
+ <browserCode>EP</browserCode>
+ <browserVersion>2.30</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3568,14 +3576,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Epiphany 2.30</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
- <browserCode>EP</browserCode>
- <browserVersion>2.30</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3647,8 +3647,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 9.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>9.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3672,14 +3680,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 9.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>9.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3751,8 +3751,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 9.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>9.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3776,14 +3784,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 9.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>9.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3855,8 +3855,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Chrome 19.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>19.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3880,14 +3888,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>Chrome 19.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>19.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -3959,8 +3959,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 6.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>6.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -3984,14 +3992,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Firefox 6.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>6.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4063,8 +4063,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Chrome 19.0</browser>
+ <browserName>Chrome</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>CH</browserCode>
+ <browserVersion>19.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4088,14 +4096,6 @@
<location>Ashburn, Virginia, United States</location>
<latitude>39.043999</latitude>
<longitude>-77.487999</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Chrome 19.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
- <browserCode>CH</browserCode>
- <browserVersion>19.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4167,8 +4167,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Epiphany 2.30</browser>
+ <browserName>Epiphany</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
+ <browserCode>EP</browserCode>
+ <browserVersion>2.30</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4192,14 +4200,6 @@
<location>Ashburn, Virginia, United States</location>
<latitude>39.043999</latitude>
<longitude>-77.487999</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Epiphany 2.30</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
- <browserCode>EP</browserCode>
- <browserVersion>2.30</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4271,8 +4271,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows 7</operatingSystem>
+ <operatingSystemCode>WI7</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 9.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>9.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4296,14 +4304,6 @@
<location>Ashburn, Virginia, United States</location>
<latitude>39.043999</latitude>
<longitude>-77.487999</longitude>
- <operatingSystem>Windows 7</operatingSystem>
- <operatingSystemCode>WI7</operatingSystemCode>
- <operatingSystemShortName>Win 7</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WI7.gif</operatingSystemIcon>
- <browserName>Internet Explorer 9.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>9.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4375,8 +4375,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 6.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>6.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4400,14 +4408,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Firefox 6.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>6.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4479,8 +4479,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>GNU/Linux</operatingSystem>
+ <operatingSystemCode>LIN</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Epiphany 2.30</browser>
+ <browserName>Epiphany</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
+ <browserCode>EP</browserCode>
+ <browserVersion>2.30</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4504,14 +4512,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Linux</operatingSystem>
- <operatingSystemCode>LIN</operatingSystemCode>
- <operatingSystemShortName>Linux</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/LIN.gif</operatingSystemIcon>
- <browserName>Epiphany 2.30</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/EP.gif</browserIcon>
- <browserCode>EP</browserCode>
- <browserVersion>2.30</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4583,8 +4583,16 @@
<customVariables>
</customVariables>
<deviceType>Smartphone</deviceType>
+ <operatingSystem>Android</operatingSystem>
+ <operatingSystemCode>AND</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Android Browser</browser>
+ <browserName>Android Browser</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/AN.gif</browserIcon>
+ <browserCode>AN</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4608,14 +4616,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Android</operatingSystem>
- <operatingSystemCode>AND</operatingSystemCode>
- <operatingSystemShortName>Android</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/AND.gif</operatingSystemIcon>
- <browserName>Android Browser </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/AN.gif</browserIcon>
- <browserCode>AN</browserCode>
- <browserVersion />
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -4687,8 +4687,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Mac</operatingSystem>
+ <operatingSystemCode>MAC</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>RockMelt 0.9</browser>
+ <browserName>RockMelt</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/CH.gif</browserIcon>
+ <browserCode>RM</browserCode>
+ <browserVersion>0.9</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -4712,14 +4720,6 @@
<location>Japan</location>
<latitude>36</latitude>
<longitude>138</longitude>
- <operatingSystem>Mac OS</operatingSystem>
- <operatingSystemCode>MAC</operatingSystemCode>
- <operatingSystemShortName>Mac OS</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/MAC.gif</operatingSystemIcon>
- <browserName>RockMelt 0.9</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>RM</browserCode>
- <browserVersion>0.9</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml
index 4be2e497a2..80d06470a3 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml
@@ -11,7 +11,6 @@
<sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/EP.gif</logo>
- <shortLabel>Epiphany 2.30</shortLabel>
</row>
<row>
<label>Internet Explorer 9.0</label>
@@ -24,7 +23,6 @@
<sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/IE.gif</logo>
- <shortLabel>Internet Explorer 9.0</shortLabel>
</row>
<row>
<label>RockMelt 0.9</label>
@@ -36,11 +34,10 @@
<nb_visits_converted>4</nb_visits_converted>
<sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
- <shortLabel>RockMelt 0.9</shortLabel>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
</row>
<row>
- <label>Android Browser </label>
+ <label>Android Browser</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
@@ -50,7 +47,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/AN.gif</logo>
- <shortLabel>Android Browser </shortLabel>
</row>
<row>
<label>Chrome 19.0</label>
@@ -63,7 +59,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/CH.gif</logo>
- <shortLabel>Chrome 19.0</shortLabel>
</row>
<row>
<label>Chrome 20.0</label>
@@ -76,7 +71,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/CH.gif</logo>
- <shortLabel>Chrome 20.0</shortLabel>
</row>
<row>
<label>Firefox 6.0</label>
@@ -89,7 +83,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
- <shortLabel>Firefox 6.0</shortLabel>
</row>
<row>
<label>Unknown</label>
@@ -102,7 +95,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
- <shortLabel>Unknown</shortLabel>
</row>
<row>
<label>Chrome 11.0</label>
@@ -115,7 +107,6 @@
<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/CH.gif</logo>
- <shortLabel>Chrome 11.0</shortLabel>
</row>
<row>
<label>Internet Explorer 6.0</label>
@@ -128,6 +119,5 @@
<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/browsers/IE.gif</logo>
- <shortLabel>Internet Explorer 6.0</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml
index 99d9c637a2..8723d1a05f 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml
@@ -1,7 +1,19 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Epiphany</label>
+ <label>Internet Explorer</label>
+ <nb_visits>6</nb_visits>
+ <nb_actions>6</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>6</bounce_count>
+ <nb_visits_converted>6</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/browsers/IE.gif</logo>
+ </row>
+ <row>
+ <label>Chrome</label>
<nb_visits>5</nb_visits>
<nb_actions>5</nb_actions>
<max_actions>1</max_actions>
@@ -10,19 +22,19 @@
<nb_visits_converted>5</nb_visits_converted>
<sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/EP.gif</logo>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
</row>
<row>
- <label>Internet Explorer</label>
- <nb_visits>6</nb_visits>
- <nb_actions>6</nb_actions>
+ <label>Epiphany</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>5</nb_actions>
<max_actions>1</max_actions>
<sum_visit_length>0</sum_visit_length>
- <bounce_count>6</bounce_count>
- <nb_visits_converted>6</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors>
+ <bounce_count>5</bounce_count>
+ <nb_visits_converted>5</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/IE.gif</logo>
+ <logo>plugins/UserSettings/images/browsers/EP.gif</logo>
</row>
<row>
<label>RockMelt</label>
@@ -34,10 +46,10 @@
<nb_visits_converted>4</nb_visits_converted>
<sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
+ <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
</row>
<row>
- <label>Android Browser </label>
+ <label>Android Browser</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
@@ -49,18 +61,6 @@
<logo>plugins/UserSettings/images/browsers/AN.gif</logo>
</row>
<row>
- <label>Chrome</label>
- <nb_visits>5</nb_visits>
- <nb_actions>5</nb_actions>
- <max_actions>1</max_actions>
- <sum_visit_length>0</sum_visit_length>
- <bounce_count>5</bounce_count>
- <nb_visits_converted>5</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
- <sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/browsers/CH.gif</logo>
- </row>
- <row>
<label>Firefox</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml
index 99f2f8d770..446d719865 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux / Epiphany / unknown</label>
+ <label>GNU/Linux / Epiphany / unknown</label>
<nb_visits>5</nb_visits>
<nb_actions>5</nb_actions>
<max_actions>1</max_actions>
@@ -12,7 +12,7 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
</row>
<row>
- <label>Mac OS / RockMelt / unknown</label>
+ <label>Mac / RockMelt / unknown</label>
<nb_visits>5</nb_visits>
<nb_actions>8</nb_actions>
<max_actions>3</max_actions>
@@ -45,7 +45,7 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
</row>
<row>
- <label>Linux / Firefox / unknown</label>
+ <label>GNU/Linux / Firefox / unknown</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
@@ -78,7 +78,7 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
</row>
<row>
- <label>Linux / Chrome / unknown</label>
+ <label>GNU/Linux / Chrome / unknown</label>
<nb_visits>1</nb_visits>
<nb_actions>1</nb_actions>
<max_actions>1</max_actions>
@@ -89,7 +89,7 @@
<sum_daily_nb_users>0</sum_daily_nb_users>
</row>
<row>
- <label>Mac OS / Chrome / unknown</label>
+ <label>Mac / Chrome / unknown</label>
<nb_visits>1</nb_visits>
<nb_actions>1</nb_actions>
<max_actions>1</max_actions>
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml
index 27bfc099ba..0a059a62d6 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml
@@ -10,30 +10,65 @@
<nb_visits_converted>22</nb_visits_converted>
<sum_daily_nb_uniq_visitors>23</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
</row>
<row>
- <label>Mobile</label>
+ <label>Unknown</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
<sum_visit_length>0</sum_visit_length>
<bounce_count>2</bounce_count>
- <nb_visits_converted>2</nb_visits_converted>
+ <nb_visits_converted>1</nb_visits_converted>
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/screens/mobile.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
</row>
<row>
- <label>Unknown</label>
+ <label>Smartphone</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
<sum_visit_length>0</sum_visit_length>
<bounce_count>2</bounce_count>
- <nb_visits_converted>1</nb_visits_converted>
+ <nb_visits_converted>2</nb_visits_converted>
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/os/UNK.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
+ </row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml
index cb47530ed2..62d091d83d 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux</label>
+ <label>GNU/Linux</label>
<nb_visits>8</nb_visits>
<nb_actions>8</nb_actions>
<max_actions>1</max_actions>
@@ -22,7 +22,7 @@
<nb_visits_converted>9</nb_visits_converted>
<sum_daily_nb_uniq_visitors>9</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
- <logo>plugins/UserSettings/images/os/WXP.gif</logo>
+ <logo>plugins/UserSettings/images/os/WI7.gif</logo>
</row>
<row>
<label>Mac</label>
@@ -49,14 +49,26 @@
<logo>plugins/UserSettings/images/os/AND.gif</logo>
</row>
<row>
- <label>Unknown</label>
- <nb_visits>2</nb_visits>
- <nb_actions>2</nb_actions>
+ <label>Bot</label>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
<max_actions>1</max_actions>
<sum_visit_length>0</sum_visit_length>
- <bounce_count>2</bounce_count>
+ <bounce_count>1</bounce_count>
<nb_visits_converted>1</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/os/UNK.gif</logo>
+ </row>
+ <row>
+ <label>Unknown</label>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>0</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/UNK.gif</logo>
</row>
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml
index 1ac05e3dda..7cad47e0a1 100644
--- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux</label>
+ <label>GNU/Linux</label>
<nb_visits>8</nb_visits>
<nb_actions>8</nb_actions>
<max_actions>1</max_actions>
@@ -11,7 +11,6 @@
<sum_daily_nb_uniq_visitors>8</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/LIN.gif</logo>
- <shortLabel>Linux</shortLabel>
</row>
<row>
<label>Windows 7</label>
@@ -24,23 +23,21 @@
<sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/WI7.gif</logo>
- <shortLabel>Win 7</shortLabel>
</row>
<row>
- <label>Mac OS</label>
- <nb_visits>6</nb_visits>
- <nb_actions>9</nb_actions>
+ <label>Mac 10.6</label>
+ <nb_visits>5</nb_visits>
+ <nb_actions>8</nb_actions>
<max_actions>3</max_actions>
<sum_visit_length>305</sum_visit_length>
- <bounce_count>4</bounce_count>
- <nb_visits_converted>5</nb_visits_converted>
- <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors>
+ <bounce_count>3</bounce_count>
+ <nb_visits_converted>4</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/MAC.gif</logo>
- <shortLabel>Mac OS</shortLabel>
</row>
<row>
- <label>Android</label>
+ <label>Android 2.3</label>
<nb_visits>2</nb_visits>
<nb_actions>2</nb_actions>
<max_actions>1</max_actions>
@@ -50,7 +47,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/AND.gif</logo>
- <shortLabel>Android</shortLabel>
</row>
<row>
<label>Windows XP</label>
@@ -63,7 +59,6 @@
<sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/WXP.gif</logo>
- <shortLabel>Win XP</shortLabel>
</row>
<row>
<label>Bot</label>
@@ -76,7 +71,18 @@
<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/UNK.gif</logo>
- <shortLabel>BOT</shortLabel>
+ </row>
+ <row>
+ <label>Mac 10.8</label>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/os/MAC.gif</logo>
</row>
<row>
<label>Unknown</label>
@@ -89,6 +95,5 @@
<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
<sum_daily_nb_users>0</sum_daily_nb_users>
<logo>plugins/UserSettings/images/os/UNK.gif</logo>
- <shortLabel>Unknown</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getScreenType_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getScreenType_month.xml
new file mode 100644
index 0000000000..2048a44e64
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getScreenType_month.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Unknown</label>
+ <nb_visits>25</nb_visits>
+ <nb_actions>28</nb_actions>
+ <max_actions>3</max_actions>
+ <sum_visit_length>305</sum_visit_length>
+ <bounce_count>23</bounce_count>
+ <nb_visits_converted>23</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Normal</label>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ </row>
+ <row>
+ <label>Wide</label>
+ <nb_visits>1</nb_visits>
+ <nb_actions>1</nb_actions>
+ <max_actions>1</max_actions>
+ <sum_visit_length>0</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>1</nb_visits_converted>
+ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+ <sum_daily_nb_users>0</sum_daily_nb_users>
+ <logo>plugins/UserSettings/images/screens/wide.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortAsc__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortAsc__Live.getLastVisitsDetails_month.xml
index 4ca0871373..5f234ed9c5 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortAsc__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortAsc__Live.getLastVisitsDetails_month.xml
@@ -95,7 +95,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -219,7 +218,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -343,7 +341,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -467,7 +464,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -622,7 +618,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -777,7 +772,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Windows XP</operatingSystem>
<operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
@@ -924,7 +918,6 @@
<referrerSearchEngineIcon />
<operatingSystem>Unknown</operatingSystem>
<operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
<operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily>unknown</browserFamily>
<browserFamilyDescription>Unknown</browserFamilyDescription>
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisitAsc__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisitAsc__Live.getLastVisitsDetails_month.xml
index 403004b58a..1e9d9ac92f 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisitAsc__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisitAsc__Live.getLastVisitsDetails_month.xml
@@ -66,14 +66,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -89,8 +81,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -220,14 +220,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -243,8 +235,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -343,14 +343,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -366,8 +358,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -497,14 +497,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -520,8 +512,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -620,14 +620,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -643,8 +635,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -774,14 +774,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Unknown</operatingSystem>
- <operatingSystemCode>UNK</operatingSystemCode>
- <operatingSystemShortName>Unknown</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Unknown</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -797,8 +789,16 @@
</row>
</pluginsIcons>
<deviceType>Unknown</deviceType>
+ <operatingSystem>Unknown</operatingSystem>
+ <operatingSystemCode>UNK</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
<browserFamily />
<browserFamilyDescription>Unknown</browserFamilyDescription>
+ <browser>Unknown</browser>
+ <browserName>Unknown</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>1</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -889,14 +889,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -912,8 +904,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisit__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisit__Live.getLastVisitsDetails_month.xml
index 46e7e63638..a1a7876269 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisit__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByIdVisit__Live.getLastVisitsDetails_month.xml
@@ -56,14 +56,6 @@
<referrerUrl>http://google.com/?q=Wikileaks FTW</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
<referrerSearchEngineIcon>plugins/Referrers/images/searchEngines/google.com.png</referrerSearchEngineIcon>
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Safari </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -79,8 +71,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -204,14 +204,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -227,8 +219,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -329,14 +329,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -352,8 +344,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -468,14 +468,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -491,8 +483,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -593,14 +593,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -616,8 +608,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -749,14 +749,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -772,8 +764,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -874,14 +874,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -897,8 +889,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByVisitCount__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByVisitCount__Live.getLastVisitsDetails_month.xml
index aa243bc101..d8315dbc59 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByVisitCount__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortByVisitCount__Live.getLastVisitsDetails_month.xml
@@ -97,14 +97,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -120,8 +112,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -222,14 +222,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -245,8 +237,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -378,14 +378,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -401,8 +393,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -517,14 +517,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -540,8 +532,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -642,14 +642,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -665,8 +657,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -767,14 +767,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -790,8 +782,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -882,14 +882,6 @@
<referrerUrl>http://google.com/?q=Wikileaks FTW</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
<referrerSearchEngineIcon>plugins/Referrers/images/searchEngines/google.com.png</referrerSearchEngineIcon>
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Safari </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -905,8 +897,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortDesc__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortDesc__Live.getLastVisitsDetails_month.xml
index 46e7e63638..a1a7876269 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortDesc__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest_Live.getLastVisitsDetails_sortDesc__Live.getLastVisitsDetails_month.xml
@@ -56,14 +56,6 @@
<referrerUrl>http://google.com/?q=Wikileaks FTW</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
<referrerSearchEngineIcon>plugins/Referrers/images/searchEngines/google.com.png</referrerSearchEngineIcon>
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Safari </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -79,8 +71,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -204,14 +204,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -227,8 +219,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -329,14 +329,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -352,8 +344,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -468,14 +468,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -491,8 +483,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -593,14 +593,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -616,8 +608,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -749,14 +749,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -772,8 +764,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -874,14 +874,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -897,8 +889,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest__Live.getLastVisitsDetails_month.xml
index 51741a69bc..e5c58280d5 100644
--- a/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_ManyVisitorsOneWebsiteTest__Live.getLastVisitsDetails_month.xml
@@ -56,14 +56,6 @@
<referrerUrl>http://google.com/?q=Wikileaks FTW</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
<referrerSearchEngineIcon>plugins/Referrers/images/searchEngines/google.com.png</referrerSearchEngineIcon>
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Safari </browserName>
- <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
- <browserCode>SF</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -79,8 +71,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>WebKit</browserFamily>
<browserFamilyDescription>WebKit (Safari, Chrome)</browserFamilyDescription>
+ <browser>Safari</browser>
+ <browserName>Safari</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/SF.gif</browserIcon>
+ <browserCode>SF</browserCode>
+ <browserVersion />
<events>0</events>
<continent>North America</continent>
<continentCode>amn</continentCode>
@@ -204,14 +204,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -227,8 +219,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -329,14 +329,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -352,8 +344,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Unknown</continent>
<continentCode>unk</continentCode>
@@ -468,14 +468,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -491,8 +483,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -593,14 +593,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -616,8 +608,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -749,14 +749,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -772,8 +764,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -874,14 +874,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -897,8 +889,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1013,14 +1013,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1036,8 +1028,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1138,14 +1138,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1161,8 +1153,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
@@ -1294,14 +1294,6 @@
<referrerUrl />
<referrerSearchEngineUrl />
<referrerSearchEngineIcon />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -1317,8 +1309,16 @@
</row>
</pluginsIcons>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>1</events>
<continent>Europe</continent>
<continentCode>eur</continentCode>
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getBrowsers_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getBrowsers_day.xml
new file mode 100644
index 0000000000..84860eba92
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getBrowsers_day.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Firefox</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>8</nb_actions>
+ <max_actions>7</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/browsers/FF.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getType_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getType_day.xml
index 347eac465f..d1aae4191e 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getType_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__DevicesDetection.getType_day.xml
@@ -11,4 +11,44 @@
<nb_visits_converted>2</nb_visits_converted>
<logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
</row>
+ <row>
+ <label>Smartphone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
+ </row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
+ </row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getBrowserVersion_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getBrowserVersion_day.xml
index 8210497910..6f656fdf68 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getBrowserVersion_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getBrowserVersion_day.xml
@@ -10,6 +10,5 @@
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
- <shortLabel>Firefox 3.6</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getMobileVsDesktop_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getMobileVsDesktop_day.xml
index fe566ebe7c..d1aae4191e 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getMobileVsDesktop_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getMobileVsDesktop_day.xml
@@ -9,11 +9,46 @@
<sum_visit_length>1621</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
- <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
</row>
<row>
- <label>Mobile</label>
+ <label>Smartphone</label>
<nb_visits>0</nb_visits>
- <logo>plugins/UserSettings/images/screens/mobile.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
+ </row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOSFamily_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOSFamily_day.xml
index 5c3a3311e3..379e429ee3 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOSFamily_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOSFamily_day.xml
@@ -9,6 +9,6 @@
<sum_visit_length>1621</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
- <logo>plugins/UserSettings/images/os/WXP.gif</logo>
+ <logo>plugins/UserSettings/images/os/WI7.gif</logo>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOS_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOS_day.xml
index 32ec517b60..4e417535ae 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOS_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getOS_day.xml
@@ -10,6 +10,5 @@
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
<logo>plugins/UserSettings/images/os/WXP.gif</logo>
- <shortLabel>Win XP</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getScreenType_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getScreenType_day.xml
new file mode 100644
index 0000000000..f1acb38cb9
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits__UserSettings.getScreenType_day.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Normal</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>8</nb_actions>
+ <max_actions>7</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrand_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrand_day.xml
new file mode 100644
index 0000000000..8ff05bc8ff
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrand_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Unknown</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/DevicesDetection/images/brand/Unknown.ico</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserEngines_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserEngines_day.xml
new file mode 100644
index 0000000000..5bcb7b02d6
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserEngines_day.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Gecko (Firefox)</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserFamilies_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserFamilies_day.xml
new file mode 100644
index 0000000000..968ffc7d90
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserFamilies_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Firefox</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/browsers/FF.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserVersions_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserVersions_day.xml
new file mode 100644
index 0000000000..b8deec1d68
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowserVersions_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Firefox 3.6</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/browsers/FF.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowsers_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowsers_day.xml
new file mode 100644
index 0000000000..968ffc7d90
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getBrowsers_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Firefox</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/browsers/FF.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getModel_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getModel_day.xml
new file mode 100644
index 0000000000..302503d00e
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getModel_day.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Unknown</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsFamilies_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsFamilies_day.xml
new file mode 100644
index 0000000000..04cebec91e
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsFamilies_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Windows</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/os/WI7.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsVersions_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsVersions_day.xml
new file mode 100644
index 0000000000..785661d383
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getOsVersions_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Windows XP</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/os/WXP.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getType_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getType_day.xml
new file mode 100644
index 0000000000..782397bace
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__DevicesDetection.getType_day.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Desktop</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
+ </row>
+ <row>
+ <label>Smartphone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
+ </row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__Live.getLastVisitsDetails_day.xml
index 4297f03270..b0e326e03d 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__Live.getLastVisitsDetails_day.xml
@@ -52,8 +52,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -77,14 +85,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -240,8 +240,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -265,14 +273,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getBrowserVersion_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getBrowserVersion_day.xml
index 6451b5cbbb..b8deec1d68 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getBrowserVersion_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getBrowserVersion_day.xml
@@ -11,6 +11,5 @@
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
- <shortLabel>Firefox 3.6</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getMobileVsDesktop_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getMobileVsDesktop_day.xml
index 1456e8c033..782397bace 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getMobileVsDesktop_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getMobileVsDesktop_day.xml
@@ -10,11 +10,46 @@
<sum_visit_length>1621</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
- <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
</row>
<row>
- <label>Mobile</label>
+ <label>Smartphone</label>
<nb_visits>0</nb_visits>
- <logo>plugins/UserSettings/images/screens/mobile.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo>
+ </row>
+ <row>
+ <label>Tablet</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tablet.png</logo>
+ </row>
+ <row>
+ <label>Feature phone</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/mobile.gif</logo>
+ </row>
+ <row>
+ <label>Console</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/console.gif</logo>
+ </row>
+ <row>
+ <label>Tv</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/tv.png</logo>
+ </row>
+ <row>
+ <label>Car browser</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/carbrowser.png</logo>
+ </row>
+ <row>
+ <label>Smart display</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo>
+ </row>
+ <row>
+ <label>Camera</label>
+ <nb_visits>0</nb_visits>
+ <logo>plugins/DevicesDetection/images/screens/camera.png</logo>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOSFamily_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOSFamily_day.xml
index 63f67f61ca..04cebec91e 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOSFamily_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOSFamily_day.xml
@@ -10,6 +10,6 @@
<sum_visit_length>1621</sum_visit_length>
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
- <logo>plugins/UserSettings/images/os/WXP.gif</logo>
+ <logo>plugins/UserSettings/images/os/WI7.gif</logo>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOS_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOS_day.xml
index e041ea2409..785661d383 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOS_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getOS_day.xml
@@ -11,6 +11,5 @@
<bounce_count>1</bounce_count>
<nb_visits_converted>2</nb_visits_converted>
<logo>plugins/UserSettings/images/os/WXP.gif</logo>
- <shortLabel>Win XP</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getScreenType_day.xml b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getScreenType_day.xml
new file mode 100644
index 0000000000..1aa955af66
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_withCookieSupport__UserSettings.getScreenType_day.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result>
+ <row>
+ <label>Normal</label>
+ <nb_uniq_visitors>1</nb_uniq_visitors>
+ <nb_visits>2</nb_visits>
+ <nb_actions>9</nb_actions>
+ <nb_users>0</nb_users>
+ <max_actions>8</max_actions>
+ <sum_visit_length>1621</sum_visit_length>
+ <bounce_count>1</bounce_count>
+ <nb_visits_converted>2</nb_visits_converted>
+ <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ </row>
+</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Live.getLastVisitsDetails_day.xml
index 242012e9c7..884a614a5b 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Live.getLastVisitsDetails_day.xml
@@ -23,6 +23,8 @@
+ <searches>0</searches>
+ <actions>1</actions>
<userId />
<visitorType>new</visitorType>
<visitorTypeIcon />
@@ -39,8 +41,16 @@
<customVariables>
</customVariables>
<deviceType>Inconnu</deviceType>
- <browserFamily>unknown</browserFamily>
+ <operatingSystem>Bot</operatingSystem>
+ <operatingSystemCode>BOT</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
+ <browserFamily />
<browserFamilyDescription>Inconnu</browserFamilyDescription>
+ <browser>Inconnu</browser>
+ <browserName>Inconnu</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Inconnu</provider>
<providerName>Inconnu</providerName>
@@ -64,14 +74,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Bot</operatingSystem>
- <operatingSystemCode>BOT</operatingSystemCode>
- <operatingSystemShortName>BOT</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Inconnu</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -86,19 +88,6 @@
<pluginName>java</pluginName>
</row>
</pluginsIcons>
- <deviceType>Inconnu</deviceType>
- <events>0</events>
- <continent>Europe</continent>
- <continentCode>eur</continentCode>
- <country>France</country>
- <countryCode>fr</countryCode>
- <countryFlag>plugins/UserCountry/images/flags/fr.png</countryFlag>
- <region />
- <regionCode />
- <city />
- <location>France</location>
- <latitude />
- <longitude />
<visitLocalTime>12:34:06</visitLocalTime>
<visitLocalHour>12</visitLocalHour>
<daysSinceLastVisit>0</daysSinceLastVisit>
@@ -159,8 +148,16 @@
<customVariables>
</customVariables>
<deviceType>Inconnu</deviceType>
- <browserFamily>unknown</browserFamily>
+ <operatingSystem>Bot</operatingSystem>
+ <operatingSystemCode>BOT</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
+ <browserFamily />
<browserFamilyDescription>Inconnu</browserFamilyDescription>
+ <browser>Inconnu</browser>
+ <browserName>Inconnu</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
+ <browserCode>UNK</browserCode>
+ <browserVersion />
<events>0</events>
<provider>Inconnu</provider>
<providerName>Inconnu</providerName>
@@ -168,7 +165,7 @@
<referrerType>search</referrerType>
<referrerTypeName>Moteurs de recherche</referrerTypeName>
<referrerName>Google</referrerName>
- <referrerKeyword>Mot clef indéfini</referrerKeyword>
+ <referrerKeyword>Mot-clé indéfini</referrerKeyword>
<referrerKeywordPosition>1</referrerKeywordPosition>
<referrerUrl>http://piwik.org/faq/general/#faq_144</referrerUrl>
<referrerSearchEngineUrl>http://google.com</referrerSearchEngineUrl>
@@ -184,14 +181,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Bot</operatingSystem>
- <operatingSystemCode>BOT</operatingSystemCode>
- <operatingSystemShortName>BOT</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/UNK.gif</operatingSystemIcon>
- <browserName>Inconnu</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/UNK.gif</browserIcon>
- <browserCode>UNK</browserCode>
- <browserVersion />
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -206,19 +195,6 @@
<pluginName>java</pluginName>
</row>
</pluginsIcons>
- <deviceType>Inconnu</deviceType>
- <events>0</events>
- <continent>Europe</continent>
- <continentCode>eur</continentCode>
- <country>France</country>
- <countryCode>fr</countryCode>
- <countryFlag>plugins/UserCountry/images/flags/fr.png</countryFlag>
- <region />
- <regionCode />
- <city />
- <location>France</location>
- <latitude />
- <longitude />
<visitLocalTime>12:34:06</visitLocalTime>
<visitLocalHour>12</visitLocalHour>
<daysSinceLastVisit>0</daysSinceLastVisit>
diff --git a/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Referrers.getKeywords_day.xml b/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Referrers.getKeywords_day.xml
index 9b2a6b9b0e..8555f09801 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Referrers.getKeywords_day.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitor_NoKeywordSpecified__Referrers.getKeywords_day.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Mot clef indéfini</label>
+ <label>Mot-clé indéfini</label>
<nb_uniq_visitors>1</nb_uniq_visitors>
<nb_visits>1</nb_visits>
<nb_actions>1</nb_actions>
diff --git a/tests/PHPUnit/System/expected/test_OneVisitor_SeveralDays_ImportedInRandomOrderTest_shouldShowOneVisit_InEachOfThreeDays__Live.getLastVisitsDetails_month.xml b/tests/PHPUnit/System/expected/test_OneVisitor_SeveralDays_ImportedInRandomOrderTest_shouldShowOneVisit_InEachOfThreeDays__Live.getLastVisitsDetails_month.xml
index e38d88d7f5..dfaee585ef 100644
--- a/tests/PHPUnit/System/expected/test_OneVisitor_SeveralDays_ImportedInRandomOrderTest_shouldShowOneVisit_InEachOfThreeDays__Live.getLastVisitsDetails_month.xml
+++ b/tests/PHPUnit/System/expected/test_OneVisitor_SeveralDays_ImportedInRandomOrderTest_shouldShowOneVisit_InEachOfThreeDays__Live.getLastVisitsDetails_month.xml
@@ -46,8 +46,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows Vista</operatingSystem>
+ <operatingSystemCode>WVI</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 7.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>7.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -71,14 +79,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows Vista</operatingSystem>
- <operatingSystemCode>WVI</operatingSystemCode>
- <operatingSystemShortName>Win Vista</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
- <browserName>Internet Explorer 7.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>7.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -139,8 +139,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows Vista</operatingSystem>
+ <operatingSystemCode>WVI</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 7.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>7.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -164,14 +172,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows Vista</operatingSystem>
- <operatingSystemCode>WVI</operatingSystemCode>
- <operatingSystemShortName>Win Vista</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
- <browserName>Internet Explorer 7.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>7.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
@@ -232,8 +232,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows Vista</operatingSystem>
+ <operatingSystemCode>WVI</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
<browserFamily>Trident</browserFamily>
<browserFamilyDescription>Trident (IE)</browserFamilyDescription>
+ <browser>Internet Explorer 7.0</browser>
+ <browserName>Internet Explorer</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
+ <browserCode>IE</browserCode>
+ <browserVersion>7.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -257,14 +265,6 @@
<location>Unknown</location>
<latitude />
<longitude />
- <operatingSystem>Windows Vista</operatingSystem>
- <operatingSystemCode>WVI</operatingSystemCode>
- <operatingSystemShortName>Win Vista</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WVI.gif</operatingSystemIcon>
- <browserName>Internet Explorer 7.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/IE.gif</browserIcon>
- <browserCode>IE</browserCode>
- <browserVersion>7.0</browserVersion>
<screenType>unknown</screenType>
<resolution>unknown</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/unknown.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_RowEvolution_mobileDesktop__API.getRowEvolution_day.xml b/tests/PHPUnit/System/expected/test_RowEvolution_mobileDesktop__API.getRowEvolution_day.xml
index 86026aff84..9ee74c6530 100644
--- a/tests/PHPUnit/System/expected/test_RowEvolution_mobileDesktop__API.getRowEvolution_day.xml
+++ b/tests/PHPUnit/System/expected/test_RowEvolution_mobileDesktop__API.getRowEvolution_day.xml
@@ -43,7 +43,7 @@
<metrics>
<nb_visits_0>
<name>Desktop (Visits)</name>
- <logo>plugins/UserSettings/images/screens/normal.gif</logo>
+ <logo>plugins/DevicesDetection/images/screens/normal.gif</logo>
<min>0</min>
<max>1</max>
</nb_visits_0>
@@ -51,7 +51,7 @@
<name>Mobile (Visits)</name>
</nb_visits_1>
</metrics>
- <dimension>Mobile vs Desktop</dimension>
+ <dimension>Device type</dimension>
<columns>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
diff --git a/tests/PHPUnit/System/expected/test_TimezonesTest__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_TimezonesTest__Live.getLastVisitsDetails_day.xml
index c828bbb0e6..e0516433ba 100644
--- a/tests/PHPUnit/System/expected/test_TimezonesTest__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_TimezonesTest__Live.getLastVisitsDetails_day.xml
@@ -41,8 +41,16 @@
<customVariables>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -66,14 +74,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_csv__ScheduledReports.generateReport_month.original.csv b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_csv__ScheduledReports.generateReport_month.original.csv
index 5f75466362..6671d8d79d 100644
--- a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_csv__ScheduledReports.generateReport_month.original.csv
+++ b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_csv__ScheduledReports.generateReport_month.original.csv
@@ -76,18 +76,6 @@ label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site
800x300,9,41,0%,4.56,00:13:21,11.11%
1024x768,1,2,0%,2,00:06:01,0%
-Visitor Browser
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Firefox,1,2,0%,2,00:06:01,0%
-Opera,1,1,0%,1,00:00:00,100%
-
-Browser Version
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Firefox 3.6,1,2,0%,2,00:06:01,0%
-Opera 9.63,1,1,0%,1,00:00:00,100%
-
Browser Plugins
label,nb_visits,nb_visits_percentage
Cookie,10,100%
@@ -106,28 +94,12 @@ label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site
Dual,9,41,0%,4.56,00:13:21,11.11%
Normal,1,2,0%,2,00:06:01,0%
-Operating System
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Windows XP,2,3,0%,1.5,00:03:01,50%
-
Visitor Configuration
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown / Unknown / 800x300,8,40,0%,5,00:15:01,0%
Windows XP / Firefox / 1024x768,1,2,0%,2,00:06:01,0%
Windows XP / Opera / 800x300,1,1,0%,1,00:00:00,100%
-Operating system family
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Windows,2,3,0%,1.5,00:03:01,50%
-
-Mobile vs Desktop
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Desktop,2,3,0%,1.5,00:03:01,50%
-Mobile,0,0,0%,0,00:00:00,0%
-
Browser language
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,8,40,0%,5,00:15:01,0%
@@ -349,6 +321,18 @@ Device brand
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,10,43,0%,4.3,00:12:37,10%
+Visitor Browser
+label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
+Unknown,8,40,0%,5,00:15:01,0%
+Firefox,1,2,0%,2,00:06:01,0%
+Opera,1,1,0%,1,00:00:00,100%
+
+Browser version
+label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
+Unknown,8,40,0%,5,00:15:01,0%
+Firefox 3.6,1,2,0%,2,00:06:01,0%
+Opera 9.63,1,1,0%,1,00:00:00,100%
+
Device model
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,10,43,0%,4.3,00:12:37,10%
@@ -363,18 +347,6 @@ label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site
Unknown,8,40,0%,5,00:15:01,0%
Windows XP,2,3,0%,1.5,00:03:01,50%
-Browser families
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Firefox,1,2,0%,2,00:06:01,0%
-Opera,1,1,0%,1,00:00:00,100%
-
-Browser versions
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Unknown,8,40,0%,5,00:15:01,0%
-Firefox 3.6,1,2,0%,2,00:06:01,0%
-Opera 9.63,1,1,0%,1,00:00:00,100%
-
Browser engines
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,8,40,0%,5,00:15:01,0%
diff --git a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_month.original.html b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_month.original.html
index 0d52d55825..15141b271a 100644
--- a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_month.original.html
+++ b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_month.original.html
@@ -50,46 +50,21 @@
</a>
</li>
<li>
- <a href="#UserSettings_getBrowser" style="text-decoration:none; color: rgb(68,68,68);">
- Visitor Browser
- </a>
- </li>
- <li>
- <a href="#UserSettings_getBrowserVersion" style="text-decoration:none; color: rgb(68,68,68);">
- Browser Version
- </a>
- </li>
- <li>
<a href="#UserSettings_getPlugin" style="text-decoration:none; color: rgb(68,68,68);">
Browser Plugins
</a>
</li>
<li>
- <a href="#UserSettings_getWideScreen" style="text-decoration:none; color: rgb(68,68,68);">
+ <a href="#UserSettings_getScreenType" style="text-decoration:none; color: rgb(68,68,68);">
Normal / Widescreen
</a>
</li>
<li>
- <a href="#UserSettings_getOS" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System
- </a>
- </li>
- <li>
<a href="#UserSettings_getConfiguration" style="text-decoration:none; color: rgb(68,68,68);">
Visitor Configuration
</a>
</li>
<li>
- <a href="#UserSettings_getOSFamily" style="text-decoration:none; color: rgb(68,68,68);">
- Operating system family
- </a>
- </li>
- <li>
- <a href="#UserSettings_getMobileVsDesktop" style="text-decoration:none; color: rgb(68,68,68);">
- Mobile vs Desktop
- </a>
- </li>
- <li>
<a href="#UserSettings_getLanguage" style="text-decoration:none; color: rgb(68,68,68);">
Browser language
</a>
@@ -285,28 +260,28 @@
</a>
</li>
<li>
- <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
- Device model
+ <a href="#DevicesDetection_getBrowsers" style="text-decoration:none; color: rgb(68,68,68);">
+ Visitor Browser
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System families
+ <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Browser version
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System versions
+ <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
+ Device model
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Browser families
+ <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System families
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Browser versions
+ <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System versions
</a>
</li>
<li>
@@ -1988,242 +1963,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getBrowser" style="color: rgb(126,115,99); font-size: 11pt;">
- Visitor Browser
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getBrowserVersion" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser Version
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser version&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera 9.63 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getPlugin" style="color: rgb(126,115,99); font-size: 11pt;">
Browser Plugins
</h2>
@@ -2385,7 +2124,7 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getWideScreen" style="color: rgb(126,115,99); font-size: 11pt;">
+<h2 id="UserSettings_getScreenType" style="color: rgb(126,115,99); font-size: 11pt;">
Normal / Widescreen
</h2>
@@ -2478,99 +2217,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOS" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getConfiguration" style="color: rgb(126,115,99); font-size: 11pt;">
Visitor Configuration
</h2>
@@ -2683,217 +2329,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOSFamily" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating system family
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system family&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getMobileVsDesktop" style="color: rgb(126,115,99); font-size: 11pt;">
- Mobile vs Desktop
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Mobile vs Desktop&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/normal.gif'>
- &nbsp;
- Desktop </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/mobile.gif'>
- &nbsp;
- Mobile </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getLanguage" style="color: rgb(126,115,99); font-size: 11pt;">
Browser language
</h2>
@@ -5336,12 +4771,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
- Device model
+<h2 id="DevicesDetection_getBrowsers" style="color: rgb(126,115,99); font-size: 11pt;">
+ Visitor Browser
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -5351,7 +4786,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Device model&nbsp;&nbsp;
+ &nbsp;Browser&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5376,21 +4811,73 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- Unknown </td>
+ <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ &nbsp;
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 10
+ 8
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 43
+ 40
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 4.3
+ 5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:12:37
+ 00:15:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 10%
+ 0%
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ </tr>
+
+ <tr style="background-color: rgb(249,250,250)">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ &nbsp;
+ Firefox </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 2
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 2
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:06:01
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ </tr>
+
+ <tr style="">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/OP.gif'>
+ &nbsp;
+ Opera </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:00:00
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 100%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5402,12 +4889,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System families
+<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Browser version
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -5417,7 +4904,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System families&nbsp;&nbsp;
+ &nbsp;Browser version&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5442,7 +4929,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
+ <img src='plugins/UserSettings/images/browsers/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5467,23 +4954,48 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WI7.gif'>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
&nbsp;
- Windows </td>
+ Firefox 3.6 </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
+ 2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
+ 00:06:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
+ 0%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
+ 0%
+ </td>
+ </tr>
+
+ <tr style="">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/OP.gif'>
+ &nbsp;
+ Opera 9.63 </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:00:00
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 100%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5495,12 +5007,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System versions
+<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
+ Device model
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -5510,7 +5022,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System versions&nbsp;&nbsp;
+ &nbsp;Device model&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5535,48 +5047,21 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
+ 10
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
+ 43
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
+ 4.3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
+ 00:12:37
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
+ 10%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5588,12 +5073,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser families
+<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System families
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -5603,7 +5088,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser families&nbsp;&nbsp;
+ &nbsp;Operating system family&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5628,7 +5113,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ <img src='plugins/UserSettings/images/os/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5653,48 +5138,23 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WI7.gif'>
&nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
+ Windows </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 1.5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
+ 00:03:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
+ 50%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5706,12 +5166,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser versions
+<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System versions
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -5721,7 +5181,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser versions&nbsp;&nbsp;
+ &nbsp;Operating System versions&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5746,7 +5206,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ <img src='plugins/UserSettings/images/os/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5771,48 +5231,23 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WXP.gif'>
&nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
+ Windows XP </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera 9.63 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 1.5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
+ 00:03:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
+ 50%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
diff --git a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_month.original.html b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_month.original.html
index 48a31165e9..5f93dac2dc 100644
--- a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_month.original.html
+++ b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_month.original.html
@@ -50,46 +50,21 @@
</a>
</li>
<li>
- <a href="#UserSettings_getBrowser" style="text-decoration:none; color: rgb(68,68,68);">
- Visitor Browser
- </a>
- </li>
- <li>
- <a href="#UserSettings_getBrowserVersion" style="text-decoration:none; color: rgb(68,68,68);">
- Browser Version
- </a>
- </li>
- <li>
<a href="#UserSettings_getPlugin" style="text-decoration:none; color: rgb(68,68,68);">
Browser Plugins
</a>
</li>
<li>
- <a href="#UserSettings_getWideScreen" style="text-decoration:none; color: rgb(68,68,68);">
+ <a href="#UserSettings_getScreenType" style="text-decoration:none; color: rgb(68,68,68);">
Normal / Widescreen
</a>
</li>
<li>
- <a href="#UserSettings_getOS" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System
- </a>
- </li>
- <li>
<a href="#UserSettings_getConfiguration" style="text-decoration:none; color: rgb(68,68,68);">
Visitor Configuration
</a>
</li>
<li>
- <a href="#UserSettings_getOSFamily" style="text-decoration:none; color: rgb(68,68,68);">
- Operating system family
- </a>
- </li>
- <li>
- <a href="#UserSettings_getMobileVsDesktop" style="text-decoration:none; color: rgb(68,68,68);">
- Mobile vs Desktop
- </a>
- </li>
- <li>
<a href="#UserSettings_getLanguage" style="text-decoration:none; color: rgb(68,68,68);">
Browser language
</a>
@@ -310,28 +285,28 @@
</a>
</li>
<li>
- <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
- Device model
+ <a href="#DevicesDetection_getBrowsers" style="text-decoration:none; color: rgb(68,68,68);">
+ Visitor Browser
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System families
+ <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Browser version
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System versions
+ <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
+ Device model
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Browser families
+ <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System families
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Browser versions
+ <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System versions
</a>
</li>
<li>
@@ -1977,230 +1952,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getBrowser" style="color: rgb(126,115,99); font-size: 11pt;">
- Visitor Browser
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getBrowserVersion" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser Version
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser version&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera 9.63 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getPlugin" style="color: rgb(126,115,99); font-size: 11pt;">
Browser Plugins
</h2>
@@ -2356,7 +2107,7 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getWideScreen" style="color: rgb(126,115,99); font-size: 11pt;">
+<h2 id="UserSettings_getScreenType" style="color: rgb(126,115,99); font-size: 11pt;">
Normal / Widescreen
</h2>
@@ -2443,93 +2194,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOS" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getConfiguration" style="color: rgb(126,115,99); font-size: 11pt;">
Visitor Configuration
</h2>
@@ -2636,205 +2300,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOSFamily" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating system family
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system family&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getMobileVsDesktop" style="color: rgb(126,115,99); font-size: 11pt;">
- Mobile vs Desktop
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Mobile vs Desktop&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/normal.gif'>
- &nbsp;
- Desktop </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/mobile.gif'>
- &nbsp;
- Mobile </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getLanguage" style="color: rgb(126,115,99); font-size: 11pt;">
Browser language
</h2>
@@ -5178,8 +4643,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
- Device model
+<h2 id="DevicesDetection_getBrowsers" style="color: rgb(126,115,99); font-size: 11pt;">
+ Visitor Browser
</h2>
@@ -5187,7 +4652,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Device model&nbsp;&nbsp;
+ &nbsp;Browser&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5212,21 +4677,73 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- Unknown </td>
+ <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ &nbsp;
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 10
+ 8
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 43
+ 40
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 4.3
+ 5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:12:37
+ 00:15:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 10%
+ 0%
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ </tr>
+
+ <tr style="background-color: rgb(249,250,250)">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ &nbsp;
+ Firefox </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 2
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 2
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:06:01
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 0%
+ </td>
+ </tr>
+
+ <tr style="">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/OP.gif'>
+ &nbsp;
+ Opera </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:00:00
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 100%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5238,8 +4755,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System families
+<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Browser version
</h2>
@@ -5247,7 +4764,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System families&nbsp;&nbsp;
+ &nbsp;Browser version&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5272,7 +4789,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
+ <img src='plugins/UserSettings/images/browsers/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5297,23 +4814,48 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WI7.gif'>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
&nbsp;
- Windows </td>
+ Firefox 3.6 </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
+ 2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
+ 00:06:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
+ 0%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
+ 0%
+ </td>
+ </tr>
+
+ <tr style="">
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ <img src='plugins/UserSettings/images/browsers/OP.gif'>
+ &nbsp;
+ Opera 9.63 </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 1
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 00:00:00
+ </td>
+ <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+ 100%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5325,8 +4867,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System versions
+<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
+ Device model
</h2>
@@ -5334,7 +4876,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System versions&nbsp;&nbsp;
+ &nbsp;Device model&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5359,48 +4901,21 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/UNK.gif'>
- &nbsp;
- Unknown </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 8
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 40
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:15:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
+ 10
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3
+ 43
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1.5
+ 4.3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:03:01
+ 00:12:37
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 50%
+ 10%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5412,8 +4927,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser families
+<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System families
</h2>
@@ -5421,7 +4936,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser families&nbsp;&nbsp;
+ &nbsp;Operating system family&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5446,7 +4961,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ <img src='plugins/UserSettings/images/os/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5471,48 +4986,23 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WI7.gif'>
&nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
+ Windows </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 1.5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
+ 00:03:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
+ 50%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
@@ -5524,8 +5014,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser versions
+<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System versions
</h2>
@@ -5533,7 +5023,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser versions&nbsp;&nbsp;
+ &nbsp;Operating System versions&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -5558,7 +5048,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/UNK.gif'>
+ <img src='plugins/UserSettings/images/os/UNK.gif'>
&nbsp;
Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
@@ -5583,48 +5073,23 @@
<tr style="background-color: rgb(249,250,250)">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WXP.gif'>
&nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 2
- </td>
+ Windows XP </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
2
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:06:01
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/OP.gif'>
- &nbsp;
- Opera 9.63 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 3
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 1
+ 1.5
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
+ 00:03:01
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 100%
+ 50%
</td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
0%
diff --git a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_month.original.pdf b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_month.original.pdf
index 047dd073fd..28c0b57395 100644
--- a/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_month.original.pdf
+++ b/tests/PHPUnit/System/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_month.original.pdf
Binary files differ
diff --git a/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml b/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml
index 0a2549a18e..27d565b42f 100644
--- a/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml
+++ b/tests/PHPUnit/System/expected/test_apiGetReportMetadata__API.getReportMetadata_day.xml
@@ -213,63 +213,6 @@
</row>
<row>
<category>Visitor Settings</category>
- <name>Visitor Browser</name>
- <module>UserSettings</module>
- <action>getBrowser</action>
- <dimension>Browser</dimension>
- <documentation>This report contains information about what kind of browser your visitors were using. Each browser version is listed separately.</documentation>
- <metrics>
- <nb_visits>Visits</nb_visits>
- <nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
- <nb_actions>Actions</nb_actions>
- <nb_users>Users</nb_users>
- </metrics>
- <metricsDocumentation>
- <nb_visits>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.</nb_visits>
- <nb_uniq_visitors>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.</nb_uniq_visitors>
- <nb_actions>The number of actions performed by your visitors. Actions can be page views, internal site searches, downloads or outlinks.</nb_actions>
- <nb_users>The number of users logged in your website. It is the number of unique active users that have a User ID set (via the Tracking code function 'setUserId').</nb_users>
- </metricsDocumentation>
- <processedMetrics>
- <nb_actions_per_visit>Actions per Visit</nb_actions_per_visit>
- <avg_time_on_site>Avg. Time on Website</avg_time_on_site>
- <bounce_rate>Bounce Rate</bounce_rate>
- <conversion_rate>Conversion Rate</conversion_rate>
- </processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getBrowser&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getBrowser&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>UserSettings_getBrowser</uniqueId>
- </row>
- <row>
- <category>Visitor Settings</category>
- <name>Browser Version</name>
- <module>UserSettings</module>
- <action>getBrowserVersion</action>
- <dimension>Browser version</dimension>
- <metrics>
- <nb_visits>Visits</nb_visits>
- <nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
- <nb_actions>Actions</nb_actions>
- <nb_users>Users</nb_users>
- </metrics>
- <metricsDocumentation>
- <nb_visits>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.</nb_visits>
- <nb_uniq_visitors>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.</nb_uniq_visitors>
- <nb_actions>The number of actions performed by your visitors. Actions can be page views, internal site searches, downloads or outlinks.</nb_actions>
- <nb_users>The number of users logged in your website. It is the number of unique active users that have a User ID set (via the Tracking code function 'setUserId').</nb_users>
- </metricsDocumentation>
- <processedMetrics>
- <nb_actions_per_visit>Actions per Visit</nb_actions_per_visit>
- <avg_time_on_site>Avg. Time on Website</avg_time_on_site>
- <bounce_rate>Bounce Rate</bounce_rate>
- <conversion_rate>Conversion Rate</conversion_rate>
- </processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getBrowserVersion&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getBrowserVersion&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>UserSettings_getBrowserVersion</uniqueId>
- </row>
- <row>
- <category>Visitor Settings</category>
<name>Browser Plugins</name>
<module>UserSettings</module>
<action>getPlugin</action>
@@ -290,7 +233,7 @@
<category>Visitor Settings</category>
<name>Normal / Widescreen</name>
<module>UserSettings</module>
- <action>getWideScreen</action>
+ <action>getScreenType</action>
<dimension>Type of screen</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
@@ -310,37 +253,9 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getWideScreen&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getWideScreen&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>UserSettings_getWideScreen</uniqueId>
- </row>
- <row>
- <category>Visitor Settings</category>
- <name>Operating System</name>
- <module>UserSettings</module>
- <action>getOS</action>
- <dimension>Operating system</dimension>
- <metrics>
- <nb_visits>Visits</nb_visits>
- <nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
- <nb_actions>Actions</nb_actions>
- <nb_users>Users</nb_users>
- </metrics>
- <metricsDocumentation>
- <nb_visits>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.</nb_visits>
- <nb_uniq_visitors>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.</nb_uniq_visitors>
- <nb_actions>The number of actions performed by your visitors. Actions can be page views, internal site searches, downloads or outlinks.</nb_actions>
- <nb_users>The number of users logged in your website. It is the number of unique active users that have a User ID set (via the Tracking code function 'setUserId').</nb_users>
- </metricsDocumentation>
- <processedMetrics>
- <nb_actions_per_visit>Actions per Visit</nb_actions_per_visit>
- <avg_time_on_site>Avg. Time on Website</avg_time_on_site>
- <bounce_rate>Bounce Rate</bounce_rate>
- <conversion_rate>Conversion Rate</conversion_rate>
- </processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getOS&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getOS&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>UserSettings_getOS</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getScreenType&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getScreenType&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>UserSettings_getScreenType</uniqueId>
</row>
<row>
<category>Visitor Settings</category>
@@ -373,62 +288,6 @@
</row>
<row>
<category>Visitor Settings</category>
- <name>Operating system family</name>
- <module>UserSettings</module>
- <action>getOSFamily</action>
- <dimension>Operating system family</dimension>
- <metrics>
- <nb_visits>Visits</nb_visits>
- <nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
- <nb_actions>Actions</nb_actions>
- <nb_users>Users</nb_users>
- </metrics>
- <metricsDocumentation>
- <nb_visits>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.</nb_visits>
- <nb_uniq_visitors>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.</nb_uniq_visitors>
- <nb_actions>The number of actions performed by your visitors. Actions can be page views, internal site searches, downloads or outlinks.</nb_actions>
- <nb_users>The number of users logged in your website. It is the number of unique active users that have a User ID set (via the Tracking code function 'setUserId').</nb_users>
- </metricsDocumentation>
- <processedMetrics>
- <nb_actions_per_visit>Actions per Visit</nb_actions_per_visit>
- <avg_time_on_site>Avg. Time on Website</avg_time_on_site>
- <bounce_rate>Bounce Rate</bounce_rate>
- <conversion_rate>Conversion Rate</conversion_rate>
- </processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getOSFamily&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getOSFamily&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>UserSettings_getOSFamily</uniqueId>
- </row>
- <row>
- <category>Visitor Settings</category>
- <name>Mobile vs Desktop</name>
- <module>UserSettings</module>
- <action>getMobileVsDesktop</action>
- <dimension>Mobile vs Desktop</dimension>
- <metrics>
- <nb_visits>Visits</nb_visits>
- <nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
- <nb_actions>Actions</nb_actions>
- <nb_users>Users</nb_users>
- </metrics>
- <metricsDocumentation>
- <nb_visits>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.</nb_visits>
- <nb_uniq_visitors>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.</nb_uniq_visitors>
- <nb_actions>The number of actions performed by your visitors. Actions can be page views, internal site searches, downloads or outlinks.</nb_actions>
- <nb_users>The number of users logged in your website. It is the number of unique active users that have a User ID set (via the Tracking code function 'setUserId').</nb_users>
- </metricsDocumentation>
- <processedMetrics>
- <nb_actions_per_visit>Actions per Visit</nb_actions_per_visit>
- <avg_time_on_site>Avg. Time on Website</avg_time_on_site>
- <bounce_rate>Bounce Rate</bounce_rate>
- <conversion_rate>Conversion Rate</conversion_rate>
- </processedMetrics>
- <constantRowsCount>1</constantRowsCount>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=UserSettings&amp;apiAction=getMobileVsDesktop&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <uniqueId>UserSettings_getMobileVsDesktop</uniqueId>
- </row>
- <row>
- <category>Visitor Settings</category>
<name>Browser language</name>
<module>UserSettings</module>
<action>getLanguage</action>
@@ -1854,10 +1713,11 @@
</row>
<row>
<category>Visitor Devices</category>
- <name>Device brand</name>
+ <name>Visitor Browser</name>
<module>DevicesDetection</module>
- <action>getBrand</action>
- <dimension>Device brand</dimension>
+ <action>getBrowsers</action>
+ <dimension>Browser</dimension>
+ <documentation>This report contains information about what kind of browser your visitors were using. Each browser version is listed separately.</documentation>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -1876,16 +1736,16 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrand&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrand&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getBrand</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowsers&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowsers&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getBrowsers</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
- <name>Device model</name>
+ <name>Device brand</name>
<module>DevicesDetection</module>
- <action>getModel</action>
- <dimension>Device model</dimension>
+ <action>getBrand</action>
+ <dimension>Device brand</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -1904,16 +1764,16 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getModel&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getModel&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getModel</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrand&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrand&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getBrand</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
- <name>Operating System families</name>
+ <name>Device model</name>
<module>DevicesDetection</module>
- <action>getOsFamilies</action>
- <dimension>Operating System families</dimension>
+ <action>getModel</action>
+ <dimension>Device model</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -1932,16 +1792,16 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsFamilies&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsFamilies&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getOsFamilies</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getModel&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getModel&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getModel</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
- <name>Operating System versions</name>
+ <name>Browser version</name>
<module>DevicesDetection</module>
- <action>getOsVersions</action>
- <dimension>Operating System versions</dimension>
+ <action>getBrowserVersions</action>
+ <dimension>Browser version</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -1960,16 +1820,16 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsVersions&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsVersions&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getOsVersions</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserVersions&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserVersions&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getBrowserVersions</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
- <name>Browser families</name>
+ <name>Operating System families</name>
<module>DevicesDetection</module>
- <action>getBrowserFamilies</action>
- <dimension>Browser families</dimension>
+ <action>getOsFamilies</action>
+ <dimension>Operating system family</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -1988,16 +1848,16 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserFamilies&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserFamilies&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getBrowserFamilies</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsFamilies&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsFamilies&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getOsFamilies</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
- <name>Browser versions</name>
+ <name>Operating System versions</name>
<module>DevicesDetection</module>
- <action>getBrowserVersions</action>
- <dimension>Browser versions</dimension>
+ <action>getOsVersions</action>
+ <dimension>Operating System versions</dimension>
<metrics>
<nb_visits>Visits</nb_visits>
<nb_uniq_visitors>Unique visitors</nb_uniq_visitors>
@@ -2016,9 +1876,9 @@
<bounce_rate>Bounce Rate</bounce_rate>
<conversion_rate>Conversion Rate</conversion_rate>
</processedMetrics>
- <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserVersions&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
- <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getBrowserVersions&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
- <uniqueId>DevicesDetection_getBrowserVersions</uniqueId>
+ <imageGraphUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsVersions&amp;period=day&amp;date=2009-01-04</imageGraphUrl>
+ <imageGraphEvolutionUrl>index.php?module=API&amp;method=ImageGraph.get&amp;idSite=1&amp;apiModule=DevicesDetection&amp;apiAction=getOsVersions&amp;period=day&amp;date=2008-12-06,2009-01-04</imageGraphEvolutionUrl>
+ <uniqueId>DevicesDetection_getOsVersions</uniqueId>
</row>
<row>
<category>Visitor Devices</category>
diff --git a/tests/PHPUnit/System/expected/test_apiGetReportMetadata_year__LanguagesManager.getAvailableLanguageNames.xml b/tests/PHPUnit/System/expected/test_apiGetReportMetadata_year__LanguagesManager.getAvailableLanguageNames.xml
index d7738f1123..1fed2ff5e5 100644
--- a/tests/PHPUnit/System/expected/test_apiGetReportMetadata_year__LanguagesManager.getAvailableLanguageNames.xml
+++ b/tests/PHPUnit/System/expected/test_apiGetReportMetadata_year__LanguagesManager.getAvailableLanguageNames.xml
@@ -241,6 +241,11 @@
<english_name>Thai</english_name>
</row>
<row>
+ <code>tl</code>
+ <name>Tagalog</name>
+ <english_name>Tagalog</english_name>
+ </row>
+ <row>
<code>tr</code>
<name>Türkçe</name>
<english_name>Turkish</english_name>
diff --git a/tests/PHPUnit/System/expected/test_csvExport__Live.getLastVisitsDetails_day.csv b/tests/PHPUnit/System/expected/test_csvExport__Live.getLastVisitsDetails_day.csv
index ca2eb26566..5bec541cf6 100644
--- a/tests/PHPUnit/System/expected/test_csvExport__Live.getLastVisitsDetails_day.csv
+++ b/tests/PHPUnit/System/expected/test_csvExport__Live.getLastVisitsDetails_day.csv
Binary files differ
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_LiveEcommerceStatusOrdered__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_LiveEcommerceStatusOrdered__Live.getLastVisitsDetails_day.xml
index 46d72dcf04..76f06919db 100755
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_LiveEcommerceStatusOrdered__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_LiveEcommerceStatusOrdered__Live.getLastVisitsDetails_day.xml
@@ -79,8 +79,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -104,14 +112,6 @@
<location>Poland</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -290,8 +290,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -315,14 +323,6 @@
<location>Poland</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems__Live.getLastVisitsDetails_day.xml
index 9d33118b4c..d12d299554 100755
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems__Live.getLastVisitsDetails_day.xml
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems__Live.getLastVisitsDetails_day.xml
@@ -155,8 +155,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -180,14 +188,6 @@
<location>Poland</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -485,8 +485,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -510,14 +518,6 @@
<location>Poland</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
@@ -701,8 +701,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -726,14 +734,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>normal</screenType>
<resolution>1024x768</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_csv__ScheduledReports.generateReport_week.original.csv b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_csv__ScheduledReports.generateReport_week.original.csv
index ad3cd28109..e629ceabf6 100644
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_csv__ScheduledReports.generateReport_week.original.csv
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_csv__ScheduledReports.generateReport_week.original.csv
@@ -75,14 +75,6 @@ Screen Resolution
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
1024x768,5,16,80%,3.2,00:22:49,20%
-Visitor Browser
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Firefox,5,16,80%,3.2,00:22:49,20%
-
-Browser Version
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Firefox 3.6,5,16,80%,3.2,00:22:49,20%
-
Browser Plugins
label,nb_visits,nb_visits_percentage
Cookie,5,100%
@@ -100,23 +92,10 @@ Normal / Widescreen
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Normal,5,16,80%,3.2,00:22:49,20%
-Operating System
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Windows XP,5,16,80%,3.2,00:22:49,20%
-
Visitor Configuration
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Windows XP / Firefox / 1024x768,5,16,80%,3.2,00:22:49,20%
-Operating system family
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Windows,5,16,80%,3.2,00:22:49,20%
-
-Mobile vs Desktop
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Desktop,5,16,80%,3.2,00:22:49,20%
-Mobile,0,0,0%,0,00:00:00,0%
-
Browser language
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Polish,4,12,75%,3,00:25:32,25%
@@ -499,10 +478,18 @@ Device brand
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,5,16,80%,3.2,00:22:49,20%
+Visitor Browser
+label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
+Firefox,5,16,80%,3.2,00:22:49,20%
+
Device model
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Unknown,5,16,80%,3.2,00:22:49,20%
+Browser version
+label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
+Firefox 3.6,5,16,80%,3.2,00:22:49,20%
+
Operating System families
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Windows,5,16,80%,3.2,00:22:49,20%
@@ -511,14 +498,6 @@ Operating System versions
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Windows XP,5,16,80%,3.2,00:22:49,20%
-Browser families
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Firefox,5,16,80%,3.2,00:22:49,20%
-
-Browser versions
-label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
-Firefox 3.6,5,16,80%,3.2,00:22:49,20%
-
Browser engines
label,nb_visits,nb_actions,conversion_rate,nb_actions_per_visit,avg_time_on_site,bounce_rate
Gecko (Firefox),5,16,80%,3.2,00:22:49,20%
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_week.original.html b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_week.original.html
index f91034a651..2a81f9f668 100644
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_week.original.html
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__ScheduledReports.generateReport_week.original.html
@@ -50,46 +50,21 @@
</a>
</li>
<li>
- <a href="#UserSettings_getBrowser" style="text-decoration:none; color: rgb(68,68,68);">
- Visitor Browser
- </a>
- </li>
- <li>
- <a href="#UserSettings_getBrowserVersion" style="text-decoration:none; color: rgb(68,68,68);">
- Browser Version
- </a>
- </li>
- <li>
<a href="#UserSettings_getPlugin" style="text-decoration:none; color: rgb(68,68,68);">
Browser Plugins
</a>
</li>
<li>
- <a href="#UserSettings_getWideScreen" style="text-decoration:none; color: rgb(68,68,68);">
+ <a href="#UserSettings_getScreenType" style="text-decoration:none; color: rgb(68,68,68);">
Normal / Widescreen
</a>
</li>
<li>
- <a href="#UserSettings_getOS" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System
- </a>
- </li>
- <li>
<a href="#UserSettings_getConfiguration" style="text-decoration:none; color: rgb(68,68,68);">
Visitor Configuration
</a>
</li>
<li>
- <a href="#UserSettings_getOSFamily" style="text-decoration:none; color: rgb(68,68,68);">
- Operating system family
- </a>
- </li>
- <li>
- <a href="#UserSettings_getMobileVsDesktop" style="text-decoration:none; color: rgb(68,68,68);">
- Mobile vs Desktop
- </a>
- </li>
- <li>
<a href="#UserSettings_getLanguage" style="text-decoration:none; color: rgb(68,68,68);">
Browser language
</a>
@@ -345,28 +320,28 @@
</a>
</li>
<li>
- <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
- Device model
+ <a href="#DevicesDetection_getBrowsers" style="text-decoration:none; color: rgb(68,68,68);">
+ Visitor Browser
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System families
+ <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Browser version
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System versions
+ <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
+ Device model
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Browser families
+ <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System families
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Browser versions
+ <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System versions
</a>
</li>
<li>
@@ -2025,142 +2000,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getBrowser" style="color: rgb(126,115,99); font-size: 11pt;">
- Visitor Browser
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getBrowserVersion" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser Version
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser version&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getPlugin" style="color: rgb(126,115,99); font-size: 11pt;">
Browser Plugins
</h2>
@@ -2322,7 +2161,7 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getWideScreen" style="color: rgb(126,115,99); font-size: 11pt;">
+<h2 id="UserSettings_getScreenType" style="color: rgb(126,115,99); font-size: 11pt;">
Normal / Widescreen
</h2>
@@ -2390,74 +2229,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOS" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getConfiguration" style="color: rgb(126,115,99); font-size: 11pt;">
Visitor Configuration
</h2>
@@ -2524,167 +2295,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOSFamily" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating system family
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system family&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getMobileVsDesktop" style="color: rgb(126,115,99); font-size: 11pt;">
- Mobile vs Desktop
-</h2>
-
- <img alt=""
- src="data:image/png;base64,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"
- height="200"
- width="700"/>
-
- <br/>
- <br/>
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Mobile vs Desktop&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/normal.gif'>
- &nbsp;
- Desktop </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/mobile.gif'>
- &nbsp;
- Mobile </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getLanguage" style="color: rgb(126,115,99); font-size: 11pt;">
Browser language
</h2>
@@ -6925,12 +6535,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
- Device model
+<h2 id="DevicesDetection_getBrowsers" style="color: rgb(126,115,99); font-size: 11pt;">
+ Visitor Browser
</h2>
<img alt=""
- src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAADICAIAAACF9KXqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF7UlEQVR4nO3dP24jVQDH8QmbNCuhKBVSAtpibkC2hYIDIOUAVPRItPQguj0BHfWegCPgE6BpgIwEEooEUigiMRQWZjJx4p8TO+M3/nwq/xk7b3c1O9+8N2MfdF1XAQCs8s7YAwAAyiAaAICIaAAAIqIBAIiIBgAgIhoAgIhoAAAi+xUNdV0vfXDp4w+/CgD2zX5Fw32apsmf1RAA7KfDsQewSd989+Pgka8+f92/2zRNXdf9CBjcBQDuM6lo+OmXP29ubhZ3j46OLi8vz87OVr7wbkksbg86Y/7UYoP5s/2Nn/YnAIDdNaloqKrq+vp6cfv4+Lht2yQa+h4IiGpZQ5i3AGBP7N05Df25geQYv1YEKAYAJmzvomGleVWEZzuutTEAFG1qyxMvX758+pvMJwzmKRBORYQbA0C5JhUNF5/U7eXlys0WKxTJlZb5lEPlnAYAJm1S0fDpx6+q6tUT32StA79KAGB/TCoaNuLuVZRLL6C4b+PnGSQAPL+DruvGHgMAUABXTwAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBApJhPhPTBi1AW+ywUp/95x0s3KCMaBl/x4BsfYMfZZ6E4yX5qeQLYPIkAZQnLvoyZBgBgq5IlRdEAbMvK9VFgdyRLiqIB2JbFfzrOaYBpcE4DABARDcDm9RdHgck46Lpu7DFEXPMNZbHPQlmSfbaYaAAAxmV5AgCIiAYAICIaAICIaAAAIqIBAIiIBgAgUlg0zGazsYcApNq2bdt27FEAqZUH2cKiAQAYi2gAACKiAQCIiAYAICIaAICIaAAAIqIBAIiIBgAgIhoAgIhoAAAiogEAiIgGACAiGgCAiGgAACKiAQCIHI49gLX9+ttfYw8BiPz+x99VVf3zwj7Ls3r/vXfHHsJklRcNX3z7w9hDAGB3vX1zMfYQJsvyBAAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQOQx0VDX9cbHAQDsuMPFrbqum6bpP3f3EQAowt3fbx3Rnu5w9SYAUCCVsHGrlyfmsVb/575n725T91S3o29w++EfAQDsgmimob9OMTje9x8fbNNPvJUpcN9bAcDj9A89DisbEZ0IufTvenBoX/nv0TTNYkZhcDt5OQDkmttMY2/EIy+5NBkAAPvmkdGg2gBg3/wfDYMOWDmX8IhumL9ksR5hugKALfGb7TbcOhGy3wHJ4fyBA/8gKcQBAM/JYWgbDrquG3sMa5jNZl9///PYowBgd719czH2EEo1m83Oz88f2MB3TwAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQORx7AGv78rPXYw8BiFxdXVVVdXJyMvZAgM0oLxo++vCDsYcARNr2RVVVp6enYw8E2AzLEwBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABEDrquG3sMAEABzDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQORf+Zdxfjze1KoAAAAASUVORK5CYII="
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -6940,7 +6550,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Device model&nbsp;&nbsp;
+ &nbsp;Browser&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6965,7 +6575,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- Unknown </td>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ &nbsp;
+ Firefox </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -6991,12 +6603,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System families
+<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Browser version
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -7006,7 +6618,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System families&nbsp;&nbsp;
+ &nbsp;Browser version&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -7031,9 +6643,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WI7.gif'>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
&nbsp;
- Windows </td>
+ Firefox 3.6 </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -7059,12 +6671,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System versions
+<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
+ Device model
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAADICAIAAACF9KXqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF7UlEQVR4nO3dP24jVQDH8QmbNCuhKBVSAtpibkC2hYIDIOUAVPRItPQguj0BHfWegCPgE6BpgIwEEooEUigiMRQWZjJx4p8TO+M3/nwq/xk7b3c1O9+8N2MfdF1XAQCs8s7YAwAAyiAaAICIaAAAIqIBAIiIBgAgIhoAgIhoAAAi+xUNdV0vfXDp4w+/CgD2zX5Fw32apsmf1RAA7KfDsQewSd989+Pgka8+f92/2zRNXdf9CBjcBQDuM6lo+OmXP29ubhZ3j46OLi8vz87OVr7wbkksbg86Y/7UYoP5s/2Nn/YnAIDdNaloqKrq+vp6cfv4+Lht2yQa+h4IiGpZQ5i3AGBP7N05Df25geQYv1YEKAYAJmzvomGleVWEZzuutTEAFG1qyxMvX758+pvMJwzmKRBORYQbA0C5JhUNF5/U7eXlys0WKxTJlZb5lEPlnAYAJm1S0fDpx6+q6tUT32StA79KAGB/TCoaNuLuVZRLL6C4b+PnGSQAPL+DruvGHgMAUABXTwAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBApJhPhPTBi1AW+ywUp/95x0s3KCMaBl/x4BsfYMfZZ6E4yX5qeQLYPIkAZQnLvoyZBgBgq5IlRdEAbMvK9VFgdyRLiqIB2JbFfzrOaYBpcE4DABARDcDm9RdHgck46Lpu7DFEXPMNZbHPQlmSfbaYaAAAxmV5AgCIiAYAICIaAICIaAAAIqIBAIiIBgAgUlg0zGazsYcApNq2bdt27FEAqZUH2cKiAQAYi2gAACKiAQCIiAYAICIaAICIaAAAIqIBAIiIBgAgIhoAgIhoAAAiogEAiIgGACAiGgCAiGgAACKiAQCIHI49gLX9+ttfYw8BiPz+x99VVf3zwj7Ls3r/vXfHHsJklRcNX3z7w9hDAGB3vX1zMfYQJsvyBAAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQOQx0VDX9cbHAQDsuMPFrbqum6bpP3f3EQAowt3fbx3Rnu5w9SYAUCCVsHGrlyfmsVb/575n725T91S3o29w++EfAQDsgmimob9OMTje9x8fbNNPvJUpcN9bAcDj9A89DisbEZ0IufTvenBoX/nv0TTNYkZhcDt5OQDkmttMY2/EIy+5NBkAAPvmkdGg2gBg3/wfDYMOWDmX8IhumL9ksR5hugKALfGb7TbcOhGy3wHJ4fyBA/8gKcQBAM/JYWgbDrquG3sMa5jNZl9///PYowBgd719czH2EEo1m83Oz88f2MB3TwAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQORx7AGv78rPXYw8BiFxdXVVVdXJyMvZAgM0oLxo++vCDsYcARNr2RVVVp6enYw8E2AzLEwBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABEDrquG3sMAEABzDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQORf+Zdxfjze1KoAAAAASUVORK5CYII="
height="200"
width="700"/>
@@ -7074,7 +6686,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System versions&nbsp;&nbsp;
+ &nbsp;Device model&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -7099,9 +6711,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -7127,12 +6737,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser families
+<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System families
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -7142,7 +6752,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser families&nbsp;&nbsp;
+ &nbsp;Operating system family&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -7167,9 +6777,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WI7.gif'>
&nbsp;
- Firefox </td>
+ Windows </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -7195,12 +6805,12 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser versions
+<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System versions
</h2>
<img alt=""
- src="data:image/png;base64,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"
+ src="data:image/png;base64,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"
height="200"
width="700"/>
@@ -7210,7 +6820,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser versions&nbsp;&nbsp;
+ &nbsp;Operating System versions&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -7235,9 +6845,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WXP.gif'>
&nbsp;
- Firefox 3.6 </td>
+ Windows XP </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_week.original.html b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_week.original.html
index 5116a93633..e87b70f40d 100644
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_week.original.html
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__ScheduledReports.generateReport_week.original.html
@@ -50,46 +50,21 @@
</a>
</li>
<li>
- <a href="#UserSettings_getBrowser" style="text-decoration:none; color: rgb(68,68,68);">
- Visitor Browser
- </a>
- </li>
- <li>
- <a href="#UserSettings_getBrowserVersion" style="text-decoration:none; color: rgb(68,68,68);">
- Browser Version
- </a>
- </li>
- <li>
<a href="#UserSettings_getPlugin" style="text-decoration:none; color: rgb(68,68,68);">
Browser Plugins
</a>
</li>
<li>
- <a href="#UserSettings_getWideScreen" style="text-decoration:none; color: rgb(68,68,68);">
+ <a href="#UserSettings_getScreenType" style="text-decoration:none; color: rgb(68,68,68);">
Normal / Widescreen
</a>
</li>
<li>
- <a href="#UserSettings_getOS" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System
- </a>
- </li>
- <li>
<a href="#UserSettings_getConfiguration" style="text-decoration:none; color: rgb(68,68,68);">
Visitor Configuration
</a>
</li>
<li>
- <a href="#UserSettings_getOSFamily" style="text-decoration:none; color: rgb(68,68,68);">
- Operating system family
- </a>
- </li>
- <li>
- <a href="#UserSettings_getMobileVsDesktop" style="text-decoration:none; color: rgb(68,68,68);">
- Mobile vs Desktop
- </a>
- </li>
- <li>
<a href="#UserSettings_getLanguage" style="text-decoration:none; color: rgb(68,68,68);">
Browser language
</a>
@@ -370,28 +345,28 @@
</a>
</li>
<li>
- <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
- Device model
+ <a href="#DevicesDetection_getBrowsers" style="text-decoration:none; color: rgb(68,68,68);">
+ Visitor Browser
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System families
+ <a href="#DevicesDetection_getModel" style="text-decoration:none; color: rgb(68,68,68);">
+ Device model
</a>
</li>
<li>
- <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Operating System versions
+ <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Browser version
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserFamilies" style="text-decoration:none; color: rgb(68,68,68);">
- Browser families
+ <a href="#DevicesDetection_getOsFamilies" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System families
</a>
</li>
<li>
- <a href="#DevicesDetection_getBrowserVersions" style="text-decoration:none; color: rgb(68,68,68);">
- Browser versions
+ <a href="#DevicesDetection_getOsVersions" style="text-decoration:none; color: rgb(68,68,68);">
+ Operating System versions
</a>
</li>
<li>
@@ -2014,130 +1989,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getBrowser" style="color: rgb(126,115,99); font-size: 11pt;">
- Visitor Browser
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getBrowserVersion" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser Version
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Browser version&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
- &nbsp;
- Firefox 3.6 </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getPlugin" style="color: rgb(126,115,99); font-size: 11pt;">
Browser Plugins
</h2>
@@ -2293,7 +2144,7 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getWideScreen" style="color: rgb(126,115,99); font-size: 11pt;">
+<h2 id="UserSettings_getScreenType" style="color: rgb(126,115,99); font-size: 11pt;">
Normal / Widescreen
</h2>
@@ -2355,68 +2206,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOS" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows XP </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getConfiguration" style="color: rgb(126,115,99); font-size: 11pt;">
Visitor Configuration
</h2>
@@ -2477,155 +2266,6 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="UserSettings_getOSFamily" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating system family
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Operating system family&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
- &nbsp;
- Windows </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
-<h2 id="UserSettings_getMobileVsDesktop" style="color: rgb(126,115,99); font-size: 11pt;">
- Mobile vs Desktop
-</h2>
-
-
-
- <table style="border-collapse:collapse; margin-left: 5px;">
- <thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
- <th style="padding: 6px 0;">
- &nbsp;Mobile vs Desktop&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Visits&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Actions per Visit&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Avg. Time on Website&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Bounce Rate&nbsp;&nbsp;
- </th>
- <th style="padding: 6px 0;">
- &nbsp;Conversion Rate&nbsp;&nbsp;
- </th>
- </thead>
- <tbody>
-
- <tr style="">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/normal.gif'>
- &nbsp;
- Desktop </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 5
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 16
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 3.2
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:22:49
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 20%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 80%
- </td>
- </tr>
-
- <tr style="background-color: rgb(249,250,250)">
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/screens/mobile.gif'>
- &nbsp;
- Mobile </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 00:00:00
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- <td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- 0%
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
- Back to top
- </a>
<h2 id="UserSettings_getLanguage" style="color: rgb(126,115,99); font-size: 11pt;">
Browser language
</h2>
@@ -6695,8 +6335,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
- Device model
+<h2 id="DevicesDetection_getBrowsers" style="color: rgb(126,115,99); font-size: 11pt;">
+ Visitor Browser
</h2>
@@ -6704,7 +6344,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Device model&nbsp;&nbsp;
+ &nbsp;Browser&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6729,7 +6369,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- Unknown </td>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ &nbsp;
+ Firefox </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -6755,8 +6397,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System families
+<h2 id="DevicesDetection_getModel" style="color: rgb(126,115,99); font-size: 11pt;">
+ Device model
</h2>
@@ -6764,7 +6406,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System families&nbsp;&nbsp;
+ &nbsp;Device model&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6789,9 +6431,7 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WI7.gif'>
- &nbsp;
- Windows </td>
+ Unknown </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -6817,8 +6457,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Operating System versions
+<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Browser version
</h2>
@@ -6826,7 +6466,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Operating System versions&nbsp;&nbsp;
+ &nbsp;Browser version&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6851,9 +6491,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/os/WXP.gif'>
+ <img src='plugins/UserSettings/images/browsers/FF.gif'>
&nbsp;
- Windows XP </td>
+ Firefox 3.6 </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -6879,8 +6519,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser families
+<h2 id="DevicesDetection_getOsFamilies" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System families
</h2>
@@ -6888,7 +6528,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser families&nbsp;&nbsp;
+ &nbsp;Operating system family&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6913,9 +6553,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WI7.gif'>
&nbsp;
- Firefox </td>
+ Windows </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
@@ -6941,8 +6581,8 @@
<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt;" href="#reportTop">
Back to top
</a>
-<h2 id="DevicesDetection_getBrowserVersions" style="color: rgb(126,115,99); font-size: 11pt;">
- Browser versions
+<h2 id="DevicesDetection_getOsVersions" style="color: rgb(126,115,99); font-size: 11pt;">
+ Operating System versions
</h2>
@@ -6950,7 +6590,7 @@
<table style="border-collapse:collapse; margin-left: 5px;">
<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
<th style="padding: 6px 0;">
- &nbsp;Browser versions&nbsp;&nbsp;
+ &nbsp;Operating System versions&nbsp;&nbsp;
</th>
<th style="padding: 6px 0;">
&nbsp;Visits&nbsp;&nbsp;
@@ -6975,9 +6615,9 @@
<tr style="">
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
- <img src='plugins/UserSettings/images/browsers/FF.gif'>
+ <img src='plugins/UserSettings/images/os/WXP.gif'>
&nbsp;
- Firefox 3.6 </td>
+ Windows XP </td>
<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
5
</td>
diff --git a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_week.original.pdf b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_week.original.pdf
index 3db8e7ed77..1a69564d4d 100644
--- a/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_week.original.pdf
+++ b/tests/PHPUnit/System/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__ScheduledReports.generateReport_week.original.pdf
Binary files differ
diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_day.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_day.xml
new file mode 100644
index 0000000000..106f23f16b
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_day.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results>
+ <result date="2009-01-04" />
+ <result date="2009-01-05" />
+ <result date="2009-01-06" />
+ <result date="2009-01-07" />
+ <result date="2009-01-08" />
+ <result date="2009-01-09" />
+ <result date="2009-01-10" />
+</results> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_week.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_week.xml
new file mode 100644
index 0000000000..5cfb246edc
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__DevicesDetection.getBrowsers_week.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results>
+ <result date="From 2008-12-29 to 2009-01-04" />
+ <result date="From 2009-01-05 to 2009-01-11" />
+ <result date="From 2009-01-12 to 2009-01-18" />
+ <result date="From 2009-01-19 to 2009-01-25" />
+ <result date="From 2009-01-26 to 2009-02-01" />
+ <result date="From 2009-02-02 to 2009-02-08" />
+ <result date="From 2009-02-09 to 2009-02-15" />
+</results> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_day.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_day.xml
new file mode 100644
index 0000000000..106f23f16b
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_day.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results>
+ <result date="2009-01-04" />
+ <result date="2009-01-05" />
+ <result date="2009-01-06" />
+ <result date="2009-01-07" />
+ <result date="2009-01-08" />
+ <result date="2009-01-09" />
+ <result date="2009-01-10" />
+</results> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_week.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_week.xml
new file mode 100644
index 0000000000..5cfb246edc
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__UserSettings.getScreenType_week.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<results>
+ <result date="From 2008-12-29 to 2009-01-04" />
+ <result date="From 2009-01-05 to 2009-01-11" />
+ <result date="From 2009-01-12 to 2009-01-18" />
+ <result date="From 2009-01-19 to 2009-01-25" />
+ <result date="From 2009-01-26 to 2009-02-01" />
+ <result date="From 2009-02-02 to 2009-02-08" />
+ <result date="From 2009-02-09 to 2009-02-15" />
+</results> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_noVisit__DevicesDetection.getBrowsers_day.xml b/tests/PHPUnit/System/expected/test_noVisit__DevicesDetection.getBrowsers_day.xml
new file mode 100644
index 0000000000..c234bed59e
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit__DevicesDetection.getBrowsers_day.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result /> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_noVisit__UserSettings.getScreenType_day.xml b/tests/PHPUnit/System/expected/test_noVisit__UserSettings.getScreenType_day.xml
new file mode 100644
index 0000000000..c234bed59e
--- /dev/null
+++ b/tests/PHPUnit/System/expected/test_noVisit__UserSettings.getScreenType_day.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<result /> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisits.xml b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisits.xml
index e030350ae3..53e26b56a6 100644
--- a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisits.xml
+++ b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisits.xml
@@ -49,8 +49,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -74,14 +82,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
@@ -164,8 +164,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -189,14 +197,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
@@ -339,8 +339,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -364,14 +372,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisitsDetails_range.xml b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisitsDetails_range.xml
index e030350ae3..53e26b56a6 100644
--- a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisitsDetails_range.xml
+++ b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getLastVisitsDetails_range.xml
@@ -49,8 +49,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -74,14 +82,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
@@ -164,8 +164,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -189,14 +197,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
@@ -339,8 +339,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.6</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.6</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -364,14 +372,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.6</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.6</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getVisitorProfile.xml b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getVisitorProfile.xml
index 3001bf7177..8cef8c5e23 100644
--- a/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getVisitorProfile.xml
+++ b/tests/PHPUnit/System/expected/test_periodIsRange_dateIsLastN_MetadataAndNormalAPI__Live.getVisitorProfile.xml
@@ -92,8 +92,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -117,14 +125,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
@@ -208,8 +208,16 @@
</row>
</customVariables>
<deviceType>Desktop</deviceType>
+ <operatingSystem>Windows XP</operatingSystem>
+ <operatingSystemCode>WXP</operatingSystemCode>
+ <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
<browserFamily>Gecko</browserFamily>
<browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription>
+ <browser>Firefox 3.0</browser>
+ <browserName>Firefox</browserName>
+ <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
+ <browserCode>FF</browserCode>
+ <browserVersion>3.0</browserVersion>
<events>0</events>
<provider>Unknown</provider>
<providerName>Unknown</providerName>
@@ -233,14 +241,6 @@
<location>France</location>
<latitude />
<longitude />
- <operatingSystem>Windows XP</operatingSystem>
- <operatingSystemCode>WXP</operatingSystemCode>
- <operatingSystemShortName>Win XP</operatingSystemShortName>
- <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon>
- <browserName>Firefox 3.0</browserName>
- <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon>
- <browserCode>FF</browserCode>
- <browserVersion>3.0</browserVersion>
<screenType>dual</screenType>
<resolution>1111x222</resolution>
<screenTypeIcon>plugins/UserSettings/images/screens/dual.gif</screenTypeIcon>
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getBrowserVersion_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getBrowserVersions_day.xml
index 72dab998db..a968371537 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getBrowserVersion_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getBrowserVersions_day.xml
@@ -11,7 +11,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
- <shortLabel>Firefox 6.0</shortLabel>
</row>
<row>
<label>Internet Explorer 9.0</label>
@@ -24,7 +23,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/IE.gif</logo>
- <shortLabel>Internet Explorer 9.0</shortLabel>
</row>
<row>
<label>Others</label>
@@ -37,6 +35,5 @@
<bounce_count>45</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
- <shortLabel>-1</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getOS_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getOsVersions_day.xml
index 803dcc4819..c58f00fa96 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getOS_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting__DevicesDetection.getOsVersions_day.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux</label>
+ <label>GNU/Linux</label>
<nb_uniq_visitors>4</nb_uniq_visitors>
<nb_visits>20</nb_visits>
<nb_actions>20</nb_actions>
@@ -11,10 +11,9 @@
<bounce_count>20</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/LIN.gif</logo>
- <shortLabel>Linux</shortLabel>
</row>
<row>
- <label>Android</label>
+ <label>Android 4.0</label>
<nb_uniq_visitors>3</nb_uniq_visitors>
<nb_visits>15</nb_visits>
<nb_actions>15</nb_actions>
@@ -24,7 +23,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/AND.gif</logo>
- <shortLabel>Android</shortLabel>
</row>
<row>
<label>Others</label>
@@ -37,6 +35,5 @@
<bounce_count>40</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/UNK.gif</logo>
- <shortLabel>-1</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getConfiguration_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getConfiguration_day.xml
index 9f4d67971d..b90214c2e9 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getConfiguration_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting__UserSettings.getConfiguration_day.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux / Firefox / 1920x1080</label>
+ <label>GNU/Linux / Firefox / 1920x1080</label>
<nb_uniq_visitors>2</nb_uniq_visitors>
<nb_visits>10</nb_visits>
<nb_actions>10</nb_actions>
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getBrowserVersion_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getBrowserVersions_day.xml
index 72dab998db..a968371537 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getBrowserVersion_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getBrowserVersions_day.xml
@@ -11,7 +11,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/FF.gif</logo>
- <shortLabel>Firefox 6.0</shortLabel>
</row>
<row>
<label>Internet Explorer 9.0</label>
@@ -24,7 +23,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/IE.gif</logo>
- <shortLabel>Internet Explorer 9.0</shortLabel>
</row>
<row>
<label>Others</label>
@@ -37,6 +35,5 @@
<bounce_count>45</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/browsers/UNK.gif</logo>
- <shortLabel>-1</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getOS_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getOsVersions_day.xml
index 803dcc4819..c58f00fa96 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getOS_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__DevicesDetection.getOsVersions_day.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux</label>
+ <label>GNU/Linux</label>
<nb_uniq_visitors>4</nb_uniq_visitors>
<nb_visits>20</nb_visits>
<nb_actions>20</nb_actions>
@@ -11,10 +11,9 @@
<bounce_count>20</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/LIN.gif</logo>
- <shortLabel>Linux</shortLabel>
</row>
<row>
- <label>Android</label>
+ <label>Android 4.0</label>
<nb_uniq_visitors>3</nb_uniq_visitors>
<nb_visits>15</nb_visits>
<nb_actions>15</nb_actions>
@@ -24,7 +23,6 @@
<bounce_count>15</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/AND.gif</logo>
- <shortLabel>Android</shortLabel>
</row>
<row>
<label>Others</label>
@@ -37,6 +35,5 @@
<bounce_count>40</bounce_count>
<nb_visits_converted>0</nb_visits_converted>
<logo>plugins/UserSettings/images/os/UNK.gif</logo>
- <shortLabel>-1</shortLabel>
</row>
</result> \ No newline at end of file
diff --git a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getConfiguration_day.xml b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getConfiguration_day.xml
index 9f4d67971d..b90214c2e9 100644
--- a/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getConfiguration_day.xml
+++ b/tests/PHPUnit/System/expected/test_reportLimiting_rankingQuery__UserSettings.getConfiguration_day.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<result>
<row>
- <label>Linux / Firefox / 1920x1080</label>
+ <label>GNU/Linux / Firefox / 1920x1080</label>
<nb_uniq_visitors>2</nb_uniq_visitors>
<nb_visits>10</nb_visits>
<nb_actions>10</nb_actions>
diff --git a/tests/PHPUnit/TestingEnvironment.php b/tests/PHPUnit/TestingEnvironment.php
index c52556fa7d..98e1566c5d 100644
--- a/tests/PHPUnit/TestingEnvironment.php
+++ b/tests/PHPUnit/TestingEnvironment.php
@@ -249,7 +249,7 @@ class Piwik_TestingEnvironment
'contents' => $outputContent
);
- file_put_contents($outputFile, Common::json_encode($outputContents));
+ file_put_contents($outputFile, json_encode($outputContents));
});
}
diff --git a/tests/PHPUnit/UI b/tests/PHPUnit/UI
-Subproject 92262f979840f6ac0935b769bf73bda47bf8af0
+Subproject bcdeaa3b62f66494d427239ffc9241020284517
diff --git a/tests/PHPUnit/Unit/CliMulti/OutputTest.php b/tests/PHPUnit/Unit/CliMulti/OutputTest.php
index 6dbcf12179..c0105c67c3 100644
--- a/tests/PHPUnit/Unit/CliMulti/OutputTest.php
+++ b/tests/PHPUnit/Unit/CliMulti/OutputTest.php
@@ -9,12 +9,15 @@
namespace Piwik\Tests\Unit\CliMulti;
use Piwik\CliMulti\Output;
+use Piwik\Tests\Framework\Mock\File;
+use Piwik\Tests\Framework\TestCase\UnitTestCase;
use Piwik\Url;
/**
* @group Core
+ * @group CliMulti
*/
-class OutputTest extends \PHPUnit_Framework_TestCase
+class OutputTest extends UnitTestCase
{
/**
* @var Output
@@ -23,6 +26,7 @@ class OutputTest extends \PHPUnit_Framework_TestCase
public function setUp()
{
+ parent::setup();
Url::setHost(false);
$this->output = new Output('myid');
}
@@ -30,6 +34,7 @@ class OutputTest extends \PHPUnit_Framework_TestCase
public function tearDown()
{
$this->output->destroy();
+ parent::tearDown();
}
/**
@@ -41,6 +46,11 @@ class OutputTest extends \PHPUnit_Framework_TestCase
new Output('../../');
}
+ public function test_getOutputId()
+ {
+ $this->assertSame('myid', $this->output->getOutputId());
+ }
+
public function test_exists_ShouldReturnsFalse_IfNothingWrittenYet()
{
$this->assertFalse($this->output->exists());
@@ -54,6 +64,27 @@ class OutputTest extends \PHPUnit_Framework_TestCase
$this->assertGreaterThan(strlen($expectedEnd), strlen($this->output->getPathToFile()));
}
+ public function test_isAbormal_ShouldReturnFalse_IfFileDoesNotExist()
+ {
+ $this->assertFalse($this->output->isAbnormal());
+ }
+
+ public function test_isAbormal_ShouldReturnTrue_IfFilesizeIsNotTooBig()
+ {
+ File::setFileSize(1024 * 1024 * 99);
+ File::setFileExists(true);
+
+ $this->assertFalse($this->output->isAbnormal());
+ }
+
+ public function test_isAbormal_ShouldReturnTrue_IfFilesizeIsTooBig()
+ {
+ File::setFileSize(1024 * 1024 * 101);
+ File::setFileExists(true);
+
+ $this->assertTrue($this->output->isAbnormal());
+ }
+
public function test_exists_ShouldReturnTrue_IfSomethingIsWritten()
{
$this->output->write('test');
diff --git a/tests/PHPUnit/Unit/CliMulti/ProcessTest.php b/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
index 3db93081c6..68dbd41c43 100644
--- a/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
+++ b/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
@@ -9,12 +9,15 @@
namespace Piwik\Tests\Unit\CliMulti;
use Piwik\CliMulti\Process;
+use Piwik\Tests\Framework\Mock\File;
+use Piwik\Tests\Framework\TestCase\UnitTestCase;
use ReflectionProperty;
/**
* @group Core
+ * @group CliMulti
*/
-class ProcessTest extends \PHPUnit_Framework_TestCase
+class ProcessTest extends UnitTestCase
{
/**
* @var Process
@@ -23,6 +26,7 @@ class ProcessTest extends \PHPUnit_Framework_TestCase
public function setUp()
{
+ parent::setup();
$this->process = new Process('testPid');
}
@@ -40,6 +44,11 @@ class ProcessTest extends \PHPUnit_Framework_TestCase
new Process('../../htaccess');
}
+ public function test_getPid()
+ {
+ $this->assertSame('testPid', $this->process->getPid());
+ }
+
public function test_construct_shouldBeNotStarted_IfPidJustCreated()
{
$this->assertFalse($this->process->hasStarted());
@@ -85,6 +94,22 @@ class ProcessTest extends \PHPUnit_Framework_TestCase
$this->assertTrue($this->process->hasFinished());
}
+ public function test_isRunning_ShouldMarkProcessAsFinished_IfPidFileIsTooBig()
+ {
+ if (! Process::isSupported()) {
+ $this->markTestSkipped('Not supported');
+ }
+
+ $this->process->startProcess();
+ $this->assertTrue($this->process->isRunning());
+ $this->assertFalse($this->process->hasFinished());
+
+ File::setFileSize(505);
+
+ $this->assertFalse($this->process->isRunning());
+ $this->assertTrue($this->process->hasFinished());
+ }
+
public function test_finishProcess_ShouldNotThrowError_IfNotStartedBefore()
{
$this->process->finishProcess();
diff --git a/tests/PHPUnit/Unit/CommonTest.php b/tests/PHPUnit/Unit/CommonTest.php
index 22ee2c52da..de1b6a2d24 100644
--- a/tests/PHPUnit/Unit/CommonTest.php
+++ b/tests/PHPUnit/Unit/CommonTest.php
@@ -15,6 +15,8 @@ use Piwik\Filesystem;
/**
* @backupGlobals enabled
+ * @group Common
+ * @group Core_CommonTest
*/
class Core_CommonTest extends PHPUnit_Framework_TestCase
{
@@ -96,7 +98,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* @dataProvider getInputValues
- * @group Core
*/
public function testSanitizeInputValues($input, $output)
{
@@ -113,7 +114,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* emptyvarname => exception
- * @group Core
*/
public function testGetRequestVarEmptyVarName()
{
@@ -128,7 +128,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* nodefault Notype Novalue => exception
- * @group Core
*/
public function testGetRequestVarNoDefaultNoTypeNoValue()
{
@@ -142,7 +141,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* nodefault Notype WithValue => value
- * @group Core
*/
public function testGetRequestVarNoDefaultNoTypeWithValue()
{
@@ -151,24 +149,33 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
}
+ public function testGetRequestVar_GetStringFloatGiven()
+ {
+ $_GET['test'] = 1413.431413;
+ $value = Common::getRequestVar('test', null, 'string');
+ $this->assertEquals('1413.431413', $value);
+ }
+
+ public function testGetRequestVar_GetStringIntegerGiven()
+ {
+ $_GET['test'] = 1413;
+ $value = Common::getRequestVar('test', null, 'string');
+ $this->assertEquals('1413', $value);
+ }
+
/**
* nodefault Withtype WithValue => exception cos type not matching
- * @group Core
+ * @expectedException \Exception
+ * @expectedExceptionMessage The parameter 'test' isn't set in the Request
*/
public function testGetRequestVarNoDefaultWithTypeWithValue()
{
- try {
- $_GET['test'] = 1413.431413;
- Common::getRequestVar('test', null, 'string');
- } catch (Exception $e) {
- return;
- }
- $this->fail('Expected exception not raised');
+ $_GET['test'] = false;
+ Common::getRequestVar('test', null, 'string');
}
/**
* nodefault Withtype WithValue => exception cos type not matching
- * @group Core
*/
public function testGetRequestVarNoDefaultWithTypeWithValue2()
{
@@ -246,9 +253,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
}
}
- /**
- * @group Core
- */
public function testIsValidFilenameValidValues()
{
$valid = array(
@@ -263,9 +267,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
}
}
- /**
- * @group Core
- */
public function testIsValidFilenameNotValidValues()
{
$notvalid = array(
@@ -426,7 +427,6 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* @dataProvider getLanguageDataToExtractLanguageRegionCode
- * @group Core
*/
public function testExtractLanguageAndRegionCodeFromBrowserLanguage($browserLanguage, $validLanguages, $expected)
{
@@ -461,16 +461,12 @@ class Core_CommonTest extends PHPUnit_Framework_TestCase
/**
* @dataProvider getLanguageDataToExtractLanguageCode
- * @group Core
*/
public function testExtractLanguageCodeFromBrowserLanguage($browserLanguage, $validLanguages, $expected)
{
$this->assertEquals($expected, Common::extractLanguageCodeFromBrowserLanguage($browserLanguage, $validLanguages), "test with {$browserLanguage} failed, expected {$expected}");
}
- /**
- * @group Core
- */
public function testSearchEnginesDefinedCorrectly()
{
include "DataFiles/SearchEngines.php";
diff --git a/tests/PHPUnit/Unit/DeprecatedMethodsTest.php b/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
index 64411e3f37..115a33a7cf 100644
--- a/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
+++ b/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
@@ -22,7 +22,7 @@ class DeprecatedMethodsTest extends \PHPUnit_Framework_TestCase
{
public function test_version2_0_4()
{
- $validTill = '2014-11-25';
+ $validTill = '2015-02-25';
$this->assertDeprecatedMethodIsRemoved('\Piwik\Period', 'factory', $validTill);
$this->assertDeprecatedMethodIsRemoved('\Piwik\Config', 'getConfigSuperUserForBackwardCompatibility', $validTill);
$this->assertDeprecatedMethodIsRemoved('\Piwik\Menu\MenuAdmin', 'addEntry', $validTill);
@@ -55,6 +55,16 @@ class DeprecatedMethodsTest extends \PHPUnit_Framework_TestCase
$this->assertDeprecatedMethodIsRemoved('Piwik\IP', 'getHostByAddr', $validTill);
$this->assertDeprecatedMethodIsRemoved('Piwik\SettingsPiwik', 'rewriteTmpPathWithInstanceId', $validTill);
+ $validTill = '2015-05-01';
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getBrowserVersion', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getBrowser', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getOS', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getOSFamily', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getBrowserType', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getMobileVsDesktop', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\API', 'getWideScreen', $validTill);
+ $this->assertDeprecatedMethodIsRemoved('Piwik\Plugins\UserSettings\UserSettings', 'mapDeprecatedActions', $validTill);
+
$this->assertDeprecatedMethodIsRemovedInPiwik3('\Piwik\Menu\MenuAbstract', 'add');
}
@@ -113,4 +123,4 @@ class DeprecatedMethodsTest extends \PHPUnit_Framework_TestCase
$errorMessage = $className . '::' . $method . ' should be removed as the method is deprecated but it is not.';
$this->assertFalse($methodExists, $errorMessage);
}
-} \ No newline at end of file
+}
diff --git a/tests/PHPUnit/Unit/FilesystemTest.php b/tests/PHPUnit/Unit/FilesystemTest.php
index 263a268bbd..4725516a84 100644
--- a/tests/PHPUnit/Unit/FilesystemTest.php
+++ b/tests/PHPUnit/Unit/FilesystemTest.php
@@ -9,11 +9,13 @@
namespace Piwik\Tests\Unit;
use Piwik\Filesystem;
+use Piwik\Tests\Framework\Mock\File;
+use Piwik\Tests\Framework\TestCase\UnitTestCase;
/**
* @group Core
*/
-class FilesystemTest extends \PHPUnit_Framework_TestCase
+class FilesystemTest extends UnitTestCase
{
private $testPath;
@@ -245,4 +247,102 @@ class FilesystemTest extends \PHPUnit_Framework_TestCase
return $this->testPath . '/target';
}
+ public function test_getFileSize_ZeroSize()
+ {
+ File::setFileSize(0);
+
+ $size = Filesystem::getFileSize(__FILE__);
+ $this->assertEquals(0, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'KB');
+ $this->assertEquals(0, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'MB');
+ $this->assertEquals(0, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'GB');
+ $this->assertEquals(0, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'TB');
+ $this->assertEquals(0, $size);
+ }
+
+ public function test_getFileSize_LowSize()
+ {
+ File::setFileSize(1024);
+
+ $size = Filesystem::getFileSize(__FILE__);
+ $this->assertEquals(1024, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'KB');
+ $this->assertEquals(1, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'MB');
+ $this->assertGreaterThanOrEqual(0.0009, $size);
+ $this->assertLessThanOrEqual(0.0011, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'GB');
+ $this->assertGreaterThanOrEqual(0.0000009, $size);
+ $this->assertLessThanOrEqual(0.0000011, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'TB');
+ $this->assertGreaterThanOrEqual(0.0000000009, $size);
+ $this->assertLessThanOrEqual(0.0000000011, $size);
+ }
+
+ public function test_getFileSize_HighSize()
+ {
+ File::setFileSize(1073741824);
+
+ $size = Filesystem::getFileSize(__FILE__, 'B');
+ $this->assertEquals(1073741824, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'KB');
+ $this->assertEquals(1048576, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'MB');
+ $this->assertEquals(1024, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'GB');
+ $this->assertEquals(1, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'TB');
+ $this->assertGreaterThanOrEqual(0.0009, $size);
+ $this->assertLessThanOrEqual(0.0011, $size);
+ }
+
+ public function test_getFileSize_ShouldRecognizeLowerUnits()
+ {
+ File::setFileSize(1073741824);
+
+ $size = Filesystem::getFileSize(__FILE__, 'b');
+ $this->assertEquals(1073741824, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'kb');
+ $this->assertEquals(1048576, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'mB');
+ $this->assertEquals(1024, $size);
+
+ $size = Filesystem::getFileSize(__FILE__, 'Gb');
+ $this->assertEquals(1, $size);
+ }
+
+ /**
+ * @expectedException \Exception
+ * @expectedExceptionMessage Invalid unit given
+ */
+ public function test_getFileSize_ShouldThrowException_IfInvalidUnit()
+ {
+ Filesystem::getFileSize(__FILE__, 'iV');
+ }
+
+ public function test_getFileSize_ShouldReturnNull_IfFileDoesNotExists()
+ {
+ File::setFileExists(false);
+ $size = Filesystem::getFileSize(__FILE__);
+
+ $this->assertNull($size);
+ }
+
} \ No newline at end of file
diff --git a/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php b/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
index 220e90f9a6..b014b0a9f1 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
@@ -10,6 +10,9 @@ namespace Piwik\Tests\Unit\Translate\Filter;
use Piwik\Translate\Filter\ByParameterCount;
+/**
+ * @group ByParameterCountTest
+ */
class ByParameterCountTest extends \PHPUnit_Framework_TestCase
{
public function getFilterTestData()
@@ -44,11 +47,7 @@ class ByParameterCountTest extends \PHPUnit_Framework_TestCase
'key' => 'value',
)
),
- array(
- 'test' => array(
- 'test' => 'test',
- )
- ),
+ array(),
array(
'test' => array(
'key' => 'val%sue',
@@ -97,9 +96,6 @@ class ByParameterCountTest extends \PHPUnit_Framework_TestCase
'empty' => array(
'test' => 't%1$sest'
),
- 'test' => array(
- 'empty' => ' ',
- )
),
array(
'test' => array(
@@ -118,7 +114,8 @@ class ByParameterCountTest extends \PHPUnit_Framework_TestCase
{
$filter = new ByParameterCount($baseTranslations);
$result = $filter->filter($translations);
- $this->assertEquals($expected, $result);
+ $message = sprintf("got %s but expected %s", var_export($result, true), var_export($expected, true));
+ $this->assertEquals($expected, $result, $message);
$this->assertEquals($filteredData, $filter->getFilteredData());
}
}
diff --git a/tests/javascript/index.php b/tests/javascript/index.php
index 802cf492d9..b4e737792d 100644
--- a/tests/javascript/index.php
+++ b/tests/javascript/index.php
@@ -2368,12 +2368,14 @@ function PiwikTest() {
});
test("getRequest()", function() {
- expect(1);
+ expect(2);
var tracker = Piwik.getTracker();
tracker.setCustomData("key is X", "value is Y");
equal( tracker.getRequest('hello=world').indexOf('hello=world&idsite=&rec=1&r='), 0);
+
+ ok( -1 !== tracker.getRequest('hello=world').indexOf('send_image=0'), 'should disable sending image response');
});
// support for setCustomRequestProcessing( customRequestContentProcessingLogic )
diff --git a/tests/resources/OmniFixture-dump.sql.gz b/tests/resources/OmniFixture-dump.sql.gz
index a7151a5d6b..710962a0b7 100644
--- a/tests/resources/OmniFixture-dump.sql.gz
+++ b/tests/resources/OmniFixture-dump.sql.gz
Binary files differ
diff --git a/tests/resources/TestPluginLogClass.php b/tests/resources/TestPluginLogClass.php
index 75f28928c4..3a95fe0cfb 100644
--- a/tests/resources/TestPluginLogClass.php
+++ b/tests/resources/TestPluginLogClass.php
@@ -5,6 +5,7 @@
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
+
namespace Piwik\Plugins\TestPlugin;
use Piwik\Log;
@@ -15,4 +16,4 @@ class TestLoggingUtility
{
Log::warning($message);
}
-} \ No newline at end of file
+}