yacy_search_server/htroot/yacysearch.html
reger fa99b286cc add html5 autofocus to query input field
(leave onload untouched = redundant, for IE9 http://www.w3schools.com/tags/att_input_autofocus.asp)

adjust Peer-to-Peer/ Privacy switch label 
to display "Peer-to-Peer" as 2nd switch option in active stealth mode
2014-10-01 23:53:41 +02:00

242 lines
10 KiB
HTML

<!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="#[promoteSearchPageGreeting]#" name="query" value="#[former]#" autofocus="autofocus" 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="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;">&nbsp;&nbsp;&nbsp;<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]#&amp;lat=#[lat]#&amp;zoom=14" class="thumblink" style="float:left;" onclick="return hs.expand(this)">
<img src="osm.png?lon=#[lon]#&amp;lat=#[lat]#&amp;zoom=14" width="192" height="192" alt="map #[lon]#, #[lat]#" />
</a>
<div class="TableCellDark"><a href="http://www.openstreetmap.org/?lat=#[lat]#&amp;lon=#[lon]#&amp;zoom=14">#[name]#</a><br /><a href="http://www.openstreetmap.org/?lat=#[lat]#&amp;lon=#[lon]#&amp;zoom=14">lat=#[lat]#, lon=#[lon]#</a></div> <!-- preview -->
<div class="highslide-caption"><a href="http://www.openstreetmap.org/?lat=#[lat]#&amp;lon=#[lon]#&amp;zoom=14">#[name]#</a><br /><a href="http://www.openstreetmap.org/?lat=#[lat]#&amp;lon=#[lon]#&amp;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" class="col-sm-12 col-md-12" 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>