4 * External search plugin
6 * Copyright 2004 (c) Guillaume Smet
13 require_once $gfwww.'search/include/SearchManager.class.php';
15 require_once $gfplugins.'externalsearch/include/ExternalSearchEngine.class.php';
17 forge_define_config_item('engines_file','externalsearch',
18 '$core/source_path/plugins/externalsearch/etc/engines.json'
21 class ExternalSearchPlugin extends Plugin {
22 function ExternalSearchPlugin() {
24 $this->name = 'externalsearch';
25 $this->text = 'External Search';
27 $this->hooks[] = 'search_engines';
30 function CallHook($hookname, & $searchManager) {
33 case 'search_engines':
34 $externalSearchEngines = json_decode (file_get_contents(forge_get_config ('engines', 'externalsearch'))) ;
35 foreach($externalSearchEngines AS $name => $url) {
36 $type = SEARCH__TYPE_IS_EXTERNAL.'_'.$name;
37 $searchManager->addSearchEngine(
39 new ExternalSearchEngine($type, $name, str_replace('%web_host%',forge_get_config('web_host'),$url)
49 // c-file-style: "bsd"