[-] BO : Fix #PSCFV-9906 could not register search engines keywords
This commit is contained in:
@@ -83,7 +83,7 @@ class SEKeywords extends ModuleGraph
|
||||
|
||||
public function hookTop($params)
|
||||
{
|
||||
if (!isset($_SERVER['HTTP_REFERER']) || strstr($_SERVER['HTTP_REFERER'], Tools::getHttpHost(false, false)))
|
||||
if (!isset($_SERVER['HTTP_REFERER']) || strpos($_SERVER['HTTP_REFERER'], Tools::getHttpHost(false, false) == 0))
|
||||
return;
|
||||
|
||||
if ($keywords = $this->getKeywords($_SERVER['HTTP_REFERER']))
|
||||
@@ -161,6 +161,7 @@ class SEKeywords extends ModuleGraph
|
||||
$parsedUrl = parse_url($url);
|
||||
if (!isset($parsedUrl['query']) && isset($parsedUrl['fragment']))
|
||||
$parsedUrl['query'] = $parsedUrl['fragment'];
|
||||
|
||||
if (!isset($parsedUrl['query']))
|
||||
return false;
|
||||
|
||||
@@ -173,11 +174,14 @@ class SEKeywords extends ModuleGraph
|
||||
{
|
||||
$kArray = array();
|
||||
preg_match('/[^a-z]'.$varname.'=.+\&'.'/U', $parsedUrl['query'], $kArray);
|
||||
|
||||
if (!isset($kArray[0]) || empty($kArray[0]))
|
||||
preg_match('/[^a-z]'.$varname.'=.+$'.'/', $parsedUrl['query'], $kArray);
|
||||
|
||||
if (!isset($kArray[0]) || empty($kArray[0]))
|
||||
return false;
|
||||
if ($kArray[0][0] == '&')
|
||||
|
||||
if ($kArray[0][0] == '&' && Tools::strlen($kArray[0]) == 1)
|
||||
return false;
|
||||
return urldecode(str_replace('+', ' ', ltrim(substr(rtrim($kArray[0], '&'), strlen($varname) + 1), '=')));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user