git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@6017 6c8d7289-2bf4-0310-a012-ef5d649a1542pull/1/head
parent
efe97f446a
commit
f28f62fb21
@ -0,0 +1,121 @@
|
||||
<!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>YaCy '#[clientname]#': Configuration of a Wiki Search</title>
|
||||
#%env/templates/metas.template%#
|
||||
</head>
|
||||
<body id="IndexCreate">
|
||||
#%env/templates/header.template%#
|
||||
#%env/templates/submenuIntegration.template%#
|
||||
<h2>Integration in MediaWiki</h2>
|
||||
<p>
|
||||
It is possible to insert wiki pages into the YaCy index using a web crawl on that pages.
|
||||
This guide helps you to crawl your wiki and to insert a search window in your wiki pages.
|
||||
</p>
|
||||
|
||||
<h3>Retrieval of Wiki Pages</h3>
|
||||
<p>
|
||||
The following form is a simplified crawl start that uses the proper values for a wiki crawl.
|
||||
Just insert the front page URL of your wiki. After you started the crawl you may want to get back
|
||||
to this page to read the integration hints below.
|
||||
</p>
|
||||
|
||||
<form name="WatchCrawler" action="WatchCrawler_p.html" method="post" enctype="multipart/form-data">
|
||||
<fieldset>
|
||||
<dl>
|
||||
<dt><b>URL of the wiki main page</b><br />This is a crawl start point</dt>
|
||||
<dd><input type="text" name="crawlingURL" value="#[starturl]#" size="60" maxlength="256" onkeypress="changed()" onfocus="check('url')" /></dd>
|
||||
|
||||
<input type="hidden" name="crawlingMode" id="url" value="url" checked="checked" />
|
||||
<input type="hidden" name="createBookmark" value="off" />
|
||||
<input type="hidden" name="crawlingDepth" value="8" />
|
||||
<input type="hidden" name="mustmatch" value=".*" />
|
||||
<input type="hidden" name="mustnotmatch" value="(.*Recentchangeslinked.*)|(.*Whatlinkshere.*)|(.*MediaWiki.*)" />
|
||||
<input type="hidden" name="range" value="subpath" />
|
||||
<input type="hidden" name="crawlingIfOlderCheck" value="on"/>
|
||||
<input type="hidden" name="crawlingIfOlderNumber" value="1" />
|
||||
<input type="hidden" name="crawlingIfOlderUnit" value="day" />
|
||||
<input type="hidden" name="crawlingDomFilterCheck" value="off" />
|
||||
<input type="hidden" name="crawlingDomFilterDepth" value="0" />
|
||||
<input type="hidden" name="crawlingDomMaxCheck" value="off" />
|
||||
<input type="hidden" name="crawlingDomMaxPages" "" />
|
||||
<input type="hidden" name="crawlingQ" value="off" />
|
||||
<input type="hidden" name="storeHTCache" value="off" />
|
||||
<input type="hidden" name="indexText" value="on" />
|
||||
<input type="hidden" name="indexMedia" value="on" />
|
||||
<input type="hidden" name="crawlOrder" value="off" />
|
||||
<input type="hidden" name="intention" value="" />
|
||||
<input type="hidden" name="xsstopw" value="off" />
|
||||
<input type="hidden" name="xdstopw" value="off" />
|
||||
<input type="hidden" name="xpstopw" value="off" />
|
||||
|
||||
<dt></dt>
|
||||
<dd><input type="submit" name="crawlingstart" value="Get content of Wiki: crawl wiki pages" /></dd>
|
||||
|
||||
</dl>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
<h3>Inserting a Search Window to MediaWiki</h3>
|
||||
<p>
|
||||
To integrate a search window into a MediaWiki, you must insert some code into the wiki template.
|
||||
There are several templates that can be used for MediaWiki, but in this guide we consider that
|
||||
you are using the default template, 'MonoBook.php':
|
||||
<ul>
|
||||
<li>open skins/MonoBook.php</li>
|
||||
<li>find the line where the default search window is displayed, there are the following statements:
|
||||
<pre><form name="searchform" action="<?php $this->text('searchaction') ?>" id="searchform">
|
||||
<input id="searchInput" name="search" type="text"
|
||||
<?php if($this->haveMsg('accesskey-search')) {
|
||||
?>accesskey="<?php $this->msg('accesskey-search') ?>"<?php }
|
||||
if( isset( $this->data['search'] ) ) {
|
||||
?> value="<?php $this->text('search') ?>"<?php } ?> />
|
||||
<input type='submit' name="go" class="searchButton" id="searchGoButton"
|
||||
value="<?php $this->msg('go') ?>"
|
||||
/> <input type='submit' name="fulltext"
|
||||
class="searchButton"
|
||||
value="<?php $this->msg('search') ?>" />
|
||||
</form>
|
||||
</pre></li>
|
||||
<li>Remove that code or set it in comments using '<!--' and '-->' </li>
|
||||
<li>Insert the following code:
|
||||
<pre>
|
||||
<p>Search with YaCy in this Wiki:</p>
|
||||
<script src="http://#[address]#/yacy/ui/js/jquery-1.3.1.min.js" type="text/javascript"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
yconf = {
|
||||
url : 'http://#[address]#/',
|
||||
theme : 'smoothness',
|
||||
title : 'YaCy Wiki Search',
|
||||
urlmaskfilter : '.*',
|
||||
width : 500,
|
||||
height : 600
|
||||
};
|
||||
$.getScript(yconf.url+'/yacy/ui/js/yacyui-portalsearch.js', function(){});
|
||||
});
|
||||
</script>
|
||||
<div id="yacylivesearch">
|
||||
<form id="ysearch" method="get" accept-charset="UTF-8" action="http://#[address]#/yacysearch.html">
|
||||
<input name="search" id="yquery" type="text" size="15" maxlength="80" value=""/>
|
||||
<input type="hidden" name="verify" value="false" />
|
||||
<input type="hidden" name="maximumRecords" value="10" />
|
||||
<input type="hidden" name="resource" value="local" />
|
||||
<input type="hidden" name="urlmaskfilter" value=".*" />
|
||||
<input type="hidden" name="prefermaskfilter" value="" />
|
||||
<input type="hidden" name="former" value="" />
|
||||
<input type="hidden" name="display" value="2" />
|
||||
<input type="submit" name="Enter" value="Suchen" />
|
||||
</form>
|
||||
</div>
|
||||
</pre></li>
|
||||
<li>Check all appearances of static IPs given in the code snippet and replace it with your own IP, or your host name</li>
|
||||
<li>You may want to change the default text elements in the code snippet</li>
|
||||
<li>To see all options for the search widget, look at the more generic description of search widgets at
|
||||
<a href=""></a>.
|
||||
</ul>
|
||||
</p>
|
||||
#%env/templates/footer.template%#
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,51 @@
|
||||
// ConfigWikiSearch.java
|
||||
// (C) 2009 by Michael Peter Christen; mc@yacy.net, Frankfurt a. M., Germany
|
||||
// first published 03.06.2009 as IndexCreate_p.java on http://yacy.net
|
||||
//
|
||||
// This is a part of YaCy, a peer-to-peer based web search engine
|
||||
//
|
||||
// $LastChangedDate: 2006-04-02 22:40:07 +0200 (So, 02 Apr 2006) $
|
||||
// $LastChangedRevision: 1986 $
|
||||
// $LastChangedBy: orbiter $
|
||||
//
|
||||
// LICENSE
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation; either version 2 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
import de.anomic.http.httpRequestHeader;
|
||||
import de.anomic.plasma.plasmaSwitchboard;
|
||||
import de.anomic.plasma.plasmaSwitchboardConstants;
|
||||
import de.anomic.server.serverObjects;
|
||||
import de.anomic.server.serverSwitch;
|
||||
|
||||
public class ConfigWikiSearch {
|
||||
|
||||
public static serverObjects respond(final httpRequestHeader header, final serverObjects post, final serverSwitch<?> env) {
|
||||
// return variable that accumulates replacements
|
||||
final plasmaSwitchboard sb = (plasmaSwitchboard) env;
|
||||
final serverObjects prop = new serverObjects();
|
||||
|
||||
// define visible variables
|
||||
String a = sb.peers.mySeed().getPublicAddress();
|
||||
if (a == null) a = "localhost:" + sb.getConfig("port", "8080");
|
||||
boolean intranet = sb.getConfig(plasmaSwitchboardConstants.NETWORK_NAME, "").equals("intranet");
|
||||
String repository = "http://" + a + "/repository/";
|
||||
prop.put("starturl", (intranet) ? repository : "http://");
|
||||
prop.put("address", a);
|
||||
|
||||
// return rewrite properties
|
||||
return prop;
|
||||
}
|
||||
}
|
Loading…
Reference in new issue