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.
220 lines
11 KiB
220 lines
11 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>
|
|
#(forward)#::<meta http-equiv="REFRESH" content="0; url=#[target]#" />#(/forward)#
|
|
<title>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="opensearchdescription.xml" />
|
|
<script type="text/javascript" src="/env/bootstrap/js/typeahead.jquery.min.js"></script>
|
|
<script type="text/javascript" src="js/html.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:3px;}</style> <!-- fix for input window -->
|
|
</head>
|
|
<body id="index" onload="#(focus)#::document.getElementById('search').focus()#(/focus)#">
|
|
#(topmenu)#
|
|
#%env/templates/embeddedheader.template%#
|
|
::
|
|
#%env/templates/simpleheader.template%#
|
|
<script type="text/javascript">
|
|
document.getElementById("header_websearch").className += " active";
|
|
</script>
|
|
#(/topmenu)#
|
|
|
|
<!-- this is the single exception in page design where we do not want a top-left application icon because we show a big one in the middle of the page -->
|
|
<script>document.getElementById("greeting-icon").src="/env/grafics/invisible.png"</script>
|
|
|
|
<h2 class="yacy"><a href="#[promoteSearchPageGreeting.homepage]#" class="yacylogo"><img src="#[promoteSearchPageGreeting.largeImage]#" alt="yacy" style="margin: auto;"/></a></h2>
|
|
<h2 class="yacy">#[promoteSearchPageGreeting]#</h2>
|
|
|
|
<form class="search form-inline" action="yacysearch.html" method="get" id="searchform" accept-charset="UTF-8">
|
|
<fieldset class="maininput">
|
|
<div class="input-group">
|
|
<input name="query" id="search" type="text" size="40" maxlength="80" value="#[former]#" #(focus)#::autofocus="autofocus"#(/focus)# onFocus="this.select()" class="form-control searchinput typeahead" />
|
|
<div class="input-group-btn">
|
|
<button id="Enter" name="Enter" class="btn btn-primary" type="submit">Search</button>
|
|
</div>
|
|
</div>
|
|
<input type="hidden" name="verify" value="#[search.verify]#" />
|
|
#(searchdomswitches)#::
|
|
<div class="yacysearch">
|
|
#(searchtext)#::<input type="radio" id="text" name="contentdom" value="text" #(check)#::checked="checked"#(/check)# /> Text #(/searchtext)#
|
|
#(searchimage)#::<input type="radio" id="image" name="contentdom" value="image" #(check)#::checked="checked"#(/check)# /> Images #(/searchimage)#
|
|
#(searchaudio)#::<input type="radio" id="audio" name="contentdom" value="audio" #(check)#::checked="checked"#(/check)# /> Audio #(/searchaudio)#
|
|
#(searchvideo)#::<input type="radio" id="video" name="contentdom" value="video" #(check)#::checked="checked"#(/check)# /> Video #(/searchvideo)#
|
|
#(searchapp)#::<input type="radio" id="app" name="contentdom" value="app" #(check)#::checked="checked"#(/check)# /> Applications#(/searchapp)#
|
|
#(searchoptions)# <a href="index.html?searchoptions=1" onclick="this.href='/index.html?searchoptions=1&former='+document.getElementById('searchinput').search.value+'&contentdom='+radioValue(document.getElementById('searchinput').contentdom)">more options...</a>::#(/searchoptions)#
|
|
</div>
|
|
#(/searchdomswitches)#
|
|
<input type="hidden" name="nav" value="#[search.navigation]#" />
|
|
<input type="hidden" name="startRecord" id="startRecord" value="0" />
|
|
<input type="hidden" name="indexof" value="off" />
|
|
<input type="hidden" name="meanCount" value="5" />
|
|
#(searchoptions)#
|
|
<input type="hidden" name="resource" value="global" />
|
|
<input type="hidden" name="prefermaskfilter" value="" />
|
|
<input type="hidden" name="maximumRecords" value="#[maximumRecords]#" />
|
|
</fieldset>
|
|
::
|
|
</fieldset>
|
|
|
|
<table>
|
|
<tr>
|
|
<td><label for="count">Results per page</label>:</td>
|
|
<td>
|
|
<input type="radio" name="maximumRecords" id="mr10" value="10" #(count-10)#::checked="checked"#(/count-10)#/><label for="mr10">10</label>
|
|
<input type="radio" name="maximumRecords" id="mr50" value="50" #(count-50)#::checked="checked"#(/count-50)#/><label for="mr50">50</label>
|
|
<input type="radio" name="maximumRecords" id="mr100" value="100" #(count-100)#::checked="checked"#(/count-100)#/><label for="mr100">100</label>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
#(resource-select)#::
|
|
<td><label for="resource">Resource</label>:</td>
|
|
<td>
|
|
<input type="radio" name="resource" id="rglobal" value="global" checked="checked" /><label for="rglobal">the peer-to-peer network</label>
|
|
<input type="radio" name="resource" id="rlocal" value="local"><label for="rlocal">only the local index</label>
|
|
</td>::
|
|
<td><label for="resource">Resource</label>:</td>
|
|
<td>
|
|
<input type="radio" name="resource" id="rglobal" value="global"/><label for="rglobal">the peer-to-peer network</label>
|
|
<input type="radio" name="resource" id="rlocal" value="local" checked="checked"/><label for="rlocal">only the local index</label>
|
|
</td>
|
|
#(/resource-select)#
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<label for="prefermaskfilter">Prefer mask</label>:
|
|
</td>
|
|
<td>
|
|
#(prefermaskoptions)#
|
|
<input id="prefermaskfilter" name="prefermaskfilter" type="text" size="12" maxlength="80" value="#[prefermaskfilter]#" />
|
|
::
|
|
<input type="radio" name="prefermask" value="yes" checked="checked" /> restrict on <input name="prefermaskfilter" type="text" size="12" maxlength="80" value="#[prefermaskfilter]#" />
|
|
<input type="radio" name="prefermask" value="no" /> show all
|
|
#(/prefermaskoptions)#
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
Constraints:
|
|
</td>
|
|
<td>
|
|
<input type="checkbox" id="indexof" name="indexof" #[indexofChecked]# /> <label for="indexof">only index pages</label>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4>Query Operators</h4>
|
|
|
|
<dl style="width:700px">
|
|
<dt style="width:100px">restrictions</dt>
|
|
<dd>
|
|
<dl style="width:500px">
|
|
<dt>inurl:<phrase></dt>
|
|
<dd>only urls with the <phrase> in the url</dd>
|
|
<dt>inlink:<phrase></dt>
|
|
<dd>only urls with the <phrase> within outbound links of the document</dd>
|
|
<dt>filetype:<ext></dt>
|
|
<dd>only urls with extension <ext></dd>
|
|
<dt>site:<host></dt>
|
|
<dd>only urls from host <host></dd>
|
|
<dt>author:<author></dt>
|
|
<dd>only pages with as-author-anotated <author></dd>
|
|
<dt>tld:<tld></dt>
|
|
<dd>only pages from top-level-domains <tld></dd>
|
|
<dt>/http</dt>
|
|
<dd>only resources from http or https servers</dd>
|
|
<dt>/ftp</dt>
|
|
<dd>only resources from ftp servers (they are rare, <a href="CrawlStartSite.html">crawl them yourself</a>)</dd>
|
|
<dt>/smb</dt>
|
|
<dd>only resources from smb servers (<a href="ConfigBasic.html">Intranet Indexing</a> must be selected)</dd>
|
|
<dt>/file</dt>
|
|
<dd>only files from a local file system (<a href="ConfigBasic.html">Intranet Indexing</a> must be selected)</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt style="width:100px">ranking modifier</dt>
|
|
<dd>
|
|
<dl style="width:500px">
|
|
<dt>/date</dt>
|
|
<dd>sort by date (latest first)</dd>
|
|
<dt>/near</dt>
|
|
<dd>multiple words shall appear near</dd>
|
|
<dt>"" (doublequotes)</dt>
|
|
<dd>multiple words shall appear near</dd>
|
|
<dt>/language/<lang></dt>
|
|
<dd>prefer given language (an ISO639 2-letter code)</dd>
|
|
</dl>
|
|
</dd>
|
|
#(heuristic)#::
|
|
<dt style="width:100px">heuristics</dt>
|
|
<dd>
|
|
<dl style="width:500px">
|
|
<dt>/heuristic</dt>
|
|
<dd>add search results from external opensearch systems</dd>
|
|
</dl>
|
|
</dd>
|
|
#(/heuristic)#
|
|
</dl>
|
|
|
|
<h4>Search Navigation</h4>
|
|
|
|
<dl style="width:700px">
|
|
<dt style="width:100px">keyboard shotcuts</dt>
|
|
<dd>
|
|
<dl style="width:500px">
|
|
<dt>tab or page-up</dt>
|
|
<dd>next result page</dd>
|
|
<dt>page-down</dt>
|
|
<dd>previous result page</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt style="width:100px">automatic result retrieval</dt>
|
|
<dd>
|
|
<dl style="width:500px">
|
|
<dt>browser integration</dt>
|
|
<dd>after searching, click-open on the default search engine in the upper right search field of your browser and select 'Add "YaCy Search.."'</dd>
|
|
<dt>search as rss feed</dt>
|
|
<dd>click on the red icon in the upper right after a search. this works good in combination with the '/date' ranking modifier. See an <a href="yacysearch.rss?query=news+%2Fdate&Enter=Search&verify=cacheonly&contentdom=text&nav=hosts%2Cauthors%2Cnamespace%2Ctopics%2Cfiletype%2Cprotocol&startRecord=0&indexof=off&meanCount=5&maximumRecords=10&resource=global&prefermaskfilter=">example</a>.</dd>
|
|
<dt>json search results</dt>
|
|
<dd>for ajax developers: get the search rss feed and replace the '.rss' extension in the search result url with '.json'</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
#(/searchoptions)#
|
|
</form>
|
|
|
|
#(topmenu)#
|
|
#%env/templates/embeddedfooter.template%#
|
|
::
|
|
#%env/templates/simplefooter.template%#
|
|
#(/topmenu)#
|
|
<img src="cytag.png?icon=invisible&nick=yacyh_#[clientid]#&tag=search" alt=""/>
|
|
</body>
|
|
</html>
|