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
path: root/core
diff options
context:
space:
mode:
authorsgiehl <stefan@piwik.org>2014-05-20 22:44:41 +0400
committersgiehl <stefan@piwik.org>2014-05-20 22:44:41 +0400
commitce3b6eb638d1c3294d4f0a8b63d75395c5b6099d (patch)
tree3f832e2cffba9d1bbd2b8396b875b9c5778365f3 /core
parenta8780b817a744c41f1e729e8d43764389ab490bf (diff)
refs #5114 added detection for yahoo! japan; improved handling for search enginge detection
Diffstat (limited to 'core')
-rw-r--r--core/DataFiles/SearchEngines.php8
-rw-r--r--core/UrlHelper.php10
2 files changed, 16 insertions, 2 deletions
diff --git a/core/DataFiles/SearchEngines.php b/core/DataFiles/SearchEngines.php
index 03209af231..a874e8fd4c 100644
--- a/core/DataFiles/SearchEngines.php
+++ b/core/DataFiles/SearchEngines.php
@@ -943,6 +943,12 @@ if (!isset($GLOBALS['Piwik_SearchEngines'])) {
// X-recherche
'www.x-recherche.com' => array('X-Recherche', 'MOTS', 'cgi-bin/websearch?MOTS={k}'),
+ // Yahoo! Japan
+ 'search.yahoo.co.jp' => array('Yahoo! Japan', 'p', 'search?p={k}'),
+ 'video.search.yahoo.co.jp' => array('Yahoo! Japan Videos', 'p', 'search?p={k}'),
+ 'image.search.yahoo.co.jp' => array('Yahoo! Japan Images', 'p', 'search?p={k}'),
+
+
// Yahoo
'search.yahoo.com' => array('Yahoo!', array('p', 'q'), 'search?p={k}'),
// '*.search.yahoo.com' => array('Yahoo!'), // see built-in helper in Common.php
@@ -953,8 +959,6 @@ if (!isset($GLOBALS['Piwik_SearchEngines'])) {
'espanol.yahoo.com' => array('Yahoo!'),
'qc.yahoo.com' => array('Yahoo!'),
'one.cn.yahoo.com' => array('Yahoo!'),
- 'video.search.yahoo.co.jp' => array('Yahoo!'),
- 'image.search.yahoo.co.jp' => array('Yahoo!'),
// Powered by Yahoo APIs
'www.cercato.it' => array('Yahoo!', 'q'),
diff --git a/core/UrlHelper.php b/core/UrlHelper.php
index 2ce26ba165..b99f457f40 100644
--- a/core/UrlHelper.php
+++ b/core/UrlHelper.php
@@ -286,8 +286,18 @@ class UrlHelper
$searchEngines = Common::getSearchEngineUrls();
$hostPattern = self::getLossyUrl($referrerHost);
+ /*
+ * Try to get the best matching 'host' in definitions
+ * 1. check if host + path matches an definition
+ * 2. check if host only matches
+ * 3. check if host pattern + path matches
+ * 4. check if host pattern matches
+ * 5. special handling
+ */
if (array_key_exists($referrerHost . $referrerPath, $searchEngines)) {
$referrerHost = $referrerHost . $referrerPath;
+ } elseif (array_key_exists($referrerHost, $searchEngines)) {
+ // no need to change host
} elseif (array_key_exists($hostPattern . $referrerPath, $searchEngines)) {
$referrerHost = $hostPattern . $referrerPath;
} elseif (array_key_exists($hostPattern, $searchEngines)) {