You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
243 lines
10 KiB
243 lines
10 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<title>#[former]# - YaCy '#[clientname]#': Search Page</title>
|
|
#%env/templates/metas.template%#
|
|
<link rel="alternate" type="application/rss+xml" title="Search for #[former]#" href="yacysearch.rss?query=#[former]#" />
|
|
<link rel="search" type="application/opensearchdescription+xml" title="YaCy Search on '#[clientname]#'" href="http://#[thisaddress]#/opensearchdescription.xml" />
|
|
<link rel="stylesheet" type="text/css" media="screen" href="env/highslide.css" />
|
|
<script type="text/javascript" src="js/ajax.js"></script>
|
|
<script type="text/javascript" src="js/xml.js"></script>
|
|
<script type="text/javascript" src="js/yacysearch.js"></script>
|
|
<script type="text/javascript" src="js/highslide/highslide.js"></script>
|
|
<script type="text/javascript">hs.outlineType = 'rounded-white';</script>
|
|
|
|
<script type="text/javascript">
|
|
function handleArrowKeys(evt) {
|
|
evt = (evt) ? evt : ((window.event) ? event : null);
|
|
if (evt) {
|
|
switch (evt.keyCode) {
|
|
case 9:
|
|
case 33:
|
|
window.location.href = document.getElementById("nextpage").href;
|
|
break;
|
|
case 34:
|
|
window.location.href = document.getElementById("prevpage").href;
|
|
break;
|
|
case 40:
|
|
}
|
|
}
|
|
}
|
|
document.onkeydown = handleArrowKeys;
|
|
</script>
|
|
<script type="text/javascript" src="/env/bootstrap/js/typeahead.jquery.min.js"></script>
|
|
<script type="text/javascript">
|
|
var suggestMatcher = function() {
|
|
return function opensearch(q, cb) {
|
|
$.getJSON("suggest.json?q=" + q, function(data) {
|
|
var parsed = [];
|
|
for (var i = 0; i < data[1].length; i++) {
|
|
var row = data[1][i];
|
|
if (row) {
|
|
parsed[parsed.length] = {
|
|
data: [row],
|
|
value: row,
|
|
result: row
|
|
};
|
|
};
|
|
};
|
|
cb(parsed);
|
|
});
|
|
};
|
|
};
|
|
$(document).ready(function() {
|
|
$('#search').typeahead({hint:false,highlight:true,minLength:1}, {
|
|
name: 'states',
|
|
displayKey: 'value',
|
|
source: suggestMatcher()
|
|
});
|
|
});
|
|
</script>
|
|
<style type="text/css">.twitter-typeahead {margin: 0px;padding: 0px;top:2px;}</style> <!-- fix for input window -->
|
|
</head>
|
|
<body id="yacysearch" onLoad="document.searchform.query.focus();">
|
|
|
|
#(topmenu)#
|
|
#%env/templates/embeddedheader.template%#
|
|
::
|
|
#%env/templates/simpleheader.template%#
|
|
<script type="text/javascript">
|
|
document.getElementById("header_websearch").className += " active";
|
|
</script>
|
|
#(/topmenu)#
|
|
|
|
<div id="api">
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
document.write("\<a href=\"yacysearch.rss?" + window.location.search.substring(1) + "\"\><img src=\"env/grafics/rss.png\" width=\"32\" height=\"32\" alt=\"RSS\" /></a>")
|
|
//]]>
|
|
</script>
|
|
<span>This search result can also be retrieved as RSS/<a href="http://www.opensearch.org" target="_blank">opensearch</a> output.
|
|
The query format is similar to <a href="http://www.loc.gov/standards/sru/" target="_blank">SRU</a>.
|
|
Click the API icon to see an example call to the search rss API.
|
|
To see a list of all APIs, please visit the <a href="http://www.yacy-websuche.de/wiki/index.php/Dev:API" target="_blank">API wiki page</a>.</span>
|
|
</div>
|
|
|
|
<!-- body -->
|
|
</div> <!-- close the starter-template, to open a row -->
|
|
|
|
<div class="row">
|
|
<div class="col-sm-8 col-sm-offset-4 col-md-9 col-md-offset-3 main">
|
|
|
|
<form class="search small" name="searchform" action="" method="get" accept-charset="UTF-8" style="position:fixed;top:8px;z-index:1052;max-width:500px;">
|
|
|
|
<div class="input-group">
|
|
<input type="text" class="form-control searchinput typeahead" size="40" maxlength="200" placeholder="#(topmenu)##[promoteSearchPageGreeting]#::#[promoteSearchPageGreeting]##(/topmenu)#" name="query" value="#[former]#" onFocus="this.select()" id="search" onclick="document.getElementById('Enter').innerHTML = 'search'"/>
|
|
<div class="input-group-btn">
|
|
<button id="Enter" class="btn btn-default" type="submit">search</button>
|
|
</div>
|
|
</div>
|
|
<input type="hidden" name="contentdom" id="contentdom" value="#[contentdom]#" />
|
|
<input type="hidden" name="former" value="#[former]#" />
|
|
<input type="hidden" name="maximumRecords" value="#[count]#" />
|
|
<input type="hidden" name="startRecord" id="startRecord" value="0" />
|
|
<input type="hidden" name="verify" value="#[search.verify]#" />
|
|
<input type="hidden" name="resource" id="resource" value="#[resource]#" />
|
|
<input type="hidden" name="nav" value="#[search.navigation]#" />
|
|
<input type="hidden" name="prefermaskfilter" value="#[prefermaskfilter]#" />
|
|
<input type="hidden" name="depth" value="#[depth]#" />
|
|
<input type="hidden" name="cat" value="#[cat]#" />
|
|
<input type="hidden" name="constraint" value="#[constraint]#" />
|
|
<input type="hidden" name="meanCount" value="#[meanCount]#" />
|
|
</form>
|
|
|
|
<!-- type the number of results and navigation bar -->
|
|
#(num-results)#
|
|
::
|
|
<p>No Results.</p>
|
|
::
|
|
<p>No Results. (length of search words must be at least 2 characters)</p>
|
|
::
|
|
<div id="results"></div>
|
|
<div class="progress">
|
|
<div class="progress-bar progress-bar-info" id="progressbar" role="progressbar" style="width:0%;">
|
|
<span style="position:absolute;display:block;text-align:left;width:100%;color:black;"> <strong id="offset">#[offset]#</strong>-<strong id="itemscount">#[itemscount]#</strong> of <strong id="totalcount">#[totalcount]#</strong> #(globalresults)#::; (<strong id="localResourceSize">#[localResourceSize]#</strong> local, <strong id="remoteResourceSize">#[remoteResourceSize]#</strong> remote), <strong id="remoteIndexCount">#[remoteIndexCount]#</strong> from <strong id="remotePeerCount">#[remotePeerCount]#</strong> remote YaCy peers.#(/globalresults)#</span>
|
|
</div>
|
|
</div>
|
|
::
|
|
<p>Searching the web with this peer is disabled for unauthorized users. Please <a href="Status.html?login=">log in</a> as administrator to use the search function</p>
|
|
#(/num-results)#
|
|
|
|
#(urlmaskerror)#::
|
|
<p><b>Illegal URL mask:</b> <i>#[urlmask]#</i> (not a valid regular expression), mask ignored.</p>
|
|
#(/urlmaskerror)#
|
|
|
|
#(prefermaskerror)#::
|
|
<p><b>Illegal prefer mask:</b> <i>#[prefermask]#</i> (not a valid regular expression), mask ignored.</b></p>
|
|
#(/prefermaskerror)#
|
|
|
|
#(didYouMean)#::
|
|
<p><b>Did you mean:</b> #{suggestions}# <a href="#[url]#">#[word]#</a> #[sep]##{/suggestions}#</p>
|
|
#(/didYouMean)#
|
|
|
|
#(searchagain)#
|
|
::
|
|
<script type="text/javascript">
|
|
document.getElementById("Enter").innerHTML = "search again";
|
|
</script>
|
|
#(/searchagain)#
|
|
|
|
<!-- show information about search key handling -->
|
|
#(excluded)#
|
|
::
|
|
<p><strong>The following words are stop-words and had been excluded from the search: #[stopwords]#.</strong></p>
|
|
#(/excluded)#
|
|
|
|
|
|
<!-- show openstreetmap tiles if geoinfo was found -->
|
|
#(geoinfo)#
|
|
::
|
|
<div class="searchresults">
|
|
<h4 class="linktitle">
|
|
<img src="http://www.openstreetmap.org/favicon.ico" class="favicon" style="width:16px; height:16px;" alt="" />
|
|
Location -- click on map to enlarge</h4>
|
|
<p class="url">
|
|
#{loc}#
|
|
<div style="margin: 20px; width: 100px; float: left;">
|
|
<a href="osm.png?lon=#[lon]#&lat=#[lat]#&zoom=14" class="thumblink" style="float:left;" onclick="return hs.expand(this)">
|
|
<img src="osm.png?lon=#[lon]#&lat=#[lat]#&zoom=14" width="192" height="192" alt="map #[lon]#, #[lat]#" />
|
|
</a>
|
|
<div class="TableCellDark"><a href="http://www.openstreetmap.org/?lat=#[lat]#&lon=#[lon]#&zoom=14">#[name]#</a><br /><a href="http://www.openstreetmap.org/?lat=#[lat]#&lon=#[lon]#&zoom=14">lat=#[lat]#, lon=#[lon]#</a></div> <!-- preview -->
|
|
<div class="highslide-caption"><a href="http://www.openstreetmap.org/?lat=#[lat]#&lon=#[lon]#&zoom=14">#[name]#</a><br /><a href="http://www.openstreetmap.org/?lat=#[lat]#&lon=#[lon]#&zoom=14">lat=#[lat]#, lon=#[lon]#</a></div> <!-- zoomed -->
|
|
</div>
|
|
#{/loc}#
|
|
</p>
|
|
<p class="urlinfo" style="clear:left;">Map (c) by <a href="http://www.openstreetmap.org">OpenStreetMap</a> and contributors, CC-BY-SA</p>
|
|
</div>
|
|
#(/geoinfo)#
|
|
|
|
<!-- linklist begin -->
|
|
#(resultTable)#::<table width="100%"><tr class="TableHeader"><td width="30%">Media</td><td width="70%">URL</td></tr>#(/resultTable)#
|
|
#{results}#
|
|
<!--#include virtual="yacysearchitem.html?item=#[item]#&eventID=#[eventID]#" -->
|
|
#{/results}#
|
|
#(resultTable)#::</table>#(/resultTable)#
|
|
<!-- linklist end -->
|
|
|
|
#(num-results)#
|
|
::
|
|
::
|
|
::
|
|
<span id="resNav" style="display: inline;"></span>
|
|
::
|
|
#(/num-results)#
|
|
|
|
</div> <!-- close main -->
|
|
|
|
<div class="col-sm-4 col-md-3 sidebar" id="sidebar">
|
|
<!-- navigation begin -->
|
|
<!--#include virtual="yacysearchtrailer.html?eventID=#[eventID]#" -->
|
|
<!-- navigation end -->
|
|
|
|
</div> <!-- close sidebar -->
|
|
</div> <!-- close row -->
|
|
|
|
<!-- update the search results statistics after the search is finished -->
|
|
<script type="text/javascript">
|
|
function latestinfo() {
|
|
if (window.XMLHttpRequest) { // Mozilla/Safari
|
|
self.xmlHttpReq = new XMLHttpRequest();
|
|
} else if (window.ActiveXObject) { // IE
|
|
self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
|
|
}
|
|
self.xmlHttpReq.open('GET', "yacysearchlatestinfo.json?eventID=#[eventID]#", true);
|
|
self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
|
self.xmlHttpReq.onreadystatechange = function() {
|
|
if (self.xmlHttpReq.readyState == 4) {
|
|
var rsp = eval("(" + self.xmlHttpReq.responseText + ")");
|
|
statistics(rsp.offset, rsp.itemscount, rsp.itemsperpage, rsp.totalcount, rsp.localResourceSize, rsp.remoteResourceSize, rsp.remoteIndexCount, rsp.remotePeerCount, rsp.navurlBase);
|
|
}
|
|
};
|
|
self.xmlHttpReq.send(null);
|
|
}
|
|
window.setTimeout('latestinfo();',500); // we need that to get a correct pagination bar at the end of the page
|
|
window.setTimeout('latestinfo();',1000);
|
|
// TODO: resets statistic on navigating to next page in Jetty implementation
|
|
/*
|
|
window.setTimeout('latestinfo();',500);
|
|
window.setTimeout('latestinfo();',1000);
|
|
window.setTimeout('latestinfo();',1500);
|
|
window.setTimeout('latestinfo();',2000);
|
|
window.setTimeout('latestinfo();',3000);
|
|
window.setTimeout('latestinfo();',4000);
|
|
window.setTimeout('latestinfo();',5000);
|
|
window.setTimeout('latestinfo();',6000);
|
|
window.setTimeout('latestinfo();',8000);
|
|
window.setTimeout('latestinfo();',10000);
|
|
*/
|
|
</script>
|
|
|
|
#%env/templates/footer.template%#
|
|
</body>
|
|
</html>
|