| 1 |
<?php |
<?php |
| 2 |
// $Id: serapi.module,v 1.3 2008/11/05 10:10:33 yaph Exp $ |
// $Id: serapi.module,v 1.4 2008/11/05 10:38:04 yaph Exp $ |
| 3 |
error_reporting(E_ALL); |
error_reporting(E_ALL); |
| 4 |
|
|
| 5 |
/** |
/** |
| 25 |
if(!is_array($engines)) { |
if(!is_array($engines)) { |
| 26 |
return false; |
return false; |
| 27 |
} |
} |
| 28 |
|
$host = $url_parts['host']; |
| 29 |
|
$query = $url_parts['query']; |
| 30 |
foreach($engines as $name => $prop) { |
foreach($engines as $name => $prop) { |
| 31 |
if (false !== stripos($url_parts['host'], $prop['host_pattern'])) { |
if (false !== stripos($host, $prop['host_pattern'])) { |
|
$query = $url_parts['query']; |
|
| 32 |
$param = $prop['query_param']; |
$param = $prop['query_param']; |
| 33 |
parse_str($query, $query_parts); |
parse_str($query, $query_parts); |
| 34 |
// check that the query contains the search parameter |
// check that the query contains the search parameter |
| 44 |
$search['string'] = $search_string; |
$search['string'] = $search_string; |
| 45 |
$search['url'] = $referer; |
$search['url'] = $referer; |
| 46 |
$search['engine'] = $name; |
$search['engine'] = $name; |
| 47 |
|
$search['host'] = $host; |
| 48 |
return $search; |
return $search; |
| 49 |
} |
} |
| 50 |
} |
} |
| 107 |
'info' => t('Search Engine Referer Information'), |
'info' => t('Search Engine Referer Information'), |
| 108 |
'weight' => 0 |
'weight' => 0 |
| 109 |
); |
); |
| 110 |
|
// @todo move to a test script |
| 111 |
$blocks[1] = array( |
$blocks[1] = array( |
| 112 |
'info' => t('Search Engine Referer Test'), |
'info' => t('Search Engine Referer Test - Do not show this to your visitors!'), |
| 113 |
'weight' => 0 |
'weight' => 0 |
| 114 |
); |
); |
| 115 |
return $blocks; |
return $blocks; |
| 132 |
function serapi_block_search_engine_information() { |
function serapi_block_search_engine_information() { |
| 133 |
$search_info = serapi_get_search(); |
$search_info = serapi_get_search(); |
| 134 |
if (false !== $search_info) { |
if (false !== $search_info) { |
| 135 |
return var_export($search_info, true); |
return t('You came from @host and search for !search_link.', |
| 136 |
|
array('@host' => $search_info['host'], |
| 137 |
|
'!search_link' => l(check_plain($search['string']), |
| 138 |
|
check_url($search['url']), |
| 139 |
|
array('attributes' => array('rel' => 'nofollow'))) |
| 140 |
|
) |
| 141 |
|
); |
| 142 |
} |
} |
| 143 |
|
return false; |
| 144 |
} |
} |
| 145 |
|
|
| 146 |
/** |
/** |
| 154 |
function serapi_block_search_engine_test() { |
function serapi_block_search_engine_test() { |
| 155 |
$search_info = array_map('serapi_get_search', serapi_get_test_urls()); |
$search_info = array_map('serapi_get_search', serapi_get_test_urls()); |
| 156 |
if (false !== $search_info) { |
if (false !== $search_info) { |
|
var_dump($search_info);die; |
|
| 157 |
return var_export($search_info, true); |
return var_export($search_info, true); |
| 158 |
} |
} |
| 159 |
} |
} |