From 7958a4ac2135dd2ff6dcaccaf46ad4d8e8073eed Mon Sep 17 00:00:00 2001 From: Brett Bieber <brett.bieber@gmail.com> Date: Thu, 15 Apr 2010 14:45:33 +0000 Subject: [PATCH] Allow a cx google custom search engine ID to be specified. --- www/index.php | 12 ++++++++++-- www/searchFunc.js | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/www/index.php b/www/index.php index 0cea7d8..3e812ce 100644 --- a/www/index.php +++ b/www/index.php @@ -18,6 +18,7 @@ if (isset($_GET['u']) && preg_match('/^https?/', $_GET['u']) && filter_var($_GET['u'], FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED) && $scanned = @file_get_contents($_GET['u'])) { + // Add local site search results $scanned = new UNL_Templates_Scanner($scanned); if (isset($scanned->navlinks)) { require_once 'HTMLPurifier.auto.php'; @@ -36,10 +37,17 @@ if (isset($_GET['u']) $page->contactinfo = $purifier->purify($scanned->contactinfo); } } - $context = 'http://www1.unl.edu/search/linkedcse/?u='.$_GET['u']; + + if (isset($_GET['cx'])) { + // Use their custom search engine instead of the linked one. + $context = '"'.htmlentities($_GET['cx']).'"'; + } else { + // Auto-build a custom search engine + $context = '{crefUrl :"http://www1.unl.edu/search/linkedcse/?u='.$_GET['u'].'"}'; + } $page->addScriptDeclaration(' UNL_Search.do_local_search = true; - UNL_Search.local_search_context = "'.$context.'"; + UNL_Search.local_search_context = '.$context.'; '); $local_results = ' <h3 class="sec_header">Local Results</h3> diff --git a/www/searchFunc.js b/www/searchFunc.js index 9484584..888d64b 100644 --- a/www/searchFunc.js +++ b/www/searchFunc.js @@ -34,7 +34,7 @@ function searchInit() { UNL_Search.local_search = new google.search.WebSearch(); //Apply the Custom Search Engine - UNL_Search.local_search.setSiteRestriction({crefUrl : UNL_Search.local_search_context}); + UNL_Search.local_search.setSiteRestriction(UNL_Search.local_search_context); //UNL_Search.local_search.setSiteRestriction('000150017203523626721:-1etga1qfci'); UNL_Search.local_search.setResultSetSize(GSearch.SMALL_RESULTSET) UNL_Search.local_search.setSearchCompleteCallback(UNL_Search, UNL_Search.handleLocalResults) -- GitLab