summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--htroot/Blacklist_p.html315
-rw-r--r--htroot/Blog.html213
-rw-r--r--htroot/Bookmarks.html296
-rw-r--r--htroot/CacheAdmin_p.html39
-rw-r--r--htroot/ConfigAdvanced_p.html76
-rw-r--r--htroot/ConfigBasic.html179
-rw-r--r--htroot/ConfigLanguage_p.html164
-rw-r--r--htroot/ConfigProfile_p.html147
-rw-r--r--htroot/ConfigSkins_p.html136
-rw-r--r--htroot/Config_p.html77
-rw-r--r--htroot/Connections_p.html75
-rw-r--r--htroot/CookieMonitorIncoming_p.html64
-rw-r--r--htroot/CookieMonitorOutgoing_p.html68
-rw-r--r--htroot/CookieTest.html124
-rw-r--r--htroot/DetailedSearch.html378
-rw-r--r--htroot/Help.html262
-rwxr-xr-xhtroot/IndexCleaner_p.html102
-rw-r--r--htroot/IndexControl_p.html217
-rw-r--r--htroot/IndexCreateIndexingQueue_p.html179
-rw-r--r--htroot/IndexCreateLoaderQueue_p.html74
-rw-r--r--htroot/IndexCreateWWWGlobalQueue_p.html104
-rw-r--r--htroot/IndexCreateWWWLocalQueue_p.html131
-rw-r--r--htroot/IndexCreate_p.html801
-rw-r--r--htroot/IndexImport_p.html505
-rw-r--r--htroot/IndexMonitor.html262
-rw-r--r--htroot/IndexShare_p.html89
-rw-r--r--htroot/IndexTransfer_p.html166
-rw-r--r--htroot/Log_p.html10
-rw-r--r--htroot/Log_p.java91
-rw-r--r--htroot/MessageSend_p.html160
-rw-r--r--htroot/Messages_p.html179
-rw-r--r--htroot/Network.html540
-rw-r--r--htroot/News.html199
-rw-r--r--htroot/PerformanceMemory_p.html862
-rw-r--r--htroot/PerformanceQueues_p.html479
-rw-r--r--htroot/PerformanceQueues_p.java6
-rw-r--r--htroot/PerformanceSearch_p.html233
-rw-r--r--htroot/ProxyIndexingMonitor_p.html199
-rw-r--r--htroot/QuickCrawlLink_p.html110
-rw-r--r--htroot/SettingsAck_p.html439
-rw-r--r--htroot/Settings_p.html113
-rw-r--r--htroot/Status.html207
-rw-r--r--htroot/Status_p.inc276
-rw-r--r--htroot/ViewLog_p.html45
-rw-r--r--htroot/ViewLog_p.java90
-rw-r--r--htroot/ViewProfile.html161
-rw-r--r--htroot/Wiki.html219
-rw-r--r--htroot/env/base.css402
-rw-r--r--htroot/env/templates/footer.template7
-rw-r--r--htroot/env/templates/header.template155
-rw-r--r--htroot/env/templates/metas.template17
-rw-r--r--htroot/env/templates/simplefooter.template7
-rw-r--r--htroot/env/templates/simpleheader.template36
-rw-r--r--htroot/env/templates/submenuConfig.template30
-rw-r--r--htroot/env/templates/submenuCookie.template16
-rw-r--r--htroot/env/templates/submenuIndexControl.template26
-rw-r--r--htroot/env/templates/submenuIndexCreate.template66
-rw-r--r--htroot/env/templates/submenuPerformance.template22
-rw-r--r--htroot/index.html246
-rw-r--r--htroot/yacysearch.html143
-rw-r--r--skins/default.css453
61 files changed, 5825 insertions, 5662 deletions
diff --git a/htroot/Blacklist_p.html b/htroot/Blacklist_p.html
index 1b7869daa..3f57d29a7 100644
--- a/htroot/Blacklist_p.html
+++ b/htroot/Blacklist_p.html
@@ -1,195 +1,134 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Blacklist Manager</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Blacklist</h2>
-<p>Used Blacklist engine: <span class="settingsValue">#[blacklistEngine]#</span></p>
+<!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]#': Blacklist Manager</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="Blacklist">
+ #%env/templates/header.template%#
+ <h2>Blacklist</h2>
+ <p>Used Blacklist engine: <span class="settingsValue">#[blacklistEngine]#</span></p>
+ <p>
+ This function provides an URL filter to the proxy; any blacklisted URL is blocked
+ from being loaded. You can define several blacklists and activate them separately.
+ You may also provide your blacklist to other peers by sharing them; in return you may
+ collect blacklist entries from other peers.
+ </p>
+ <!-- blacklist selection -->
+ <form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <legend>Edit list:</legend>
+ <select name="selectedListName" size="1">
+ #{blackLists}#
+ <option value="#[name]#" #(selected)#::selected="selected"#(/selected)#>#[name]# [#(shared)#not shared::shared#(/shared)#] #{active}# #[blTypeName]##{/active}#</option>
+ #{/blackLists}#
+ </select>
+ <input type="submit" name="selectList" value="select" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ <fieldset>
+ <legend>New list:</legend>
+ <input type="text" name="newListName" />
+ <input type="submit" name="createNewList" value="create" />
+ </fieldset>
+ <h3>Active list: <em>#[currentBlacklist]#</em> #(disabled)#::<span class="error">No blacklist selected</span>#(/disabled)#</h3>
-<p>This function provides an URL filter to the proxy; any blacklisted URL is blocked
-from being loaded. You can define several blacklists and activate them separately.
-You may also provide your blacklist to other peers by sharing them; in return you may
-collect blacklist entries from other peers.</p>
+ <fieldset>
+ <legend>Activate this list for ...</legend>
+ <dl>
+ #{currentActiveFor}#
+ <dt><label for="activateList4#[blTypeName]#">#[blTypeName]#</label></dt>
+ <dd>
+ <input type="checkbox" id="activateList4#[blTypeName]#" name="activateList4#[blTypeName]#" value="on" #(checked)#checked="checked"::#(/checked)# />
+ </dd>
+ #{/currentActiveFor}#
+ </dl>
+ <input type="submit" name="activateList" value="Enable/disable this list" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ <fieldset>
+ <input type="submit" name="shareList" value="Share/don't share this list" #(disabled)#::disabled="disabled"#(/disabled)# />
+ <input type="submit" name="deleteList" value="Delete this list" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
-<table border="1" cellspacing="1" cellpadding="0">
-<!-- blacklist selection -->
-<form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
-<tr>
- <td colspan="3" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-<tr>
- <td colspan="3">
- <table border="0" cellspacing="1" cellpadding="0" width="100%">
- <tr>
- <td class="TableCellDark">
- Edit list:
- <select name="selectedListName" size="1">
- #{blackLists}#
- <option value="#[name]#" #(selected)#::selected#(/selected)#>#[name]# [#(shared)#not shared::shared#(/shared)#] #{active}# #[blTypeName]##{/active}#</option>
- #{/blackLists}#
- </select>
- </td>
- <td class="TableCellDark"><center>
- <input type="submit" name="selectList" value="select" #(disabled)#::disabled="disabled"#(/disabled)#/>
- </td>
- <td valign="top" align="left" rowspan="2" class="TableCellDark">
- <fieldset>
- <legend>Activate this list for ...</legend>
- <table>
- #{currentActiveFor}#
- <tr>
- <td>#[blTypeName]#</td><td><input type="checkbox" name="activateList4#[blTypeName]#" value="on" #(checked)#checked::#(/checked)#/></td>
- </tr>
- #{/currentActiveFor}#
- </table>
- <input type="submit" name="activateList" value="Enable/disable this list" #(disabled)#::disabled="disabled"#(/disabled)#/>
- </fieldset>
+ <!-- Blacklist configuration -->
+ <form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
- <input type="submit" name="shareList" value="Share/don't share this list" #(disabled)#::disabled="disabled"#(/disabled)#/><br />
- <input type="submit" name="deleteList" value="Delete this list" "#(disabled)#::disabled="disabled"#(/disabled)#/><br />
- </td>
- </tr>
- <tr>
- <td class="TableCellDark">
- New list:
- <input type="text" name="newListName">
- </td>
- <td class="TableCellDark"><center>
- <input type="submit" name="createNewList" value="create"></center>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-</form>
+ <fieldset>
+ <p>
+ These are the domain name / path patterns in this blacklist:<br />
+ You can select them here for deletion
+ </p>
+ <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#" />
+ <select name="selectedEntry" size="8">
+ <!--<option disabled>blocked Sites</option>-->
+ #{Itemlist}#
+ <option value="#[item]#">#[item]#</option>
+ #{/Itemlist}#
+ </select>
+ <br />
+ <input type="submit" name="deleteBlacklistEntry" value="Delete URL pattern" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
+ <form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <ul>
+ <li>domain/fullpath</li>
+ <li>domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
+ <li>*.domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
+ <li>domain.*/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
+ <li>*.sub.domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
+ <li>sub.domain.*/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
+ </ul>
+ <input type="text" name="newEntry" size="50" />
+ <input type="submit" name="addBlacklistEntry" value="Add URL pattern" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
+
+ <!-- Blacklist import from other peer -->
+ <form action="sharedBlacklist_p.html" method="get">
+ <fieldset>
+ <legend>Import blacklist items from other YaCy peers:</legend>
+ <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#" />
+ Host: <select name="hash">
+ #{otherHosts}#
+ <option value="#[hash]#">#[name]#</option>
+ #{/otherHosts}#
+ </select>
+ <br />
+ <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
+ <!-- blacklist import from url -->
+ <form action="sharedBlacklist_p.html" method="get">
+ <fieldset>
+ <legend>Import blacklist items from URL:</legend>
+ <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#" />
+ URL: <input type="text" name="url" /><br />
+ <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
+
+ <!-- blacklist import from file -->
+ <form action="sharedBlacklist_p.html" method="get">
+ <fieldset>
+ <legend>Import blacklist items from file:</legend>
+ <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#" />
+ File: <input type="text" name="file" />
+ <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)# />
+ </fieldset>
+ </form>
-<!-- Blacklist configuration -->
-<tr>
- <td colspan="3" valign="top" class="TableHeader">
- <h3>Active list: <i>#[currentBlacklist]#</i>#(disabled)#::<font style="color:red;font-weight:bold">No blacklist selected</font>#(/disabled)#</h3>
- </td>
-</tr>
-<tr>
- <td rowspan="6">
- <table border="0" cellspacing="1" cellpadding="0" width="100%">
- <tr>
- <td class="TableCellDark">
- These are the domain name / path patterns in this blacklist:<br>
- You can select them here for deletion
- </td>
- </tr>
- <tr>
- <td class="TableCellLight">
- <form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
- <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#">
- <select name="selectedEntry" size="8">
- <!--<option disabled>blocked Sites</option>-->
- #{Itemlist}#
- ::
- <option value="#[item]#">#[item]#</option>
- #{/Itemlist}#
- </select>
- <p />
- <input type="submit" name="deleteBlacklistEntry" value="Delete URL pattern" #(disabled)#::disabled="disabled"#(/disabled)# />
- </form>
- </td>
- </tr>
- <tr>
- <td class="TableCellDark">
- Enter new domain name / path pattern in the form:
- <ul type="square">
- <li>domain/fullpath</li>
- <li>domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
- <li>*.domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
- <li>domain.*/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
- <li>*.sub.domain/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
- <li>sub.domain.*/.* or <a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html">regexpr</a></li>
- </ul>
- </td>
- </tr>
- <tr>
- <td class="TableCellLight">
- <form action="Blacklist_p.html" method="post" enctype="multipart/form-data">
- <input type="text" name="newEntry" size="50"><p>
- <input type="submit" name="addBlacklistEntry" value="Add URL pattern" #(disabled)#::disabled="disabled"#(/disabled)#></p>
- </form>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-<tr>
- <!-- spacer between the two columns -->
- <td class="TableHeader" rowspan="6">&nbsp;</td>
-</tr>
-
-<!-- Blacklist import from other peer -->
-<tr>
- <td class="TableCellDark">Import blacklist items from other YaCy peers:</td>
-</tr>
-<tr>
- <td class="TableCellLight">
- <form action="sharedBlacklist_p.html" method="get">
- <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#">
- Host: <select name="hash">
- #{otherHosts}#
- <option value="#[hash]#">#[name]#</option>
- #{/otherHosts}#
- </select>
- <p />
- <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)#/>
- </form>
- </td>
-</tr>
-
-
-<!-- blacklist import from url -->
-<tr>
- <td class="TableCellDark">Import blacklist items from URL:</td>
-</tr>
-<tr>
- <td class="TableCellLight">
- <form action="sharedBlacklist_p.html" method="get">
- <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#">
- URL: <input type="text" name="url">
- <p>
- <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)#/>
- </form>
- </td>
-</tr>
-
-
-<!-- blacklist import from file -->
-<tr>
- <td class="TableCellDark"><p>Import blacklist items from file:</td>
-</tr>
-<tr>
- <td class="TableCellLight">
- <form action="sharedBlacklist_p.html" method="get">
- <input type="hidden" name="currentBlacklist" value="#[currentBlacklist]#">
- File: <input type="text" name="file">
- <p>
- <input type="submit" value="Load new blacklist items" #(disabled)#::disabled="disabled"#(/disabled)#/>
- </form>
- </td>
-</tr>
-</table>
-<p>
-
-#(status)# <!-- 0: -->
-::
-<b>#[item]#</b> was removed from blacklist
-::
-<b>#[item]#</b> was added to the blacklist
-#(/status)#
-
-
-#%env/templates/footer.template%#
-</body>
+ <p>
+ #(status)# <!-- 0: -->
+ ::
+ <strong>#[item]#</strong> was removed from blacklist
+ ::
+ <strong>#[item]#</strong> was added to the blacklist
+ #(/status)#
+ </p>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Blog.html b/htroot/Blog.html
index 2205912ab..8ef1ed191 100644
--- a/htroot/Blog.html
+++ b/htroot/Blog.html
@@ -1,86 +1,129 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Blog</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#(mode)#
-<!-- 0: viewing -->
-<center>
-#{entries}#
-<table width="80%" border="1" cellspacing="0">
-<tr class="TableHeader"><td align="left">#[date]#</td><td>by #[author]#</td></tr>
-<tr class="WikiBackground"><td colspan=2 align="left"><div style="padding:5px;"><h2>#[subject]#</h2><br>#[page]#</div></td></tr>
-<tr class="TableHeader"><td colspan=2 align="left"><a href="Blog.html?page=#[pageid]#">link</a>#(admin)#:: - <a href="Blog.html?page=#[pageid]#&edit=true">edit</a> - <a href="Blog.html?page=#[pageid]#&amp;delete=try">delete</a>#(/admin)#</td></tr>
-</table>
-<br>
-#{/entries}#
-#(moreentries)#::<a href="Blog.html?start=#[start]#&amp;num=#[num]#">show more entries...</a>#(/moreentries)#
-<br>
-#(admin)#<a href="Blog.html?login=true">Login</a> - ::<a href="Blog.html?edit=true">new entry</a> - <a href="Blog.html?import=xml">import XML-File</a> - <a href="Blog.xml?xml=1">export as XML</a> - #(/admin)#<a href="Blog.html">Blog-Home</a></center>
-::
-<!-- 1: edit -->
-<form action="Blog.html" method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
-<p>Author:<br><input name="author" type="text" size="20" maxlength="80" value="#[author]#"></p>
-<p>Subject:<br><input name="subject" type="text" size="20" maxlength="80" value="#[subject]#"></p>
-<p>Text:<br><textarea name="content" cols="80" rows="24">#[page-code]#</textarea>
-<br><font size="-1">You can use <a href="WikiHelp.html" target="_blank" onClick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Yacy-Wiki Code</a> here.</font>
-</p>
-<input type="hidden" name="page" value="#[pageid]#">
-<input type="submit" name="submit" value="Submit">
-<input type="submit" name="preview" value="Preview">
-<input type="submit" name="view" value="Discard">
-</form>
-::
-<!-- 2: preview -->
-<h2>Preview</h2>
-<p>No changes have been submitted so far!</p>
-<table width="80%" border="1" cellpadding="0" cellspacing="0">
-<tr class="TableHeader"><td align="left">#[date]#</td><td>by #[author]#</td></tr>
-<tr class="WikiBackground"><td colspan=2 align="left"><div style="padding:5px;"><h2>#[subject]#</h2><br>#[page]#</div></td></tr>
-<tr class="TableHeader"><td></td><td></td></tr>
-</table>
-<form action="Blog.html" method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
-<p>Author:<br><input name="author" type="text" size="20" maxlength="80" value="#[author]#"></p>
-<p>Subject:<br><input name="subject" type="text" size="20" maxlength="80" value="#[subject]#"></p>
-<p>Text:<br><textarea name="content" cols="80" rows="24">#[page-code]#</textarea></p>
-<input type="hidden" name="page" value="#[pageid]#">
-<input type="submit" name="submit" value="Submit">
-<input type="submit" name="preview" value="Preview">
-<input type="submit" name="view" value="Discard">
-</form>
-::
-<!-- 3: Access Denied (no rights) -->
-<h3>Access denied</h3>
-To edit or create blog-entries you need to be logged in as Admin or User who has Blog rights.
-::
-<!-- 4: Delete Confirmation -->
-<h3>Are you sure...</h3>
-... that you want to delete <b>#[subject]#</b> by #[author]#?<br><br>
-<form action="Blog.html" method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
-<input type="hidden" name="delete" value="sure">
-<input type="hidden" name="page" value="#[pageid]#">
-<input type="submit" value="Yes, delete it.">
-</form><br>
-<form action="Blog.html" method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
-<input type="submit" value="No, leave it.">
-</form>
-::
-<!-- 5: XML-Import -->
-<h3>XML-Import</h3>
-#(state)#
-::
-Import was successful!<br><br>
-::
-Import failed, maybe the supplied file was no valid blog-backup?<br><br>
-#(/state)#
-Please select the XML-file you want to import:<br>
-<form action="Blog.html" method="POST" enctype="multipart/form-data">
-<input type="file" size=50 name="xmlfile"> <input type="submit" name="importxml" value="Import">
-</form>
-#(/mode)#
-#%env/templates/footer.template%#
-</body>
+<!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]#': Blog</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="Blog">
+ #%env/templates/header.template%#
+ #(mode)#
+ <!-- 0: viewing -->
+ #{entries}#
+ <div class="Post">
+ <h2 class="PostSubject"><a href="Blog.html?page=#[pageid]#">#[subject]#</a></h2>
+ <div class="PostBody">#[page]#</div>
+ <p class="PostInfo">
+ #[date]# | by #[author]#
+ #(admin)#::| <a href="Blog.html?page=#[pageid]#&amp;edit=true">edit</a>
+ - <a href="Blog.html?page=#[pageid]#&amp;delete=try">delete</a>#(/admin)#
+ </p>
+ </div>
+ #{/entries}#
+ #(moreentries)#::<p class="Navigation"><a href="Blog.html?start=#[start]#&amp;num=#[num]#">show more entries...</a></p>#(/moreentries)#
+ <p class="Navigation">
+ #(admin)#<a href="Blog.html?login=true">Login</a> - ::<a href="Blog.html?edit=true">new entry</a> - <a href="Blog.html?import=xml">import XML-File</a> - <a href="Blog.xml?xml=1">export as XML</a> - #(/admin)#<a href="Blog.html">Blog-Home</a>
+ </p>
+ ::
+ <!-- 1: edit -->
+ <form action="Blog.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <dl>
+ <dt><label for="author">Author:</label></dt>
+ <dd>
+ <input name="author" id="author" type="text" size="20" maxlength="80" value="#[author]#" />
+ </dd>
+ <dt><label for="subject">Subject:</label></dt>
+ <dd>
+ <input name="subject" id="subject" type="text" size="20" maxlength="80" value="#[subject]#" />
+ </dd>
+ <dt><label for="content">Text:</label></dt>
+ <dd>
+ <textarea name="content" id="content" cols="80" rows="24">#[page-code]#</textarea>
+ <p class="help">
+ You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Yacy-Wiki Code</a> here.
+ </p>
+ </dd>
+ </dl>
+ <input type="hidden" name="page" value="#[pageid]#" />
+ <input type="submit" name="submit" value="Submit" />
+ <input type="submit" name="preview" value="Preview" />
+ <input type="submit" name="view" value="Discard" />
+ </fieldset>
+ </form>
+ ::
+ <!-- 2: preview -->
+ <h2>Preview</h2>
+ <p>No changes have been submitted so far!</p>
+ <div class="Post">
+ <h2 class="PostSubject">#[subject]#</h2>
+ <div class="PostBody">#[page]#</div>
+ <p class="PostInfo">#[date]# | by #[author]#</p>
+ </div>
+ <form action="Blog.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <dl>
+ <dt><label for="author">Author:</label></dt>
+ <dd>
+ <input name="author" id="author" type="text" size="20" maxlength="80" value="#[author]#" />
+ </dd>
+ <dt><label for="subject">Subject:</label></dt>
+ <dd>
+ <input name="subject" id="subject" type="text" size="20" maxlength="80" value="#[subject]#" />
+ </dd>
+ <dt>
+ <label for="content">Text:</label>
+ </dt>
+ <dd>
+ <textarea name="content" id="content" cols="80" rows="24">#[page-code]#</textarea>
+ <p class="help">
+ You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Yacy-Wiki Code</a> here.
+ </p>
+ </dd>
+ </dl>
+ <input type="hidden" name="page" value="#[pageid]#" />
+ <input type="submit" name="submit" value="Submit" />
+ <input type="submit" name="preview" value="Preview" />
+ <input type="submit" name="view" value="Discard" />
+ </fieldset>
+ </form>
+ ::
+ <!-- 3: Access Denied (no rights) -->
+ <h3>Access denied</h3>
+ <p>To edit or create blog-entries you need to be logged in as Admin or User who has Blog rights.</p>
+ ::
+ <!-- 4: Delete Confirmation -->
+ <h3>Are you sure...</h3>
+ <p>... that you want to delete <strong>#[subject]#</strong> by #[author]#?</p>
+ <form action="Blog.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <input type="hidden" name="delete" value="sure" />
+ <input type="hidden" name="page" value="#[pageid]#" />
+ <input type="submit" value="Yes, delete it." />
+ </fieldset>
+ </form>
+ <br />
+ <form action="Blog.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <input type="submit" value="No, leave it." />
+ </fieldset>
+ </form>
+ ::
+ <!-- 5: XML-Import -->
+ <h3>XML-Import</h3>
+ #(state)#
+ ::
+ <p>Import was successful!</p>
+ ::
+ <p>Import failed, maybe the supplied file was no valid blog-backup?</p>
+ #(/state)#
+ <p>Please select the XML-file you want to import:</p>
+ <form action="Blog.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="file" size="50" name="xmlfile" />
+ <input type="submit" name="importxml" value="Import" />
+ </fieldset>
+ </form>
+ #(/mode)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Bookmarks.html b/htroot/Bookmarks.html
index 47e2ccfe6..abc496930 100644
--- a/htroot/Bookmarks.html
+++ b/htroot/Bookmarks.html
@@ -1,164 +1,134 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Bookmarks</title>
-#%env/templates/metas.template%#
-<script src="/js/ajax.js" type="text/javascript"></script>
-<script src="/js/Bookmarks.js" type="text/javascript"></script>
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Bookmarks</h2><p>
-<!-- todo: div layout? -->
-
-#(mode)#
-<a href="Bookmarks.html?login=true">Login</a>
-::
-<a href="Bookmarks.html?mode=add">Add Bookmark</a>
-<a href="Bookmarks.html?mode=importxml">Import XML Bookmarks</a>
-<!-- <a href="Bookmarks.html?mode=importbookmarks">Import Bookmarks.html</a> -->
-::
-<form action="Bookmarks.html" method="GET">
-<table border="0" width="100%" height="100%">
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader">#(edit)#<h3>Add Bookmark</h3>::<h3>Edit Bookmark</h3>#(/edit)#</td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">URL:</td>
- <td valign="top" class="TableCellLight" width="100%"><input type="text" name="url" value="#[url]#" onblur="loadTitle()" size="80"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">Title:</td>
- <td valign="top" class="TableCellLight"><input type="text" name="title" value="#[title]#" size="80"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">Description:</td>
- <td valign="top" class="TableCellLight"><input type="text" name="description" value="#[description]#" size="80"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark"><nobr>Tags (comma separated):</nobr></td>
- <td class="TableCellLight"><input type="text" name="tags" value="#[tags]#" size="80"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">Public:</td>
- <td valign="top" class="TableCellLight"><select name="public">
- <option value="public" #(public)#::selected#(/public)#>yes</option>
- <option value="private" #(public)#selected::#(/public)#>no</option>
- </select>
- </td>
- </tr>
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader" width="100%">
- #(edit)#
- <input type="submit" name="add" value="create">
- ::
- <input type="submit" name="add" value="edit">
- #(/edit)#
- </td>
- </tr>
-</table>
-</form>
-::
-<!-- import XML Bookmarks -->
-<form action="Bookmarks.html" method="POST" enctype="multipart/form-data">
-<table border="0" width="100%" height="100%">
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader"><h3>Import XML Bookmarks</h3></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">File:</td>
- <td valign="top" class="TableCellLight" width="100%"><input type="file" name="xmlfile"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">import as Public:</td>
- <td valign="top" class="TableCellLight"><select name="public">
- <option value="public">yes</option>
- <option value="private">no</option>
- </select>
- </td>
- </tr>
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader" width="100%">
- <input type="submit" name="importxml" value="import">
- </td>
- </tr>
-</table>
-</form>
-::
-<!-- import Netscape Bookmarks -->
-<form action="Bookmarks.html" method="POST" enctype="multipart/form-data">
-<table border="0" width="100%" height="100%">
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader"><h3>Import Bookmarks</h3></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">File:</td>
- <td valign="top" class="TableCellLight" width="100%"><input type="file" name="bookmarksfile"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">Default Tags:</td>
- <td valign="top" class="TableCellLight" width="100%"><input type="text" name="tags" value="imported"></td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">import as Public:</td>
- <td valign="top" class="TableCellLight"><select name="public">
- <option value="public">yes</option>
- <option value="private">no</option>
- </select>
- </td>
- </tr>
- <tr>
- <td colspan="2" colspan="2" valign="top" class="TableHeader" width="100%">
- <input type="submit" name="importbookmarks" value="import">
- </td>
- </tr>
-</table>
-</form>
-#(/mode)#
-<hr>
-
-<table width="100%" height="100%">
- <tr>
- <td style="padding-bottom: 10px;"><h3>Bookmark List</h3></td>
- <td><h3>Tags</h3></td>
- </tr>
-<tr>
- <td width="100%" valign="top">
-#{bookmarks}#
-<p style="border-bottom:1px #000 dashed; padding-bottom: 1em;">
-#(public)#<img class="bookmarkIcon" src="env/grafics/bookmarkpriv.png" alt="private bookmark" title="private bookmark">::<img class="bookmarkIcon" src="env/grafics/bookmarkpub.png" alt="public bookmark" title="public bookmark">#(/public)#
-<a href="#[link]#" target="_blank" class="bookmarkTitle">#[title]#</a><br />
-<span class="bookmarkDescription">#[description]#</span><br />
-Tagged with |&nbsp;#{tags}#<a href="Bookmarks.html?tag=#[tag]#" class="bookmarkTags">#[tag]#</a> | #{/tags}#<br />
-<a href="Bookmarks.html?edit=#[hash]#" class="bookmarkAction">Edit</a> /
-<a href="Bookmarks.html?delete=#[hash]#" class="bookmarkAction">Delete</a>
-</p>
-#{/bookmarks}#
-<p />
-#(prev-page)#
-::<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=#[num]#">previous page</a>
-#(/prev-page)#
-#(next-page)#
-::<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=#[num]#">next page</a>
-#(/next-page)#
-<br />
-Show
-<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=10">10</a>
-<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=50">50</a>
-<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=100">100</a>
-Bookmarks per page.
-</td>
-<td valign="top" style="padding-left: 5px; border-left-style: solid; border-left-width: 1px; border-left-color: black;">
-<div style="text-align: right">
-<a href="Bookmarks.html" class="bookmarkTags">All</a> (#[num-bookmarks]#)<br />
-#{taglist}#
-<a href="Bookmarks.html?tag=#[tag]#" class="bookmarkTags">#[name]#</a> (#[num]#)<br />
-#{/taglist}#
-</div>
-</td>
-</tr>
-</table>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Bookmarks</title>
+ #%env/templates/metas.template%#
+ <script src="/js/ajax.js" type="text/javascript"></script>
+ <script src="/js/Bookmarks.js" type="text/javascript"></script>
+ </head>
+ <body id="Bookmarks">
+ #%env/templates/header.template%#
+ <h2>Bookmarks</h2>
+ #(mode)#
+ <div class="Navigation"><a href="Bookmarks.html?login=true">Login</a></div>
+ ::
+ <div class="Navigation">
+ <a href="Bookmarks.html?mode=add">Add Bookmark</a>
+ <a href="Bookmarks.html?mode=importxml">Import XML Bookmarks</a>
+ <!-- <a href="Bookmarks.html?mode=importbookmarks">Import Bookmarks.html</a> -->
+ </div>
+ ::
+ <form action="Bookmarks.html" method="get">
+ <fieldset>
+ <legend>#(edit)#Add Bookmark::Edit Bookmark#(/edit)#</legend>
+ <dl>
+ <dt><label for="url">URL:</label></dt>
+ <dd><input type="text" name="url" id="url" value="#[url]#" onblur="loadTitle()" size="80" /></dd>
+ <dt><label for="title">Title:</label></dt>
+ <dd><input type="text" name="title" id="title" value="#[title]#" size="80" /></dd>
+ <dt><label for="description">Description:</label></dt>
+ <dd><input type="text" name="description" id="description" value="#[description]#" size="80" /></dd>
+ <dt><label for="tags">Tags (comma separated):</label></dt>
+ <dd><input type="text" name="tags" id="tags" value="#[tags]#" size="80" /></dd>
+ <dt><label for="public">Public:</label></dt>
+ <dd>
+ <select name="public" id="public">
+ <option value="public" #(public)#::selected="selected"#(/public)#>yes</option>
+ <option value="private" #(public)#selected="selected"::#(/public)#>no</option>
+ </select>
+ </dd>
+ </dl>
+ #(edit)#
+ <input type="submit" name="add" value="create" />
+ ::
+ <input type="submit" name="add" value="edit" />
+ #(/edit)#
+ </fieldset>
+ </form>
+ ::
+ <!-- import XML Bookmarks -->
+ <form action="Bookmarks.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <legend>Import XML Bookmarks</legend>
+ <dl>
+ <dt><label for="xmlfile">File:</label></dt>
+ <dd><input type="file" name="xmlfile" id="xmlfile" /></dd>
+ <dt><label for="public">import as Public:</label></dt>
+ <dd>
+ <select name="public" id="public">
+ <option value="public">yes</option>
+ <option value="private">no</option>
+ </select>
+ </dd>
+ </dl>
+ <input type="submit" name="importxml" value="import" />
+ </fieldset>
+ </form>
+ ::
+ <!-- import Netscape Bookmarks -->
+ <form action="Bookmarks.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <legend>Import Bookmarks</legend>
+ <dl>
+ <dt><label for="bookmarksfile">File:</label></dt>
+ <dd><input type="file" name="bookmarksfile" id="bookmarksfile" /></dd>
+ <dt><label for="tags">Default Tags:</label></dt>
+ <dd><input type="text" name="tags" id="tags" value="imported" /></dd>
+ <dt><label for="public">import as Public:</label></dt>
+ <dd>
+ <select name="public" id="public">
+ <option value="public">yes</option>
+ <option value="private">no</option>
+ </select>
+ </dd>
+ </dl>
+ <input type="submit" name="importbookmarks" value="import" />
+ </fieldset>
+ </form>
+ #(/mode)#
+ <div class="Tags">
+ <h3>Tags</h3>
+ <ul class="tagList">
+ <li><a href="Bookmarks.html" class="bookmarkTags">All</a> (#[num-bookmarks]#)</li>
+ #{taglist}#
+ <li><a href="Bookmarks.html?tag=#[tag]#" class="bookmarkTags">#[name]#</a> (#[num]#)</li>
+ #{/taglist}#
+ </ul>
+ </div>
+ <div class="bookmarkList">
+ <h3>Bookmark List</h3>
+ #{bookmarks}#
+ <div class="bookmark #(public)#public::private#(/public)#">
+ <h4 class="bookmarkTitle">
+ #(public)#
+ <img class="bookmarkIcon" src="env/grafics/bookmarkpriv.png" alt="private bookmark" title="private bookmark" />::<img class="bookmarkIcon" src="env/grafics/bookmarkpub.png" alt="public bookmark" title="public bookmark" />
+ #(/public)#
+ <a href="#[link]#" class="bookmarkTitle">#[title]#</a>
+ </h4>
+ <p class="bookmarkDescription">#[description]#</p>
+ <p class="tags">Tagged with |&nbsp;#{tags}#<a href="Bookmarks.html?tag=#[tag]#" class="bookmarkTags">#[tag]#</a> | #{/tags}#</p>
+ <p class="bookmarkActions">
+ <a href="Bookmarks.html?edit=#[hash]#" class="bookmarkAction">Edit</a> /
+ <a href="Bookmarks.html?delete=#[hash]#" class="bookmarkAction">Delete</a>
+ </p>
+ </div>
+ #{/bookmarks}#
+ <p class="Navigation">
+ #(prev-page)#
+ ::<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=#[num]#">previous page</a>
+ #(/prev-page)#
+ #(next-page)#
+ ::<a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=#[num]#">next page</a>
+ #(/next-page)#
+ </p>
+ <p class="bookmarkNavigation">
+ Show
+ <a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=10">10</a>
+ <a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=50">50</a>
+ <a href="Bookmarks.html?tag=#[tag]#&amp;start=#[start]#&amp;num=100">100</a>
+ Bookmarks per page.
+ </p>
+ </div>
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/CacheAdmin_p.html b/htroot/CacheAdmin_p.html
index 3bca146dc..815f23f4a 100644
--- a/htroot/CacheAdmin_p.html
+++ b/htroot/CacheAdmin_p.html
@@ -1,17 +1,24 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Local Cache Management</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<table border="0" cellspacing="6" cellpadding="2" width="100%">
-<tr><td><br><h2>Local Cache</h2></td></tr>
-<tr><td>The current cache size is #[cachesize]# KB. The maximum cache size is #[cachemax]# KB.</td></tr>
-<tr><td><a href="CacheAdmin_p.html?action=info&amp;path=" title="Cache Root" class="tt">cache/</a>#[path]#<br><br></td></tr>
-#(info)#<tr><td><a href="#[url]#" class="tt">#[url]#</a><br><br>#[info]#</td></tr>::<tr><td>#[tree]#</td></tr>#(/info)#
-</table>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Local Cache Management</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="CacheAdmin">
+ #%env/templates/header.template%#
+ <h2>Local Cache</h2>
+ <p>The current cache size is #[cachesize]# KB. The maximum cache size is #[cachemax]# KB.</p>
+ <p><a href="CacheAdmin_p.html?action=info&amp;path=" title="Cache Root" class="tt">cache/</a>#[path]#</p>
+ #(info)#
+ <a href="#[url]#" class="tt">#[url]#</a>
+ <div class="CacheAdminInfo">
+ #[info]#
+ </div>
+ ::
+ <div class="CacheAdminTree">
+ #[tree]#
+ </div>
+ #(/info)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/ConfigAdvanced_p.html b/htroot/ConfigAdvanced_p.html
index fb1bf46b4..770b298e4 100644
--- a/htroot/ConfigAdvanced_p.html
+++ b/htroot/ConfigAdvanced_p.html
@@ -1,36 +1,44 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Advanced Config</title>
-#%env/templates/metas.template%#
-<script>
-<!--
-function element_clicked(element){
-document.getElementById("key").value=element.id;
-document.getElementById("value").value=element.value;
-}
--->
-</script>
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuConfig.template%#
-<br><br>
-<h2>Advanced Config</h2>
-<p>
-Here are all configuration options from YaCy.<br>
-You can change anything, but some options need a restart, and some options can crash YaCy, if wrong values are used.<br>
-For an explanation of the available options please look into yacy.init
-</p>
-<select name="options" size="25" style="width: 600">
-#{options}#<option id="#[key]#" value="#[value]#" onclick="element_clicked(this)">#[key]#: #[value]#</option>
-#{/options}#
-</select><br>
-<form action="Config_p.html" method="POST">
-<input type="text" id="key" name="key" size="40">:<input type="text" id="value" name="value" size="40">
-<input type="Submit" value="Save">
-</form>
+<!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]#': Advanced Config</title>
+ #%env/templates/metas.template%#
+ <script type="text/javascript">
+ <!--
+ function element_clicked(element){
+ document.getElementById("key").value=element.id;
+ document.getElementById("value").value=element.value;
+ }
+ -->
+ </script>
+ </head>
+ <body id="ConfigAdvanced">
+ #%env/templates/header.template%#
+ #%env/templates/submenuConfig.template%#
-#%env/templates/footer.template%#
-</body>
+ <h2>Advanced Config</h2>
+ <p>
+ Here are all configuration options from YaCy.
+ </p>
+ <p>
+ You can change anything, but some options need a restart, and some options can crash YaCy, if wrong values are used.
+ </p>
+ <p>
+ For explanation please look into yacy.init
+ </p>
+ <select name="options" size="25" style="width: 600px">
+ #{options}#
+ <option id="#[key]#" value="#[value]#" onclick="element_clicked(this)">#[key]#: #[value]#</option>
+ #{/options}#
+ </select><br />
+ <form action="Config_p.html" method="post">
+ <fieldset>
+ <input type="text" id="key" name="key" size="40" />:<input type="text" id="value" name="value" size="40" />
+ <input type="submit" value="Save" />
+ </fieldset>
+ </form>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
+
diff --git a/htroot/ConfigBasic.html b/htroot/ConfigBasic.html
index 04dcca271..c81906603 100644
--- a/htroot/ConfigBasic.html
+++ b/htroot/ConfigBasic.html
@@ -1,82 +1,99 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Basic Configuration</title>
-#%env/templates/metas.template%#
-<script>
-<!--
-function element_clicked(element){
-document.getElementById("key").value=element.id;
-document.getElementById("value").value=element.value;
-}
--->
-</script>
- <!-- redirecting browser if port was changed -->
- #(reconnect)#::<meta http-equiv="refresh" content="10; URL=#(sslSupport)#http::https#(/sslSupport)#://#[host]#:#[port]#/ConfigBasic.html">#(/reconnect)#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuConfig.template%#
-<br>
-<h2>Basic Configuration</h2>
-<p>
-Your YaCy Peer needs some basic information to operate properly
-</p>
-
-<form action="ConfigBasic.html" method="post" enctype="multipart/form-data">
-<ol>
- <li><img src="/env/grafics/ok.png" height="32px" width="32px">&nbsp;Select a language for the interface:<br>
- <input type="radio" name="language" value="de" #(langDeutsch)#::checked#(/langDeutsch)#>Deutsch&nbsp;
- <input type="radio" name="language" value="default" #(langEnglish)#::checked#(/langEnglish)#>English<br><br></li>
- <li>#(statusPassword)#<img src="/env/grafics/warning.png">&nbsp;Please set a password for your peer to protect your settings (> 3 characters); if this is successful you will be asked to log in with these values immediately.::<img src="/env/grafics/ok.png" height="32px" width="32px">&nbsp;Password is set#(/statusPassword)#<br>
- <table border="0" cellpadding="0" cellspacing="1">
- <tr>
- <td>Peer User:
- </td>
- <td><input type="text" name="adminuser" value="#[defaultUser]#" size="16" maxlength="32">
- </tr>
- <tr>
- <td>Peer Password:
- </td>
- <td><input type="password" name="adminpw1" value="" size="16" maxlength="32"><br>
- </td>
- </tr>
- <tr>
- <td>Peer Password:
- </td>
- <td><input type="password" name="adminpw2" value="" size="16" maxlength="32">&nbsp;(repeat same password)
- </td>
- </tr>
- </table>
- <br></li>
- <li>#(statusName)#<img src="/env/grafics/warning.png">&nbsp;Your peer name has not been customized; please set your own peer name::<img src="/env/grafics/ok.png" height="32px" width="32px">&nbsp;You have a nice peer name#(/statusName)#<br>
- Peer Name: <input type="text" name="peername" value="#[defaultName]#" size="20" maxlength="32"><br><br></li>
- <li>#(statusPort)#<img src="/env/grafics/warning.png">&nbsp;Your peer cannot be reached from outside (what is not fatal, but would be good for the YaCy network); please open your firewall for this port and/or set a virtual server option in your router to allow connections on this port.::<img src="/env/grafics/ok.png" height="32px" width="32px">&nbsp;Your peer can be reached by other peers#(/statusPort)#<br>
- Peer Port: <input type="text" name="port" value="#[defaultPort]#" size="5" maxlength="5"><br>
- #(upnp)#::Configure your router for yacy:&nbsp;<input type="checkbox" name="enableUpnp" align="top" #(enabled)#::checked#(/enabled)#>#(/upnp)#<br>
- </li>
- </ol>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="set" value="Set Configuration">
-</form>
-
-<p><b>What you should do next:</b><br>
-#(nextStep)#<!-- [0] -->
-Your basic configuration is complete! You can now (for example):
-<ul>
- <li><a href="index.html">start an uncensored search</a>;</li>
- <li><a href="IndexCreate_p.html">start your own crawl</a> and contribute to the global index, or create your own private web index;</li>
- <li><a href="ConfigProfile_p.html">set a personal peer profile</a> (optional settings);</li>
- <li>just <a href="Network.html">monitor at the network page</a> what the other peers are doing</li>
-</ul>::
-<!-- [1]: password not proper -->
-You did not set a user name and/or a password. Some pages are protected by passwords. You should set a password here to secure your YaCy peer.::
-<!-- [2]: peername not proper -->
-Your Peer name is a default name; please set another peer name. If this does not work, the name is probably taken by someone else. Please try to choose another one.::
-<!-- [3]: port not proper -->
-You did not open a port in your firewall or your router does not forward the server port to your peer. This is needed if you want to fully participate in the YaCy network. You can also use your peer without opening it, but this is not recomended.::
-<!-- [4]: reconnect to different port -->
-The peer port was changed successfully. Your browser will be redirected to the new <a href="#(sslSupport)#http::https#(/sslSupport)#://#[host]#:#[port]#/ConfigBasic.html">location</a> in 10 seconds.
-#(/nextStep)#
-#%env/templates/footer.template%#
-</body>
+<!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]#': Basic Configuration</title>
+ #%env/templates/metas.template%#
+ <script type="text/javascript">
+ <!--
+ function element_clicked(element){
+ document.getElementById("key").value=element.id;
+ document.getElementById("value").value=element.value;
+ }
+ -->
+ </script>
+ <!-- redirecting browser if port was changed -->
+ #(reconnect)#::<meta http-equiv="refresh" content="10; url=#(sslSupport)#http::https#(/sslSupport)#://#[host]#:#[port]#/ConfigBasic.html" />#(/reconnect)#
+ </head>
+ <body id="ConfigBasic">
+ #%env/templates/header.template%#
+ #%env/templates/submenuConfig.template%#
+ <h2>Basic Configuration</h2>
+ <p>
+ Your YaCy Peer needs some basic information to operate properly
+ </p>
+
+ <form action="ConfigBasic.html" method="post" enctype="multipart/form-data">
+ <ol>
+ <li>
+ <img src="/env/grafics/ok.png" height="32px" width="32px" alt="ok" />&nbsp;Select a language for the interface:<br />
+ <fieldset>
+ <input type="radio" name="language" id="lang_de" value="de" #(langDeutsch)#::checked="checked"#(/langDeutsch)# /><label for="lang_de">Deutsch</label>&nbsp;
+ <input type="radio" name="language" value="default" id="lang_en" #(langEnglish)#::checked="checked"#(/langEnglish)# /><label for="lang_en">English</label>
+ </fieldset>
+ </li>
+ <li>
+ #(statusPassword)#<img src="/env/grafics/warning.png" alt="warning" />&nbsp;Please set a password for your peer to protect your settings (> 3 characters); if this is successful you will be asked to log in with these values immediately.::<img src="/env/grafics/ok.png" height="32px" width="32px" alt="ok" />&nbsp;Password is set#(/statusPassword)#<br />
+ <fieldset>
+ <dl class="userConfig">
+ <dt><label for="adminuser">Peer User:</label></dt>
+ <dd><input type="text" name="adminuser" id="adminuser" value="#[defaultUser]#" size="16" maxlength="32" /></dd>
+ <dt><label for="adminpw1">Peer Password:</label></dt>
+ <dd><input type="password" name="adminpw1" id="adminpw1" value="" size="16" maxlength="32" /></dd>
+ <dt><label for="adminpw2">Peer Password:</label></dt>
+ <dd><input type="password" name="adminpw2" id="adminpw2" value="" size="16" maxlength="32" /> (repeat same password)</dd>
+ </dl>
+ </fieldset>
+ </li>
+ <li>
+ #(statusName)#<img src="/env/grafics/warning.png" alt="warning" />&nbsp;Your peer name has not been customized; please set your own peer name::<img src="/env/grafics/ok.png" height="32px" width="32px" alt="ok" />&nbsp;You have a nice peer name#(/statusName)#<br />
+ <fieldset>
+ <dl>
+ <dt><label for="peername">Peer Name: </label></dt>
+ <dd>
+ <input type="text" name="peername" id="peername" value="#[defaultName]#" size="20" maxlength="32" />
+ </dd>
+ </dl>
+ </fieldset>
+ </li>
+ <li>
+ #(statusPort)#<img src="/env/grafics/warning.png" alt="warning" />&nbsp;Your peer cannot be reached from outside (what is not fatal, but would be good for the YaCy network); please open your firewall for this port and/or set a virtual server option in your router to allow connections on this port.::<img src="/env/grafics/ok.png" height="32px" width="32px" alt="ok" />&nbsp;Your peer can be reached by other peers#(/statusPort)#<br />
+ <fieldset>
+ <dl>
+ <dt><label for="port">Peer Port: </label></dt>
+ <dd>
+ <input type="text" name="port" id="port" value="#[defaultPort]#" size="5" maxlength="5" />
+ </dd>
+ #(upnp)#::<dt>
+ <label for="enableUpnp">Configure your router for yacy:&nbsp;</label>
+ </dt>
+ <dd>
+ <input type="checkbox" name="enableUpnp" id="enableUpnp" align="top" #(enabled)#::checked="checked"#(/enabled)# />
+ </dd>#(/upnp)#
+ </dl>
+ </fieldset>
+ </li>
+ </ol>
+ <fieldset>&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="set" value="Set Configuration" /></fieldset>
+ </form>
+
+ <p><strong>What you should do next:</strong></p>
+ #(nextStep)#<!-- [0] -->
+ <p>Your basic configuration is complete! You can now (for example):</p>
+ <ul>
+ <li><a href="index.html">start an uncensored search</a>;</li>
+ <li><a href="IndexCreate_p.html">start your own crawl</a> and contribute to the global index, or create your own private web index;</li>
+ <li><a href="ConfigProfile_p.html">set a personal peer profile</a> (optional settings);</li>
+ <li>just <a href="Network.html">monitor at the network page</a> what the other peers are doing</li>
+ </ul>::
+ <!-- [1]: password not proper -->
+ <p>You did not set a user name and/or a password. Some pages are protected by passwords. You should set a password here to secure your YaCy peer.</p>::
+ <!-- [2]: peername not proper -->
+ <p>Your Peer name is a default name; please set another peer name. If this does not work, the name is probably taken by someone else. Please try to choose another one.</p>::
+ <!-- [3]: port not proper -->
+ <p>You did not open a port in your firewall or your router does not forward the server port to your peer. This is needed if you want to fully participate in the YaCy network. You can also use your peer without opening it, but this is not recomended.</p>::
+ <!-- [4]: reconnect to different port -->
+ <p>The peer port was changed successfully. Your browser will be redirected to the new <a href="#(sslSupport)#http::https#(/sslSupport)#://#[host]#:#[port]#/ConfigBasic.html">location</a> in 10 seconds.</p>
+ #(/nextStep)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/ConfigLanguage_p.html b/htroot/ConfigLanguage_p.html
index 2f91e3564..50673356e 100644
--- a/htroot/ConfigLanguage_p.html
+++ b/htroot/ConfigLanguage_p.html
@@ -1,79 +1,91 @@
-<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
- <head>
- <title>YaCy '#[clientname]#': Language selection</title>
- #%env/templates/metas.template%#
- </head>
- <body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
- #%env/templates/header.template%#
- #%env/templates/submenuConfig.template%#
- <br>
- <h2>Language selection</h2>
- <p>
- You can change the language of the YaCy-webinterface with translation files.
- <p>
- <table border="0" cellpadding="5" cellspacing="1">
- <tr>
- <td valign="top" class="TableHeader" colspan="2">&nbsp;</td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
- Current language:
- </td>
- <td valign="top" class="TableCellLight"> <!-- lang -->default(english)
- </td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
- Languagefile Author(s) (chronological):
- </td>
- <td valign="top" class="TableCellLight"> <!-- author -->
- </td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
- <i>Send additions to maintainer:</i>
- </td>
- <td valign="top" class="TableCellLight"> <!-- maintainer -->
- </td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
- Available Languages:
- </td>
- <td valign="top" class="TableCellLight">
-<form action="ConfigLanguage_p.html">
-<select size="10" name="lang">
-#{langlist}#
-<option value="#[file]#">#[name]#</option>
-#{/langlist}#
-</select><br>
-<input type="submit" name="use_button" value="Use">
-<input type="submit" name="delete" value="Delete"><br>
-</form>
-</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">
-<form action="ConfigLanguage_p.html">
-Install new language from URL:
-</td>
-<td valign="top" class="TableCellLight">
-<input type="text" name="url" size="30"><br>
-<input type="checkbox" name="use_lang" value="on" checked="true">Use this language<br>
-<input type="submit" value="Install">
-</form>
-</td>
-<tr>
-</table>
+<!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]#': Language selection</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ConfigLanguage">
+ #%env/templates/header.template%#
+ #%env/templates/submenuConfig.template%#
+ <h2>Language selection</h2>
+ <p>
+ You can change the language of the YaCy-webinterface with translation files.
+ </p>
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr>
+ <td valign="top" class="TableHeader" colspan="2">
+ &nbsp;
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Current language:
+ </td>
+ <td valign="top" class="TableCellLight">
+ <!-- lang -->default(english)
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Languagefile Author(s) (chronological):
+ </td>
+ <td valign="top" class="TableCellLight">
+ <!-- author -->
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ <em>Send additions to maintainer:</em>
+ </td>
+ <td valign="top" class="TableCellLight">
+ <!-- maintainer -->
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Available Languages:
+ </td>
+ <td valign="top" class="TableCellLight">
+ <form action="ConfigLanguage_p.html">
+ <fieldset>
+ <select size="10" name="lang">
+ #{langlist}#
+ <option value="#[file]#">#[name]#</option>
+ #{/langlist}#
+ </select>
+ </fieldset>
+ <fieldset>
+ <input type="submit" name="use_button" value="Use" />
+ <input type="submit" name="delete" value="Delete" />
+ </fieldset>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Install new language from URL:
+ </td>
+ <td valign="top" class="TableCellLight">
+ <form action="ConfigLanguage_p.html">
+ <fieldset>
+ <input type="text" name="url" size="30" /><br />
+ <input type="checkbox" name="use_lang" value="on" checked="checked" />Use this language<br />
+ <input type="submit" value="Install" />
+ </fieldset>
+ </form>
+ </td>
+ </tr>
+ </table>
-<b>#(status)#
-::
-Unable to get URL: #[url]#
-::
-Error saving the language file.
-#(status)#</b>
+ <p>
+ <strong>#(status)#
+ ::
+ Unable to get URL: #[url]#
+ ::
+ Error saving the language file.
+ #(/status)#</strong>
+ </p>
-#%env/templates/footer.template%#
-</body>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/ConfigProfile_p.html b/htroot/ConfigProfile_p.html
index 0c0ef519e..b066ba24c 100644
--- a/htroot/ConfigProfile_p.html
+++ b/htroot/ConfigProfile_p.html
@@ -1,82 +1,67 @@
-<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Your Personal Profile</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuConfig.template%#
-<br>
-<h2>Your Personal Profile</h2>
-<p>
-You can create a personal profile here. Other YaCy users can view these information using a link on the network page.<br>
-You do not need to provide any personal data here, but if you want to distribute your contact information, you can do that here.
-</p>
-<form action="ConfigProfile_p.html">
-
-
-<table border="0" cellpadding="5" cellspacing="1">
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Name</td>
-<td valign="top" class="TableCellLight"><input type="text" name="name" maxlength="1000" value="#[name]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Nick Name</td>
-<td valign="top" class="TableCellLight"><input type="text" name="nickname" maxlength="1000" value="#[nickname]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Homepage</td>
-<td valign="top" class="TableCellLight"><input type="text" name="homepage" maxlength="1000" value="#[homepage]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">eMail</td>
-<td valign="top" class="TableCellLight"><input type="text" name="email" maxlength="1000" value="#[email]#" style="width:100%"></td>
-</tr>
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-
-<tr>
-<td valign="top" class="TableCellDark">ICQ</td>
-<td valign="top" class="TableCellLight"><input type="text" name="icq" maxlength="9" value="#[icq]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Jabber</td>
-<td valign="top" class="TableCellLight"><input type="text" name="jabber" maxlength="1000" value="#[jabber]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Yahoo!</td>
-<td valign="top" class="TableCellLight"><input type="text" name="yahoo" maxlength="1000" value="#[yahoo]#" style="width:100%"></td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">MSN</td>
-<td valign="top" class="TableCellLight"><input type="text" name="msn" maxlength="1000" value="#[msn]#" style="width:100%"></td>
-</tr>
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-
-<tr>
-<td valign="top" class="TableCellDark">Comment</td>
-<td valign="top" class="TableCellLight"><textarea name="comment" cols="40" rows="10">#[comment]#</textarea>
-<br><font size="-1">You can use <a href="WikiHelp.html" target="_blank" onClick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.</font>
-</td>
-</tr>
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">
-<input type="submit" name="set" value="Save">
-</td>
-</table>
-
-</form>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Your Personal Profile</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ConfigProfile">
+ #%env/templates/header.template%#
+ #%env/templates/submenuConfig.template%#
+ <h2>Your Personal Profile</h2>
+ <p>
+ You can create a personal profile here. Other YaCy users can view these information using a link on the network page.
+ </p>
+ <p>
+ You do not need to provide any personal data here, but if you want to distribute your contact information, you can do that here.
+ </p>
+ <form action="ConfigProfile_p.html">
+ <fieldset>
+ <dl>
+ <dt><label for="name">Name</label></dt>
+ <dd>
+ <input type="text" name="name" id="name" size="40" maxlength="1000" value="#[name]#" />
+ </dd>
+ <dt><label for="nickname">Nick Name</label></dt>
+ <dd>
+ <input type="text" name="nickname" id="nickname" size="40" maxlength="1000" value="#[nickname]#" />
+ </dd>
+ <dt><label for="homepage">Homepage</label></dt>
+ <dd>
+ <input type="text" name="homepage" id="homepage" size="40" maxlength="1000" value="#[homepage]#" />
+ </dd>
+ <dt><label for="email">eMail</label></dt>
+ <dd>
+ <input type="text" name="email" id="email" size="40" maxlength="1000" value="#[email]#" />
+ </dd>
+ </dl>
+ <dl>
+ <dt><label for="icq">ICQ</label></dt>
+ <dd>
+ <input type="text" name="icq" id="icq" size="20" maxlength="9" value="#[icq]#" />
+ </dd>
+ <dt><label for="jabber">Jabber</label></dt>
+ <dd>
+ <input type="text" name="jabber" id="jabber" size="40" maxlength="1000" value="#[jabber]#" />
+ </dd>
+ <dt><label for="yahoo">Yahoo!</label></dt>
+ <dd>
+ <input type="text" name="yahoo" id="yahoo" size="40" maxlength="1000" value="#[yahoo]#" />
+ </dd>
+ <dt><label for="msn">MSN</label></dt>
+ <dd>
+ <input type="text" name="msn" id="msn" size="40" maxlength="1000" value="#[msn]#" />
+ </dd>
+ </dl>
+ <dl>
+ <dt><label for="comment">Comment</label></dt>
+ <dd>
+ <textarea name="comment" id="comment" cols="40" rows="10">#[comment]#</textarea>
+ <p class="help">You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.</p>
+ </dd>
+ </dl>
+ <input type="submit" name="set" value="Save" />
+ </fieldset>
+ </form>
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/ConfigSkins_p.html b/htroot/ConfigSkins_p.html
index 1e045491d..05a0918ae 100644
--- a/htroot/ConfigSkins_p.html
+++ b/htroot/ConfigSkins_p.html
@@ -1,65 +1,73 @@
-<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Skins</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuConfig.template%#
-<br>
-<h2>Skin Selection</h2>
-<p>
-You can change the appearance of YaCy with skins. Select one of the default skins, download new skins, or create your own skin.</p>
-<p>
- <table border="0" cellpadding="5" cellspacing="1">
- <tr>
- <td valign="top" class="TableHeader" colspan="2">&nbsp;</td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
-Current skin:
-</td>
- <td valign="top" class="TableCellLight"> #[currentskin]#
- </td>
- </tr>
- <tr>
- <td valign="top" class="TableCellDark">
-Available Skins:
- </td>
- <td valign="top" class="TableCellLight">
-
-<form action="ConfigSkins_p.html">
-<select size="10" name="skin">
-#{skinlist}#
-<option value="#[file]#">#[name]#</option>
-#{/skinlist}#
-</select>
-<br>
-<input type="submit" name="use_button" value="Use">
-<input type="submit" name="delete" value="Delete"><br>
-</form>
-</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">
-<form action="ConfigSkins_p.html">
-Install new skin from URL:
-</td>
-<td valign="top" class="TableCellLight">
-<input type="text" name="url" size="30"><br><input type="checkbox" name="use_skin" value="on" checked="true">Use this skin<br><br>
-<input type="submit" value="install">
-</form>
-<br>
-<b>#(status)#
-::
-Unable to get URL: #[url]#
-::
-Error saving the skin.
-#(status)#</b>
-</td>
-</tr>
-</table>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Skins</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ConfigSkins">
+ #%env/templates/header.template%#
+ #%env/templates/submenuConfig.template%#
+ <h2>Skin Selection</h2>
+ <p>
+ You can change the appearance of YaCy with skins. Select one of the default skins, download new skins, or create your own skin.
+ </p>
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr>
+ <td valign="top" class="TableHeader" colspan="2">
+ &nbsp;
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Current skin:
+ </td>
+ <td valign="top" class="TableCellLight">
+ #[currentskin]#
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Available Skins:
+ </td>
+ <td valign="top" class="TableCellLight">
+ <form action="ConfigSkins_p.html">
+ <fieldset>
+ <select size="10" name="skin">
+ #{skinlist}#
+ <option value="#[file]#">#[name]#</option>
+ #{/skinlist}#
+ </select>
+ </fieldset>
+ <fieldset>
+ <input type="submit" name="use_button" value="Use" />
+ <input type="submit" name="delete" value="Delete" />
+ </fieldset>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" class="TableCellDark">
+ Install new skin from URL:
+ </td>
+ <td valign="top" class="TableCellLight">
+ <form action="ConfigSkins_p.html">
+ <fieldset>
+ <input type="text" name="url" size="30" /><br />
+ <input type="checkbox" name="use_skin" value="on" checked="checked" />Use this skin<br /><br />
+ <input type="submit" value="install" />
+ </fieldset>
+ </form>
+ <p>
+ <strong>#(status)#
+ ::
+ Unable to get URL: #[url]#
+ ::
+ Error saving the skin.
+ #(/status)#</strong>
+ </p>
+ </td>
+ </tr>
+ </table>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Config_p.html b/htroot/Config_p.html
index 9538437b3..330bfa70f 100644
--- a/htroot/Config_p.html
+++ b/htroot/Config_p.html
@@ -1,37 +1,42 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Advanced Config</title>
-#%env/templates/metas.template%#
-<script>
-<!--
-function element_clicked(element){
-document.getElementById("key").value=element.id;
-document.getElementById("value").value=element.value;
-}
--->
-</script>
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Advanced Config</h2>
-<p>
-Here are all configuration options from YaCy.<br>
-You can change anything, but some options need a restart, and some options can crash YaCy, if wrong values are used.
-For explanation please look into yacy.init
-</p>
-<select name="options" size="25" style="width: 600">
-#{options}#<option id="#[key]#" value="#[value]#" onclick="element_clicked(this)">#[key]#: #[value]#</option>
-#{/options}#
-</select><br>
-<form action="Config_p.html" method="POST">
-<input type="text" id="key" name="key" size="40">:<input type="text" id="value" name="value" size="40">
-<input type="Submit" value="Save">
-</form>
-
-
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Advanced Config</title>
+ #%env/templates/metas.template%#
+ <script type="text/javascript">
+ <!--
+ function element_clicked(element){
+ document.getElementById("key").value=element.id;
+ document.getElementById("value").value=element.value;
+ }
+ -->
+ </script>
+ </head>
+ <body id="Config">
+ #%env/templates/header.template%#
+
+ <h2>Advanced Config</h2>
+ <p>
+ Here are all configuration options from YaCy.
+ </p>
+ <p>
+ You can change anything, but some options need a restart, and some options can crash YaCy, if wrong values are used.
+ </p>
+ <p>
+ For explanation please look into yacy.init
+ </p>
+ <select name="options" size="25" style="width: 600px">
+ #{options}#
+ <option id="#[key]#" value="#[value]#" onclick="element_clicked(this)">#[key]#: #[value]#</option>
+ #{/options}#
+ </select><br />
+ <form action="Config_p.html" method="post">
+ <fieldset>
+ <input type="text" id="key" name="key" size="40" />:<input type="text" id="value" name="value" size="40" />
+ <input type="submit" value="Save" />
+ </fieldset>
+ </form>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Connections_p.html b/htroot/Connections_p.html
index c591d45c8..2777c2476 100644
--- a/htroot/Connections_p.html
+++ b/htroot/Connections_p.html
@@ -1,42 +1,39 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Connection Tracking</title>
-#%env/templates/metas.template%#
-<meta http-equiv="REFRESH" content="3">
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Connection Tracking</h2>
-<p>
-<h3>Incoming Connections</h3>
-Showing #[numActiveRunning]# active, #[numActivePending]# pending connections from a max. of #[numMax]# allowed incoming connections.<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
- <td class="small">Protocol</td>
- <td class="small">Duration</td>
- <td class="small">Source IP[:Port]</td>
- <td class="small">Dest. IP[:Port]</td>
- <td class="small">Command</td>
- <td class="small">Used</td>
- <td class="small">Close</td>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#" title="#[sessionName]#">
- <td class="small">#[proto]#</td>
- <td class="small">#(ms)##[duration]#::#[duration]# ms#(/ms)#</td>
- <td class="small">#[source]#</td>
- <td class="small">#[dest]#</td>
- <td class="small">#(running)#Waiting for new request nr. # #[reqNr]#::#[command]##(/running)#</td>
- <td class="small">#[used]#</td>
- <td class="small"><a href="Connections_p.html?closeSession=#[sessionID]#"><font class="small">[Close]</font></a></td>
-</tr>
-#{/list}#
-</table>
-</p>
+<!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]#': Connection Tracking</title>
+ #%env/templates/metas.template%#
+ <meta http-equiv="REFRESH" content="3" />
+ </head>
+ <body id="Connections">
+ #%env/templates/header.template%#
+ <h2>Connection Tracking</h2>
+ <h3>Incoming Connections</h3>
+ <p>Showing #[numActiveRunning]# active, #[numActivePending]# pending connections from a max. of #[numMax]# allowed incoming connections.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>Protocol</td>
+ <td>Duration</td>
+ <td>Source IP[:Port]</td>
+ <td>Dest. IP[:Port]</td>
+ <td>Command</td>
+ <td>Used</td>
+ <td>Close</td>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#" title="#[sessionName]#">
+ <td>#[proto]#</td>
+ <td>#(ms)##[duration]#::#[duration]# ms#(/ms)#</td>
+ <td>#[source]#</td>
+ <td>#[dest]#</td>
+ <td>#(running)#Waiting for new request nr. # #[reqNr]#::#[command]##(/running)#</td>
+ <td>#[used]#</td>
+ <td><a href="Connections_p.html?closeSession=#[sessionID]#">[Close]</a></td>
+ </tr>
+ #{/list}#
+ </table>
-#%env/templates/footer.template%#
+ #%env/templates/footer.template%#
-</body>
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/CookieMonitorIncoming_p.html b/htroot/CookieMonitorIncoming_p.html
index a94525d67..c64251beb 100644
--- a/htroot/CookieMonitorIncoming_p.html
+++ b/htroot/CookieMonitorIncoming_p.html
@@ -1,35 +1,31 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Incoming Cookies Monitor</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuCookie.template%#
-<br>
-<h2>Cookie Monitor: Incoming Cookies</h2>
-<font size="1">
-<p>This is a list of Cookies that a web server has sent to clients of the YaCy Proxy:<br>
-Showing #[num]# entries from a total of #[total]# Cookies.<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<td class="small">Sending Host</td>
-<td class="small">Date</td>
-<td class="small">Receiving Client</td>
-<td class="small">Cookie</td>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#">
-<td class="small">#[host]#</td>
-<td class="small">#[date]#</td>
-<td class="small">#[client]#</td>
-<td class="small">#[cookie]#</td>
-</tr>
-#{/list}#
-</table>
-</p>
-</font>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Incoming Cookies Monitor</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="CookieMonitorIncoming">
+ #%env/templates/header.template%#
+ #%env/templates/submenuCookie.template%#
+ <h2>Cookie Monitor: Incoming Cookies</h2>
+ <p>This is a list of Cookies that a web server has sent to clients of the YaCy Proxy:</p>
+ <p>Showing #[num]# entries from a total of #[total]# Cookies.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td>Sending Host</td>
+ <td>Date</td>
+ <td>Receiving Client</td>
+ <td>Cookie</td>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[host]#</td>
+ <td>#[date]#</td>
+ <td>#[client]#</td>
+ <td>#[cookie]#</td>
+ </tr>
+ #{/list}#
+ </table>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/CookieMonitorOutgoing_p.html b/htroot/CookieMonitorOutgoing_p.html
index ae6371592..077f8091e 100644
--- a/htroot/CookieMonitorOutgoing_p.html
+++ b/htroot/CookieMonitorOutgoing_p.html
@@ -1,35 +1,35 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Outgoing Cookies Monitor</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuCookie.template%#
-<br>
-<h2>Cookie Monitor: Outgoing Cookies</h2>
-<font size="1">
-<p>This is a list of Cookies that a browser using the YaCy Proxy has sent to a web server:<br>
-Showing #[num]# entries from a total of #[total]# Cookies.<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<td class="small">Receiving Host</td>
-<td class="small">Date</td>
-<td class="small">Sending Client</td>
-<td class="small">Cookie</td>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#">
-<td class="small">#[host]#</td>
-<td class="small">#[date]#</td>
-<td class="small">#[client]#</td>
-<td class="small">#[cookie]#</td>
-</tr>
-#{/list}#
-</table>
-</p>
-</font>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Outgoing Cookies Monitor</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="CookieMonitorOutgoing">
+ #%env/templates/header.template%#
+ #%env/templates/submenuCookie.template%#
+ <h2>Cookie Monitor: Outgoing Cookies</h2>
+ <p>This is a list of Cookies that a browser using the YaCy Proxy has sent to a web server:</p>
+ <p>Showing #[num]# entries from a total of #[total]# Cookies.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="10" span="3" />
+ <col width="70" />
+ </colgroup>
+ <tr class="TableHeader">
+ <td>Receiving Host</td>
+ <td>Date</td>
+ <td>Sending Client</td>
+ <td>Cookie</td>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[host]#</td>
+ <td>#[date]#</td>
+ <td>#[client]#</td>
+ <td>#[cookie]#</td>
+ </tr>
+ #{/list}#
+ </table>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/CookieTest.html b/htroot/CookieTest.html
index 2f55def8d..707689670 100644
--- a/htroot/CookieTest.html
+++ b/htroot/CookieTest.html
@@ -1,66 +1,64 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Cookie - Test Page</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
+<!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]#': Cookie - Test Page</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="CookieTest">
+ #%env/templates/header.template%#
+ <p>Here is a cookie test page.</p>
+ <hr />
+ <form action="">
+ <fieldset>
+ <input type="hidden" name="act" value="clear_cookie" />
+ <input type="submit" name="set_action" value="Just clean it" />
+ </fieldset>
+ </form>
+ <hr />
+ <form action="">
+ <fieldset>
+ <input type="hidden" name="act" value="set_cookie" />
+ <dl>
+ <dt><label for="cookie_name">Name:</label></dt>
+ <dd><input type="text" name="cookie_name" id="cookie_name" /></dd>
+ <dt><label for="cookie_value">Value:</label></dt>
+ <dd><input type="text" name="cookie_value" id="cookie_value" /></dd>
+ </dl>
+ <input type="submit" name="set_action" value="Dear server, set this coockie for me!" />
+ </fieldset>
+ </form>
+ <hr />
+ <p>Cookies at this browser:</p>
+ <p>
+ <script type="text/javascript">
+ <!--
+ document.write(document.cookie.split(';').join(';<br />'))
+ //-->
+ </script>
+ </p>
+ #(cookiesout)#
+ ::
+ <hr />
+ <p>Cookies coming to server:</p>
+ #(/cookiesout)#
+ <p>#{cookiesout}#
+ #[string]#
+ #{/cookiesout}#</p>
-</script>
-Here is a cookie test page.
-<hr />
-<br />
-<form action="">
-<input type="hidden" name="act" value="clear_cookie" />
-<input type="submit" name="set_action" value="Just clean it" />
-</form>
+ #(cookiesin)#
+ ::
+ <hr />
+ <p>Cookies server sent:</p>
+ #(/cookiesin)#
+ <p>#{cookiesin}#
+ #[name]# = #[value]#
+ #{/cookiesin}#</p>
-<hr />
-<br />
-<form action="">
-<input type="hidden" name="act" value="set_cookie" />
-Name: <input type=text name="cookie_name" /><br />
-Value: <input type=text name="cookie_value" /><br />
-<input type="submit" name="set_action" value="Dear server, set this coockie for me!" />
-</form>
-
-<br />
-<hr />
-Cookies at this browser:<br />
-<script type="text/javascript">
-document.write(document.cookie.split(';').join(';<br />'))
-</script>
-
-
-
-#(cookiesout)#
-::
-<br />
-<hr />
-Cookies coming to server:<br />
-#(/cookiesout)#
-#{cookiesout}#
-#[string]#
-#{/cookiesout}#
-
-#(cookiesin)#
-::
-<br />
-<hr />
-Cookies server sent:<br />
-#(/cookiesin)#
-#{cookiesin}#
-#[name]# = #[value]#
-#{/cookiesin}#
-
-<br>
-<hr>
-<center><i>YaCy is a GPL'ed project
-with the target of implementing a P2P-based global search engine.<br>
-Architecture (C) by Michael Peter Christen,
-<img src="/env/grafics/mcemailh.gif"></i></center>
-
-#%env/templates/footer.template%#
-</body>
+ <p class="info">YaCy is a GPL'ed project
+ with the target of implementing a P2P-based global search engine.<br />
+ Architecture (C) by Michael Peter Christen,
+ <img src="/env/grafics/mcemailh.gif" alt="Mail-Adresse von Michael Peter Christen" />
+ </p>
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/DetailedSearch.html b/htroot/DetailedSearch.html
index daed0d58b..8a14847dc 100644
--- a/htroot/DetailedSearch.html
+++ b/htroot/DetailedSearch.html
@@ -1,215 +1,165 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
- <head>
- <title>YaCy '#[clientname]#': Search Page</title>
- #%env/templates/metas.template%#
- </head>
- <body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
- <SCRIPT LANGUAGE="JavaScript">
-picEmpty = new Image(11, 11);
-picEmpty.src = "/env/grafics/empty.gif";
-picMinus = new Image(11, 11);
-picMinus.src = "/env/grafics/minus.gif";
-function checker(name, z1, z2) {
- if (z1 == z2) {
- document.write("<input type=\"radio\" name=\"" + name + "\" value=\"" + z2 + "\" checked>");
- } else {
- document.write("<input type=\"radio\" name=\"" + name + "\" value=\"" + z2 + "\">");
- }
-}
-function checkers(name, n) {
- for (i = 0; i < 16; i++) {
- checker(name, n, i);
- }
- document.write(n);
-}
- </SCRIPT>
-<form action="DetailedSearch.html" method="get" enctype="multipart/form-data">
-<br><br><h2>Detailed&nbsp;Search</h2><br>
-<table border="0" cellpadding="5" cellspacing="0">
- <tr valign="center">
- <td colspan="2" align="right"><input type="text" name="search" value="#[search]#" size="50" maxlength="250">&nbsp;<input type="submit" name="Enter" value="Search"></td>
- <td></td>
- </tr>
- <tr valign="top">
- <td colspan="2">
- <table border="0" cellpadding="0" cellspacing="1">
- <tr valign="center" class="TableHeader"><td class="small" colspan="2">Local Query</td></tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Max. number of results:</td>
- <td class=small>
- <input type="text" name="localCount" value="#[localCount]#" size="4" maxlength="5">
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Max. search time (seconds):</td>
- <td class=small>
- <input type="text" name="localTime" value="#[localTime]#" size="4" maxlength="3">
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Max. word distance:</td>
- <td class=small>
- <input type="text" name="localWDist" value="#[localWDist]#" size="4" maxlength="4">
- </td>
- </tr>
-
- <tr valign="center"><td class="small" colspan="2">&nbsp;</td></tr>
- <tr valign="center" class="TableHeader" width="600"><td class="small" colspan="2">Local Pre-Ranking</td></tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Entropy</td>
- <td class=small>
- <script type="text/javascript">checkers("localentropy", #[localentropy]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Date</td>
- <td class=small>
- <script type="text/javascript">checkers("localdate", #[localdate]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>YBR</td>
- <td class=small>
- <script type="text/javascript">checkers("localybr", #[localybr]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Position in Text</td>
- <td class=small>
- <script type="text/javascript">checkers("localposintext", #[localposintext]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Word Distance</td>
- <td class=small>
- <script type="text/javascript">checkers("localworddistance", #[localworddistance]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Word Hit Count</td>
- <td class=small>
- <script type="text/javascript">checkers("localhitcount", #[localhitcount]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Domain Length</td>
- <td class=small>
- <script type="text/javascript">checkers("localdomlength", #[localdomlength]#)</script>
- </td>
- </tr>
-
- <tr valign="center"><td class="small" colspan="2">&nbsp;</td></tr>
- <tr valign="center" class="TableHeader" width="600"><td class="small" colspan="2">Local Post-Ranking</td></tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>URL Length</td>
- <td class=small>
- <script type="text/javascript">checkers("localurllength", #[localurllength]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>URL Components</td>
- <td class=small>
- <script type="text/javascript">checkers("localurlcomps", #[localurlcomps]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Description Length</td>
- <td class=small>
- <script type="text/javascript">checkers("localdescrlength", #[localdescrlength]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Description Components</td>
- <td class=small>
- <script type="text/javascript">checkers("localdescrcomps", #[localdescrcomps]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Query appears in URL</td>
- <td class=small>
- <script type="text/javascript">checkers("localqueryinurl", #[localqueryinurl]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Query appears in Description</td>
- <td class=small>
- <script type="text/javascript">checkers("localqueryindescr", #[localqueryindescr]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>URL Component appears in Toplist</td>
- <td class=small>
- <script type="text/javascript">checkers("localurlcompintoplist", #[localurlcompintoplist]#)</script>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small>Description Component appears in Toplist</td>
- <td class=small>
- <script type="text/javascript">checkers("localdescrcompintoplist", #[localdescrcompintoplist]#)</script>
- </td>
- </tr>
-
- </table>
- </td>
- <td colspan="2">
- <table border="0" cellpadding="0" cellspacing="1">
- <tr valign="center" class="TableHeader"><td class="small" colspan="2">Query Attributes</td></tr>
- <tr valign="center" class="TableCellDark">
- <td class=small colspan="2">Global:
- <input type="checkbox" name="global" align="top" #[globalChecked]#>
- </td>
- </tr>
- <tr valign="center" class="TableCellDark">
- <td class=small colspan="2">Post-Sort:
- <input type="checkbox" name="postsort" align="top" #[postsortChecked]#>
- </td>
- </tr>
-
- </table></td>
- </tr>
-</table>
-</form>
-
-#(type)#
-<p>
-#(excluded)#
-::
-<b>The following words are stop-words and had been excluded from the search: #[stopwords]#.</b>
-#(/excluded)#
-#(num-results)#
-::
-<b>#[linkcount]#</b> results from <b>#[orderedcount]#</b> ordered links of a total number of <b>#[totalcount]#</b> known.
-#(/num-results)#
-#(combine)#
-::
-<br><br><b>Topwords</b> (to refine search):
-#{words}#
-<a href="DetailedSearch.html?search=#[newsearch]#&Enter=Search&count=#[count]#&resource=#[resource]#&time=#[time]##[ranking]#">#[word]#</a>
-#{/words}#
-#(/combine)#
-</p>
-<!-- linklist begin -->
-
-#{results}#
-<!-- link begin -->
-<p style="border-bottom:1px #000 dashed; padding-bottom: 1em;">
-<a href="#[delete]#" onMouseover="document.minus_#[urlhexhash]#.src=picMinus.src" onMouseout="document.minus_#[urlhexhash]#.src=picEmpty.src">
-<img src="/env/grafics/empty.gif" title="delete" alt="delete" name="minus_#[urlhexhash]#" border="0"></a>&nbsp;<b><span class="ResultDescription">#[description]#</span></b><br>
-#(snippet)#::<img src="/env/grafics/empty.gif">&nbsp;<i>#[text]#</i><br>#(/snippet)#
-<img src="/env/grafics/empty.gif">&nbsp;<a href="#[url]#">#[urlname]#</a><br>
-<img src="/env/grafics/empty.gif"><span class="ResultDateYBR">&nbsp;#[date]#</span> | <span class="ResultDateYBR">YBR-#[ybr]#</span> | <a href="ViewFile.html?urlHash=#[urlhash]#&words=#[words]#">Info</a><br>
-<img src="/env/grafics/empty.gif"><span class="ResultDateYBR">#[rankingprops]#</span><br>
-</p>
-<!-- link end -->
-#{/results}#
-#(/type)#
-
-<!-- linklist end -->
-<p>
-</p><br>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Search Page</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="DetailedSearch">
+ #%env/templates/header.template%#
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ function checker(name, z1, z2) {
+ if (z1 == z2) {
+ document.write("<input type=\"radio\" name=\"" + name + "\" value=\"" + z2 + "\" checked=\"checked\" />");
+ } else {
+ document.write("<input type=\"radio\" name=\"" + name + "\" value=\"" + z2 + "\">");
+ }
+ }
+ function checkers(name, n) {
+ for (i = 0; i < 16; i++) {
+ checker(name, n, i);
+ }
+ document.write(n);
+ }
+ /* ]]> */
+ </script>
+ <h2>Detailed&nbsp;Search</h2>
+ <form class="dsearch" action="DetailedSearch.html" method="get" enctype="multipart/form-data">
+ <fieldset>
+ <input type="text" name="search" value="#[search]#" size="50" maxlength="250" />
+ <input type="submit" name="Enter" value="Search" />
+ </fieldset>
+ <fieldset>
+ <legend>Query Attributes</legend>
+ <dl>
+ <dt><label for="global">Global:</label></dt>
+ <dd><input type="checkbox" name="global" id="global" #[globalChecked]# /></dd>
+ <dt><label for="postsort">Post-Sort:</label></dt>
+ <dd><input type="checkbox" name="postsort" id="postsort" #[postsortChecked]# /></dd>
+ </dl>
+ </fieldset>
+ <fieldset>
+ <legend>Local Query</legend>
+ <dl>
+ <dt><label for="localcount">Max. number of results:</label></dt>
+ <dd>
+ <input type="text" name="localcount" id="localcount" value="#[localCount]#" size="4" maxlength="5" />
+ </dd>
+ <dt><label for="localtime">Max. search time (seconds):</label></dt>
+ <dd>
+ <input type="text" name="localtime" id="localtime" value="#[localTime]#" size="4" maxlength="3" />
+ </dd>
+ <dt><label for="localwdist">Max. word distance:</label></dt>
+ <dd>
+ <input type="text" name="localwdist" id="localwdist" value="#[localWDist]#" size="4" maxlength="4" />
+ </dd>
+ </dl>
+ </fieldset>
+ <fieldset>
+ <legend>Local Pre-Ranking</legend>
+ <dl>
+ <dt>Entropy</dt>
+ <dd>
+ <script type="text/javascript">checkers("localentropy", #[localentropy]#)</script>
+ </dd>
+ <dt>Date</dt>
+ <dd>
+ <script type="text/javascript">checkers("localdate", #[localdate]#)</script>
+ </dd>
+ <dt>YBR</dt>
+ <dd>
+ <script type="text/javascript">checkers("localybr", #[localybr]#)</script>
+ </dd>
+ <dt>Position in Text</dt>
+ <dd>
+ <script type="text/javascript">checkers("localposintext", #[localposintext]#)</script>
+ </dd>
+ <dt>Word Distance</dt>
+ <dd>
+ <script type="text/javascript">checkers("localworddistance", #[localworddistance]#)</script>
+ </dd>
+ <dt>Word Hit Count</dt>
+ <dd>
+ <script type="text/javascript">checkers("localhitcount", #[localhitcount]#)</script>
+ </dd>
+ <dt>Domain Length</dt>
+ <dd>
+ <script type="text/javascript">checkers("localdomlength", #[localdomlength]#)</script>
+ </dd>
+ </dl>
+ </fieldset>
+ <fieldset>
+ <legend>Local Post-Ranking</legend>
+ <dl>
+ <dt>URL Length</dt>
+ <dd>
+ <script type="text/javascript">checkers("localurllength", #[localurllength]#)</script>
+ </dd>
+ <dt>URL Components</dt>
+ <dd>
+ <script type="text/javascript">checkers("localurlcomps", #[localurlcomps]#)</script>
+ </dd>
+ <dt>Description Length</dt>
+ <dd>
+ <script type="text/javascript">checkers("localdescrlength", #[localdescrlength]#)</script>
+ </dd>
+ <dt>Description Components</dt>
+ <dd>
+ <script type="text/javascript">checkers("localdescrcomps", #[localdescrcomps]#)</script>
+ </dd>
+ <dt>Query appears in URL</dt>
+ <dd>
+ <script type="text/javascript">checkers("localqueryinurl", #[localqueryinurl]#)</script>
+ </dd>
+ <dt>Query appears in Description</dt>
+ <dd>
+ <script type="text/javascript">checkers("localqueryindescr", #[localqueryindescr]#)</script>
+ </dd>
+ <dt>URL Component appears in Toplist</dt>
+ <dd>
+ <script type="text/javascript">checkers("localurlcompintoplist", #[localurlcompintoplist]#)</script>
+ </dd>
+ <dt>Description Component appears in Toplist</dt>
+ <dd>
+ <script type="text/javascript">checkers("localdescrcompintoplist", #[localdescrcompintoplist]#)</script>
+ </dd>
+ </dl>
+ </fieldset>
+ </form>
+ #(type)#
+ #(excluded)#
+ ::
+ <p><strong>The following words are stop-words and had been excluded from the search: #[stopwords]#.</strong></p>
+ #(/excluded)#
+ #(num-results)#
+ ::
+ <strong>#[linkcount]#</strong> results from <strong>#[orderedcount]#</strong> ordered links of a total number of <strong>#[totalcount]#</strong> known.
+ #(/num-results)#
+ #(combine)#
+ ::
+ <p><strong>Topwords</strong> (to refine search):
+ #{words}#
+ <a href="DetailedSearch.html?search=#[newsearch]#&amp;Enter=Search&amp;count=#[count]#&amp;resource=#[resource]#&amp;time=#[time]##[ranking]#">#[word]#</a>
+ #{/words}#
+ </p>
+ #(/combine)#
+ <!-- linklist begin -->
+ #{results}#
+ <!-- link begin -->
+ <div class="searchresults">
+ <div class="urlactions">
+ <a href="#[delete]#" title="delete" class="deletelink" ><img src="/env/grafics/empty.gif" title="delete" alt="delete" class="deleteIcon" /></a>
+ </div>
+ <h4 class="linktitle"><a href="#[url]#">#[description]#</a></h4>
+ #(snippet)#::<p class="snippet"><em>#[text]#</em></p>#(/snippet)#
+ <p class="url"><a href="#[url]#" id="url#[urlhash]#">#[urlname]#</a></p>
+ <p class="urlinfo">#[date]# | YBR-#[ybr]# | <a href="ViewFile.html?urlHash=#[urlhash]#&amp;words=#[words]#">Info</a></p>
+ <p class="urlinfo">#[rankingprops]#</p>
+ </div>
+ <!-- link end -->
+ #{/results}#
+ #(/type)#
+ <!-- linklist end -->
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/Help.html b/htroot/Help.html
index 10eaf66f1..f451243e3 100644
--- a/htroot/Help.html
+++ b/htroot/Help.html
@@ -1,142 +1,138 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<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>YaCy: Help</title>
#%env/templates/metas.template%#
</head>
- <body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
- #%env/templates/header.template%#
- <br>
- <br>
- <h2>Help</h2>
+ <body id="Help">
+ #%env/templates/header.template%#
- <p>
-This is a distributed web crawler and also a caching HTTP proxy. You are using the <i>online-interface</i> of the application. You can use this interface to configure your personal settings, proxy settings, access control and crawling properties. You can also use this interface to start crawls, send messages to other peers and monitor your index, cache status and crawling processes. Most important, you can use the search page to search either your own or the <i>global</i> index.
- </p>
+ <h2>Help</h2>
+ <p>
+ This is a distributed web crawler and also a caching HTTP proxy. You are using the <em>online-interface</em> of the application. You can use this interface to configure your personal settings, proxy settings, access control and crawling properties. You can also use this interface to start crawls, send messages to other peers and monitor your index, cache status and crawling processes. Most important, you can use the search page to search either your own or the <em>global</em> index.
+ </p>
+ <p>
+ For more detailed information, visit the <a href="http://www.yacy.net/yacy">YaCy homepage</a>.
+ </p>
+ <h3>Local and Global Search: Options and Functions</h3>
+ <p>
+ The proxy provides a search interface that accesses your local index, created from web pages that passed the proxy. The search can also be applied globally, by searching other peers. You can use the following options to enhance your search results:
+ </p>
+ <dl class="optionsAndFunctions">
+ <dt>Search Word List</dt>
+ <dd>
+ You can search for several words simultanous. Words must be separated by a single space.
+ The words are treated conjunctive, that means every must occur in the result, not any.
+ If you do a global search (see below) you may get different results each time you do a search.
+ </dd>
+ <dt>Maximum Number of Results</dt>
+ <dd>
+ You can select the number of wanted maximum links. We do not yet support multiple result pages for virtually any possible link.
+ Instead we encourage you to enhance the search result by submitting more search words.
+ </dd>
+ <dt>Result Order Options</dt>
+ <dd>
+ The search engine provides an experimental 'Quality' ranking. In contrast to other known search engines we provide also
+ a result order by date. If you change the order to 'Date-Quality' the most recently updated page from the search results is listed first.
+ For pages that have the same date the second order, 'Quality' is applied.
+ </dd>
+ <dt>Resource Domain</dt>
+ <dd>
+ This search engine is constructed to search the web pages that pass the proxy. But the search index is distributed to other peers as well,
+ so you can search also globally: this function is currently only rudimentary, but can be choosen for test cases. Future releases will
+ automatically distribute index information <em>before</em> a search happends to form a performant distributed hash table -- a very fast global search.
+ </dd>
+ <dt>Maximum Search Time</dt>
+ <dd>
+ Searching the local index is extremely fast, it happends within milliseconds, even for a large number (millions) of pages. But searching the
+ global index needs more time to find the correct remote peer that contains best search results. This is especially the case while the
+ distributed index is in test mode. Search results get more stable (repeated global search produce more similar results) the longer
+ the search time is.
+ </dd>
+ </dl>
- <p>
-For more detailed information, visit the <a href="http://www.yacy.net/yacy">YaCy homepage</a>.
- </p>
-
- <h3>Local and Global Search: Options and Functions</h3>
-The proxy provides a search interface that accesses your local index, created from web pages that passed the proxy.
-The search can also be applied globally, by searching other peers. You can use the following options to enhance your search results:
- <p>
- <table border="0" cellspacing="1" cellpadding="3" width="100%">
-
- <tr>
- <td width="30%" valign="top">
- <b>Search Word List</b>
- </td>
- <td width="70%">
-You can search for several words simultanous. Words must be separated by a single space.
-The words are treated conjunctive, that means every must occur in the result, not any.
-If you do a global search (see below) you may get different results each time you do a search.
-
- </td>
- </tr>
- <tr>
- <td valign="top">
- <b>Maximum Number of Results</b>
- </td>
- <td>
-You can select the number of wanted maximum links. We do not yet support multiple result pages for virtually any possible link.
-Instead we encourage you to enhance the search result by submitting more search words.
-
- </td>
- </tr>
- <tr>
- <td valign="top">
- <b>Result Order Options</b>
- </td>
- <td>
-The search engine provides an experimental 'Quality' ranking. In contrast to other known search engines we provide also
-a result order by date. If you change the order to 'Date-Quality' the most recently updated page from the search results is listed first.
-For pages that have the same date the second order, 'Quality' is applied.
-
- </td>
- </tr>
- <tr>
- <td valign="top">
- <b>Resource Domain</b>
- </td>
- <td>
-This search engine is constructed to search the web pages that pass the proxy. But the search index is distributed to other peers as well,
-so you can search also globally: this function is currently only rudimentary, but can be choosen for test cases. Future releases will
-automatically distribute index information <i>before</i> a search happends to form a performant distributed hash table -- a very fast global search.
-
- </td>
- </tr>
- <tr>
- <td valign="top">
- <b>Maximum Search Time</b>
- </td>
- <td>
-Searching the local index is extremely fast, it happends within milliseconds, even for a large number (millions) of pages. But searching the
-global index needs more time to find the correct remote peer that contains best search results. This is especially the case while the
-distributed index is in test mode. Search results get more stable (repeated global search produce more similar results) the longer
-the search time is.
-
- </td>
- </tr>
- </table>
- </p>
-<hr>
-You may want to use accesskeys to navigate through the YaCy webinterface:<p>
-
- <li> Windows and Internet Explorer: Alt + Accesskey + Enter<br>
- <li> Windows and Mozilla/Firefox/Netscape: Alt + Accesskey<br>
- <li> Windows and Opera: Shift + Esc + Accesskey<br>
- <li> Macintosh and Internet Explorer: Strg + Accesskey + Enter<br>
- <li> Macintosh and Safari: Strg + Accesskey<br>
- <li> Macintosh and Mozilla/Firefox/Netscape: Strg + Accesskey<br>
- <li> Macintosh and Opera: Shift + Esc + Accesskey<br>
- <li> Linux Mandrake and Galeon/Mozilla: Alt + Accesskey<br>
- <li> All OS and Amaya: Strg + Accesskey<p>
-
-s --> Search Page<br>
-n --> News<br>
-w --> Network<br>
-t --> Status<br>
-<br>
-<br>
-<hr>
-YaCy uses Regular Expressions for some functions, for example in the blacklist.<br>
-<br>
-There are some standards for these regexps, YaCy uses the syntax used by Perl 5.<br>
-Here ist a short overview about the functions, which should fir for most cases:<br>
-<br>
-<br>
-<table>
-<tr><td>.</td><td>: arbitrary character</td></tr>
-<tr><td>x</td><td>: character x</td></tr>
-<tr><td>[^x]</td><td>: not x</td></tr>
-<tr><td>x*</td><td>: 0 or more times x</td></tr>
-<tr><td>x?</td><td>: 0 or 1 time x</td></tr>
-<tr><td>x+</td><td>: 1 or more times x</td></tr>
-<tr><td>xy</td><td>: concatenation of x and y</td></tr>
-<tr><td>x|y</td><td>: x or y</td></tr>
-<tr><td>(foo|bar)</td><td>: String "foo" or string "bar"</td></tr>
-<tr><td>[abc]</td><td>: a or b or c (same as a|b|c)</td></tr>
-<tr><td>[a-c]</td><td>: a or b or c (same as above)</td></tr>
-<tr><td>x{n}</td><td>: exactly n appearances of x</td></tr>
-<tr><td>x{n,}</td><td>: at least n appearances of x</td></tr>
-<tr><td>x{n,m}</td><td>: at least n, maximum m appearanches of x</td></tr>
-<tr><td>( )</td><td>: Modify priority of instructions</td></tr>
-<tr><td>\</td><td>: Escape-Character, used to escape special characters (for example "[" or "*"), so that they loose their special meaning</td></tr>
-</table>
-<br>
-<br>
-Regex follow a special priority (descending): concatenation, unary operators (*,+,^,{}), binary operators (|). This can be overridden with brackets.<br>
-<br>
-Example:<br>
-<br>
-.*heise.de/.*/[0-9]+<br>
-<br>
-This matches heise.de/ with a string in front of it, for example "http://www.", followed by any string, then a slash and a number. The dot in "heise.de" is not escaped with "\", because it represents any character, thus the "." itself, too.<br>
-A possible URL which would match this regexp is: http://www.heise.de/newsticker/meldung/59421<br>
-An URL which would not match is: http://www.heise.de/tp/r4/artikel/20/20701/1.html<br>
-There is ".html" at the end, which is not included with the Regular Expression.
+ <h4>Accesskeys</h4>
+ <p>
+ You may want to use accesskeys to navigate through the YaCy webinterface:
+ </p>
+ <ul>
+ <li>Windows and Internet Explorer: Alt + Accesskey + Enter</li>
+ <li>Windows and Mozilla/Firefox/Netscape: Alt + Accesskey</li>
+ <li>Windows and Opera: Shift + Esc + Accesskey</li>
+ <li>Macintosh and Internet Explorer: Strg + Accesskey + Enter</li>
+ <li>Macintosh and Safari: Strg + Accesskey</li>
+ <li>Macintosh and Mozilla/Firefox/Netscape: Strg + Accesskey</li>
+ <li>Macintosh and Opera: Shift + Esc + Accesskey</li>
+ <li>Linux Mandrake and Galeon/Mozilla: Alt + Accesskey</li>
+ <li>All OS and Amaya: Strg + Accesskey</li>
+ </ul>
+ <dl class="accesskeys">
+ <dt>s</dt>
+ <dd>Search Page</dd>
+ <dt>n</dt>
+ <dd>News</dd>
+ <dt>w</dt>
+ <dd>Network</dd>
+ <dt>t</dt>
+ <dd>Status</dd>
+ </dl>
+ <h4>Regular Expressions</h4>
+ <p>YaCy uses Regular Expressions for some functions, for example in the blacklist.</p>
+ <p>There are some standards for these regexps, YaCy uses the syntax used by Perl 5.</p>
+ <p>Here ist a short overview about the functions, which should fir for most cases:</p>
+ <dl class="regexp">
+ <dt>.</dt>
+ <dd>arbitrary character</dd>
+ <dt>x</dt>
+ <dd>character x</dd>
+ <dt>[^x]</dt>
+ <dd>not x</dd>
+ <dt>x*</dt>
+ <dd>0 or more times x</dd>
+ <dt>x?</dt>
+ <dd>0 or 1 time x</dd>
+ <dt>x+</dt>
+ <dd>1 or more times x</dd>
+ <dt>xy</dt>
+ <dd>concatenation of x and y</dd>
+ <dt>x|y</dt>
+ <dd>x or y</dd>
+ <dt>(foo|bar)</dt>
+ <dd>String "foo" or string "bar"</dd>
+ <dt>[abc]</dt>
+ <dd>a or b or c (same as a|b|c)</dd>
+ <dt>[a-c]</dt>
+ <dd>a or b or c (same as above)</dd>
+ <dt>x{n}</dt>
+ <dd>exactly n appearances of x</dd>
+ <dt>x{n,}</dt>
+ <dd>at least n appearances of x</dd>
+ <dt>x{n,m}</dt>
+ <dd>at least n, maximum m appearanches of x</dd>
+ <dt>( )</dt>
+ <dd>Modify priority of instructions</dd>
+ <dt>\</dt>
+ <dd>Escape-Character, used to escape special characters (for example "[" or "*"), so that they loose their special meaning</dd>
+ </dl>
+ <p>
+ Regex follow a special priority (descending): concatenation, unary operators (*,+,^,{}), binary operators (|). This can be overridden with brackets.
+ </p>
+ <p><strong>Example:</strong></p>
+ <code>
+ .*heise.de/.*/[0-9]+
+ </code>
+ <p>
+ This matches heise.de/ with a string in front of it, for example "http://www.", followed by any string, then a slash and a number. The dot in "heise.de" is not escaped with "\", because it represents any character, thus the "." itself, too.
+ </p>
+ <p>
+ A possible URL which would match this regexp is: http://www.heise.de/newsticker/meldung/59421
+ </p>
+ <p>
+ An URL which would not match is: http://www.heise.de/tp/r4/artikel/20/20701/1.html
+ </p>
+ <p>
+ There is ".html" at the end, which is not included with the Regular Expression.
+ </p>
#%env/templates/footer.template%#
</body>
</html>
diff --git a/htroot/IndexCleaner_p.html b/htroot/IndexCleaner_p.html
index f2fd74a77..b98d6c636 100755
--- a/htroot/IndexCleaner_p.html
+++ b/htroot/IndexCleaner_p.html
@@ -1,53 +1,51 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Control</title>
-#%env/templates/metas.template%#
-<meta http-equiv="REFRESH" content="10">
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexControl.template%#
-<br>
-<h2>Index Cleaner</h2>
-
-#(urldb)#
-::
-<p>
-ThreadAlive: #[threadAlive]#<br>
-ThreadToString: #[threadToString]#<br>
-Total URLs searched: #[total]# (#[percentUrls]#%)<br>
-Blacklisted URLs found: #[blacklisted]#<br>
-Percentage blacklisted: #[percent]#%<br>
-last searched URL: #[lastUrl]# (#[lastHash]#)<br>
-last blacklisted URL found: #[lastBlacklistedUrl]# (#[lastBlacklistedHash]#)<br>
-</p>
-#(/urldb)#
-#(rwidb)#
-::
-<p>
-ThreadAlive: #[threadAlive]#<br>
-ThreadToString: #[threadToString]#<br>
-RWIs at Start: #[RWIcountstart]#<br>
-RWIs now: #[RWIcountnow]#<br>
-wordHash in Progress: #[wordHashNow]#<br>
-last wordHash with deleted URLs: #[lastWordHash]#<br>
-Number of deleted URLs in on this Hash: #[lastDeletionCounter]#<br>
-</p>
-#(/rwidb)#
-<p>
-UrldbCleaner - Clean up the database by deletion of blacklisted urls:<br>
-<a href="IndexCleaner_p.html?action=ustart">Start/Resume</a>
-<a href="IndexCleaner_p.html?action=ustop">Stop</a>
-<a href="IndexCleaner_p.html?action=upause">Pause</a>
-</p>
-<p>
-RWIDbCleaner - Clean up the database by deletion of words with reference to blacklisted urls:<br>
-<a href="IndexCleaner_p.html?action=rstart">Start/Resume</a>
-<a href="IndexCleaner_p.html?action=rstop">Stop</a>
-<a href="IndexCleaner_p.html?action=rpause">Pause</a>
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Control</title>
+ #%env/templates/metas.template%#
+ <meta http-equiv="REFRESH" content="10" />
+ </head>
+ <body id="IndexCleaner">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexControl.template%#
+ <h2>Index Cleaner</h2>
+
+ #(urldb)#
+ ::
+ <p>
+ ThreadAlive: #[threadAlive]#<br />
+ ThreadToString: #[threadToString]#<br />
+ Total URLs searched: #[total]# (#[percentUrls]#%)<br />
+ Blacklisted URLs found: #[blacklisted]#<br />
+ Percentage blacklisted: #[percent]#%<br />
+ last searched URL: #[lastUrl]# (#[lastHash]#)<br />
+ last blacklisted URL found: #[lastBlacklistedUrl]# (#[lastBlacklistedHash]#)<br />
+ </p>
+ #(/urldb)#
+ #(rwidb)#
+ ::
+ <p>
+ ThreadAlive: #[threadAlive]#<br />
+ ThreadToString: #[threadToString]#<br />
+ RWIs at Start: #[RWIcountstart]#<br />
+ RWIs now: #[RWIcountnow]#<br />
+ wordHash in Progress: #[wordHashNow]#<br />
+ last wordHash with deleted URLs: #[lastWordHash]#<br />
+ Number of deleted URLs in on this Hash: #[lastDeletionCounter]#<br />
+ </p>
+ #(/rwidb)#
+ <p>
+ UrldbCleaner - Clean up the database by deletion of blacklisted urls:<br />
+ <a href="IndexCleaner_p.html?action=ustart">Start/Resume</a>
+ <a href="IndexCleaner_p.html?action=ustop">Stop</a>
+ <a href="IndexCleaner_p.html?action=upause">Pause</a>
+ </p>
+ <p>
+ RWIDbCleaner - Clean up the database by deletion of words with reference to blacklisted urls:<br />
+ <a href="IndexCleaner_p.html?action=rstart">Start/Resume</a>
+ <a href="IndexCleaner_p.html?action=rstop">Stop</a>
+ <a href="IndexCleaner_p.html?action=rpause">Pause</a>
+ </p>
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/IndexControl_p.html b/htroot/IndexControl_p.html
index 94466175a..9aa96f913 100644
--- a/htroot/IndexControl_p.html
+++ b/htroot/IndexControl_p.html
@@ -1,102 +1,115 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Control</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexControl.template%#
-<br>
-<h2>Index Administration</h2>
-
-<form action="IndexControl_p.html" method="post" enctype="multipart/form-data">
-<p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references</p>
-<p>
-<table border="0" cellpadding="5" cellspacing="0">
-<tr valign="top" class="TableCellDark">
-<td width="70">Word:</td>
-<td><input type="text" name="keystring" value="#[keystring]#" size="40" maxlength="80"></td>
-<td width="250"><input type="submit" name="keystringsearch" value="Show URL Entries for Word"></td>
-</tr>
-<tr valign="top" class="TableCellLight">
-<td>Word-Hash:</td>
-<td><input type="text" name="keyhash" value="#[keyhash]#" size="16" maxlength="12">
-<input type="submit" name="keyhashsimilar" value="Generate List"></td>
-<td><input type="submit" name="keyhashsearch" value="Show URL Entries for Word-Hash">
-</td>
-</tr>
-<tr valign="top" class="TableCellLight">
-<td></td><td></td>
-<td><input type="submit" name="keyhashtransfer" value="Transfer to other peer">
-<select name="hostHash">
-#{hosts}#
-<option value="#[hosthash]#">#[hostname]#</option>
-#{/hosts}#
-</select>
-</td>
-</tr>
-</table></p>
-
-<p><table border="0" cellpadding="5" cellspacing="0">
-<tr valign="top" class="TableCellDark">
-<td width="70">URL:</td>
-<td><input type="text" name="urlstring" value="#[urlstring]#" size="40" maxlength="250"></td>
-<td width="250"><input type="submit" name="urlstringsearch" value="Show Details for URL"></td>
-</tr>
-<tr valign="top" class="TableCellLight">
-<td>URL-Hash:</td>
-<td><input type="text" name="urlhash" value="#[urlhash]#" size="16" maxlength="12">
-<input type="submit" name="urlhashsimilar" value="Generate List"></td>
-<td><input type="submit" name="urlhashsearch" value="Show Details for URL-Hash">
-</td>
-</tr>
-</table></p>
-
-
-<p>
-<b>DHT Transmission control:</b><br>
-The transmission is necessary for the functionality of global search on other peers.
-If you switch off distribution or receipt of RWIs you will be banned from global search.
-<table border="0" cellpadding="5" cellspacing="0">
-<tr valign="top" class="TableCellDark">
-<td width="100">Index&nbsp;Distribution:</td>
-<td><input type="checkbox" name="indexDistribute" align="top" #[indexDistributeChecked]#></td>
-<td></td>
-<td>This enables automated, DHT-ruled Index Transmission to other peers.
-</td>
-</tr>
-<tr valign="top" class="TableCellDark">
-<td width="100"></td>
-<td>&nbsp;&nbsp;</td>
-<td><input type="checkbox" name="indexDistributeWhileCrawling" align="top" #[indexDistributeWhileCrawling]#></td>
-<td>If checked, DHT-Transmission is enabled even during crawling.</td>
-</tr>
-<tr valign="top" class="TableCellDark">
-<td width="100">Index Receive:</td>
-<td><input type="checkbox" name="indexReceive" align="top" #[indexReceiveChecked]#></td>
-<td></td>
-<td>Accept remote Index Transmissions. This works only if you are a senior peer.
-The DHT-rules do not work without this function.</td>
-</tr>
-<tr valign="top" class="TableCellDark">
-<td width="100"></td>
-<td>&nbsp;&nbsp;</td>
-<td><input type="checkbox" name="indexReceiveBlockBlacklist" align="top" #[indexReceiveBlockBlacklistChecked]#></td>
-<td>If checked, your peer silently ignores transmitted URLs that match your blacklist</td>
-</tr>
-<tr valign="top" class="TableCellLight">
-<td></td>
-<td><input type="submit" name="setIndexTransmission" value="set"></td>
-<td></td>
-<td>Changes will take effect immediately</td>
-</tr>
-</table>
-</p>
-</form>
-
-#[result]#
-
-#%env/templates/footer.template%#
-</body>
-</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>YaCy '#[clientname]#': Index Control</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexControl">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexControl.template%#
+ <h2>Index Administration</h2>
+
+ <form action="IndexControl_p.html" method="post" enctype="multipart/form-data">
+ <p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references</p>
+
+ <table cellpadding="5" cellspacing="0">
+ <colgroup>
+ <col width="70" />
+ <col />
+ <col width="250" />
+ </colgroup>
+ <tr valign="top" class="TableCellDark">
+ <td>Word:</td>
+ <td><input type="text" name="keystring" value="#[keystring]#" size="40" maxlength="80" /></td>
+ <td><input type="submit" name="keystringsearch" value="Show URL Entries for Word" /></td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Word-Hash:</td>
+ <td><input type="text" name="keyhash" value="#[keyhash]#" size="16" maxlength="12" />
+ <input type="submit" name="keyhashsimilar" value="Generate List" /></td>
+ <td><input type="submit" name="keyhashsearch" value="Show URL Entries for Word-Hash" />
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td colspan="2"></td>
+ <td><input type="submit" name="keyhashtransfer" value="Transfer to other peer" />
+ <select name="hostHash">
+ #{hosts}#
+ <option value="#[hosthash]#">#[hostname]#</option>
+ #{/hosts}#
+ </select>
+ </td>
+ </tr>
+ </table>
+
+ <table border="0" cellpadding="5" cellspacing="0">
+ <colgroup>
+ <col width="70" />
+ <col />
+ <col width="250" />
+ </colgroup>
+ <tr valign="top" class="TableCellDark">
+ <td>URL:</td>
+ <td><input type="text" name="urlstring" value="#[urlstring]#" size="40" maxlength="250" /></td>
+ <td><input type="submit" name="urlstringsearch" value="Show Details for URL" /></td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>URL-Hash:</td>
+ <td><input type="text" name="urlhash" value="#[urlhash]#" size="16" maxlength="12" />
+ <input type="submit" name="urlhashsimilar" value="Generate List" /></td>
+ <td><input type="submit" name="urlhashsearch" value="Show Details for URL-Hash" />
+ </td>
+ </tr>
+ </table>
+
+
+ <p>
+ <strong>DHT Transmission control:</strong><br />
+ The transmission is necessary for the functionality of global search on other peers.
+ If you switch off distribution or receipt of RWIs you will be banned from global search.
+ </p>
+ <table border="0" cellpadding="5" cellspacing="0">
+ <colgroup>
+ <col width="100" />
+ <col span="2"/>
+ </colgroup>
+ <tr valign="top" class="TableCellDark">
+ <td>Index&nbsp;Distribution:</td>
+ <td><input type="checkbox" name="indexDistribute" #[indexDistributeChecked]# /></td>
+ <td></td>
+ <td>This enables automated, DHT-ruled Index Transmission to other peers.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td></td>
+ <td>&nbsp;&nbsp;</td>
+ <td><input type="checkbox" name="indexDistributeWhileCrawling" #[indexDistributeWhileCrawling]# /></td>
+ <td>If checked, DHT-Transmission is enabled even during crawling.</td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Index Receive:</td>
+ <td><input type="checkbox" name="indexReceive" #[indexReceiveChecked]# /></td>
+ <td></td>
+ <td>Accept remote Index Transmissions. This works only if you are a senior peer.
+ The DHT-rules do not work without this function.</td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td></td>
+ <td>&nbsp;&nbsp;</td>
+ <td><input type="checkbox" name="indexReceiveBlockBlacklist" #[indexReceiveBlockBlacklistChecked]# /></td>
+ <td>If checked, your peer silently ignores transmitted URLs that match your blacklist</td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td></td>
+ <td><input type="submit" name="setIndexTransmission" value="set" /></td>
+ <td></td>
+ <td>Changes will take effect immediately</td>
+ </tr>
+ </table>
+ </form>
+
+ #[result]#
+
+ #%env/templates/footer.template%#
+ </body>
+</html> \ No newline at end of file
diff --git a/htroot/IndexCreateIndexingQueue_p.html b/htroot/IndexCreateIndexingQueue_p.html
index c4799ff59..b17cad808 100644
--- a/htroot/IndexCreateIndexingQueue_p.html
+++ b/htroot/IndexCreateIndexingQueue_p.html
@@ -1,84 +1,97 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Creation/Indexing Queue</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexCreate.template%#
-<br>
-<h2>Index Creation: Indexing Queue</h2>
-
-<p>
-#(indexing-queue)#
-The indexing queue is empty<br>
-::
-<form action="IndexCreateIndexingQueue_p.html" method="post" enctype="multipart/form-data">
-<input type="submit" name="clearIndexingQueue" value="clear indexing queue">
-</form>
-<br>
-<p>There are <b>#[num]#</b> entries in the indexing queue. Showing <b>#[show]#</b> entries with a total size of <b>#[totalSize]#</b>.</p>
-<p>Show last <a href="IndexCreateIndexingQueue_p.html?limit=50">50</a> | <a href="IndexCreateIndexingQueue_p.html?limit=100">100</a> | <a href="IndexCreateIndexingQueue_p.html?limit=250">250</a> | <a href="IndexCreateIndexingQueue_p.html?limit=500">500</a> entries.</p>
-
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<th class="small">Initiator</th>
-<th class="small">Depth</th>
-<th class="small">Modified Date</th>
-<td class="small">Anchor Name</th>
-<th class="small">URL</th>
-<th class="small">Size</th>
-<th class="small">Delete</th>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#" class="small">
-<td width="60" class="small">#[initiator]#</td>
-<td width="10" class="small">#[depth]#</td>
-<td width="80" class="small">#[modified]#</td>
-<td width="180" class="small">#[anchor]#</td>
-<td class="small"><a class="small" href="#[url]#">#[url]#</a></td>
-<td width="80" class="small" align="right"><nobr>#[size]#</nobr></td>
-<td width="10" class="small" title="#[hash]#">#(inProcess)#<a class="small" href="IndexCreateIndexingQueue_p.html?deleteEntry=#[hash]#">[Delete]</a>::#(/inProcess)#</td>
-</tr>
-#{/list}#
-</table>
-#(/indexing-queue)#
-</p><br>
-
-<p>
-#(rejected)#
-::
-<form action="IndexCreateIndexingQueue_p.html" method="post" enctype="multipart/form-data">
-<b>Rejected URL List:</b>&nbsp;There are #[num]# entries in the rejected-urls list.
-#(only-latest)#
-::
-Showing latest #[num]# entries.
-<input type="hidden" name="showRejected" value="#[newnum]#">
-<input type="submit" name="moreRejected" value="show more">&nbsp;
-#(/only-latest)#
-<input type="submit" name="clearRejected" value="clear list">
-</form>
-There are #[num]# entries in the rejected-queue:<br>
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableHeader">
- <th class="small">Initiator</th>
- <th class="small">Executor</th>
- <th class="small">URL</th>
- <th class="small">Fail-Reason</th>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
-<td width="60" class="small">#[initiator]#</td>
-<td width="60" class="small">#[executor]#</td>
-<td class="small"><a class="small" href="#[url]#">#[url]#</a></td>
-<td class="small">#[failreason]#</td>
-</tr>
-#{/list}#
-</table>
-#(/rejected)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Creation/Indexing Queue</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexCreateIndexingQueue">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexCreate.template%#
+ <h2>Index Creation: Indexing Queue</h2>
+
+
+ #(indexing-queue)#
+ <p>The indexing queue is empty</p>
+ ::
+ <form action="IndexCreateIndexingQueue_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="submit" name="clearIndexingQueue" value="clear indexing queue" />
+ </fieldset>
+ </form>
+ <p>There are <strong>#[num]#</strong> entries in the indexing queue. Showing <strong>#[show]#</strong> entries with a total size of <strong>#[totalSize]#</strong>.</p>
+ <p>Show last <a href="IndexCreateIndexingQueue_p.html?limit=50">50</a> | <a href="IndexCreateIndexingQueue_p.html?limit=100">100</a> | <a href="IndexCreateIndexingQueue_p.html?limit=250">250</a> | <a href="IndexCreateIndexingQueue_p.html?limit=500">500</a> entries.</p>
+
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" />
+ <col width="10" />
+ <col width="80" />
+ <col width="180" />
+ <col />
+ <col width="80" />
+ <col width="10" />
+ </colgroup>
+ <tr class="TableHeader">
+ <th>Initiator</th>
+ <th>Depth</th>
+ <th>Modified Date</th>
+ <th>Anchor Name</th>
+ <th>URL</th>
+ <th>Size</th>
+ <th>Delete</th>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#">
+ <td>#[initiator]#</td>
+ <td>#[depth]#</td>
+ <td>#[modified]#</td>
+ <td>#[anchor]#</td>
+ <td><a href="#[url]#">#[url]#</a></td>
+ <td align="right">#[size]#</td>
+ <td title="#[hash]#">#(inProcess)#<a href="IndexCreateIndexingQueue_p.html?deleteEntry=#[hash]#">[Delete]</a>::#(/inProcess)#</td>
+ </tr>
+ #{/list}#
+ </table>
+ #(/indexing-queue)#
+
+
+ #(rejected)#
+ ::
+ <form action="IndexCreateIndexingQueue_p.html" method="post" enctype="multipart/form-data">
+ <p><strong>Rejected URL List:</strong>&nbsp;There are #[num]# entries in the rejected-urls list. </p>
+ #(only-latest)#
+ <fieldset>
+ ::
+ <p>Showing latest #[num]# entries.</p>
+ <fieldset>
+ <input type="hidden" name="showRejected" value="#[newnum]#" />
+ <input type="submit" name="moreRejected" value="show more" />&nbsp;
+ #(/only-latest)#
+ <input type="submit" name="clearRejected" value="clear list" />
+ </fieldset>
+ </form>
+ <p>There are #[num]# entries in the rejected-queue:</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" span="2" />
+ <col span="2" />
+ </colgroup>
+ <tr class="TableHeader">
+ <th>Initiator</th>
+ <th>Executor</th>
+ <th>URL</th>
+ <th>Fail-Reason</th>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[initiator]#</td>
+ <td>#[executor]#</td>
+ <td><a href="#[url]#">#[url]#</a></td>
+ <td>#[failreason]#</td>
+ </tr>
+ #{/list}#
+ </table>
+ #(/rejected)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/IndexCreateLoaderQueue_p.html b/htroot/IndexCreateLoaderQueue_p.html
index 300efdee9..3341389c5 100644
--- a/htroot/IndexCreateLoaderQueue_p.html
+++ b/htroot/IndexCreateLoaderQueue_p.html
@@ -1,37 +1,39 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Creation / Loader Queue</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexCreate.template%#
-<br>
-<h2>Index Creation: Loader Queue</h2>
-
-<p>
-#(loader-set)#
-The loader set is empty<br>
-::
-There are #[num]# entries in the loader set:<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<th class="small">Initiator</th>
-<th class="small">Depth</td>
-<th class="small">URL</th>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
-<td width="60" class="small">#[initiator]#</td>
-<td width="10" class="small">#[depth]#</td>
-<td class="small"><a class="small" href="#[url]#">#[url]#</a></td>
-</tr>
-#{/list}#
-</table>
-#(/loader-set)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Creation / Loader Queue</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexCreateLoaderQueue">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexCreate.template%#
+ <h2>Index Creation: Loader Queue</h2>
+
+ <p>
+ #(loader-set)#
+ The loader set is empty</p>
+ ::
+ There are #[num]# entries in the loader set:</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" />
+ <col width="10" />
+ <col />
+ </colgroup>
+ <tr class="TableHeader">
+ <th>Initiator</th>
+ <th>Depth</th>
+ <th>URL</th>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[initiator]#</td>
+ <td>#[depth]#</td>
+ <td><a href="#[url]#">#[url]#</a></td>
+ </tr>
+ #{/list}#
+ </table>
+ #(/loader-set)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/IndexCreateWWWGlobalQueue_p.html b/htroot/IndexCreateWWWGlobalQueue_p.html
index a5cd6699a..5793fb63e 100644
--- a/htroot/IndexCreateWWWGlobalQueue_p.html
+++ b/htroot/IndexCreateWWWGlobalQueue_p.html
@@ -1,51 +1,55 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Creation / WWW Global Crawl Queue</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexCreate.template%#
-<br>
-<h2>Index Creation: WWW Global Crawl Queue</h2>
-<p>
-This queue stores the urls that shall be sent to other peers to perform a remote crawl.
-If there is no peer for remote crawling available, the links are crawled locally.
-</p>
-<p>
-#(crawler-queue)#
-The global crawler queue is empty<br><br>
-::
-<form action="IndexCreateWWWGlobalQueue_p.html" method="post" enctype="multipart/form-data">
-<input type="submit" name="clearcrawlqueue" value="clear global crawl queue">
-</form>
-<br>
-<p>There are <b>#[num]#</b> entries in the global crawler queue. Showing <b>#[show-num]#</b> most recent entries.</p>
-<p>Show last <a href="IndexCreateWWWGlobalQueue_p.html?limit=50">50</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=100">100</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=250">250</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=500">500</a> entries.</p>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<th class="small">Initiator</th>
-<th class="small">Profile</th>
-<th class="small">Depth</th>
-<th class="small">Modified Date</th>
-<th class="small">Anchor Name</th>
-<th class="small">URL</th>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
-<td width="60" class="small">#[initiator]#</td>
-<td width="60" class="small">#[profile]#</td>
-<td width="10" class="small">#[depth]#</td>
-<td width="80" class="small">#[modified]#</td>
-<td width="180" class="small">#[anchor]#</td>
-<td class="small"><a class="small" href="#[url]#">#[url]#</a></td>
-</tr>
-#{/list}#
-</table>
-#(/crawler-queue)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Creation / WWW Global Crawl Queue</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexCreateWWWGlobalQueue">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexCreate.template%#
+ <h2>Index Creation: WWW Global Crawl Queue</h2>
+ <p>
+ This queue stores the urls that shall be sent to other peers to perform a remote crawl.
+ If there is no peer for remote crawling available, the links are crawled locally.
+ </p>
+ #(crawler-queue)#
+ <p>The global crawler queue is empty</p>
+ ::
+ <form action="IndexCreateWWWGlobalQueue_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="submit" name="clearcrawlqueue" value="clear global crawl queue" />
+ </fieldset>
+ </form>
+ <p>There are <strong>#[num]#</strong> entries in the global crawler queue. Showing <strong>#[show-num]#</strong> most recent entries.</p>
+ <p>Show last <a href="IndexCreateWWWGlobalQueue_p.html?limit=50">50</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=100">100</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=250">250</a> | <a href="IndexCreateWWWGlobalQueue_p.html?limit=500">500</a> entries.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" span="2" />
+ <col width="10" />
+ <col width="80" />
+ <col width="180" />
+ <col />
+ </colgroup>
+ <tr class="TableHeader">
+ <th>Initiator</th>
+ <th>Profile</th>
+ <th>Depth</th>
+ <th>Modified Date</th>
+ <th>Anchor Name</th>
+ <th>URL</th>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[initiator]#</td>
+ <td>#[profile]#</td>
+ <td>#[depth]#</td>
+ <td>#[modified]#</td>
+ <td>#[anchor]#</td>
+ <td><a href="#[url]#">#[url]#</a></td>
+ </tr>
+ #{/list}#
+ </table>
+ #(/crawler-queue)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/IndexCreateWWWLocalQueue_p.html b/htroot/IndexCreateWWWLocalQueue_p.html
index 96261434f..53f7f28d9 100644
--- a/htroot/IndexCreateWWWLocalQueue_p.html
+++ b/htroot/IndexCreateWWWLocalQueue_p.html
@@ -1,64 +1,69 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Creation / WWW Local Crawl Queue</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexCreate.template%#
-<br>
-<h2>Index Creation: WWW Local Crawl Queue</h2>
-<p>
-This queue stores the urls that shall be crawled localy by this peer.
-It may also contain urls that are computed by the proxy-prefetch.
-</p>
-<p>
-#(crawler-queue)#
-The local crawler queue is empty<br><br>
-::
-<form action="IndexCreateWWWLocalQueue_p.html" method="post" enctype="multipart/form-data">
- Delete Entries:
- <input type="text" name="pattern" value=".*" size="20" maxlength="200"/>
- <select name="option" size="1">
- <option value="Initiator">Initiator</option>
- <option value="Profile">Profile</option>
- <option value="Depth">Depth</option>
- <option value="ModifiedDate">Modified Date</option>
- <option value="AnchorName">Anchor Name</option>
- <option value="URL" selected="selected">URL</option>
- </select>
- <input type="submit" name="deleteEntries" value="Delete"><i>This may take a quite long time.</i>
-</form>
-<br>
-<hr>
-<p>There are <b>#[num]#</b> entries in the local crawler queue. Showing <b>#[show-num]#</b> most recent entries.</p>
-<p>Show last <a href="IndexCreateWWWLocalQueue_p.html?limit=50">50</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=100">100</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=250">250</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=500">500</a> entries.</p>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<th class="small">Initiator</th>
-<th class="small">Profile</th>
-<th class="small">Depth</th>
-<th class="small">Modified Date</th>
-<th class="small">Anchor Name</th>
-<th class="small">URL</th>
-<th class="small">Delete</th>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
-<td width="60" class="small">#[initiator]#</td>
-<td width="60" class="small">#[profile]#</td>
-<td width="10" class="small">#[depth]#</td>
-<td width="80" class="small">#[modified]#</td>
-<td width="180" class="small">#[anchor]#</td>
-<td class="small"><a class="small" href="#[url]#">#[url]#</a></td>
-<td width="10" class="small"><a class="small" href="IndexCreateWWWLocalQueue_p.html?deleteEntry=#[hash]#">[Delete]</a></td>
-</tr>
-#{/list}#
-</table>
-#(/crawler-queue)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Creation / WWW Local Crawl Queue</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexCreateWWwLocalQueue">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexCreate.template%#
+ <h2>Index Creation: WWW Local Crawl Queue</h2>
+ <p>
+ This queue stores the urls that shall be crawled localy by this peer.
+ It may also contain urls that are computed by the proxy-prefetch.
+ </p>
+
+ #(crawler-queue)#
+ <p>The local crawler queue is empty</p>
+ ::
+ <form action="IndexCreateWWWLocalQueue_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ Delete Entries:
+ <input type="text" name="pattern" value=".*" size="20" maxlength="200" />
+ <select name="option" size="1">
+ <option value="Initiator">Initiator</option>
+ <option value="Profile">Profile</option>
+ <option value="Depth">Depth</option>
+ <option value="ModifiedDate">Modified Date</option>
+ <option value="AnchorName">Anchor Name</option>
+ <option value="URL" selected="selected">URL</option>
+ </select>
+ <input type="submit" name="deleteEntries" value="Delete" /><em>This may take a quite long time.</em>
+ </fieldset>
+ </form>
+ <p>There are <strong>#[num]#</strong> entries in the local crawler queue. Showing <strong>#[show-num]#</strong> most recent entries.</p>
+ <p>Show last <a href="IndexCreateWWWLocalQueue_p.html?limit=50">50</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=100">100</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=250">250</a> | <a href="IndexCreateWWWLocalQueue_p.html?limit=500">500</a> entries.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" span="2" />
+ <col width="10" />
+ <col width="80" />
+ <col width="180" />
+ <col />
+ <col width="10" />
+ </colgroup>
+ <tr class="TableHeader">
+ <th>Initiator</th>
+ <th>Profile</th>
+ <th>Depth</th>
+ <th>Modified Date</th>
+ <th>Anchor Name</th>
+ <th>URL</th>
+ <th>Delete</th>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[initiator]#</td>
+ <td>#[profile]#</td>
+ <td>#[depth]#</td>
+ <td>#[modified]#</td>
+ <td>#[anchor]#</td>
+ <td><a href="#[url]#">#[url]#</a></td>
+ <td><a href="IndexCreateWWWLocalQueue_p.html?deleteEntry=#[hash]#">[Delete]</a></td>
+ </tr>
+ #{/list}#
+ </table>
+ #(/crawler-queue)#
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/IndexCreate_p.html b/htroot/IndexCreate_p.html
index 11f87c5e1..123bdb8ce 100644
--- a/htroot/IndexCreate_p.html
+++ b/htroot/IndexCreate_p.html
@@ -1,388 +1,415 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Creation</title>
-#%env/templates/metas.template%#
-<script src="/js/ajax.js"></script>
-<script src="/js/IndexCreate.js"></script>
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexCreate.template%#
-<br>
-<h2>Index Creation</h2>
-
-<p>
-<div class=small id="startCrawling"><b>Start Crawling Job:</b>&nbsp;
-You can define URLs as start points for Web page crawling and start crawling here. "Crawling" means that YaCy will download the given website, extract all links in it and then download the content behind these links. This is repeated as long as specified under "Crawling Depth".</p>
-</div>
-
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
-<form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
- <tr class="TableHeader">
- <td class="small"><b>Attribut</b></td>
- <td class="small"><b>Value</b></td>
- <td class="small"><b>Description</b></td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Crawling Depth:</td>
- <td class=small><input name="crawlingDepth" type="text" size="2" maxlength="2" value="#[crawlingDepth]#"></td>
- <td class=small>
- This defines how often the Crawler will follow links embedded in websites.<br>
- A minimum of 1 is recommended and means that the page you enter under "Starting Point" will be added to the index, but no linked content is indexed. 2-4 is good for normal indexing.
- Be careful with the depth. Consider a branching factor of average 20;
- A prefetch-depth of 8 would index 25.600.000.000 pages, maybe this is the whole WWW.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Crawling Filter:</td>
- <td class=small><input name="crawlingFilter" type="text" size="20" maxlength="100" value="#[crawlingFilter]#"></td>
- <td class=small >
- This is an emacs-like regular expression that must match with the URLs which are used to be crawled.
- Use this i.e. to crawl a single domain. If you set this filter it would make sense to increase
- the crawling depth.
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Re-Crawl Option:</td>
- <td class=small>
- Use:<input type="checkbox" name="crawlingIfOlderCheck" align="top" #(crawlingIfOlderCheck)#::checked#(/crawlingIfOlderCheck)#>&nbsp;&nbsp;
- Interval:<input name="crawlingIfOlderNumber" type="text" size="7" maxlength="7" value="#[crawlingIfOlderNumber]#"><br>
-<input type="radio" name="crawlingIfOlderUnit" value="year" #(crawlingIfOlderUnitYearCheck)#::checked#(/crawlingIfOlderUnitYearCheck)#>Year(s)&nbsp;&nbsp;
- <input type="radio" name="crawlingIfOlderUnit" value="month" #(crawlingIfOlderUnitMonthCheck)#::checked#(/crawlingIfOlderUnitMonthCheck)#>Month(s)&nbsp;&nbsp;
- <input type="radio" name="crawlingIfOlderUnit" value="day" #(crawlingIfOlderUnitDayCheck)#::checked#(/crawlingIfOlderUnitDayCheck)#>Day(s)&nbsp;&nbsp;
- <input type="radio" name="crawlingIfOlderUnit" value="hour" #(crawlingIfOlderUnitHourCheck)#::checked#(/crawlingIfOlderUnitHourCheck)#>Hour(s)&nbsp;&nbsp;
- <input type="radio" name="crawlingIfOlderUnit" value="minute" #(crawlingIfOlderUnitMinuteCheck)#::checked#(/crawlingIfOlderUnitMinuteCheck)#>Minute(s)</td>
- <td class=small>
- If you use this option, web pages that are already existent in your database are crawled and indexed again.
- It depends on the age of the last crawl if this is done or not: if the last crawl is older than the given
- date, the page is crawled again, othervise it is treaded as 'double' and not loaded or indexed again.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Auto-Dom-Filter:</td>
- <td class=small>
- Use:<input type="checkbox" name="crawlingDomFilterCheck" align="top" #(crawlingDomFilterCheck)#::checked#(/crawlingDomFilterCheck)#>&nbsp;&nbsp;
- Depth:<input name="crawlingDomFilterDepth" type="text" size="2" maxlength="2" value="#[crawlingDomFilterDepth]#"></td>
- <td class=small>
- This option will automatically create a domain-filter which limits the crawl on domains the crawler will find on the given depth. You can use this option i.e. to crawl a page with bookmarks while restricting the crawl on only those domains that appear on the bookmark-page. The adequate depth for this example would be 1.<br>
- The default value 0 gives no restrictions.
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Maximum Pages per Domain:</td>
- <td class=small>
- Use:<input type="checkbox" name="crawlingDomMaxCheck" align="top" #(crawlingDomMaxCheck)#::checked#(/crawlingDomMaxCheck)#>&nbsp;&nbsp;
- Page-Count:<input name="crawlingDomMaxPages" type="text" size="6" maxlength="6" value="#[crawlingDomMaxPages]#"></td>
- <td class=small>
- You can limit the maxmimum number of pages that are fetched and indexed from a single domain with this option.
- You can combine this limitation with the 'Auto-Dom-Filter', so that the limit is applied to all the domains within
- the given depth. Domains outside the given depth are then sorted-out anyway.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Accept URLs with '?' / dynamic URLs:</td>
- <td class=small><input type="checkbox" name="crawlingQ" align="top" #(crawlingQChecked)#::checked#(/crawlingQChecked)#></td>
- <td class=small>
- A questionmark is usually a hint for a dynamic page. URLs pointing to dynamic content should usually not be crawled. However, there are sometimes web pages with static content that
- is accessed with URLs containing question marks. If you are unsure, do not check this to avoid crawl loops.
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Store to Proxy Cache:</td>
- <td class=small><input type="checkbox" name="storeHTCache" align="top" #(storeHTCacheChecked)#::checked#(/storeHTCacheChecked)#></td>
- <td class=small>
- This option is used by default for proxy prefetch, but is not needed for explicit crawling.
- We recommend to leave this switched off unless you want to control the crawl results with the
- <a href="CacheAdmin_p.html" class=small>Cache Monitor</a>.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Do Local Indexing:</td>
- <td class=small><input type="checkbox" name="localIndexing" align="top" #(localIndexingChecked)#::checked#(/localIndexingChecked)#></td>
- <td class=small>
- This enables indexing of the wepages the crawler will download. This should be switched on by default, unless you want to crawl only to fill the
- <a href="CacheAdmin_p.html" class=small>Proxy Cache</a> without indexing.
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Do Remote Indexing:</td>
- <td>
- <table border="0" cellpadding="2" cellspacing="0">
- <tr>
- <td>
- <input type="checkbox" name="crawlOrder" align="top" #(crawlOrderChecked)#::checked#(/crawlOrderChecked)#>
- </td>
- <td class=small>
- Describe your intention to start this global crawl (optional):<p>
- <input name="intention" type="text" size="40" maxlength="100" value=""></p>
- This message will appear in the 'Other Peer Crawl Start' table of other peers.
- </td>
- </table>
- </td>
- <td class=small >
- If checked, the crawler will contact other peers and use them as remote indexers for your crawl.
- If you need your crawling results locally, you should switch this off.
- Only senior and principal peers can initiate or receive remote crawls.
- <b>A YaCyNews message will be created to inform all peers about a global crawl</b>, so they can omit starting a crawl with the same start point.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Exclude <i>static</i> Stop-Words</td>
- <td class=small><input type="checkbox" name="xsstopw" align="top" #(xsstopwChecked)#::checked#(/xsstopwChecked)#></td>
- <td class=small>
- This can be useful to circumvent that extremely common words are added to the database, i.e. "the", "he", "she", "it"... To exclude all words given in the file <tt class=small>yacy.stopwords</tt> from indexing,
- check this box.
- </td>
- </tr>
- <!--
- <tr valign="top" class="TableCellDark">
- <td class=small>Exclude <i>dynamic</i> Stop-Words</td>
- <td class=small><input type="checkbox" name="xdstopw" align="top" #(xdstopwChecked)#::checked#(/xdstopwChecked)#></td>
- <td class=small colspan="3">
- Excludes all words from indexing which are listed by statistic rules.
- <i>THIS IS NOT YET FUNCTIONAL</i>
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Exclude <i>parent-indexed</i> words</td>
- <td class=small><input type="checkbox" name="xpstopw" align="top" #(xpstopwChecked)#::checked#(/xpstopwChecked)#></td>
- <td class=small colspan="3">
- Excludes all words from indexing which had been indexed in the parent web page.
- <i>THIS IS NOT YET FUNCTIONAL</i>
- </td>
- </tr>
- -->
- <tr valign="top" class="TableCellLight">
- <td class="small">Starting Point:</td>
- <td class="small">
- <table cellpadding="0" cellspacing="0">
- <tr><td class="small">From&nbsp;File:</td>
- <td class="small"><input type="radio" name="crawlingMode" value="file"></td>
- <td class="small"><input type="file" name="crawlingFile" size="28"></td>
- </tr>
- <tr><td class="small">From&nbsp;URL:</td>
- <td class="small"><input type="radio" name="crawlingMode" value="url" checked="checked"></td>
- <td class="small">
- <input name="crawlingURL" type="text" size="41" maxlength="256" value="http://" onkeypress="changed()">
- <span id="robotsOK"></span>
- </td>
- </tr>
- <tr>
- <td colspan="2"><span id="title"></span></td>
- </tr>
- </table>
- </td>
- <td class=small colspan="3">Existing start URLs are re-crawled.
- Other already visited URLs are sorted out as "double".
- A complete re-crawl will be available soon.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small colspan="5"><input type="submit" name="crawlingstart" value="Start New Crawl"></td>
- </tr>
-</form>
-</table>
-</p>
-
-<p><form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
-<div class=small id="distributedIndexing">
-<b>Distributed Indexing: </b>
-Crawling and indexing can be done by remote peers.
-Your peer can search and index for other peers and they can search for you.</div></p>
-
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
- <tr valign="top" class="TableCellDark">
- <td class=small width="10%">
- <input type="radio" name="dcr" value="acceptCrawlMax" align="top" #(acceptCrawlMaxChecked)#::checked#(/acceptCrawlMaxChecked)#>
- </td><td class=small>
- Accept remote crawling requests and perform crawl at maximum load
- </td>
- </tr><tr valign="top" class="TableCelllight">
- <td class=small width="10%">
- <input type="radio" name="dcr" value="acceptCrawlLimited" align="top" #(acceptCrawlLimitedChecked)#::checked#(/acceptCrawlLimitedChecked)#>
- </td><td class=small>
- Accept remote crawling requests and perform crawl at maximum of
- <input name="acceptCrawlLimit" type="text" size="4" maxlength="4" value="#[PPM]#"> Pages Per Minute (minimum is 1, low system load usually at PPM <= 30)
- </td>
- </tr><tr valign="top" class="TableCellDark">
- <td class=small width="10%">
- <input type="radio" name="dcr" value="acceptCrawlDenied" align="top" #(acceptCrawlDeniedChecked)#::checked#(/acceptCrawlDeniedChecked)#>
- </td><td class=small>
- Do not accept remote crawling requests (please set this only if you cannot accept to crawl only one page per minute; see option above)</td>
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td width="10%">
- <input type="submit" name="distributedcrawling" value="set">
- </td>
- <td>
- </td>
- </tr>
-</table>
-</form></p>
-
-
-<p>
-#(error)#<!-- 0 -->
-::<!-- 1 -->
-Error with profile management. Please stop YaCy, delete the file DATA/PLASMADB/crawlProfiles0.db and restart.
-::<!-- 2 -->
-Error: #[errmsg]#
-::<!-- 3 -->
-Application not yet initialized. Sorry. Please wait some seconds and repeat the request.
-::<!-- 4 -->
-<b>ERROR: Crawl filter "<span class="settingsValue">#[newcrawlingfilter]#</span>" does not match with crawl root "#[crawlingStart]#".</b> Please try again with different filter.</p><br>
-::<!-- 5 -->
-Crawling of "<span class="settingsValue">#[crawlingURL]#</span>" failed. Reason: #[reasonString]#<br>
-::<!-- 6 -->
-Error with URL input "<span class="settingsValue">#[crawlingStart]#</span>": #[error]#
-::<!-- 7 -->
-Error with file input "<span class="settingsValue">#[crawlingStart]#</span>": #[error]#
-::<!-- 8 -->
-Error with Crawling Filter "<span class="settingsValue">#[newcrawlingfilter]#</span>": <span style="color:red">#[error]#</span>
-#(/error)#
-<br>
-#(info)#
-::
-Set new prefetch depth to "#[newproxyPrefetchDepth]#"
-::
-Crawling of "#[crawlingURL]#" started.
-You can monitor the crawling progress either by watching the URL queues
-(<a href="/IndexCreateWWWLocalQueue_p.html">local queue</a>,
-<a href="/IndexCreateWWWGlobalQueue_p.html">global queue</a>,
-<a href="/IndexCreateLoaderQueue_p.html">loader queue</a>,
-<a href="/IndexCreateLoaderQueue_p.html">indexing queue</a>)
-or see the fill/process count of all queues on the
-<a href="/PerformanceQueues_p.html">performance page</a>.
-<b>Please wait some seconds, because the request is enqueued and delayed until the proxy/HTTP-server is idle for a certain time.</b>
-The indexing results are presented on the
-<a href="IndexMonitor.html">Index Monitor</a>-page.
-<b>It will take at least 30 seconds until the first result appears there. Please be patient, the crawling will pause each time you use the proxy or web server to ensure maximum availability.</b>
-If you crawl any un-wanted pages, you can delete them <a href="IndexCreateWWWLocalQueue_p.html">here</a>.<br>
-::
-Removed #[numEntries]# entries from crawl queue. This queue may fill again if the loading and indexing queue is not empty.
-::
-Crawling paused successfully.
-::
-Continue crawling.
-#(/info)#
-<br>
-#(refreshbutton)#
-::
-<form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
-<input type="submit" name="refreshpage" value="refresh">
-</form>
-<br>
-#(/refreshbutton)#
-<br>
-<form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
-#(crawler-paused)#
-<input type="submit" name="continuecrawlqueue" value="continue crawling">
-::
-<input type="submit" name="pausecrawlqueue" value="pause crawling">
-#(/crawler-paused)#
-</form>
-<b id="crawlingProfiles">Crawl Profile List:</b><br>
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
- <tr class="TableHeader">
- <td width="120" class="small"><b>Crawl Thread</b></td>
- <td class="small"><b>Start URL</b></td>
- <td width="16" class="small"><b>Depth</b></td>
- <td width="60" class="small"><b>Filter</b></td>
- <td width="10" class="small"><b>MaxAge</b></td>
- <td width="10" class="small"><b>Auto Filter Depth</b></td>
- <td class="small"><b>Auto Filter Content</b></td>
- <td width="10" class="small"><b>Max Page Per Domain</b></td>
- <td width="10" class="small"><b>Accept "?" URLs</b></td>
- <td width="10" class="small"><b>Fill Proxy Cache</b></td>
- <td width="10" class="small"><b>Local Indexing</b></td>
- <td width="10" class="small"><b>Remote Indexing</b></td>
- </tr>
-#{crawlProfiles}#
- <tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
- <td class="small">#[name]#</td>
- <td class="small"><a class="small" href="#[startURL]#">#[startURL]#</a></td>
- <td class="small">#[depth]#</td>
- <td class="small">#[filter]#</td>
- <td class="small">#[crawlingIfOlder]#</td>
- <td class="small">#[crawlingDomFilterDepth]#</td>
- <td class="small">#[crawlingDomFilterContent]#</td>
- <td class="small">#[crawlingDomMaxPages]#</td>
- <td class="small">#(withQuery)#no::yes#(/withQuery)#</td>
- <td class="small">#(storeCache)#no::yes#(/storeCache)#</td>
- <td class="small">#(localIndexing)#no::yes#(/localIndexing)#</td>
- <td class="small">#(remoteIndexing)#no::yes#(/remoteIndexing)#</td>
- </tr>
-#{/crawlProfiles}#
-</table>
-<br>
-<b id="crawlingStarts">Recently started remote crawls in progress:</b><br>
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
- <tr class="TableHeader">
- <td class="small"><b>Start Time</b></td>
- <td class="small"><b>Peer Name</b></td>
- <td class="small"><b>Start URL</b></td>
- <td class="small"><b>Intention/Description</b></td>
- <td class="small"><b>Depth</b></td>
- <td class="small"><b>Accept '?' URLs</b></td>
- </tr>
-#{otherCrawlStartInProgress}#
- <tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
- <td class="small">#[cre]#</td>
- <td class="small">#[peername]#</td>
- <td class="small"><a class="small" href="#[startURL]#">#[startURL]#</a></td>
- <td class="small">#[intention]#</td>
- <td class="small">#[generalDepth]#</td>
- <td class="small">#(crawlingQ)#no::yes#(/crawlingQ)#</td>
- </tr>
-#{/otherCrawlStartInProgress}#
-</table>
-<br>
-<b>Recently started remote crawls, finished:</b><br>
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
- <tr class="TableHeader">
- <td class="small"><b>Start Time</b></td>
- <td class="small"><b>Peer Name</b></td>
- <td class="small"><b>Start URL</b></td>
- <td class="small"><b>Intention/Description</b></td>
- <td class="small"><b>Depth</b></td>
- <td class="small"><b>Accept '?' URLs</b></td>
- </tr>
-#{otherCrawlStartFinished}#
- <tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
- <td class="small">#[cre]#</td>
- <td class="small">#[peername]#</td>
- <td class="small"><a class="small" href="#[startURL]#">#[startURL]#</a></td>
- <td class="small">#[intention]#</td>
- <td class="small">#[generalDepth]#</td>
- <td class="small">#(crawlingQ)#no::yes#(/crawlingQ)#</td>
- </tr>
-#{/otherCrawlStartFinished}#
-</table>
-<br>
-<b id="remoteCrawlPeers">Remote Crawling Peers:</b>&nbsp;
-#(remoteCrawlPeers)#
-No remote crawl peers availible.<br>
-::
-#[num]# peers available for remote crawling.
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableCellDark">
- <th width="60" class="small">Idle Peers</th>
- <td class="small">
- #{available}##[name]# (#[due]# seconds due)&nbsp;&nbsp; #{/available}#
- </td>
-</tr>
-<tr class="TableCellLight">
- <th width="60" class="small">Busy Peers</th>
- <td class="small">
- #{busy}##[name]# (#[due]# seconds due)&nbsp;&nbsp;#{/busy}#
- </td>
-</tr>
-</table>
-#(/remoteCrawlPeers)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Creation</title>
+ #%env/templates/metas.template%#
+ <script type="text/javascript" src="/js/ajax.js"></script>
+ <script type="text/javascript" src="/js/IndexCreate.js"></script>
+ </head>
+ <body id="IndexCreate">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexCreate.template%#
+ <h2>Index Creation</h2>
+
+ <p id="startCrawling">
+ <strong>Start Crawling Job:</strong>&nbsp;
+ You can define URLs as start points for Web page crawling and start crawling here. "Crawling" means that YaCy will download the given website, extract all links in it and then download the content behind these links. This is repeated as long as specified under "Crawling Depth".
+ </p>
+
+ <form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr class="TableHeader">
+ <td><strong>Attribut</strong></td>
+ <td><strong>Value</strong></td>
+ <td><strong>Description</strong></td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Crawling Depth:</td>
+ <td><input name="crawlingDepth" type="text" size="2" maxlength="2" value="#[crawlingDepth]#" /></td>
+ <td>
+ This defines how often the Crawler will follow links embedded in websites.<br />
+ A minimum of 1 is recommended and means that the page you enter under "Starting Point" will be added to the index, but no linked content is indexed. 2-4 is good for normal indexing.
+ Be careful with the depth. Consider a branching factor of average 20;
+ A prefetch-depth of 8 would index 25.600.000.000 pages, maybe this is the whole WWW.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Crawling Filter:</td>
+ <td><input name="crawlingFilter" type="text" size="20" maxlength="100" value="#[crawlingFilter]#" /></td>
+ <td>
+ This is an emacs-like regular expression that must match with the URLs which are used to be crawled.
+ Use this i.e. to crawl a single domain. If you set this filter it would make sense to increase
+ the crawling depth.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Re-Crawl Option:</td>
+ <td>
+ Use:<input type="checkbox" name="crawlingIfOlderCheck" #(crawlingIfOlderCheck)#::checked="checked"#(/crawlingIfOlderCheck)# />&nbsp;&nbsp;
+ Interval:<input name="crawlingIfOlderNumber" type="text" size="7" maxlength="7" value="#[crawlingIfOlderNumber]#" /><br />
+ <input type="radio" name="crawlingIfOlderUnit" value="year" #(crawlingIfOlderUnitYearCheck)#::checked="checked"#(/crawlingIfOlderUnitYearCheck)# />Year(s)&nbsp;&nbsp;
+ <input type="radio" name="crawlingIfOlderUnit" value="month" #(crawlingIfOlderUnitMonthCheck)#::checked="checked"#(/crawlingIfOlderUnitMonthCheck)# />Month(s)&nbsp;&nbsp;
+ <input type="radio" name="crawlingIfOlderUnit" value="day" #(crawlingIfOlderUnitDayCheck)#::checked="checked"#(/crawlingIfOlderUnitDayCheck)# />Day(s)&nbsp;&nbsp;
+ <input type="radio" name="crawlingIfOlderUnit" value="hour" #(crawlingIfOlderUnitHourCheck)#::checked="checked"#(/crawlingIfOlderUnitHourCheck)# />Hour(s)&nbsp;&nbsp;
+ <input type="radio" name="crawlingIfOlderUnit" value="minute" #(crawlingIfOlderUnitMinuteCheck)#::checked="checked"#(/crawlingIfOlderUnitMinuteCheck)# />Minute(s)
+ </td>
+ <td>
+ If you use this option, web pages that are already existent in your database are crawled and indexed again.
+ It depends on the age of the last crawl if this is done or not: if the last crawl is older than the given
+ date, the page is crawled again, othervise it is treaded as 'double' and not loaded or indexed again.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Auto-Dom-Filter:</td>
+ <td>
+ Use:<input type="checkbox" name="crawlingDomFilterCheck" #(crawlingDomFilterCheck)#::checked="checked"#(/crawlingDomFilterCheck)# />&nbsp;&nbsp;
+ Depth:<input name="crawlingDomFilterDepth" type="text" size="2" maxlength="2" value="#[crawlingDomFilterDepth]#" /></td>
+ <td>
+ This option will automatically create a domain-filter which limits the crawl on domains the crawler
+ will find on the given depth. You can use this option i.e. to crawl a page with bookmarks while
+ restricting the crawl on only those domains that appear on the bookmark-page. The adequate depth
+ for this example would be 1.<br />
+ The default value 0 gives no restrictions.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Maximum Pages per Domain:</td>
+ <td>
+ Use:<input type="checkbox" name="crawlingDomMaxCheck" #(crawlingDomMaxCheck)#::checked="checked"#(/crawlingDomMaxCheck)# />&nbsp;&nbsp;
+ Page-Count:<input name="crawlingDomMaxPages" type="text" size="6" maxlength="6" value="#[crawlingDomMaxPages]#" /></td>
+ <td>
+ You can limit the maxmimum number of pages that are fetched and indexed from a single domain with this option.
+ You can combine this limitation with the 'Auto-Dom-Filter', so that the limit is applied to all the domains within
+ the given depth. Domains outside the given depth are then sorted-out anyway.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Accept URLs with '?' / dynamic URLs:</td>
+ <td><input type="checkbox" name="crawlingQ" #(crawlingQChecked)#::checked="checked"#(/crawlingQChecked)# /></td>
+ <td>
+ A questionmark is usually a hint for a dynamic page. URLs pointing to dynamic content should usually not be crawled. However, there are sometimes web pages with static content that
+ is accessed with URLs containing question marks. If you are unsure, do not check this to avoid crawl loops.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Store to Proxy Cache:</td>
+ <td><input type="checkbox" name="storeHTCache" #(storeHTCacheChecked)#::checked="checked"#(/storeHTCacheChecked)# /></td>
+ <td>
+ This option is used by default for proxy prefetch, but is not needed for explicit crawling.
+ We recommend to leave this switched off unless you want to control the crawl results with the
+ <a href="CacheAdmin_p.html">Cache Monitor</a>.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Do Local Indexing:</td>
+ <td><input type="checkbox" name="localIndexing" #(localIndexingChecked)#::checked="checked"#(/localIndexingChecked)# /></td>
+ <td>
+ This enables indexing of the wepages the crawler will download. This should be switched on by default, unless you want to crawl only to fill the
+ <a href="CacheAdmin_p.html">Proxy Cache</a> without indexing.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Do Remote Indexing:</td>
+ <td>
+ <table border="0" cellpadding="2" cellspacing="0">
+ <tr>
+ <td>
+ <input type="checkbox" name="crawlOrder" #(crawlOrderChecked)#::checked="checked"#(/crawlOrderChecked)# />
+ </td>
+ <td>
+ Describe your intention to start this global crawl (optional):<br />
+ <input name="intention" type="text" size="40" maxlength="100" value="" /><br />
+ This message will appear in the 'Other Peer Crawl Start' table of other peers.
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td>
+ If checked, the crawler will contact other peers and use them as remote indexers for your crawl.
+ If you need your crawling results locally, you should switch this off.
+ Only senior and principal peers can initiate or receive remote crawls.
+ <strong>A YaCyNews message will be created to inform all peers about a global crawl</strong>, so they can omit starting a crawl with the same start point.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Exclude <i>static</i> Stop-Words</td>
+ <td><input type="checkbox" name="xsstopw" #(xsstopwChecked)#::checked="checked"#(/xsstopwChecked)# /></td>
+ <td>
+ This can be useful to circumvent that extremely common words are added to the database, i.e. "the", "he", "she", "it"... To exclude all words given in the file <tt >yacy.stopwords</tt> from indexing,
+ check this box.
+ </td>
+ </tr>
+ <!--
+ <tr valign="top" class="TableCellDark">
+ <td>Exclude <em>dynamic</em> Stop-Words</td>
+ <td><input type="checkbox" name="xdstopw" #(xdstopwChecked)#::checked="checked"#(/xdstopwChecked)# /></td>
+ <td colspan="3">
+ Excludes all words from indexing which are listed by statistic rules.
+ <em>THIS IS NOT YET FUNCTIONAL</em>
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Exclude <em>parent-indexed</em> words</td>
+ <td><input type="checkbox" name="xpstopw" #(xpstopwChecked)#::checked="checked"#(/xpstopwChecked)# /></td>
+ <td colspan="3">
+ Excludes all words from indexing which had been indexed in the parent web page.
+ <em>THIS IS NOT YET FUNCTIONAL</em>
+ </td>
+ </tr>
+ -->
+ <tr valign="top" class="TableCellLight">
+ <td>Starting Point:</td>
+ <td>
+ <table cellpadding="0" cellspacing="0">
+ <tr>
+ <td>From&nbsp;File:</td>
+ <td><input type="radio" name="crawlingMode" value="file" /></td>
+ <td><input type="file" name="crawlingFile" size="28" /></td>
+ </tr>
+ <tr>
+ <td>From&nbsp;URL:</td>
+ <td><input type="radio" name="crawlingMode" value="url" checked="checked" /></td>
+ <td>
+ <input name="crawlingURL" type="text" size="41" maxlength="256" value="http://" onkeypress="changed()" />
+ <span id="robotsOK"></span>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2"><span id="title"></span></td>
+ </tr>
+ </table>
+ </td>
+ <td colspan="3">
+ Existing start URLs are re-crawled.
+ Other already visited URLs are sorted out as "double".
+ A complete re-crawl will be available soon.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td colspan="5"><input type="submit" name="crawlingstart" value="Start New Crawl" /></td>
+ </tr>
+ </table>
+ </form>
+
+ <form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
+ <p id="distributedIndexing">
+ <strong>Distributed Indexing: </strong>
+ Crawling and indexing can be done by remote peers.
+ Your peer can search and index for other peers and they can search for you.
+ </p>
+
+ <table border="0" cellpadding="5" cellspacing="1">
+ <colgroup>
+ <col width="10%" />
+ <col />
+ </colgroup>
+ <tr valign="top" class="TableCellDark">
+ <td>
+ <input type="radio" name="dcr" value="acceptCrawlMax" #(acceptCrawlMaxChecked)#::checked="checked"#(/acceptCrawlMaxChecked)# />
+ </td>
+ <td>
+ Accept remote crawling requests and perform crawl at maximum load
+ </td>
+ </tr>
+ <tr valign="top" class="TableCelllight">
+ <td>
+ <input type="radio" name="dcr" value="acceptCrawlLimited" #(acceptCrawlLimitedChecked)#::checked="checked"#(/acceptCrawlLimitedChecked)# />
+ </td>
+ <td>
+ Accept remote crawling requests and perform crawl at maximum of
+ <input name="acceptCrawlLimit" type="text" size="4" maxlength="4" value="#[PPM]#" /> Pages Per Minute (minimum is 1, low system load usually at PPM &lt;= 30)
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>
+ <input type="radio" name="dcr" value="acceptCrawlDenied" #(acceptCrawlDeniedChecked)#::checked="checked"#(/acceptCrawlDeniedChecked)# />
+ </td>
+ <td>
+ Do not accept remote crawling requests (please set this only if you cannot accept to crawl only one page per minute; see option above)
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>
+ <input type="submit" name="distributedcrawling" value="set" />
+ </td>
+ <td>
+ </td>
+ </tr>
+ </table>
+ </form>
+
+
+ <p>
+ #(error)#<!-- 0 -->
+ ::<!-- 1 -->
+ Error with profile management. Please stop YaCy, delete the file DATA/PLASMADB/crawlProfiles0.db and restart.
+ ::<!-- 2 -->
+ Error: #[errmsg]#
+ ::<!-- 3 -->
+ Application not yet initialized. Sorry. Please wait some seconds and repeat the request.
+ ::<!-- 4 -->
+ <strong>ERROR: Crawl filter "#[newcrawlingfilter]#" does not match with crawl root "#[crawlingStart]#".</strong> Please try again with different filter.
+ ::<!-- 5 -->
+ Crawling of "#[crawlingURL]#" failed. Reason: #[reasonString]#<br>
+ ::<!-- 6 -->
+ Error with URL input "#[crawlingStart]#": #[error]#
+ ::<!-- 7 -->
+ Error with file input "#[crawlingStart]#": #[error]#
+ #(/error)#
+ </p>
+ <p>
+ #(info)#
+ ::
+ Set new prefetch depth to "#[newproxyPrefetchDepth]#"
+ ::
+ Crawling of "#[crawlingURL]#" started.
+ You can monitor the crawling progress either by watching the URL queues
+ (<a href="/IndexCreateWWWLocalQueue_p.html">local queue</a>,
+ <a href="/IndexCreateWWWGlobalQueue_p.html">global queue</a>,
+ <a href="/IndexCreateLoaderQueue_p.html">loader queue</a>,
+ <a href="/IndexCreateLoaderQueue_p.html">indexing queue</a>)
+ or see the fill/process count of all queues on the
+ <a href="/PerformanceQueues_p.html">performance page</a>.
+ <strong>Please wait some seconds, because the request is enqueued and delayed until the proxy/HTTP-server is idle for a certain time.</strong>
+ The indexing results are presented on the
+ <a href="IndexMonitor.html">Index Monitor</a>-page.
+ <strong>It will take at least 30 seconds until the first result appears there. Please be patient, the crawling will pause each time you use the proxy or web server to ensure maximum availability.</strong>
+ If you crawl any un-wanted pages, you can delete them <a href="IndexCreateWWWLocalQueue_p.html">here</a>.<br>
+ ::
+ Removed #[numEntries]# entries from crawl queue. This queue may fill again if the loading and indexing queue is not empty.
+ ::
+ Crawling paused successfully.
+ ::
+ Continue crawling.
+ #(/info)#
+ </p>
+ #(refreshbutton)#
+ ::
+ <form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="submit" name="refreshpage" value="refresh" />
+ </fieldset>
+ </form>
+ #(/refreshbutton)#
+ <form action="IndexCreate_p.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ #(crawler-paused)#
+ <input type="submit" name="continuecrawlqueue" value="continue crawling" />
+ ::
+ <input type="submit" name="pausecrawlqueue" value="pause crawling" />
+ #(/crawler-paused)#
+ </fieldset>
+ </form>
+
+ <p id="crawlingProfiles"><strong>Crawl Profile List:</strong></p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="120" />
+ <col />
+ <col width="16" />
+ <col width="60" />
+ <col width="10" span="2" />
+ <col />
+ <col width="10" span="5" />
+ </colgroup>
+ <tr class="TableHeader">
+ <td><strong>Crawl Thread</strong></td>
+ <td><strong>Start URL</strong></td>
+ <td><strong>Depth</strong></td>
+ <td><strong>Filter</strong></td>
+ <td><strong>MaxAge</strong></td>
+ <td><strong>Auto Filter Depth</strong></td>
+ <td><strong>Auto Filter Content</strong></td>
+ <td><strong>Max Page Per Domain</strong></td>
+ <td><strong>Accept "?" URLs</strong></td>
+ <td><strong>Fill Proxy Cache</strong></td>
+ <td><strong>Local Indexing</strong></td>
+ <td><strong>Remote Indexing</strong></td>
+ </tr>
+ #{crawlProfiles}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[name]#</td>
+ <td><a href="#[startURL]#">#[startURL]#</a></td>
+ <td>#[depth]#</td>
+ <td>#[filter]#</td>
+ <td>#[crawlingIfOlder]#</td>
+ <td>#[crawlingDomFilterDepth]#</td>
+ <td>#[crawlingDomFilterContent]#</td>
+ <td>#[crawlingDomMaxPages]#</td>
+ <td>#(withQuery)#no::yes#(/withQuery)#</td>
+ <td>#(storeCache)#no::yes#(/storeCache)#</td>
+ <td>#(localIndexing)#no::yes#(/localIndexing)#</td>
+ <td>#(remoteIndexing)#no::yes#(/remoteIndexing)#</td>
+ </tr>
+ #{/crawlProfiles}#
+ </table>
+ <p id="crawlingStarts"><strong>Recently started remote crawls in progress:</strong></p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td><strong>Start Time</strong></td>
+ <td><strong>Peer Name</strong></td>
+ <td><strong>Start URL</strong></td>
+ <td><strong>Intention/Description</strong></td>
+ <td><strong>Depth</strong></td>
+ <td><strong>Accept '?' URLs</strong></td>
+ </tr>
+ #{otherCrawlStartInProgress}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#" >
+ <td>#[cre]#</td>
+ <td>#[peername]#</td>
+ <td><a href="#[startURL]#">#[startURL]#</a></td>
+ <td>#[intention]#</td>
+ <td>#[generalDepth]#</td>
+ <td>#(crawlingQ)#no::yes#(/crawlingQ)#</td>
+ </tr>
+ #{/otherCrawlStartInProgress}#
+ </table>
+ <p><strong>Recently started remote crawls, finished:</strong></p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td><strong>Start Time</strong></td>
+ <td><strong>Peer Name</strong></td>
+ <td><strong>Start URL</strong></td>
+ <td><strong>Intention/Description</strong></td>
+ <td><strong>Depth</strong></td>
+ <td><strong>Accept '?' URLs</strong></td>
+ </tr>
+ #{otherCrawlStartFinished}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#" >
+ <td>#[cre]#</td>
+ <td>#[peername]#</td>
+ <td><a href="#[startURL]#">#[startURL]#</a></td>
+ <td>#[intention]#</td>
+ <td>#[generalDepth]#</td>
+ <td>#(crawlingQ)#no::yes#(/crawlingQ)#</td>
+ </tr>
+ #{/otherCrawlStartFinished}#
+ </table>
+ <p id="remoteCrawlPeers"><strong>Remote Crawling Peers:</strong>&nbsp;</p>
+ #(remoteCrawlPeers)#
+ <p>No remote crawl peers availible.</p>
+ ::
+ <p>#[num]# peers available for remote crawling.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="60" />
+ <col />
+ </colgroup>
+ <tr class="TableCellDark">
+ <th>Idle Peers</th>
+ <td>
+ #{available}##[name]# (#[due]# seconds due)&nbsp;&nbsp; #{/available}#
+ </td>
+ </tr>
+ <tr class="TableCellLight">
+ <th>Busy Peers</th>
+ <td>
+ #{busy}##[name]# (#[due]# seconds due)&nbsp;&nbsp;#{/busy}#
+ </td>
+ </tr>
+ </table>
+ #(/remoteCrawlPeers)#
+
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/IndexImport_p.html b/htroot/IndexImport_p.html
index 04d4b29a6..39d4875bf 100644
--- a/htroot/IndexImport_p.html
+++ b/htroot/IndexImport_p.html
@@ -1,247 +1,260 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Import</title>
-#%env/templates/metas.template%#
-<meta http-equiv="REFRESH" content="30">
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexControl.template%#
-<br>
-<h2>Index DB Import</h2>
-<p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references.</p>
-<hr>
-#(error)#<!-- 0 -->
- ::<!-- 1 -->
- <p><font color="red"><b>#[error_msg]#</b></font></p>
- ::<!-- 2 -->
- <p><font color="red"><b>Import Job with the same path already started.</b></font></p>
- ::<!-- 3 -->
- <p><font color="red"><b>#[error_msg]#</b></font></p>
- <p><font color="red"><code>#[error_stackTrace]#</code></font></p>
-#(/error)#
-<form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
-<h3>Starting new Job</h3>
-<table>
-<tr><td>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableCellLight">
- <td>Import&nbsp;Type:</td>
- <td title="the path to the database that should be imported"><select name="importType" size="1">
- <option value="plasmaDB">PLASMA DB Import</option>
- <option value="assortment">Assortment File Import</option>
- <option value="NURL">Crawling Queue Import</option>
- </select>
- </td>
- <td title="the cache size that should be used for the import db">Cache Size</td>
- <td><select name="cacheSize" size="1">
- <option value="2097152">2 MB</option>
- <option value="4194304">4 MB</option>
- <option value="8388608" selected="selected">8 MB</option>
- <option value="16777216">16 MB</option>
- <option value="33554432">32 MB</option>
- <option value="67108864">64 MB</option>
- <option value="134217728">128 MB</option>
- </select>
- </td>
- <td><a href="#usage">Usage Examples</a></td>
-</tr>
-<tr class="TableCellLight">
- <td title="Path to the PLASMADB directory of the foreign peer">Import&nbsp;Path:</td>
- <td colspan="3"><input name="importPath" type="text" size="50" value=""></td>
- <td><input type="submit" name="startIndexDbImport" value="Start Import"></td>
-</tr>
-</table>
-</td>
-<td><font color="red"><b>Attention:</b><br>Always do a backup of your source and destination database before starting to use this import function.</font>
-</td>
-</tr>
-</table>
-</form>
-
-<hr>
-<h3>Currently running jobs</h3>
-<p>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Job Type</td>
-<td class="small" width="150">Job Name</td>
-<td class="small" >Status</td>
-<td class="small" >%</td>
-<td class="small" >Elapsed<br>Time</td>
-<td class="small" >Time<br>Left</td>
-<td class="small" >Import Status</td>
-<td class="small" >Abort Import</td>
-<td class="small" >Pause Import</td>
-</tr>
-#{running.jobs}#
-<form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
- <input type="hidden" name="jobNr" value="#[job_nr]#">
- <tr class="TableCellLight">
- <td class="small">#[type]#</td>
- <td class="small" title="#[fullName]#">#[shortName]#</td>
- <td class="small"><font color="#(runningStatus)#red::green::blue#(/runningStatus)#">#(runningStatus)#Finished::Running::Paused#(/runningStatus)#</font></td>
- <td class="small" align="right">#[percent]#</td>
- <td class="small" align="right">#[elapsed]#</td>
- <td class="small" align="right">#[estimated]#</td>
- <td class="small" align="left"><tt>#[status]#</tt></td>
- <td class="small">
- #(stopped)#::
- <input type="submit" name="stopIndexDbImport" value="Abort">
- #(/stopped)#
- </td>
- <td class="small">
- #(paused)#
- <input type="submit" name="pauseIndexDbImport" value="Pause">
- ::
- <input type="submit" name="continueIndexDbImport" value="Continue">
- #(/paused)#
- </td>
- </tr>
-</form>
-#{/running.jobs}#
- </table>
-
-
-<hr>
-<form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
-<h3>Finished jobs</h3>
-<p>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Job Type</td>
-<td class="small" width="150">Path</td>
-<td class="small" >Status</td>
-<td class="small" >%</td>
-<td class="small" >Elapsed<br>Time</td>
-<td class="small" >Import Status</td>
-</tr>
-#{finished.jobs}#
- <tr class="TableCellLight">
- <td class="small">#[type]#</td>
- <td class="small" title="#[fullName]#">#[shortName]#</td>
- <td class="small"><font color="#(runningStatus)#green::red::blue#(/runningStatus)#">#(runningStatus)#Finished::<b>Error:</b> #[errorMsg]#::Paused#(/runningStatus)#</font></td>
- <td class="small" align="right">#[percent]#</td>
- <td class="small" align="right">#[elapsed]#</td>
- <td class="small" align="left"><tt>#[status]#</tt></td>
- </tr>
-#{/finished.jobs}#
- </table>
- <input type="submit" name="clearFinishedJobList" value="Clear List">
-</form>
-<p><font size="-3"><i>Last Refresh:</i> #[date]#</font></p>
-<hr>
-<p><div id="usage"><h2>Usage Examples:</h2></div></p>
-
-<p><h3>Plasma DB Import:</h3></p>
-<p>
- <b>Example Path:</b> <tt>E:\PLASMADB\</tt><br>
-</p>
-<p>
-<b>Requirements:</b><br>
-You need to have at least the following directories and files in this path:
-<table border="1" cellpadding="2" cellspacing="1">
- <tr style="background-color: lightgrey">
- <td>Name</td>
- <td>Type</td>
- <td>Writeable</td>
- <td>Description</td>
- </tr>
- <tr>
- <td><tt>urlHash.db</tt></td>
- <td>File</td>
- <td>No</td>
- <td>The LoadedURL Database containing all loaded and indexed URLs</td>
- </tr>
- <tr>
- <td><tt>ACLUSTER</tt></td>
- <td>Directory</td>
- <td>Yes</td>
- <td>The assortment directory containing parts of the word index.</td>
- </tr>
- <tr>
- <td><tt>WORDS</tt></td>
- <td>Directory</td>
- <td>Yes</td>
- <td>The words directory containing parts of the word index.</td>
- </tr>
-</table>
-</p>
-
-
-<p><h3>Assortment Import:</h3></p>
-<p>
- <b>Example Path:</b> <tt>E:\PLASMADB\ACLUSTER\indexAssortment001.db</tt>
-</p>
-<p>
-<b>Requirements:</b><br>
-You need to have at least the following directories and files in this path:
-<table border="1" cellpadding="2" cellspacing="1">
- <tr style="background-color: lightgrey">
- <td>Name</td>
- <td>Type</td>
- <td>Writeable</td>
- <td>Description</td>
- </tr>
- <tr>
- <td><tt>indexAssortment001.db</tt></td>
- <td>File</td>
- <td>No</td>
- <td>The assortment file that should be imported.<br>
- <b>Attention:</b> The assortment file must have the postfix "[0-9]{3}\.db".
- If you would like to import an assortment file from the <tt>PLASMADB\ACLUSTER\ABKP</tt>
- you have to rename it first.</td>
- </tr>
-</table>
-</p>
-<p>
-<b>Notes:</b><br>
-Please note that the imported words are useless if the destination peer doesn't know
-the URLs the imported words belongs to.
-</p>
-
-<p><h3>Crawling Queue Import:</h3></p>
-<p>
- <b>Example Path:</b> <tt>E:\PLASMADB\</tt>
-</p>
-<b>Requirements:</b><br>
-You need to have at least the following directories and files in this path:
-<table border="1" cellpadding="2" cellspacing="1">
- <tr style="background-color: lightgrey">
- <td>Name</td>
- <td>Type</td>
- <td>Writeable</td>
- <td>Description</td>
- </tr>
- <tr>
- <td><tt>crawlProfiles0.db</tt></td>
- <td>File</td>
- <td>No</td>
- <td>Contains data about the crawljob an URL belongs to</td>
- </tr>
- <tr>
- <td><tt>urlNotice1.db</tt></td>
- <td>File</td>
- <td>Yes</td>
- <td>The crawling queue</td>
- </tr>
- <tr>
- <td><tt>urlNoticeImage0.stack</tt></td>
- <td rowspan="8">File</td>
- <td rowspan="8">Yes</td>
- <td rowspan="8">Various stack files that belong to the crawling queue</td>
- </tr>
- <tr><td><tt>urlNoticeImage0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeLimit0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeLocal0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeMovie0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeMusic0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeOverhang0.stack</tt></td></tr>
- <tr><td><tt>urlNoticeRemote0.stack</tt></td></tr>
-</table>
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Import</title>
+ #%env/templates/metas.template%#
+ <meta http-equiv="REFRESH" content="30" />
+ </head>
+ <body id="IndexImport">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexControl.template%#
+ <h2>Index DB Import</h2>
+ <p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references.</p>
+ #(error)#<!-- 0 -->
+ ::<!-- 1 -->
+ <p class="error">#[error_msg]#</p>
+ ::<!-- 2 -->
+ <p class="error">Import Job with the same path already started.</p>
+ ::<!-- 3 -->
+ <p class="error">#[error_msg]#</p>
+ <p class="error"><code>#[error_stackTrace]#</code></p>
+ #(/error)#
+ <form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
+ <h3>Starting new Job</h3>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableCellLight">
+ <td>Import&nbsp;Type:</td>
+ <td title="the path to the database that should be imported">
+ <select name="importType" size="1">
+ <option value="plasmaDB">PLASMA DB Import</option>
+ <option value="assortment">Assortment File Import</option>
+ <option value="NURL">Crawling Queue Import</option>
+ </select>
+ </td>
+ <td title="the cache size that should be used for the import db">Cache Size</td>
+ <td>
+ <select name="cacheSize" size="1">
+ <option value="2097152">2 MB</option>
+ <option value="4194304">4 MB</option>
+ <option value="8388608" selected="selected">8 MB</option>
+ <option value="16777216">16 MB</option>
+ <option value="33554432">32 MB</option>
+ <option value="67108864">64 MB</option>
+ <option value="134217728">128 MB</option>
+ </select>
+ </td>
+ <td><a href="#usage">Usage Examples</a></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td title="Path to the PLASMADB directory of the foreign peer">Import&nbsp;Path:</td>
+ <td colspan="3"><input name="importPath" type="text" size="50" value="" /></td>
+ <td><input type="submit" name="startIndexDbImport" value="Start Import" /></td>
+ </tr>
+ </table>
+ <p class="warning"><strong>Attention:</strong><br />Always do a backup of your source and destination database before starting to use this import function.</p>
+ </form>
+
+ <hr />
+ <h3>Currently running jobs</h3>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col />
+ <col width="150" />
+ <col span="7" />
+ </colgroup>
+ <tr class="TableHeader" valign="bottom">
+ <td>Job Type</td>
+ <td>Job Name</td>
+ <td>Status</td>
+ <td>%</td>
+ <td>Elapsed<br />Time</td>
+ <td>Time<br />Left</td>
+ <td>Import Status</td>
+ <td>Abort Import</td>
+ <td>Pause Import</td>
+ </tr>
+ #{running.jobs}#
+ <form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
+ <tr class="TableCellLight">
+ <td>#[type]#</td>
+ <td title="#[fullName]#">#[shortName]#</td>
+ <td style="color:#(runningStatus)#red::green::blue#(/runningStatus)#;">#(runningStatus)#Finished::Running::Paused#(/runningStatus)#</td>
+ <td align="right">#[percent]#</td>
+ <td align="right">#[elapsed]#</td>
+ <td align="right">#[estimated]#</td>
+ <td align="left"><tt>#[status]#</tt></td>
+ <td>
+ <input type="hidden" name="jobNr" value="#[job_nr]#" />
+ #(stopped)#::
+ <input type="submit" name="stopIndexDbImport" value="Abort" />
+ #(/stopped)#
+ </td>
+ <td>
+ #(paused)#
+ <input type="submit" name="pauseIndexDbImport" value="Pause" />
+ ::
+ <input type="submit" name="continueIndexDbImport" value="Continue" />
+ #(/paused)#
+ </td>
+ </tr>
+ </form>
+ #{/running.jobs}#
+ </table>
+
+
+ <hr />
+ <form action="IndexImport_p.html" method="post" enctype="multipart/form-data">
+ <h3>Finished jobs</h3>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col />
+ <col width="150" />
+ <col span="4" />
+ </colgroup>
+ <tr class="TableHeader" valign="bottom">
+ <td>Job Type</td>
+ <td>Path</td>
+ <td>Status</td>
+ <td>%</td>
+ <td>Elapsed<br />Time</td>
+ <td>Import Status</td>
+ </tr>
+ #{finished.jobs}#
+ <tr class="TableCellLight">
+ <td>#[type]#</td>
+ <td title="#[fullName]#">#[shortName]#</td>
+ <td><font color="#(runningStatus)#green::red::blue#(/runningStatus)#">#(runningStatus)#Finished::<b>Error:</b> #[errorMsg]#::Paused#(/runningStatus)#</font></td>
+ <td align="right">#[percent]#</td>
+ <td align="right">#[elapsed]#</td>
+ <td align="left"><tt>#[status]#</tt></td>
+ </tr>
+ #{/finished.jobs}#
+ </table>
+ <fieldset>
+ <input type="submit" name="clearFinishedJobList" value="Clear List" />
+ </fieldset>
+ </form>
+ <p><em>Last Refresh:</em> #[date]#</p>
+ <hr />
+ <h2 id="usage">Usage Examples:</h2>
+
+ <h3>Plasma DB Import:</h3>
+ <p>
+ <strong>Example Path:</strong> <tt>E:\PLASMADB\</tt>
+ </p>
+ <p>
+ <strong>Requirements:</strong>
+ </p>
+ <p>
+ You need to have at least the following directories and files in this path:
+ </p>
+ <table border="1" cellpadding="2" cellspacing="1">
+ <tr class="example">
+ <td>Name</td>
+ <td>Type</td>
+ <td>Writeable</td>
+ <td>Description</td>
+ </tr>
+ <tr>
+ <td><tt>urlHash.db</tt></td>
+ <td>File</td>
+ <td>No</td>
+ <td>The LoadedURL Database containing all loaded and indexed URLs</td>
+ </tr>
+ <tr>
+ <td><tt>ACLUSTER</tt></td>
+ <td>Directory</td>
+ <td>Yes</td>
+ <td>The assortment directory containing parts of the word index.</td>
+ </tr>
+ <tr>
+ <td><tt>WORDS</tt></td>
+ <td>Directory</td>
+ <td>Yes</td>
+ <td>The words directory containing parts of the word index.</td>
+ </tr>
+ </table>
+
+ <h3>Assortment Import:</h3>
+ <p>
+ <strong>Example Path:</strong> <tt>E:\PLASMADB\ACLUSTER\indexAssortment001.db</tt>
+ </p>
+ <p>
+ <strong>Requirements:</strong>
+ </p>
+ <p>
+ You need to have at least the following directories and files in this path:
+ </p>
+ <table border="1" cellpadding="2" cellspacing="1">
+ <tr class="example">
+ <td>Name</td>
+ <td>Type</td>
+ <td>Writeable</td>
+ <td>Description</td>
+ </tr>
+ <tr>
+ <td><tt>indexAssortment001.db</tt></td>
+ <td>File</td>
+ <td>No</td>
+ <td>The assortment file that should be imported.<br />
+ <strong>Attention:</strong> The assortment file must have the postfix "[0-9]{3}\.db".
+ If you would like to import an assortment file from the <tt>PLASMADB\ACLUSTER\ABKP</tt>
+ you have to rename it first.
+ </td>
+ </tr>
+ </table>
+ <p>
+ <strong>Notes:</strong>
+ </p>
+ <p>
+ Please note that the imported words are useless if the destination peer doesn't know
+ the URLs the imported words belongs to.
+ </p>
+
+ <h3>Crawling Queue Import:</h3>
+ <p>
+ <strong>Example Path:</strong> <tt>E:\PLASMADB\</tt>
+ </p>
+ <p>
+ <strong>Requirements:</strong>
+ </p>
+ <p>
+ You need to have at least the following directories and files in this path:
+ </p>
+ <table border="1" cellpadding="2" cellspacing="1">
+ <tr class="example">
+ <td>Name</td>
+ <td>Type</td>
+ <td>Writeable</td>
+ <td>Description</td>
+ </tr>
+ <tr>
+ <td><tt>crawlProfiles0.db</tt></td>
+ <td>File</td>
+ <td>No</td>
+ <td>Contains data about the crawljob an URL belongs to</td>
+ </tr>
+ <tr>
+ <td><tt>urlNotice1.db</tt></td>
+ <td>File</td>
+ <td>Yes</td>
+ <td>The crawling queue</td>
+ </tr>
+ <tr>
+ <td><tt>urlNoticeImage0.stack</tt></td>
+ <td rowspan="8">File</td>
+ <td rowspan="8">Yes</td>
+ <td rowspan="8">Various stack files that belong to the crawling queue</td>
+ </tr>
+ <tr><td><tt>urlNoticeImage0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeLimit0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeLocal0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeMovie0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeMusic0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeOverhang0.stack</tt></td></tr>
+ <tr><td><tt>urlNoticeRemote0.stack</tt></td></tr>
+ </table>
+
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/IndexMonitor.html b/htroot/IndexMonitor.html
index 0fe5d59b4..fe8ebb861 100644
--- a/htroot/IndexMonitor.html
+++ b/htroot/IndexMonitor.html
@@ -1,128 +1,136 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Monitor</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="13" class="MenuHeader">&nbsp;Index Monitor Menu</td></tr>
-<tr height="2"><td colspan="13"></td></tr>
-<tr class="TableHeader">
-<td width="16%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html" class="MenuItemLink">Index&nbsp;Monitor&nbsp;Overview</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=1" class="MenuItemLink">(1)&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;Receipts</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=2" class="MenuItemLink">(2)&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;Queries</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=3" class="MenuItemLink">(3)&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;DHT&nbsp;Transfer</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=4" class="MenuItemLink">(4)&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;Proxy&nbsp;Use</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=5" class="MenuItemLink">(5)&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;Local&nbsp;Crawling</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="14%" class="MenuSubItem">&nbsp;<a href="/IndexMonitor.html?process=6" class="MenuItemLink">(6)&nbsp;Global&nbsp;Crawling</a>&nbsp;</td>
-</tr>
-</table>
-<br>
-
-#(process)#
-<h2>Indexing Queues Monitor Overview</h2>
-<p>These are monitoring pages for the different indexing queues.<p>
-<p>YaCy knows 5 different ways to acquire web indexes. The details of these processes (1-5) are described within the submenu's listed
-above which also will show you a table with indexing results so far. The information in these tables is considered as private,
-so you need to log-in with your administration password.</p>
-<p>Case (6) is a monitor of the local receipt-generator, the opposed case of (1). It contains also an indexing result monitor but is not considered private
-since it shows crawl requests from other peers.
-</p>
-<p><img src="/env/grafics/indexmonitor.png"></p>
-<p>The image above illustrates the data flow initiated by web index acquisition.
-Some processes occur double to document the complex index migration structure.
-</p>
-::
-<h2>(1) Index Monitor of Remote Crawl Receipts</h2>
-<p>This is the list of web pages that this peer initiated to crawl,
-but had been crawled by <i>other</i> peers.
-This is the 'mirror'-case of process (6).
-</p>
-<p><i>Use Case:</i> You get entries here, if you start a local crawl on the 'Index Creation'-Page and check the
-'Do Remote Indexing'-flag. Every page that a remote peer indexes upon this peer's request
-is reported back and can be monitored here.<p>
-::
-<h2>(2) Index Monitor for Result of Search Queries</h2>
-<p>This index transfer was initiated by your peer by doing a search query.
-The index was crawled and contributed by other peers.</p>
-<p><i>Use Case:</i> This list fills up if you do a search query on the 'Search Page'</p>
-::
-<h2>(3) Index Monitor for Index Transfer.</h2>
-<p>The url fetch was initiated and executed by other peers.
-These links here have been transmitted to you because your peer is the most appropriate for storage according to
-the logic of the Global Distributed Hash Table.</p>
-<p><i>Use Case:</i> This list may fill if you check the 'Index Receive'-flag on the 'Index Control' page</p>
-::
-<h2>(4) Index Monitor for Proxy Indexing</h2>
-<p>These web pages had been indexed as result of your proxy usage.
-<b>No personal or protected page is indexed</b>;
-such pages are detected by Cookie-Use or POST-Parameters (either in URL or as HTTP protocol)
-and automatically excluded from indexing.</p>
-<p><i>Use Case:</i> You must use YaCy as proxy to fill up this table.
-Set the proxy settings of your browser to the same port as given
-on the 'Settings'-page in the 'Proxy and Administration Port' field.</p>
-::
-<h2>(5) Index Monitor for Local Crawling.</h2>
-<p>These web pages had been crawled by your own crawl task.</p>
-<p><i>Use Case:</i> start a crawl by setting a crawl start point on the 'Index Create' page.</p>
-::
-<h2>(6) Index Monitor for Global Crawling</h2>
-<p>These pages had been indexed by your peer, but the crawl was initiated by a remote peer.
-This is the 'mirror'-case of process (1).</p>
-<p><i>Use Case:</i> This list may fill if you check the 'Accept remote crawling requests'-flag on the 'Index Crate' page</p>
-#(/process)#
-
-
-#(table)#
-<p><i>The stack is empty.</i></p>
-::
-<p><i>
-#(size)#
-Showing all #[all]# entries in this stack.
-::
-Showing latest #[count]# lines from a stack of #[all]# entries.
-#(/size)#
-</i>
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableHeader">
-<td class="small"><form action="#[feedbackpage]#" method="post" enctype="multipart/form-data">
-<input type="hidden" name="process" value="#[tabletype]#">
-<input type="submit" name="clearlist" value="clear list"></form></td>
-#(showInit)#::<td class="small"><b>Initiator</b></td>#(/showInit)#
-#(showExec)#::<td class="small"><b>Executor</b></td>#(/showExec)#
-<td class="small"><b>Modified Date</b></td>
-<td class="small"><b>#Words</b></td>
-<td class="small"><b>Title</b></td>
-<td class="small"><b>URL</b></td>
-</tr>
-#{indexed}#
-<tr class="TableCell#(dark)#Light::Dark#(/dark)#" class="small">
-<td width="30" class="small">
-<form action="#[feedbackpage]#" method="post" enctype="multipart/form-data">
-<input type="hidden" name="process" value="#[tabletype]#">
-<input type="hidden" name="hash" value="#[urlhash]#">
-<input type="submit" name="deleteentry" value="delete" class="small">
-</form></td>
-#(showInit)#::<td width="60" class="small">#[initiatorSeed]#</td>#(/showInit)#
-#(showExec)#::<td width="60" class="small">#[executorSeed]#</td>#(/showExec)#
-<td width="80" class="small">#[moddate]#</td>
-<td width="40" class="small">#[wordcount]#</td>
-<td width="180" class="small">#[urldescr]#</td>
-<td class="small">#[url]#</td>
-</tr>
-#{/indexed}#
-</table><br>
-</p>
-::
-#(/table)#
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Monitor</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexMonitor">
+ #%env/templates/header.template%#
+ <div class="SubMenu">
+ <h3>Index Monitor Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/IndexMonitor.html" class="MenuItemLink">Index Monitor Overview</a></li>
+ <li><a href="/IndexMonitor.html?process=1" class="MenuItemLink lock">(1) Receipts</a></li>
+ <li><a href="/IndexMonitor.html?process=2" class="MenuItemLink lock">(2) Queries</a></li>
+ <li><a href="/IndexMonitor.html?process=3" class="MenuItemLink lock">(3) DHT Transfer</a></li>
+ <li><a href="/IndexMonitor.html?process=4" class="MenuItemLink lock">(4) Proxy Use</a></li>
+ <li><a href="/IndexMonitor.html?process=5" class="MenuItemLink lock">(5) Local Crawling</a></li>
+ <li><a href="/IndexMonitor.html?process=6" class="MenuItemLink">(6) Global Crawling</a></li>
+ </ul>
+ </div>
+
+ #(process)#
+ <h2>Indexing Queues Monitor Overview</h2>
+ <p>These are monitoring pages for the different indexing queues.</p>
+ <p>YaCy knows 5 different ways to acquire web indexes. The details of these processes (1-5) are described within the submenu's listed
+ above which also will show you a table with indexing results so far. The information in these tables is considered as private,
+ so you need to log-in with your administration password.</p>
+ <p>Case (6) is a monitor of the local receipt-generator, the opposed case of (1). It contains also an indexing result monitor but is not considered private
+ since it shows crawl requests from other peers.
+ </p>
+ <p><img src="/env/grafics/indexmonitor.png" alt="An illustration how yacy works" /></p>
+ <p>The image above illustrates the data flow initiated by web index acquisition.
+ Some processes occur double to document the complex index migration structure.
+ </p>
+ ::
+ <h2>(1) Index Monitor of Remote Crawl Receipts</h2>
+ <p>This is the list of web pages that this peer initiated to crawl,
+ but had been crawled by <em>other</em> peers.
+ This is the 'mirror'-case of process (6).
+ </p>
+ <p><em>Use Case:</em> You get entries here, if you start a local crawl on the 'Index Creation'-Page and check the
+ 'Do Remote Indexing'-flag. Every page that a remote peer indexes upon this peer's request
+ is reported back and can be monitored here.</p>
+ ::
+ <h2>(2) Index Monitor for Result of Search Queries</h2>
+ <p>This index transfer was initiated by your peer by doing a search query.
+ The index was crawled and contributed by other peers.</p>
+ <p><em>Use Case:</em> This list fills up if you do a search query on the 'Search Page'</p>
+ ::
+ <h2>(3) Index Monitor for Index Transfer.</h2>
+ <p>The url fetch was initiated and executed by other peers.
+ These links here have been transmitted to you because your peer is the most appropriate for storage according to
+ the logic of the Global Distributed Hash Table.</p>
+ <p><em>Use Case:</em> This list may fill if you check the 'Index Receive'-flag on the 'Index Control' page</p>
+ ::
+ <h2>(4) Index Monitor for Proxy Indexing</h2>
+ <p>These web pages had been indexed as result of your proxy usage.
+ <strong>No personal or protected page is indexed</strong>;
+ such pages are detected by Cookie-Use or POST-Parameters (either in URL or as HTTP protocol)
+ and automatically excluded from indexing.</p>
+ <p><em>Use Case:</em> You must use YaCy as proxy to fill up this table.
+ Set the proxy settings of your browser to the same port as given
+ on the 'Settings'-page in the 'Proxy and Administration Port' field.</p>
+ ::
+ <h2>(5) Index Monitor for Local Crawling.</h2>
+ <p>These web pages had been crawled by your own crawl task.</p>
+ <p><em>Use Case:</em> start a crawl by setting a crawl start point on the 'Index Create' page.</p>
+ ::
+ <h2>(6) Index Monitor for Global Crawling</h2>
+ <p>These pages had been indexed by your peer, but the crawl was initiated by a remote peer.
+ This is the 'mirror'-case of process (1).</p>
+ <p><em>Use Case:</em> This list may fill if you check the 'Accept remote crawling requests'-flag on the 'Index Crate' page</p>
+ #(/process)#
+
+
+ #(table)#
+ <p><em>The stack is empty.</em></p>
+ ::
+ <p><em>
+ #(size)#
+ Showing all #[all]# entries in this stack.
+ ::
+ Showing latest #[count]# lines from a stack of #[all]# entries.
+ #(/size)#
+ </em></p>
+ <table cellpadding="2" cellspacing="1" >
+ <colgroup>
+ <col width="30" />
+ #(showInit)#::<col width="60" />#(/showInit)#
+ #(showExec)#::<col width="60" />#(/showExec)#
+ <col width="80" />
+ <col width="40" />
+ <col width="180" />
+ <col />
+ </colgroup>
+ <tr class="TableHeader">
+ <td>
+ <form action="#[feedbackpage]#" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="hidden" name="process" value="#[tabletype]#" />
+ <input type="submit" name="clearlist" value="clear list" />
+ </fieldset>
+ </form>
+ </td>
+ #(showInit)#::<td><strong>Initiator</strong></td>#(/showInit)#
+ #(showExec)#::<td><strong>Executor</strong></td>#(/showExec)#
+ <td><strong>Modified Date</strong></td>
+ <td><strong>#Words</strong></td>
+ <td><strong>Title</strong></td>
+ <td><strong>URL</strong></td>
+ </tr>
+ #{indexed}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>
+ <form action="#[feedbackpage]#" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="hidden" name="process" value="#[tabletype]#" />
+ <input type="hidden" name="hash" value="#[urlhash]#" />
+ <input type="submit" name="deleteentry" value="delete" />
+ </fieldset>
+ </form>
+ </td>
+ #(showInit)#::<td>#[initiatorSeed]#</td>#(/showInit)#
+ #(showExec)#::<td>#[executorSeed]#</td>#(/showExec)#
+ <td>#[moddate]#</td>
+ <td>#[wordcount]#</td>
+ <td>#[urldescr]#</td>
+ <td>#[url]#</td>
+ </tr>
+ #{/indexed}#
+ </table>
+ ::
+ #(/table)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/IndexShare_p.html b/htroot/IndexShare_p.html
index a3032825d..17c0e8894 100644
--- a/htroot/IndexShare_p.html
+++ b/htroot/IndexShare_p.html
@@ -1,43 +1,48 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Sharing</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Index Sharing</h2>
-
-<p>
-The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references<br>
-<form action="IndexShare_p.html" method="get">
-<table border="0" cellpadding="6" cellspacing="0">
-<tr valign="top" bgcolor="#CCDDCC">
-<td>Index:&nbsp;</td>
-<td>
-<input type="checkbox" name="distribute" value="" align="top" #[distributecheck]#>distribute&nbsp;<br>
-<input type="checkbox" name="receive" value="" align="top" #[receivecheck]#>receive
-</td><td>
-&nbsp;&nbsp;&nbsp;receive&nbsp;grant&nbsp;default:&nbsp;<br>
-&nbsp;&nbsp;&nbsp;for each remote peer&nbsp;
-</td><td>
-&nbsp;<input type="text" name="linkfreq" value="#[linkfreq]#" size="4" maxlength="4">&nbsp;links/minute&nbsp;<br>
-&nbsp;<input type="text" name="wordfreq" value="#[wordfreq]#" size="4" maxlength="4">&nbsp;words/minute&nbsp;
-</td><td>
-&nbsp;<input type="submit" name="indexsharesetting" value="Set">
-</td>
-</tr></table>
-</form>
-<br>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr valign="top">
-<td width="240"><center>#[dtable]#</center></td>
-<td bgcolor="#889988" width="1px"></td>
-<td width="240"><center>#[rtable]#</center></td>
-</tr>
-</table>
-</p>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Sharing</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="IndexShare">
+ #%env/templates/header.template%#
+ <h2>Index Sharing</h2>
+ <!-- Diese Seite ist noch nicht komplett überarbeitet. Da mir jedoch
+ der Sinn der unteren table vollkommen unklar ist, mache ich jetzt
+ nichts mehr. Infos zum Sinn der unteren Table gerne per yacy-Message
+ an Michitux -->
+ <p>
+ The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references
+ </p>
+ <form action="IndexShare_p.html" method="get">
+ <table border="0" cellpadding="6" cellspacing="0">
+ <tr valign="top" bgcolor="#CCDDCC">
+ <td>Index:&nbsp;</td>
+ <td>
+ <input type="checkbox" name="distribute" value="" align="top" #[distributecheck]# />distribute&nbsp;<br />
+ <input type="checkbox" name="receive" value="" align="top" #[receivecheck]# />receive
+ </td>
+ <td>
+ &nbsp;&nbsp;&nbsp;receive&nbsp;grant&nbsp;default:&nbsp;<br>
+ &nbsp;&nbsp;&nbsp;for each remote peer&nbsp;
+ </td>
+ <td>
+ &nbsp;<input type="text" name="linkfreq" value="#[linkfreq]#" size="4" maxlength="4" />&nbsp;links/minute&nbsp;<br />
+ &nbsp;<input type="text" name="wordfreq" value="#[wordfreq]#" size="4" maxlength="4" />&nbsp;words/minute&nbsp;
+ </td><td>
+ &nbsp;<input type="submit" name="indexsharesetting" value="Set" />
+ </td>
+ </tr>
+ </table>
+
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="240"><center>#[dtable]#</center></td>
+ <td bgcolor="#889988" width="1px"></td>
+ <td width="240"><center>#[rtable]#</center></td>
+ </tr>
+ </table>
+ </form>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/IndexTransfer_p.html b/htroot/IndexTransfer_p.html
index ff73c4375..30e19626a 100644
--- a/htroot/IndexTransfer_p.html
+++ b/htroot/IndexTransfer_p.html
@@ -1,85 +1,83 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Index Transfer</title>
-#%env/templates/metas.template%#
-<meta http-equiv="REFRESH" content="30">
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuIndexControl.template%#
-<br>
-<h2>Index Transfer</h2>
-
-<form action="IndexTransfer_p.html" method="post" enctype="multipart/form-data">
-<p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references.</p>
-<p>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td>&nbsp;</td>
-<td class="small" >Status</td>
-<td class="small" >Chunk Size<br>(Word Entries)</td>
-<td class="small" >Words Range</td>
-<td class="small" >Transfered Words</td>
-<td class="small" >Delete<br>Index</td>
-<td class="small" >Remote<br>Peer</td>
-#(running)#<td class="small" >Overwrite IP<br />(blank for defaultip)</td>::#(/running)#
-<td class="small" >Start/Stop Transfer</td>
-</tr>
-#(running)#
-<tr valign="top" class="TableCellLight">
-<td class="TableHeader">-</td>
-<td class="small">#[status]#</td>
-<td class="small" align="center">-</td>
-<td class="small" align="center">-</td>
-<td class="small" align="center">-</td>
-<td class="small">
- <select name="deleteIndex">
- <option value="1">true</option>
- <option value="0">false</option>
- </select>
-</td>
-<td class="small">
- <select name="hostHash">
- #{hosts}#
- <option value="#[hosthash]#">#[hostname]#</option>
- #{/hosts}#
- </select>
-</td>
-<td class="small">
- <input type="text" name="overwriteIP">
-</td>
-<td class="small">
- <input type="submit" name="startIndexTransfer" value="Start Index Transfer">
-</td>
-</tr>
-</table></p>
-::
- <tr class="TableCellLight">
- <td class="TableCellDark">Selection</td>
- <td class="small" ><font color="#(stopped)#green::red#(/stopped)#">#[selection.status]#</font></td>
- <td class="small" align="rigth">#[selection.twchunk]# words</td>
- <td class="small" align="right"><tt>#[selection.twrange]#</tt></td>
- <td class="small" rowspan="2" align="left">#[twEntityCount]# Entities (#[twEntityPercent]#%)<br>
- #[twEntryCount]# Entries<br>
- #[twPayloadSize]#<br>
- #[twEntrySpeed]# entries/s</td>
- <td class="small" rowspan="2">#(deleteIndex)#false::true#(/deleteIndex)#</td>
- <td class="small" rowspan="2">#[peerName]#</td>
- <td class="small" rowspan="2">#(stopped)#<input type="submit" name="stopIndexTransfer" value="Stop Index Transfer">::
- <input type="submit" name="newIndexTransfer" value="Start New Index Transfer">#(/stopped)#</td>
- </tr>
- <tr class="TableCellLight">
- <td class="TableCellDark">Transfer</td>
- <td class="small" ><font color="#(stopped)#green::red#(/stopped)#">#[transfer.status]#</font></td>
- <td class="small" align="rigth">#[transfer.twchunk]# words</td>
- <td class="small" align="right"><tt>#[transfer.twrange]#</tt></td>
- </tr>
-#(/running)#
- </table>
-</form>
-<p><font size="-3"><i>Last Refresh:</i> #[date]#</font></p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Index Transfer</title>
+ #%env/templates/metas.template%#
+ <meta http-equiv="REFRESH" content="30" />
+ </head>
+ <body id="IndexTransfer">
+ #%env/templates/header.template%#
+ #%env/templates/submenuIndexControl.template%#
+ <h2>Index Transfer</h2>
+
+ <form action="IndexTransfer_p.html" method="post" enctype="multipart/form-data">
+ <p>The local index currently consists of (at least) #[wcount]# reverse word indexes and #[ucount]# URL references.</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>&nbsp;</td>
+ <td>Status</td>
+ <td>Chunk Size<br />(Word Entries)</td>
+ <td>Words Range</td>
+ <td>Transfered Words</td>
+ <td>Delete<br />Index</td>
+ <td>Remote<br />Peer</td>
+ #(running)#<td>Overwrite IP<br />(blank for defaultip)</td>::#(/running)#
+ <td>Start/Stop Transfer</td>
+ </tr>
+ #(running)#
+ <tr valign="top" class="TableCellLight">
+ <td class="TableHeader">-</td>
+ <td>#[status]#</td>
+ <td align="center">-</td>
+ <td align="center">-</td>
+ <td align="center">-</td>
+ <td>
+ <select name="deleteIndex">
+ <option value="1">true</option>
+ <option value="0">false</option>
+ </select>
+ </td>
+ <td>
+ <select name="hostHash">
+ #{hosts}#
+ <option value="#[hosthash]#">#[hostname]#</option>
+ #{/hosts}#
+ </select>
+ </td>
+ <td>
+ <input type="text" name="overwriteIP" />
+ </td>
+ <td>
+ <input type="submit" name="startIndexTransfer" value="Start Index Transfer" />
+ </td>
+ </tr>
+ ::
+ <tr class="TableCellLight">
+ <td class="TableCellDark">Selection</td>
+ <td style="color:#(stopped)#green::red#(/stopped)#">#[selection.status]#</td>
+ <td align="right">#[selection.twchunk]# words</td>
+ <td align="right"><tt>#[selection.twrange]#</tt></td>
+ <td rowspan="2" align="left">#[twEntityCount]# Entities (#[twEntityPercent]#%)<br />
+ #[twEntryCount]# Entries<br />
+ #[twPayloadSize]#<br />
+ #[twEntrySpeed]# entries/s</td>
+ <td rowspan="2">#(deleteIndex)#false::true#(/deleteIndex)#</td>
+ <td rowspan="2">#[peerName]#</td>
+ <td rowspan="2">#(stopped)#<input type="submit" name="stopIndexTransfer" value="Stop Index Transfer" />::
+ <input type="submit" name="newIndexTransfer" value="Start New Index Transfer" />#(/stopped)#
+ </td>
+ </tr>
+ <tr class="TableCellLight">
+ <td class="TableCellDark">Transfer</td>
+ <td style="color:#(stopped)#green::red#(/stopped)#">#[transfer.status]#</td>
+ <td align="rigth">#[transfer.twchunk]# words</td>
+ <td align="right"><tt>#[transfer.twrange]#</tt></td>
+ </tr>
+ #(/running)#
+ </table>
+ </form>
+ <p><em>Last Refresh:</em> #[date]#</p>
+
+ #%env/templates/footer.template%#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/Log_p.html b/htroot/Log_p.html
deleted file mode 100644
index 9219047f7..000000000
--- a/htroot/Log_p.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<html>
-<head>
-#%env/templates/metas.template%#
-</head>
-<body>
-<pre>
-#[log]#
-</pre>
-</body>
-</html>
diff --git a/htroot/Log_p.java b/htroot/Log_p.java
deleted file mode 100644
index defb3d82b..000000000
--- a/htroot/Log_p.java
+++ /dev/null
@@ -1,91 +0,0 @@
-//Log_p.java
-//-----------------------
-//part of the AnomicHTTPD caching proxy
-//(C) by Michael Peter Christen; mc@anomic.de
-//first published on http://www.anomic.de
-//Frankfurt, Germany, 2004
-//
-//This File is contributed by Alexander Schier
-//last major change: 14.12.2004
-//
-//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
-//
-//Using this software in any meaning (reading, learning, copying, compiling,
-//running) means that you agree that the Author(s) is (are) not responsible
-//for cost, loss of data or any harm that may be caused directly or indirectly
-//by usage of this softare or this documentation. The usage of this software
-//is on your own risk. The installation and usage (starting/running) of this
-//software may allow other people or application to access your computer and
-//any attached devices and is highly dependent on the configuration of the
-//software which must be done by the user of the software; the author(s) is
-//(are) also not responsible for proper configuration and usage of the
-//software, even if provoked by documentation provided together with
-//the software.
-//
-//Any changes to this file according to the GPL as documented in the file
-//gpl.txt aside this file in the shipment you received can be done to the
-//lines that follows this copyright notice here, but changes must not be
-//done inside the copyright notive above. A re-distribution must contain
-//the intact and unchanged copyright notice.
-//Contributions and changes to the program code must be marked as such.
-
-
-//You must compile this file with
-//javac -classpath .:../Classes Message.java
-//if the shell's current path is HTROOT
-
-import java.util.logging.Handler;
-import java.util.logging.Logger;
-
-import de.anomic.http.httpHeader;
-import de.anomic.server.serverObjects;
-import de.anomic.server.serverSwitch;
-import de.anomic.server.logging.GuiHandler;
-
-public class Log_p {
-
-
- public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) {
- serverObjects prop = new serverObjects();
- String log = "";
- boolean reversed = false;
- int lines = 50;
-
- if(post != null){
- if(post.containsKey("mode") && ((String)post.get("mode")).equals("reversed")){
- reversed=true;
- }
- if(post.containsKey("lines")){
- lines = Integer.parseInt((String)post.get("lines"));
- }
- }
-
-
- Logger logger = Logger.getLogger("");
- Handler[] handlers = logger.getHandlers();
- for (int i=0; i<handlers.length; i++) {
- if (handlers[i] instanceof GuiHandler) {
- log = ((GuiHandler)handlers[i]).getLog(reversed,lines);
- break;
- }
- }
-
- prop.put("log", log);
-
- // return rewrite properties
- return prop;
- }
-
-}
diff --git a/htroot/MessageSend_p.html b/htroot/MessageSend_p.html
index 8f9da8db0..795181d19 100644
--- a/htroot/MessageSend_p.html
+++ b/htroot/MessageSend_p.html
@@ -1,78 +1,84 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Send message</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Send message</h2><br>
-
-#(mode)#
-<!-- =========================== write message =========================== -->
- #(permission)#
- <!-- we have no permission to send the message -->
- <p>You cannot send a message to <b>#[peerName]#</b>.<br>
- The peer does not respond. It was now removed from the peer-list.
- </p>
- ::
- <!-- we have the permission to send the message -->
- <p>The peer <b>#[peerName]#</b> is alive and responded:</p>
- <p><tt class="MessageBackground">#[response]#
- You are allowed to send me a message &le; #[messagesize]# kb and an
- attachment &le; #[attachmentsize]#.</tt>
- </p>
-
- <form action="MessageSend_p.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
- <br>
- <br>
- <p><h3>Your Message</h3></p>
- <p>Subject:<br>
- <input name="subject" type="text" size="80" maxlength="80" value="#[subject]#">
- </p>
- <p>Text:<br>
- <textarea name="message" cols="80" rows="8">#[message]#</textarea>
- <br><font size="-1">You can use <a href="WikiHelp.html" target="_blank" onClick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.</font>
- </p>
- <input type="hidden" name="hash" value="#[hash]#">
- <input type="hidden" name="messagesize" value="#[messagesize]#">
- <input type="hidden" name="attachmentsize" value="#[attachmentsize]#">
- <input name="new" type="submit" value="Enter">
- </form>
- ::
- <!-- peer cannot respond -->
- <p>You cannot send a message to <b>#[peerName]#</b>.<br>
- The peer is alive but cannot respond. Sorry.
- </p>
- #(/permission)#
-
-::
-<!-- =========================== send message =========================== -->
- #(status)#
- <!-- Message send successfully -->
-
- <p>Your message has been sent. The target peer responded:</p>
- <p><tt class="MessageBackground">#[response]#</tt></p>
-
- :: <!-- Message could not be send -->
-
- <p>The target peer is alive but did not receive your message. Sorry.</p>
- <p>
- Here is a copy of your message, so you can copy it to save it for further attempts:<br>
- <tt class="MessageBackground">#[message]#</tt>
- </p>
- #(/status)#
-
-::
-<!-- illegal usage of this page -->
- <p>You cannot call this page directly. Instead, use a link on the <a href="Network.html">Network</a> page.</p>
-#(/mode)#
-
-<!--
-#[body]#
--->
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Send message</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="MessageSend">
+ #%env/templates/header.template%#
+ <h2>Send message</h2>
+ #(mode)#
+ <!-- =========================== write message =========================== -->
+ #(permission)#
+ <!-- we have no permission to send the message -->
+ <p>You cannot send a message to <strong>#[peerName]#</strong>.<br />
+ The peer does not respond. It was now removed from the peer-list.
+ </p>
+ ::
+ <!-- we have the permission to send the message -->
+ <p>The peer <b>#[peerName]#</b> is alive and responded:</p>
+ <p><tt class="MessageBackground">#[response]#
+ You are allowed to send me a message &le; #[messagesize]# kb and an
+ attachment &le; #[attachmentsize]#.</tt>
+ </p>
+
+ <form action="MessageSend_p.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <legend>Your Message</legend>
+ <dl>
+ <dt>
+ <label for="subject">Subject:</label>
+ </dt>
+ <dd>
+ <input name="subject" id="subject" type="text" size="80" maxlength="80" value="#[subject]#" />
+ </dd>
+ <dt>
+ <label for="message">Text:</label>
+ </dt>
+ <dd>
+ <textarea name="message" id="message" cols="80" rows="8">#[message]#</textarea>
+ <p class="help">
+ You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.
+ </p>
+ </dd>
+ </dl>
+ <input type="hidden" name="hash" value="#[hash]#" />
+ <input type="hidden" name="messagesize" value="#[messagesize]#" />
+ <input type="hidden" name="attachmentsize" value="#[attachmentsize]#" />
+ <input name="new" type="submit" value="Enter" />
+ </fieldset>
+ </form>
+ ::
+ <!-- peer cannot respond -->
+ <p>
+ You cannot send a message to <strong>#[peerName]#</strong>.<br />
+ The peer is alive but cannot respond. Sorry.
+ </p>
+ #(/permission)#
+ ::
+ <!-- =========================== send message =========================== -->
+ #(status)#
+ <!-- Message send successfully -->
+
+ <p>Your message has been sent. The target peer responded:</p>
+ <p class="Message"><tt>#[response]#</tt></p>
+
+ :: <!-- Message could not be send -->
+
+ <p>The target peer is alive but did not receive your message. Sorry.</p>
+ <p>
+ Here is a copy of your message, so you can copy it to save it for further attempts:
+ </p>
+ <p class="Message">
+ <tt>#[message]#</tt>
+ </p>
+ #(/status)#
+
+ ::
+ <!-- illegal usage of this page -->
+ <p>You cannot call this page directly. Instead, use a link on the <a href="Network.html">Network</a> page.</p>
+ #(/mode)#
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Messages_p.html b/htroot/Messages_p.html
index eb83efa78..d2f343cf3 100644
--- a/htroot/Messages_p.html
+++ b/htroot/Messages_p.html
@@ -1,96 +1,85 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Messages</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Messages</h2><br>
-
-<p>
-#(mode)#
-<!-- List -->
-<table border="0" cellpadding="2" cellspacing="1">
- <tr class="MenuHeader">
- <td>Date</td>
- <td>From</td>
- <td>To</td>
- <td>Subject</td>
- <td>Action</td>
- </tr>
-#{messages}#
- <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
- <td>#[date]#</td>
- <td><a href="ViewProfile.html?hash=#[hash]#" title="View profile of peer #[from]#">#[from]#</a></td>
- <td>#[to]#</td>
- <td>#[subject]#</td>
- <td>
- <a href="Messages_p.html?action=view&object=#[key]#">view</a>
- &nbsp;/&nbsp;
- <a href="MessageSend_p.html?hash=#[hash]#&subject=Re: #[subject]#">reply</a>
- &nbsp;/&nbsp;
- <a href="Messages_p.html?action=delete&object=#[key]#">delete</a>
- </td>
- </tr>
-#{/messages}#
-#(error)#::I/O error reading message table: #[message]##(/error)#
-::
-<!-- View -->
-<table border="0" cellpadding="2" cellspacing="1">
- <tr>
- <td class="MenuHeader">
- From:
- </td>
- <td class="MessageBackground">
- <a href="ViewProfile.html?hash=#[hash]#" title="View profile of peer #[from]#">#[from]#</a>
- </td>
- </tr>
- <tr>
- <td class="MenuHeader">
- To:
- </td>
- <td class="MessageBackground">
- #[to]#
- </td>
- </tr>
- <tr>
- <td class="MenuHeader">
- Date:
- </td>
- <td class="MessageBackground">
- #[date]#
- </td>
- </tr>
- <tr>
- <td class="MenuHeader">
- Subject:
- </td>
- <td class="MessageBackground">
- #[subject]#
- </td>
- </tr>
-
- <tr>
- <td class="MessageBackground" colspan="2">
- #[message]#
- </td>
- </tr>
- <tr>
- <td class="MenuHeader">Action:</td>
- <td class="MessageBackground">
- <a href="Messages_p.html">inbox</a>
- &nbsp;/&nbsp;
- <a href="MessageSend_p.html?hash=#[hash]#&subject=Re: #[subject]#">reply</a>
- &nbsp;/&nbsp;
- <a href="Messages_p.html?action=delete&object=#[key]#">delete</a>
- </td>
- </tr>
-</table>
-#(/mode)#
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Messages</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="Messages">
+ #%env/templates/header.template%#
+ <h2>Messages</h2>
+ #(mode)#
+ <!-- List -->
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td>Date</td>
+ <td>From</td>
+ <td>To</td>
+ <td>Subject</td>
+ <td>Action</td>
+ </tr>
+ #{messages}#
+ <tr class="TableCell#(dark)#Light::Dark#(/dark)#">
+ <td>#[date]#</td>
+ <td><a href="ViewProfile.html?hash=#[hash]#&amp;display=1" title="View profile of peer #[from]#">#[from]#</a></td>
+ <td>#[to]#</td>
+ <td>#[subject]#</td>
+ <td>
+ <a href="Messages_p.html?action=view&amp;object=#[key]#">view</a>
+ &nbsp;/&nbsp;
+ <a href="MessageSend_p.html?hash=#[hash]#&amp;subject=Re: #[subject]#">reply</a>
+ &nbsp;/&nbsp;
+ <a href="Messages_p.html?action=delete&amp;object=#[key]#">delete</a>
+ </td>
+ </tr>
+ #{/messages}#
+ </table>
+ #(error)#::<p class="error">I/O error reading message table: #[message]#</p>#(/error)#
+ ::
+ <!-- View -->
+ <dl class="pairs">
+ <dt>
+ From:
+ </dt>
+ <dd>
+ <a href="ViewProfile.html?hash=#[hash]#&amp;display=1" title="View profile of peer #[from]#">#[from]#</a>
+ </dd>
+ <dt>
+ To:
+ </dt>
+ <dd>
+ #[to]#
+ </dd>
+ <dt>
+ Date:
+ </dt>
+ <dd>
+ #[date]#
+ </dd>
+ <dt>
+ Subject:
+ </dt>
+ <dd>
+ #[subject]#
+ </dd>
+ <dt>
+ Message:
+ </dt>
+ <dd>
+ #[message]#
+ </dd>
+ <dt>
+ Action:
+ </dt>
+ <dd>
+ <a href="Messages_p.html">inbox</a>
+ &nbsp;/&nbsp;
+ <a href="MessageSend_p.html?hash=#[hash]#&amp;subject=Re: #[subject]#">reply</a>
+ &nbsp;/&nbsp;
+ <a href="Messages_p.html?action=delete&amp;object=#[key]#">delete</a>
+ </dd>
+ </dl>
+ #(/mode)#
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Network.html b/htroot/Network.html
index 090d37a5b..91597426f 100644
--- a/htroot/Network.html
+++ b/htroot/Network.html
@@ -1,270 +1,272 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Network Overview</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="7" class="MenuHeader">&nbsp;Network Menu</td></tr>
-<tr height="2"><td colspan="7"></td></tr>
-<tr class="TableHeader">
-<td width="25%" class="MenuSubItem">&nbsp;&nbsp;<a href="/Network.html" class="MenuItemLink">Network&nbsp;Overview</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;&nbsp;<a href="/Network.html?page=1" class="MenuItemLink">Active&nbsp;Peers</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;&nbsp;<a href="/Network.html?page=2" class="MenuItemLink">Passive&nbsp;Peers</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;&nbsp;<a href="/Network.html?page=3" class="MenuItemLink">Potential&nbsp;Peers</a>&nbsp;</td>
-</tr>
-</table>
-<br>
-#(page)#
-<h2>Network Overview</h2>
-::
-<h2>Active Peers</h2>
-::
-<h2>Passive Peers</h2>
-::
-<h2>Potential Peers</h2>
-::
-<h2>Manually contacting Peer</h2>
-#(/page)#
-<p>
-#(table)#
-<p>no remote #[peertype]# peer for this list known</p>
-::
-<p>Showing #[num]# entries from a total of #[total]# peers.<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">send&nbsp;<b>M</b>essage/<br>show&nbsp;<b>P</b>rofile/<br>edit&nbsp;<b>W</b>iki<br>&nbsp;</td>
-<td class="small"><b>Name</b><br>&nbsp;</td>
-<td class="small"><b>Info</b><br>&nbsp;</td>
-<td class="small"><b>Release/<br>SVN</b><br>&nbsp;</td>
-<td class="small"><b>PPM</b><br>&nbsp;</td>
-<td class="small"><b>Last<br>Seen</b><br>&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&sort=LastSeen&order=down">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&sort=LastSeen&order=up">&gt;</a></td>
-<td class="small"><b>UTC</b><br>Offset<br>&nbsp;</td>
-<td class="small"><b>Location</b><br><br>&nbsp;</td>
-<td class="small"><b>Uptime</b><br>&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&sort=Uptime&order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&sort=Uptime&order=down">&gt;</a></td>
-<td class="small"><b>#Links</b><br>&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&sort=LCount&order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&sort=LCount&order=down">&gt;</a></td>
-<td class="small"><b>#RWIs</b><br>&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&sort=ICount&order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&sort=ICount&order=down">&gt;</a></td>
-<td class="small"><b>Sent<br>Words</b><br>&nbsp;</td>
-<td class="small"><b>Sent<br>URLs</b><br>&nbsp;</td>
-<td class="small"><b>Received<br>Words</b><br>&nbsp;</td>
-<td class="small"><b>Received<br>URLs</b><br>&nbsp;</td>
-#(complete)#::
-<td class="small"><b>Address</b><br>&nbsp;</td>
-<td class="small"><b>Hash</b><br>&nbsp;</td>
-<td class="small"><b>#CR-<br>Files</b><br>Own/Other</td>
-<td class="small"><b>Age</b><br>&nbsp;</td>
-<td class="small"><b>#Seeds</b><br>&nbsp;</td>
-<td class="small"><b>con/h<br></b><br>&nbsp;</td>
-<td class="small"><b>user agent<br></b><br>&nbsp;</td>
-<td class="small"><b>Peer<br>Ping</b><br>&nbsp;</td>
-#(/complete)#
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#">
-<td class="small">
- <a href="MessageSend_p.html?hash=#[hash]#" class="small" title="Send message to peer #[fullname]#">m</a>&nbsp;&nbsp;
- <a href="ViewProfile.html?hash=#[hash]#" class="small" title="View profile of peer #[fullname]#">p</a>&nbsp;&nbsp;
- <a href="http://#[fullname]#.yacy/Wiki.html" class="small" title="Read and edit wiki on peer #[fullname]#">w</a>&nbsp;&nbsp;
- #(updatedProfile)#::<a href="ViewProfile.html?hash=#[hash]#"><img border="0" src="/env/grafics/profile.gif" align="bottom"></a>#(/updatedProfile)#
- #(updatedWiki)#::<a href="http://#[address]#/Wiki.html?page=#[page]#" title="#[page]#"><img border="0" src="/env/grafics/wiki.gif" align="bottom"></a>#(/updatedWiki)#
- #(updatedBlog)#::<a href="http://#[address]#/Blog.html?page=#[page]#" title="#[subject]#"><img border="0" src="/env/grafics/blog.gif" align="bottom"></a>#(/updatedBlog)#
- #(isCrawling)#::<a href="#[page]#"><img border="0" src="/env/grafics/crawl.gif" align="bottom"></a>#(/isCrawling)#
-</td>
-<td class="small"><a href="http://www.#[fullname]#.yacy" class="small">#[shortname]#</a></td>
-<td class="small">
-#(type)##(direct)#<img border="0" src="/env/grafics/JuniorPassive.gif" title="Type: Junior | Contact: passive"></img>::<img border="0" src="/env/grafics/JuniorDirect.gif" title="Type: Junior | Contact: direct"></img>::<img border="0" src="/env/grafics/JuniorOffline.gif" title="Type: Junior | Contact: offline"></img>#(/direct)#::#(direct)#<img border="0" src="/env/grafics/SeniorPassive.gif" title="Type: Senior | Contact: passive"></img>::<img border="0" src="/env/grafics/SeniorDirect.gif" title="Type: Senior | Contact: direct"></img>::<img border="0" src="/env/grafics/SeniorOffline.gif" title="Type: Senior | Contact: offline"></img>#(/direct)#::<a href="#[url]#">#(direct)#<img border="0" src="/env/grafics/PrincipalPassive.gif" title="Type: Principal | Contact: passive | Seed download: possible"></img>::<img border="0" src="/env/grafics/PrincipalDirect.gif" title="Type: Principal | Contact: direct | Seed download: possible"></img>::<img border="0" src="/env/grafics/PrincipalOffline.gif" title="Type: Principal | Contact: offline | Seed download: ?"></img>#(/direct)#</a>#(/type)##(acceptcrawl)#<img border="0" src="/env/grafics/CrawlNo.gif" title="Accept Crawl: no"></img>::<img border="0" src="/env/grafics/CrawlYes.gif" title="Accept Crawl: yes"></img>::<img border="0" src="/env/grafics/CrawlYesOffline.gif" title="Accept Crawl: yes"></img>#(/acceptcrawl)##(dhtreceive)#<img border="0" src="/env/grafics/DHTReceiveNo.gif" title="DHT Receive: no"></img>::<img border="0" src="/env/grafics/DHTReceiveYes.gif" title="DHT Receive: yes"></img>::<img border="0" src="/env/grafics/DHTReceiveYesOffline.gif" title="DHT Receive: yes"></img>#(/dhtreceive)##(rankingreceive)#<img border="0" src="/env/grafics/RankingReceiveNo.gif" title="Ranking Receive: no"></img>::<img border="0" src="/env/grafics/RankingReceiveYes.gif" title="Ranking Receive: yes"></img>::<img border="0" src="/env/grafics/RankingCollects.gif" title="Ranking Receive: collection"></img>#(/rankingreceive)#</td>
-<td class="small" align="right">#[version]#</td>
-<td class="small" align="right">#[ppm]#</td>
-<td class="small" align="right">#[lastSeen]#</td>
-<td class="small" align="right">#[utc]#</td>
-<td class="small" align="right">#[location]#</td>
-<td class="small" align="right"><NOBR>#[uptime]#</NOBR></td>
-<td class="small" align="right">#[links]#</td>
-<td class="small" align="right">#[words]#</td>
-<td class="small" align="right">#[sI]#</td>
-<td class="small" align="right">#[sU]#</td>
-<td class="small" align="right">#[rI]#</td>
-<td class="small" align="right">#[rU]#</td>
-#(complete)#
-::
-<td class="small"><a href="http://#[ip]#:#[port]#/Network.html?page=1&ip=" class="small">http://#[ip]#:#[port]#</a></td>
-<td class=small>#[hash]#</td>
-<td class="small" align="center">#[CRWCnt]#/#[CRTCnt]#</td>
-<td class=small>#[age]#</td>
-<td class="small" align="right">#[seeds]#</td>
-<td class="small" align="right">#[connects]#</td>
-<td class="small" align="right">#[userAgent]#</td>
-<td class="small" align="right">[<a href="Network.html?page=4&peerHash=#[hash]#&peerIP=#[ip]#&peerPort=#[port]#&addPeer=add+Peer">Ping</a>]</td>
-#(/complete)#
-</tr>
-#{/list}#
-<tr><td colspan="16" align="left"><p><font size="-3"><i>runtime: #[rt]# ms</i></font></p></td></tr>
-</table>
-</p>
-#(progressbar)#::
-Progress towards the next peer: #[percent]#%.<br />
- At current PPM you will reach him #(timemessage)#in an unknown time::in #[time]#::never, because he is faster than you#(/timemessage)#.<br />
-<!--#{percent}#<img src="/env/grafics/green-block.png">#{/percent}##{percent2}#<img src="/env/grafics/red-block.png">#{/percent2}#-->
-<div height="20" style="border-style:solid; border-width:1px; border-color:#CAD5E3">
- <img src="env/grafics/green_bar.gif" width="#[percent]#%" height="20" alt=""><img src="env/grafics/red_bar.png" width="#[percent2]#%" height="20" alt="">
-</div>
-#(/progressbar)#
-::
-<p><font size="1">All Peers:<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<td class="small">Branch</td>
-<td class="small">#Peers</td>
-<td class="small">#All Links</td>
-<td class="small">#All Words</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">Active (connected Senior and Principal)</td>
-<td class="small" align="right">#[active-count]#</td>
-<td class="small" align="right">#[active-links]#</td>
-<td class="small" align="right">#[active-words]#</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">Passive (disconnected Senior and Principal)</td>
-<td class="small" align="right">#[passive-count]#</td>
-<td class="small" align="right">#[passive-links]#</td>
-<td class="small" align="right">#[passive-words]#</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">Potential (Junior)</td>
-<td class="small" align="right">#[potential-count]#</td>
-<td class="small" align="right">#[potential-links]#</td>
-<td class="small" align="right">#[potential-words]#</td>
-</tr>
-<tr class="TableCellSummary">
-<td class="small" align="left">Network Total</td>
-<td class="small" align="right">#[all-count]#</td>
-<td class="small" align="right">#[all-links]#</td>
-<td class="small" align="right">#[all-words]#</td>
-</tr>
-</table>
-</p>
-<p>
-YaCy Cluster Indexing Speed: #[gppm]# Pages Per Minute (Accumulated PPM over Active Peers).
-</p>
-<p>Your Peer:<br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader">
-<td class="small">Name</td>
-<td class="small">Info</td>
-<td class="small">Version</td>
-<td class="small">UTC</td>
-<td class="small">Uptime</td>
-<td class="small">#Links</td>
-<td class="small">#RWIs</td>
-<td class="small">Sent<br>Words</td>
-<td class="small">Sent<br>URLs</td>
-<td class="small">Received<br>Words</td>
-<td class="small">Received<br>URLs</td>
-<td class="small">PPM</td>
-<td class="small">total PPM</td>
-<td class="small">#Seeds</td>
-<td class="small">#Connects<br>per hour</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small">#[my-name]#</td>
-<td class="small">#(my-info)#<img border="0" src="/env/grafics/Virgin.gif" title="Type: Virgin"></img>::<img border="0" src="/env/grafics/JuniorDirect.gif" title="Type: Junior"></img>::<img border="0" src="/env/grafics/SeniorDirect.gif" title="Type: Senior"></img>::<img border="0" src="/env/grafics/PrincipalDirect.gif" title="Type: Principal"></img>#(/my-info)##(my-acceptcrawl)#<img border="0" src="/env/grafics/CrawlNo.gif" title="Accept Crawl: no"></img>::<img border="0" src="/env/grafics/CrawlYes.gif" title="Accept Crawl: yes"></img>#(/my-acceptcrawl)##(my-dhtreceive)#<img border="0" src="/env/grafics/DHTReceiveNo.gif" title="DHT Receive: no"></img>::<img border="0" src="/env/grafics/DHTReceiveYes.gif" title="DHT Receive: yes"></img>#(/my-dhtreceive)##(my-rankingreceive)#<img border="0" src="/env/grafics/RankingReceiveNo.gif" title="Ranking Receive: no"></img>::<img border="0" src="/env/grafics/RankingReceiveYes.gif" title="Ranking Receive: yes"></img>#(/my-rankingreceive)#</td>
-<td class="small" align="right">#[my-version]#</td>
-<td class="small" align="right">#[my-utc]#</td>
-<td class="small" align="right">#[my-uptime]#</td>
-<td class="small" align="right">#[my-links]#</td>
-<td class="small" align="right">#[my-words]#</td>
-<td class="small" align="right">#[my-sI]#</td>
-<td class="small" align="right">#[my-sU]#</td>
-<td class="small" align="right">#[my-rI]#</td>
-<td class="small" align="right">#[my-rU]#</td>
-<td class="small" align="right">#[my-ppm]#</td>
-<td class="small" align="right">#[my-totalppm]#</td>
-<td class="small" align="right">#[my-seeds]#</td>
-<td class="small" align="right">#[my-connects]#</td>
-</tr>
-</table>
-</p>
-<p><a href="NetworkPicture.png?width=800&height=600"><img src="NetworkPicture.png"></a></p>
-<p>
-<table border="0">
- <tr>
- <td>&nbsp;</td>
- <td class="small"><u>Network legend:</u></td>
- <td></td>
- <td></td>
- </tr>
- <tr>
- <td bgcolor="#000000">&nbsp;</td>
- <td class="small">dark font</td>
- <td class="small">:</td>
- <td class="small">senior/principal peers</td>
- </tr>
- <tr>
- <td bgcolor="#E7B7AF">&nbsp;</td>
- <td class="small">lightred font</td>
- <td class="small">:</td>
- <td class="small">passiv peers (< 5 hour passiv time)</td>
- </tr>
- <tr>
- <td bgcolor="#A7A75F">&nbsp;</td>
- <td class="small">turquoise font</td>
- <td class="small">:</td>
- <td class="small">junior peers</td>
- </tr>
- <tr>
- <td bgcolor="#C1A77F">&nbsp;</td>
- <td class="small">red point</td>
- <td class="small">:</td>
- <td class="small">this peer</td>
- </tr>
-</table>
-</p>
-<p>
-#(comment)#
-::
-You are in online mode, but probably no internet resource is available. Please check your internet connection.
-::
-You are either not in online mode or you do not use the proxy option.
-To get connection to the YaCy network, you must use the proxy by setting your browser's settings
-('on-demand - mode', see <a href="http://www.yacy.net/yacy/Installation.html#wininst">here</a>
-for an installation guide) or you can go online by activating the permanent online mode.
-To do this, press this button:
-<form action="SettingsAck_p.html" method="get">
-<input type="submit" name="pmode" value="go online">
-</form>
-#(/comment)#
-</p></font>
-::
-<p>
-#(comment)#
-::
-<font color="red"><code>#[status]#</code></font>
-::
-<font color="green"><code>#[status]#</code></font>
-</p>
-<p>
-<font color="green"><code><small>#[details]#</small></code></font>
-</p>
-#(/comment)#
-</p>
-
-<form action="Network.html" method="get">
-<input name="page" type="hidden" value="4">
-<table>
-<tr><td>Peer Hash</td><td><input name="peerHash" type="text" size="32" maxlength="128" value="#[peerHash]#"></td></tr>
-<tr><td>Peer IP</td><td><input name="peerIP" type="text" size="32" maxlength="128" value="#[peerIP]#"></td></tr>
-<tr><td>Peer Port</td><td><input name="peerPort" type="text" size="32" maxlength="128" value="#[peerPort]#"></td></tr>
-<tr><td>&nbsp;</td><td><input type="submit" name="addPeer" value="add Peer"></td></tr>
-</table>
-</form>
-#(/table)#
-#%env/templates/footer.template%#
-
-</body>
+<!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]#': Network Overview</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="Network">
+ #%env/templates/header.template%#
+ <div class="SubMenu">
+ <h3>Network Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/Network.html" class="MenuItemLink">Network&nbsp;Overview</a></li>
+ <li><a href="/Network.html?page=1" class="MenuItemLink">Active&nbsp;Peers</a></li>
+ <li><a href="/Network.html?page=2" class="MenuItemLink">Passive&nbsp;Peers</a></li>
+ <li><a href="/Network.html?page=3" class="MenuItemLink">Potential&nbsp;Peers</a></li>
+ </ul>
+ </div>
+ #(page)#
+ <h2>Network Overview</h2>
+ ::
+ <h2>Active Peers</h2>
+ ::
+ <h2>Passive Peers</h2>
+ ::
+ <h2>Potential Peers</h2>
+ ::
+ <h2>Manually contacting Peer</h2>
+ #(/page)#
+ #(table)#
+ <p>no remote #[peertype]# peer for this list known</p>
+ ::
+ <p>Showing #[num]# entries from a total of #[total]# peers.</p>
+ <table class="networkTable" border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>send&nbsp;<strong>M</strong>essage/<br />show&nbsp;<strong>P</strong>rofile/<br />edit&nbsp;<strong>W</strong>iki<br />&nbsp;</td>
+ <td><strong>Name</strong><br />&nbsp;</td>
+ <td><strong>Info</strong><br />&nbsp;</td>
+ <td><strong>Release/<br />SVN</strong><br />&nbsp;</td>
+ <td><strong>PPM</strong><br />&nbsp;</td>
+ <td><strong>Last<br />Seen</strong><br />&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=LastSeen&amp;order=down">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=LastSeen&amp;order=up">&gt;</a></td>
+ <td><strong>UTC</strong><br />Offset<br />&nbsp;</td>
+ <td><strong>Location</strong><br /><br />&nbsp;</td>
+ <td><strong>Uptime</strong><br />&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=Uptime&amp;order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=Uptime&amp;order=down">&gt;</a></td>
+ <td><strong>#Links</strong><br />&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=LCount&amp;order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=LCount&amp;order=down">&gt;</a></td>
+ <td><strong>#RWIs</strong><br />&nbsp;&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=ICount&amp;order=up">&lt;</a>&nbsp;<a href="/Network.html?page=#[page]#&amp;sort=ICount&amp;order=down">&gt;</a></td>
+ <td><strong>Sent<br />Words</strong><br />&nbsp;</td>
+ <td><strong>Sent<br />URLs</strong><br />&nbsp;</td>
+ <td><strong>Received<br />Words</strong><br />&nbsp;</td>
+ <td><strong>Received<br />URLs</strong><br />&nbsp;</td>
+ #(complete)#::
+ <td><strong>Address</strong><br />&nbsp;</td>
+ <td><strong>Hash</strong><br />&nbsp;</td>
+ <td><strong>#CR-<br />Files</strong><br />Own/Other</td>
+ <td><strong>Age</strong><br />&nbsp;</td>
+ <td><strong>#Seeds</strong><br />&nbsp;</td>
+ <td><strong>con/h<br /></strong><br />&nbsp;</td>
+ <td><strong>user agent<br /></strong><br />&nbsp;</td>
+ <td><strong>Peer<br />Ping</strong><br />&nbsp;</td>
+ #(/complete)#
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#">
+ <td>
+ <a href="MessageSend_p.html?hash=#[hash]#" title="Send message to peer #[fullname]#">m</a>&nbsp;
+ <a href="ViewProfile.html?hash=#[hash]#&amp;display=1" title="View profile of peer #[fullname]#">p</a>&nbsp;
+ <a href="http://#[fullname]#.yacy/Wiki.html" title="Read and edit wiki on peer #[fullname]#">w</a>&nbsp;
+ #(updatedProfile)#::<a href="ViewProfile.html?hash=#[hash]#&amp;display=1"><img src="/env/grafics/profile.gif" alt="Profile updated" /></a>#(/updatedProfile)#
+ #(updatedWiki)#::<a href="http://#[address]#/Wiki.html?page=#[page]#" title="#[page]#"><img src="/env/grafics/wiki.gif" alt="Wiki updated" /></a>#(/updatedWiki)#
+ #(updatedBlog)#::<a href="http://#[address]#/Blog.html?page=#[page]#" title="#[subject]#"><img src="/env/grafics/blog.gif" alt="Blog updated" /></a>#(/updatedBlog)#
+ #(isCrawling)#::<a href="#[page]#"><img src="/env/grafics/crawl.gif" alt="Crawl" /></a>#(/isCrawling)#
+ </td>
+ <td><a href="http://www.#[fullname]#.yacy">#[shortname]#</a></td>
+ <td>#(type)##(direct)#<img src="/env/grafics/JuniorPassive.gif" title="Type: Junior | Contact: passive" alt="Junior passive" />::<img src="/env/grafics/JuniorDirect.gif" title="Type: Junior | Contact: direct" alt="Junior direct" /></img>::<img src="/env/grafics/JuniorOffline.gif" title="Type: Junior | Contact: offline" alt="Junior offline" />#(/direct)#::#(direct)#<img src="/env/grafics/SeniorPassive.gif" title="Type: Senior | Contact: passive" alt="senior passive" />::<img src="/env/grafics/SeniorDirect.gif" title="Type: Senior | Contact: direct" alt="Senior direct" />::<img src="/env/grafics/SeniorOffline.gif" title="Type: Senior | Contact: offline" alt="Senior offline" />#(/direct)#::<a href="#[url]#">#(direct)#<img src="/env/grafics/PrincipalPassive.gif" title="Type: Principal | Contact: passive | Seed download: possible" alt="Principal passive" />::<img src="/env/grafics/PrincipalDirect.gif" title="Type: Principal | Contact: direct | Seed download: possible" alt="Principal active" />::<img src="/env/grafics/PrincipalOffline.gif" title="Type: Principal | Contact: offline | Seed download: ?" alt="Principal offline" />#(/direct)#</a>#(/type)##(acceptcrawl)#<img src="/env/grafics/CrawlNo.gif" title="Accept Crawl: no" alt="no crawl" />::<img src="/env/grafics/CrawlYes.gif" title="Accept Crawl: yes" alt="crawl possible" />::<img src="/env/grafics/CrawlYesOffline.gif" title="Accept Crawl: yes" alt="crawl possible" />#(/acceptcrawl)##(dhtreceive)#<img src="/env/grafics/DHTReceiveNo.gif" title="DHT Receive: no" alt="no DHT receive" />::<img src="/env/grafics/DHTReceiveYes.gif" title="DHT Receive: yes" alt="DHT receive enabled" />::<img src="/env/grafics/DHTReceiveYesOffline.gif" title="DHT Receive: yes" alt="DHT receive enabled" />#(/dhtreceive)##(rankingreceive)#<img src="/env/grafics/RankingReceiveNo.gif" title="Ranking Receive: no" alt="no ranking receive" />::<img src="/env/grafics/RankingReceiveYes.gif" title="Ranking Receive: yes" alt="Ranking receive enabled" />::<img src="/env/grafics/RankingCollects.gif" title="Ranking Receive: collection" alt="ranking collects" />#(/rankingreceive)#</td>
+ <td align="right">#[version]#</td>
+ <td align="right">#[ppm]#</td>
+ <td align="right">#[lastSeen]#</td>
+ <td align="right">#[utc]#</td>
+ <td align="right">#[location]#</td>
+ <td align="right">#[uptime]#</td>
+ <td align="right">#[links]#</td>
+ <td align="right">#[words]#</td>
+ <td align="right">#[sI]#</td>
+ <td align="right">#[sU]#</td>
+ <td align="right">#[rI]#</td>
+ <td align="right">#[rU]#</td>
+ #(complete)#
+ ::
+ <td><a href="http://#[ip]#:#[port]#/Network.html?page=1&amp;ip=">http://#[ip]#:#[port]#</a></td>
+ <td >#[hash]#</td>
+ <td align="center">#[CRWCnt]#/#[CRTCnt]#</td>
+ <td >#[age]#</td>
+ <td align="right">#[seeds]#</td>
+ <td align="right">#[connects]#</td>
+ <td align="right">#[userAgent]#</td>
+ <td align="right">[<a href="Network.html?page=4&amp;peerHash=#[hash]#&amp;peerIP=#[ip]#&amp;peerPort=#[port]#&amp;addPeer=add+Peer">Ping</a>]</td>
+ #(/complete)#
+ </tr>
+ #{/list}#
+ </table>
+ <p>
+ <em>runtime: #[rt]# ms</em>
+ </p>
+ #(progressbar)#::
+ Progress towards the next peer: #[percent]#%.<br />
+ At current PPM you will reach him #(timemessage)#in an unknown time::in #[time]#::never, because he is faster than you#(/timemessage)#.<br />
+ <!--#{percent}#<img src="/env/grafics/green-block.png">#{/percent}##{percent2}#<img src="/env/grafics/red-block.png">#{/percent2}#-->
+ <div style="height:20px; border:1px solid #CAD5E3">
+ <img src="env/grafics/green_bar.gif" width="#[percent]#%" height="20" alt="" /><img src="env/grafics/red_bar.png" width="#[percent2]#%" height="20" alt="" />
+ </div>
+ #(/progressbar)#
+ ::
+ <p>All Peers:</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td>Branch</td>
+ <td>#Peers</td>
+ <td>#All Links</td>
+ <td>#All Words</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">Active (connected Senior and Principal)</td>
+ <td align="right">#[active-count]#</td>
+ <td align="right">#[active-links]#</td>
+ <td align="right">#[active-words]#</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">Passive (disconnected Senior and Principal)</td>
+ <td align="right">#[passive-count]#</td>
+ <td align="right">#[passive-links]#</td>
+ <td align="right">#[passive-words]#</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">Potential (Junior)</td>
+ <td align="right">#[potential-count]#</td>
+ <td align="right">#[potential-links]#</td>
+ <td align="right">#[potential-words]#</td>
+ </tr>
+ <tr class="TableCellSummary">
+ <td align="left">Network Total</td>
+ <td align="right">#[all-count]#</td>
+ <td align="right">#[all-links]#</td>
+ <td align="right">#[all-words]#</td>
+ </tr>
+ </table>
+ <p>
+ YaCy Cluster Indexing Speed: #[gppm]# Pages Per Minute (Accumulated PPM over Active Peers).
+ </p>
+ <p>Your Peer:</p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader">
+ <td>Name</td>
+ <td>Info</td>
+ <td>Version</td>
+ <td>UTC</td>
+ <td>Uptime</td>
+ <td>#Links</td>
+ <td>#RWIs</td>
+ <td>Sent<br />Words</td>
+ <td>Sent<br />URLs</td>
+ <td>Received<br />Words</td>
+ <td>Received<br />URLs</td>
+ <td>PPM</td>
+ <td>total PPM</td>
+ <td>#Seeds</td>
+ <td>#Connects<br />per hour</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>#[my-name]#</td>
+ <td>#(my-info)#<img src="/env/grafics/Virgin.gif" title="Type: Virgin" alt="Virgin" />::<img src="/env/grafics/JuniorDirect.gif" title="Type: Junior" alt="Junior" />::<img src="/env/grafics/SeniorDirect.gif" title="Type: Senior" alt="Senior" />::<img src="/env/grafics/PrincipalDirect.gif" title="Type: Principal" alt="Principal" />#(/my-info)##(my-acceptcrawl)#<img src="/env/grafics/CrawlNo.gif" title="Accept Crawl: no" alt="no crawl" />::<img src="/env/grafics/CrawlYes.gif" title="Accept Crawl: yes" alt="Crawl enabled" />#(/my-acceptcrawl)##(my-dhtreceive)#<img src="/env/grafics/DHTReceiveNo.gif" title="DHT Receive: no" alt="no DHT receive" />::<img src="/env/grafics/DHTReceiveYes.gif" title="DHT Receive: yes" alt="DHT Receive enabled" />#(/my-dhtreceive)##(my-rankingreceive)#<img src="/env/grafics/RankingReceiveNo.gif" title="Ranking Receive: no" alt="no ranking receive" />::<img src="/env/grafics/RankingReceiveYes.gif" title="Ranking Receive: yes" alt="Ranking receive enabled" />#(/my-rankingreceive)#</td>
+ <td align="right">#[my-version]#</td>
+ <td align="right">#[my-utc]#</td>
+ <td align="right">#[my-uptime]#</td>
+ <td align="right">#[my-links]#</td>
+ <td align="right">#[my-words]#</td>
+ <td align="right">#[my-sI]#</td>
+ <td align="right">#[my-sU]#</td>
+ <td align="right">#[my-rI]#</td>
+ <td align="right">#[my-rU]#</td>
+ <td align="right">#[my-ppm]#</td>
+ <td align="right">#[my-totalppm]#</td>
+ <td align="right">#[my-seeds]#</td>
+ <td align="right">#[my-connects]#</td>
+ </tr>
+ </table>
+ <p><a href="NetworkPicture.png?width=800&amp;height=600"><img src="NetworkPicture.png" alt="The yacy Network" /></a></p>
+ <table border="0">
+ <tr>
+ <td>&nbsp;</td>
+ <td><strong>Network legend:</strong></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td style="background-color:#000000">&nbsp;</td>
+ <td>dark font</td>
+ <td>:</td>
+ <td>senior/principal peers</td>
+ </tr>
+ <tr>
+ <td style="background-color:#E7B7AF">&nbsp;</td>
+ <td>lightred font</td>
+ <td>:</td>
+ <td>passiv peers ( &lt; 5 hour passiv time)</td>
+ </tr>
+ <tr>
+ <td style="background-color:#A7A75F">&nbsp;</td>
+ <td>turquoise font</td>
+ <td>:</td>
+ <td>junior peers</td>
+ </tr>
+ <tr>
+ <td style="background-color:#C1A77F">&nbsp;</td>
+ <td>red point</td>
+ <td>:</td>
+ <td>this peer</td>
+ </tr>
+ </table>
+
+ #(comment)#
+ ::
+ <p>You are in online mode, but probably no internet resource is available. Please check your internet connection.</p>
+ ::
+ <p>You are either not in online mode or you do not use the proxy option.
+ To get connection to the YaCy network, you must use the proxy by setting your browser's settings
+ ('on-demand - mode', see <a href="http://www.yacy.net/yacy/Installation.html#wininst">here</a>
+ for an installation guide) or you can go online by activating the permanent online mode.
+ To do this, press this button:</p>
+ <form action="SettingsAck_p.html" method="get">
+ <fieldset>
+ <input type="submit" name="pmode" value="go online" />
+ </fieldset>
+ </form>
+ #(/comment)#
+ ::
+ #(comment)#
+ ::
+ <p style="color:red;">
+ <code>#[status]#</code>
+ </p>
+ ::
+ <p style="color:green">
+ <code>#[status]#</code>
+ </p>
+ <p style="color:green;">
+ <code>[details]#</code>
+ </p>
+ #(/comment)#
+
+ <form action="Network.html" method="get">
+ <table>
+ <tr>
+ <td>Peer Hash</td>
+ <td><input name="peerHash" type="text" size="32" maxlength="128" value="#[peerHash]#" /></td>
+ </tr>
+ <tr>
+ <td>Peer IP</td>
+ <td><input name="peerIP" type="text" size="32" maxlength="128" value="#[peerIP]#" /></td>
+ </tr>
+ <tr>
+ <td>Peer Port</td>
+ <td><input name="peerPort" type="text" size="32" maxlength="128" value="#[peerPort]#" /></td>
+ </tr>
+ <tr>
+ <td>&nbsp;<input name="page" type="hidden" value="4" /></td>
+ <td><input type="submit" name="addPeer" value="add Peer" /></td>
+ </tr>
+ </table>
+ </form>
+ #(/table)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/News.html b/htroot/News.html
index 7cc3f1ff4..f0b9b4c07 100644
--- a/htroot/News.html
+++ b/htroot/News.html
@@ -1,97 +1,104 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': News</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="9" class="MenuHeader">&nbsp;Network Menu</td></tr>
-<tr height="2"><td colspan="9"></td></tr>
-<tr class="TableHeader">
-<td width="20%" class="MenuSubItem">&nbsp;&nbsp;<a href="/News.html" class="MenuItemLink">News&nbsp;Overview</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="20%" class="MenuSubItem">&nbsp;&nbsp;<a href="/News.html?page=1" class="MenuItemLink">Incoming&nbsp;News</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="20%" class="MenuSubItem">&nbsp;&nbsp;<a href="/News.html?page=2" class="MenuItemLink">Processed&nbsp;News</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="20%" class="MenuSubItem">&nbsp;&nbsp;<a href="/News.html?page=3" class="MenuItemLink">Outgoing&nbsp;News</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="20%" class="MenuSubItem">&nbsp;&nbsp;<a href="/News.html?page=4" class="MenuItemLink">Published&nbsp;News</a>&nbsp;</td>
-</tr>
-</table>
-<br>
-#(page)#
-<h2>News Overview</h2>
-::
-<h2>Incoming&nbsp;News</h2>
-::
-<h2>Processed&nbsp;News</h2>
-::
-<h2>Outgoing&nbsp;News</h2>
-::
-<h2>Published&nbsp;News</h2>
-#(/page)#
-<p>
-#(table)#
-<p>
-This is the YaCyNews system (currently under testing).
-</p>
-<p>
-The news service is controlled by several entry points:
-<ul>
-<li>A crawl start with activated remote-indexing will automatically create a news entry.
-Other peers may use this information to prevent double-crawls from the same start point.
-A table with recently started crawls is presented on the Index Create - page</li>
-<li>A change in the personal profile will create a news entry. You can see recently made changes of
-profile entries on the Network page, where that profile change is visualized with a '*' beside the 'P' (profile) - selector.</li>
-</ul><br>
-More news services will follow.</p>
-<p>
-Above you can see four menues:
-<ul>
-<li><b>Incoming News (#[insize]#)</b>: latest news that arrived your peer.
-Only these news will be used to display specific news services as explained above.
-You can process these news with a button on the page to remove their appearance from the IndexCreate and Network page</li>
-<li><b>Processed News (#[prsize]#)</b>: this is simply an archive of incoming news that you removed by processing.</li>
-<li><b>Outgoing News (#[ousize]#)</b>: here your can see news entries that you have created. These news are currently broadcasted to other peers.
-you can stop the broadcast if you want.</li>
-<li><b>Published News (#[pusize]#)</b>: your news that have been broadcasted sufficiently or that you have removed from the broadcast list.</li>
-</ul><br>
-</p>
-::
-<p>
-<form action="News.html" method="post" enctype="multipart/form-data">
-<input type="hidden" name="page" value="#[page]#">
-<input type="submit" name="deletespecific" value="#(page)#::Process Selected News::Delete Selected News::Abort Publication of Selected News::Delete Selected News#(/page)#">
-<input type="submit" name="deleteall" value="#(page)#::Process All News::Delete All News::Abort Publication of All News::Delete All News#(/page)#">
-<br><br>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small"></td>
-<td class="small">Originator</td>
-<td class="small">Created</td>
-<td class="small">Category</td>
-<td class="small">Received</td>
-<td class="small">Distributed</td>
-<td class="small">Attributes</td>
-</tr>
-#{list}#
-<tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#">
-<td class="small" align="left"><input type="checkbox" name="del_#[id]#"></td>
-<td class="small" align="left">#[ori]#</td>
-<td class="small" align="left">#[cre]#</td>
-<td class="small" align="left">#[cat]#</td>
-<td class="small" align="left">#[rec]#</td>
-<td class="small" align="right">#[dis]#</td>
-<td class="small" align="left">#[att]#</td>
-</tr>
-#{/list}#
-</table>
-</form>
-</p>
-#(/table)#
-#%env/templates/footer.template%#
-</body>
+<!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]#': News</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="News">
+ #%env/templates/header.template%#
+ <div class="SubMenu">
+ <h3>Network Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/News.html" class="MenuItemLink">News&nbsp;Overview</a></li>
+ <li><a href="/News.html?page=1" class="MenuItemLink">Incoming&nbsp;News</a></li>
+ <li><a href="/News.html?page=2" class="MenuItemLink">Processed&nbsp;News</a></li>
+ <li><a href="/News.html?page=3" class="MenuItemLink">Outgoing&nbsp;News</a></li>
+ <li><a href="/News.html?page=4" class="MenuItemLink">Published&nbsp;News</a></li>
+ </ul>
+ </div>
+ #(page)#
+ <h2>News Overview</h2>
+ ::
+ <h2>Incoming&nbsp;News</h2>
+ ::
+ <h2>Processed&nbsp;News</h2>
+ ::
+ <h2>Outgoing&nbsp;News</h2>
+ ::
+ <h2>Published&nbsp;News</h2>
+ #(/page)#
+ #(table)#
+ <p>
+ This is the YaCyNews system (currently under testing).
+ </p>
+ <p>
+ The news service is controlled by several entry points:
+ </p>
+ <ul>
+ <li>
+ A crawl start with activated remote indexing will automatically create a news entry.
+ Other peers may use this information to prevent double-crawls from the same start point.
+ A table with recently started crawls is presented on the Index Create - page
+ </li>
+ <li>
+ A change in the personal profile will create a news entry. You can see recently made changes of
+ profile entries on the Network page, where that profile change is visualized with a '*' beside the 'P' (profile) - selector.
+ </li>
+ </ul>
+ <p>
+ More news services will follow.
+ </p>
+ <p>
+ Above you can see four menues:
+ </p>
+ <ul>
+ <li>
+ <strong>Incoming News (#[insize]#)</strong>: latest news that arrived your peer.
+ Only these news will be used to display specific news services as explained above.
+ You can process these news with a button on the page to remove their appearance from the IndexCreate and Network page
+ </li>
+ <li>
+ <strong>Processed News (#[prsize]#)</strong>: this is simply an archive of incoming news that you removed by processing.
+ </li>
+ <li>
+ <strong>Outgoing News (#[ousize]#)</strong>: here your can see news entries that you have created. These news are currently broadcasted to other peers.
+ you can stop the broadcast if you want.
+ </li>
+ <li>
+ <strong>Published News (#[pusize]#)</strong>: your news that have been broadcasted sufficiently or that you have removed from the broadcast list.
+ </li>
+ </ul>
+ ::
+ <form action="News.html" method="post" enctype="multipart/form-data">
+ <fieldset>
+ <input type="hidden" name="page" value="#[page]#" />
+ <input type="submit" name="deletespecific" value="#(page)#::Process Selected News::Delete Selected News::Abort Publication of Selected News::Delete Selected News#(/page)#" />
+ <input type="submit" name="deleteall" value="#(page)#::Process All News::Delete All News::Abort Publication of All News::Delete All News#(/page)#" />
+ </fieldset>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>&nbsp;</td>
+ <td>Originator</td>
+ <td>Created</td>
+ <td>Category</td>
+ <td>Received</td>
+ <td>Distributed</td>
+ <td>Attributes</td>
+ </tr>
+ #{list}#
+ <tr class="TableCell#(dark)#Light::Dark::Summary#(/dark)#">
+ <td align="left"><input type="checkbox" name="del_#[id]#" /></td>
+ <td align="left">#[ori]#</td>
+ <td align="left">#[cre]#</td>
+ <td align="left">#[cat]#</td>
+ <td align="left">#[rec]#</td>
+ <td align="right">#[dis]#</td>
+ <td align="left">#[att]#</td>
+ </tr>
+ #{/list}#
+ </table>
+ </form>
+ #(/table)#
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/PerformanceMemory_p.html b/htroot/PerformanceMemory_p.html
index d645186f9..79f5f7222 100644
--- a/htroot/PerformanceMemory_p.html
+++ b/htroot/PerformanceMemory_p.html
@@ -1,439 +1,427 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Performance Settings for Memory</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuPerformance.template%#
-<br>
-<h2>Performance Settings for Memory</h2>
-
-<p>
-<div class=small><b>Memory Usage:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<form action="PerformanceMemory_p.html" method="post" enctype="multipart/form-data">
-<tr class="TableHeader" valign="bottom">
-<td class="small">&nbsp;<br>Type</td>
-<td class="small">After Startup<br>&nbsp;</td>
-<td class="small">After Initializations<br>before GC</td>
-<td class="small">After Initializations<br>after GC</td>
-<td class="small">Now<br>#(gc)#before <a href="PerformanceMemory_p.html?gc=">GC</a>::after GC#(/gc)#</td>
-<td class="small">Next<br>Startup</td>
-<td class="small">Description<br>&nbsp;</td>
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">Max</td>
-<td class="small" align="center" colspan="4">#[memoryMax]# MByte</td>
-<td class="small" align="right"><input name="Xmx" type="text" align="right" size="4" maxlength="4" value="#[Xmx]#"><br>MByte</td>
-<td class="small" align="left">maximum memory that the JVM will attempt to use</td>
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">Available</td>
-<td class="small" align="right">#[memoryAvailAfterStartup]# MByte</td>
-<td class="small" align="right">#[memoryAvailAfterInitBGC]# MByte</td>
-<td class="small" align="right">#[memoryAvailAfterInitAGC]# MByte</td>
-<td class="small" align="right">#[memoryAvailNow]# MByte</td>
-<td class="small" align="right">&nbsp;<br>&nbsp;</td>
-<td class="small" align="left">total available memory including free for the JVM within maximum</td>
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">Total</td>
-<td class="small" align="right">#[memoryTotalAfterStartup]# KByte</td>
-<td class="small" align="right">#[memoryTotalAfterInitBGC]# KByte</td>
-<td class="small" align="right">#[memoryTotalAfterInitAGC]# KByte</td>
-<td class="small" align="right">#[memoryTotalNow]# MByte</td>
-<td class="small" align="right"><input name="Xms" type="text" align="right" size="4" maxlength="4" value="#[Xms]#"><br>MByte</td>
-<td class="small" align="left">total memory taken from the OS</td>
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">Free</td>
-<td class="small" align="right">#[memoryFreeAfterStartup]# KByte</td>
-<td class="small" align="right">#[memoryFreeAfterInitBGC]# KByte</td>
-<td class="small" align="right">#[memoryFreeAfterInitAGC]# KByte</td>
-<td class="small" align="right">#[memoryFreeNow]# MByte</td>
-<td class="small" align="right">&nbsp;<br>&nbsp;</td>
-<td class="small" align="left">free memory in the JVM within total amount</td>
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">Used</td>
-<td class="small" align="right">#[memoryUsedAfterStartup]# KByte</td>
-<td class="small" align="right">#[memoryUsedAfterInitBGC]# KByte</td>
-<td class="small" align="right">#[memoryUsedAfterInitAGC]# KByte</td>
-<td class="small" align="right">#[memoryUsedNow]# MByte</td>
-<td class="small" align="right">&nbsp;<br>&nbsp;</td>
-<td class="small" align="left">used memory in the JVM within total amount</td>
-</tr>
-<tr class="TableCellLight">
-<td class="small" align="right" colspan="5">Re-Configuration of Startup Paramenters: </td>
-<td class="small" align="right"><input type="submit" name="setStartup" value="Set"></td>
-<td class="small" align="left">Changes take effect after <b>re-start</b> of YaCy</td>
-</tr>
-</form>
-</table>
-</p>
+<!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]#': Performance Settings for Memory</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="PerformanceMemory">
+ #%env/templates/header.template%#
+ #%env/templates/submenuPerformance.template%#
+ <h2>Performance Settings for Memory</h2>
+ <p><strong>Memory Usage:</strong></p>
+ <form action="PerformanceMemory_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>&nbsp;<br />Type</td>
+ <td>After Startup<br />&nbsp;</td>
+ <td>After Initializations<br />before GC</td>
+ <td>After Initializations<br />after GC</td>
+ <td>Now<br />#(gc)#before <a href="PerformanceMemory_p.html?gc=">GC</a>::after GC#(/gc)#</td>
+ <td>Next<br />Startup</td>
+ <td>Description<br />&nbsp;</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">Max</td>
+ <td align="center" colspan="4">#[memoryMax]# MByte</td>
+ <td align="right"><input name="Xmx" type="text" size="4" maxlength="4" value="#[Xmx]#" /><br />MByte</td>
+ <td align="left">maximum memory that the JVM will attempt to use</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">Available</td>
+ <td align="right">#[memoryAvailAfterStartup]# MByte</td>
+ <td align="right">#[memoryAvailAfterInitBGC]# MByte</td>
+ <td align="right">#[memoryAvailAfterInitAGC]# MByte</td>
+ <td align="right">#[memoryAvailNow]# MByte</td>
+ <td align="right">&nbsp;<br />&nbsp;</td>
+ <td align="left">total available memory including free for the JVM within maximum</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">Total</td>
+ <td align="right">#[memoryTotalAfterStartup]# KByte</td>
+ <td align="right">#[memoryTotalAfterInitBGC]# KByte</td>
+ <td align="right">#[memoryTotalAfterInitAGC]# KByte</td>
+ <td align="right">#[memoryTotalNow]# MByte</td>
+ <td align="right"><input name="Xms" type="text" size="4" maxlength="4" value="#[Xms]#" /><br />MByte</td>
+ <td align="left">total memory taken from the OS</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">Free</td>
+ <td align="right">#[memoryFreeAfterStartup]# KByte</td>
+ <td align="right">#[memoryFreeAfterInitBGC]# KByte</td>
+ <td align="right">#[memoryFreeAfterInitAGC]# KByte</td>
+ <td align="right">#[memoryFreeNow]# MByte</td>
+ <td align="right">&nbsp;<br />&nbsp;</td>
+ <td align="left">free memory in the JVM within total amount</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">Used</td>
+ <td align="right">#[memoryUsedAfterStartup]# KByte</td>
+ <td align="right">#[memoryUsedAfterInitBGC]# KByte</td>
+ <td align="right">#[memoryUsedAfterInitAGC]# KByte</td>
+ <td align="right">#[memoryUsedNow]# MByte</td>
+ <td align="right">&nbsp;<br />&nbsp;</td>
+ <td align="left">used memory in the JVM within total amount</td>
+ </tr>
+ <tr class="TableCellLight">
+ <td align="right" colspan="5">Re-Configuration of Startup Paramenters: </td>
+ <td align="right"><input type="submit" name="setStartup" value="Set" /></td>
+ <td align="left">Changes take effect after <strong>re-start</strong> of YaCy</td>
+ </tr>
+ </table>
+ </form>
+ <p><strong>RAM Cache for Database Files:</strong></p>
+ <form action="PerformanceMemory_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td rowspan="2">Database<br />&nbsp;</td>
+ <td rowspan="2">DB&nbsp;Size<br />&nbsp;</td>
+ <td colspan="4">Node Cache</td>
+ <td colspan="5">Object Cache</td>
+ <td colspan="4">Memory Occupation (KBytes)</td>
+ <td rowspan="2">Description<br />&nbsp;</td>
+ </tr>
+
+ <tr class="TableHeader" valign="bottom">
+ <td>Chunk<br />Size<br />(bytes)</td>
+ <td>Empty<br />(avail.)<br />Slots</td>
+ <td>Used<br />(filled)<br />Slots</td>
+ <td>Node-Cache<br />Hit:Miss<br />Uniq:Doub<br />Del:Flush<br /></td>
+ <td>Chunk<br />Size<br />(bytes)</td>
+ <td>Max<br />Size<br />Hit/Miss</td>
+ <td>&nbsp;<br />Hit-Size<br />Miss-Size</td>
+ <td>Hit-Cache<br />Hit:Miss<br />Uniq:Doub<br />Del:Flush<br /></td>
+ <td>Miss-Cache<br />Hit:Miss<br />Uniq:Doub<br />Del:Flush<br /></td>
+ <td>Used Now</td>
+ <td>Assigned Max</td>
+ <td>Default Max</td>
+ <td>Best Max</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">RWI Assortment Cluster</td>
+ <td align="right">#[slreqRWI]#</td>
+ <td align="right">#[nodszRWI]#</td>
+ <td align="right">#[slempRWI]#</td>
+ <td align="right">#[slfilRWI]#</td>
+ <td align="right">#[slhittmissRWI]#<br />#[sluniqdoubRWI]#<br />#[slflushRWI]#</td>
+ <td align="right">#[ochunksizRWI]#</td>
+ <td align="right">#[ochunkmaxRWI]#<br />#[omisscmaxRWI]#</td>
+ <td align="right">#[ochunkcurRWI]#</td>
+ <td align="right">#[ohittmissRWI]#<br />#[ouniqdoubRWI]#<br />#[oflushRWI]#</td>
+ <td align="right">#[nhittmissRWI]#<br />#[nuniqdoubRWI]#<br />#[nflushRWI]#</td>
+ <td align="right">#[usedRWI]#</td>
+ <td align="right"><input name="ramCacheRWI" type="text" size="6" maxlength="7" value="#[ramCacheRWI]#" /></td>
+ <td align="right">#[dfltRWI]#</td>
+ <td align="right">#[bestRWI]#</td>
+ <td align="left">The Assortment Cluster stores most of the page indexes.
+ Flushing speed of the temporary RWI cache depends on the size of this file cache. Increasing the space of this
+ cache will speed up crawls with a depth > 3.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">HTTP Response Header</td>
+ <td align="right">#[slreqHTTP]#</td>
+ <td align="right">#[nodszHTTP]#</td>
+ <td align="right">#[slempHTTP]#</td>
+ <td align="right">#[slfilHTTP]#</td>
+ <td align="right">#[slhittmissHTTP]#<br />#[sluniqdoubHTTP]#<br />#[slflushHTTP]#</td>
+ <td align="right">#[ochunksizHTTP]#</td>
+ <td align="right">#[ochunkmaxHTTP]#<br />#[omisscmaxHTTP]#</td>
+ <td align="right">#[ochunkcurHTTP]#</td>
+ <td align="right">#[ohittmissHTTP]#<br />#[ouniqdoubHTTP]#<br />#[oflushHTTP]#</td>
+ <td align="right">#[nhittmissHTTP]#<br />#[nuniqdoubHTTP]#<br />#[nflushHTTP]#</td>
+ <td align="right">#[usedHTTP]#</td>
+ <td align="right"><input name="ramCacheHTTP" type="text" size="6" maxlength="7" value="#[ramCacheHTTP]#" /></td>
+ <td align="right">#[dfltHTTP]#</td>
+ <td align="right">#[bestHTTP]#</td>
+ <td align="left">The Response Header database stores the HTTP heades that other servers send when YaCy retrieves web pages
+ during proxy mode, when performing crawls or if it fetches pages for snippet generation.
+ Increasing this cache will be most important for a fast proxy mode.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">'loaded' URLs</td>
+ <td align="right">#[slreqLURL]#</td>
+ <td align="right">#[nodszLURL]#</td>
+ <td align="right">#[slempLURL]#</td>
+ <td align="right">#[slfilLURL]#</td>
+ <td align="right">#[slhittmissLURL]#<br />#[sluniqdoubLURL]#<br />#[slflushLURL]#</td>
+ <td align="right">#[ochunksizLURL]#</td>
+ <td align="right">#[ochunkmaxLURL]#<br />#[omisscmaxLURL]#</td>
+ <td align="right">#[ochunkcurLURL]#</td>
+ <td align="right">#[ohittmissLURL]#<br />#[ouniqdoubLURL]#<br />#[oflushLURL]#</td>
+ <td align="right">#[nhittmissLURL]#<br />#[nuniqdoubLURL]#<br />#[nflushLURL]#</td>
+ <td align="right">#[usedLURL]#</td>
+ <td align="right"><input name="ramCacheLURL" type="text" size="6" maxlength="7" value="#[ramCacheLURL]#" /></td>
+ <td align="right">#[dfltLURL]#</td>
+ <td align="right">#[bestLURL]#</td>
+ <td align="left">This is the database that holds the hash/url - relation and properties regarding the url like load date and server date.
+ This cache is very important for a fast search process. Increasing the cache size will result in more search results and less IO during DHT transfer.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">'pre-noticed' URLs</td>
+ <td align="right">#[slreqPreNURL]#</td>
+ <td align="right">#[nodszPreNURL]#</td>
+ <td align="right">#[slempPreNURL]#</td>
+ <td align="right">#[slfilPreNURL]#</td>
+ <td align="right">#[slhittmissPreNURL]#<br />#[sluniqdoubPreNURL]#<br />#[slflushPreNURL]#</td>
+ <td align="right">#[ochunksizPreNURL]#</td>
+ <td align="right">#[ochunkmaxPreNURL]#<br />#[omisscmaxPreNURL]#</td>
+ <td align="right">#[ochunkcurPreNURL]#</td>
+ <td align="right">#[ohittmissPreNURL]#<br />#[ouniqdoubPreNURL]#<br />#[oflushPreNURL]#</td>
+ <td align="right">#[nhittmissPreNURL]#<br />#[nuniqdoubPreNURL]#<br />#[nflushPreNURL]#</td>
+ <td align="right">#[usedPreNURL]#</td>
+ <td align="right"><input name="ramCachePreNURL" type="text" size="6" maxlength="7" value="#[ramCachePreNURL]#" /></td>
+ <td align="right">#[dfltPreNURL]#</td>
+ <td align="right">#[bestPreNURL]#</td>
+ <td align="left"></td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">'noticed' URLs</td>
+ <td align="right">#[slreqNURL]#</td>
+ <td align="right">#[nodszNURL]#</td>
+ <td align="right">#[slempNURL]#</td>
+ <td align="right">#[slfilNURL]#</td>
+ <td align="right">#[slhittmissNURL]#<br />#[sluniqdoubNURL]#<br />#[slflushNURL]#</td>
+ <td align="right">#[ochunksizNURL]#</td>
+ <td align="right">#[ochunkmaxNURL]#<br />#[omisscmaxNURL]#</td>
+ <td align="right">#[ochunkcurNURL]#</td>
+ <td align="right">#[ohittmissNURL]#<br />#[ouniqdoubNURL]#<br />#[oflushNURL]#</td>
+ <td align="right">#[nhittmissNURL]#<br />#[nuniqdoubNURL]#<br />#[nflushNURL]#</td>
+ <td align="right">#[usedNURL]#</td>
+ <td align="right"><input name="ramCacheNURL" type="text" size="6" maxlength="7" value="#[ramCacheNURL]#" /></td>
+ <td align="right">#[dfltNURL]#</td>
+ <td align="right">#[bestNURL]#</td>
+ <td align="left">A noticed URL is one that was discovered during crawling but was not loaded yet.
+ Increasing the cache size will result in faster double-check during URL recognition when doing crawls.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">'error' URLs</td>
+ <td align="right">#[slreqEURL]#</td>
+ <td align="right">#[nodszEURL]#</td>
+ <td align="right">#[slempEURL]#</td>
+ <td align="right">#[slfilEURL]#</td>
+ <td align="right">#[slhittmissEURL]#<br />#[sluniqdoubEURL]#<br />#[slflushEURL]#</td>
+ <td align="right">#[ochunksizEURL]#</td>
+ <td align="right">#[ochunkmaxEURL]#<br />#[omisscmaxEURL]#</td>
+ <td align="right">#[ochunkcurEURL]#</td>
+ <td align="right">#[ohittmissEURL]#<br />#[ouniqdoubEURL]#<br />#[oflushEURL]#</td>
+ <td align="right">#[nhittmissEURL]#<br />#[nuniqdoubEURL]#<br />#[nflushEURL]#</td>
+ <td align="right">#[usedEURL]#</td>
+ <td align="right"><input name="ramCacheEURL" type="text" size="6" maxlength="7" value="#[ramCacheEURL]#" /></td>
+ <td align="right">#[dfltEURL]#</td>
+ <td align="right">#[bestEURL]#</td>
+ <td align="left">URLs that cannot be loaded are stored in this database. It is also used for double-checked during crawling.
+ Increasing the cache size will most probably speed up crawling slightly, but not significantly.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">DHT Control</td>
+ <td align="right">#[slreqDHT]#</td>
+ <td align="right">#[nodszDHT]#</td>
+ <td align="right">#[slempDHT]#</td>
+ <td align="right">#[slfilDHT]#</td>
+ <td align="right">#[slhittmissDHT]#<br />#[sluniqdoubDHT]#<br />#[slflushDHT]#</td>
+ <td align="right">#[ochunksizDHT]#</td>
+ <td align="right">#[ochunkmaxDHT]#<br />#[omisscmaxDHT]#</td>
+ <td align="right">#[ochunkcurDHT]#</td>
+ <td align="right">#[ohittmissDHT]#<br />#[ouniqdoubDHT]#<br />#[oflushDHT]#</td>
+ <td align="right">#[nhittmissDHT]#<br />#[nuniqdoubDHT]#<br />#[nflushDHT]#</td>
+ <td align="right">#[usedDHT]#</td>
+ <td align="right"><input name="ramCacheDHT" type="text" size="6" maxlength="7" value="#[ramCacheDHT]#" /></td>
+ <td align="right">#[dfltDHT]#</td>
+ <td align="right">#[bestDHT]#</td>
+ <td align="left">This is simply the cache for the seed-dbs (active, passive, potential).
+ This cache is divided into three equal parts.
+ Increasing this cache may speed up many functions, but we need to test this to see the effects.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">Messages</td>
+ <td align="right">#[slreqMessage]#</td>
+ <td align="right">#[nodszMessage]#</td>
+ <td align="right">#[slempMessage]#</td>
+ <td align="right">#[slfilMessage]#</td>
+ <td align="right">#[slhittmissMessage]#<br />#[sluniqdoubMessage]#<br />#[slflushMessage]#</td>
+ <td align="right">#[ochunksizMessage]#</td>
+ <td align="right">#[ochunkmaxMessage]#<br />#[omisscmaxMessage]#</td>
+ <td align="right">#[ochunkcurMessage]#</td>
+ <td align="right">#[ohittmissMessage]#<br />#[ouniqdoubMessage]#<br />#[oflushMessage]#</td>
+ <td align="right">#[nhittmissMessage]#<br />#[nuniqdoubMessage]#<br />#[nflushMessage]#</td>
+ <td align="right">#[usedMessage]#</td>
+ <td align="right"><input name="ramCacheMessage" type="text" size="6" maxlength="7" value="#[ramCacheMessage]#" /></td>
+ <td align="right">#[dfltMessage]#</td>
+ <td align="right">#[bestMessage]#</td>
+ <td align="left">The Message cache for peer-to-peer messages. Less important.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">Wiki</td>
+ <td align="right">#[slreqWiki]#</td>
+ <td align="right">#[nodszWiki]#</td>
+ <td align="right">#[slempWiki]#</td>
+ <td align="right">#[slfilWiki]#</td>
+ <td align="right">#[slhittmissWiki]#<br />#[sluniqdoubWiki]#<br />#[slflushWiki]#</td>
+ <td align="right">#[ochunksizWiki]#</td>
+ <td align="right">#[ochunkmaxWiki]#<br />#[omisscmaxWiki]#</td>
+ <td align="right">#[ochunkcurWiki]#</td>
+ <td align="right">#[ohittmissWiki]#<br />#[ouniqdoubWiki]#<br />#[oflushWiki]#</td>
+ <td align="right">#[nhittmissWiki]#<br />#[nuniqdoubWiki]#<br />#[nflushWiki]#</td>
+ <td align="right">#[usedWiki]#</td>
+ <td align="right"><input name="ramCacheWiki" type="text" size="6" maxlength="7" value="#[ramCacheWiki]#" /></td>
+ <td align="right">#[dfltWiki]#</td>
+ <td align="right">#[bestWiki]#</td>
+ <td align="left">The YaCy-Wiki uses a database to store its pages.
+ This cache is divided in two parts, one for the wiki database and one for its backup.
+ Increasing this cache may speed up access to the wiki pages.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">Blog</td>
+ <td align="right">#[slreqBlog]#</td>
+ <td align="right">#[nodszBlog]#</td>
+ <td align="right">#[slempBlog]#</td>
+ <td align="right">#[slfilBlog]#</td>
+ <td align="right">#[slhittmissBlog]#<br />#[sluniqdoubBlog]#<br />#[slflushBlog]#</td>
+ <td align="right">#[ochunksizBlog]#</td>
+ <td align="right">#[ochunkmaxBlog]#</td>
+ <td align="right">#[ochunkcurBlog]#</td>
+ <td align="right">#[ohittmissBlog]#<br />#[ouniqdoubBlog]#<br />#[oflushBlog]#</td>
+ <td align="right">#[nhittmissBlog]#<br />#[nuniqdoubBlog]#<br />#[nflushBlog]#</td>
+ <td align="right">#[usedBlog]#</td>
+ <td align="right"><input name="ramCacheBlog" type="text" size="6" maxlength="7" value="#[ramCacheBlog]#" /></td>
+ <td align="right">#[dfltBlog]#</td>
+ <td align="right">#[bestBlog]#</td>
+ <td align="left">The YaCy-Blog uses a database to store its entries.
+ Increasing this cache may speed up access to the Blog.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">News</td>
+ <td align="right">#[slreqNews]#</td>
+ <td align="right">#[nodszNews]#</td>
+ <td align="right">#[slempNews]#</td>
+ <td align="right">#[slfilNews]#</td>
+ <td align="right">#[slhittmissNews]#<br />#[sluniqdoubNews]#<br />#[slflushNews]#</td>
+ <td align="right">#[ochunksizNews]#</td>
+ <td align="right">#[ochunkmaxNews]#</td>
+ <td align="right">#[ochunkcurNews]#</td>
+ <td align="right">#[ohittmissNews]#<br />#[ouniqdoubNews]#<br />#[oflushNews]#</td>
+ <td align="right">#[nhittmissNews]#<br />#[nuniqdoubNews]#<br />#[nflushNews]#</td>
+ <td align="right">#[usedNews]#</td>
+ <td align="right"><input name="ramCacheNews" type="text" size="6" maxlength="7" value="#[ramCacheNews]#" /></td>
+ <td align="right">#[dfltNews]#</td>
+ <td align="right">#[bestNews]#</td>
+ <td align="left">The News-DB stores property-lists for news that are included in seeds.
+ Increasing this cache may speed up the peer-ping.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">robots.txt DB</td>
+ <td align="right">#[slreqRobots]#</td>
+ <td align="right">#[nodszRobots]#</td>
+ <td align="right">#[slempRobots]#</td>
+ <td align="right">#[slfilRobots]#</td>
+ <td align="right">#[slhittmissRobots]#<br />#[sluniqdoubRobots]#<br />#[slflushRobots]#</td>
+ <td align="right">#[ochunksizRobots]#</td>
+ <td align="right">#[ochunkmaxRobots]#</td>
+ <td align="right">#[ochunkcurRobots]#</td>
+ <td align="right">#[ohittmissRobots]#<br />#[ouniqdoubRobots]#<br />#[oflushRobots]#</td>
+ <td align="right">#[nhittmissRobots]#<br />#[nuniqdoubRobots]#<br />#[nflushRobots]#</td>
+ <td align="right">#[usedRobots]#</td>
+ <td align="right"><input name="ramCacheRobots" type="text" size="6" maxlength="7" value="#[ramCacheRobots]#" /></td>
+ <td align="right">#[dfltRobots]#</td>
+ <td align="right">#[bestRobots]#</td>
+ <td align="left">The robots.txt DB stores downloaded records from robots.txt files.
+ Increasing this cache may speed up validation if crawling of the URL is allowed.</td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td align="left">Crawl Profiles</td>
+ <td align="right">#[slreqProfiles]#</td>
+ <td align="right">#[nodszProfiles]#</td>
+ <td align="right">#[slempProfiles]#</td>
+ <td align="right">#[slfilProfiles]#</td>
+ <td align="right">#[slhittmissProfiles]#<br />#[sluniqdoubProfiles]#<br />#[slflushProfiles]#</td>
+ <td align="right">#[ochunksizProfiles]#</td>
+ <td align="right">#[ochunkmaxProfiles]#</td>
+ <td align="right">#[ochunkcurProfiles]#</td>
+ <td align="right">#[ohittmissProfiles]#<br />#[ouniqdoubProfiles]#<br />#[oflushProfiles]#</td>
+ <td align="right">#[nhittmissProfiles]#<br />#[nuniqdoubProfiles]#<br />#[nflushProfiles]#</td>
+ <td align="right">#[usedProfiles]#</td>
+ <td align="right"><input name="ramCacheProfiles" type="text" size="6" maxlength="7" value="#[ramCacheProfiles]#" /></td>
+ <td align="right">#[dfltProfiles]#</td>
+ <td align="right">#[bestProfiles]#</td>
+ <td align="left">The profile database stores properties for each crawl that is started on the local peer.
+ Increasing this cache may speed up crawling, but not much space is needed, so the effect may be low.</td>
+ </tr>
+
+ <tr class="TableCellSummary">
+ <td align="left" colspan="11">Totals</td>
+ <td align="right">#[usedTotal]# MB</td>
+ <td align="right">#[currTotal]# MB</td>
+ <td align="right">#[dfltTotal]# MB</td>
+ <td align="right">#[bestTotal]# MB</td>
+ <td align="left">Sum of memory amounts</td>
+ </tr>
+
+ <tr class="TableCellLight">
+ <td align="right" colspan="12">Re-Configuration:</td>
+ <td align="center"><input type="submit" name="setCustom" value="Set" /><br />these<br />custom<br />values<br />&nbsp;</td>
+ <td align="center"><input type="submit" name="setDefault" value="Set" /><br />all<br />default<br />values<br />&nbsp;</td>
+ <td align="center"><input type="submit" name="setBest" value="Set" /><br />all<br />optimum<br />values<br />&nbsp;</td>
+ <td align="left">Changes take effect after <strong>re-start</strong> of YaCy</td>
+ </tr>
+
+ </table>
+ </form>
-<p>
-<div class=small><b>RAM Cache for Database Files:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<form action="PerformanceMemory_p.html" method="post" enctype="multipart/form-data">
-<tr class="TableHeader" valign="bottom">
-<td class="small" rowspan="2">Database<br>&nbsp;</td>
-<td class="small" rowspan="2">DB&nbsp;Size<br>&nbsp;</td>
-<td class="small" colspan="4">Node Cache</td>
-<td class="small" colspan="5">Object Cache</td>
-<td class="small" colspan="4">Memory Occupation (KBytes)</td>
-<td class="small" rowspan="2">Description<br>&nbsp;</td>
-</tr>
-
-<tr class="TableHeader" valign="bottom">
-<td class="small">Chunk<br>Size<br>(bytes)</td>
-<td class="small">Empty<br>(avail.)<br>Slots</td>
-<td class="small">Used<br>(filled)<br>Slots</td>
-<td class="small">Node-Cache<br>Hit:Miss<br>Uniq:Doub<br>Del:Flush<br></td>
-<td class="small">Chunk<br>Size<br>(bytes)</td>
-<td class="small">Max<br>Size<br>Hit/Miss</td>
-<td class="small">&nbsp;<br>Hit-Size<br>Miss-Size</td>
-<td class="small">Hit-Cache<br>Hit:Miss<br>Uniq:Doub<br>Del:Flush<br></td>
-<td class="small">Miss-Cache<br>Hit:Miss<br>Uniq:Doub<br>Del:Flush<br></td>
-<td class="small">Used Now</td>
-<td class="small">Assigned Max</td>
-<td class="small">Default Max</td>
-<td class="small">Best Max</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">RWI Assortment Cluster</td>
-<td class="small" align="right">#[slreqRWI]#</td>
-<td class="small" align="right">#[nodszRWI]#</td>
-<td class="small" align="right">#[slempRWI]#</td>
-<td class="small" align="right">#[slfilRWI]#</td>
-<td class="small" align="right">#[slhittmissRWI]#<br>#[sluniqdoubRWI]#<br>#[slflushRWI]#</td>
-<td class="small" align="right">#[ochunksizRWI]#</td>
-<td class="small" align="right">#[ochunkmaxRWI]#<br>#[omisscmaxRWI]#</td>
-<td class="small" align="right">#[ochunkcurRWI]#</td>
-<td class="small" align="right">#[ohittmissRWI]#<br>#[ouniqdoubRWI]#<br>#[oflushRWI]#</td>
-<td class="small" align="right">#[nhittmissRWI]#<br>#[nuniqdoubRWI]#<br>#[nflushRWI]#</td>
-<td class="small" align="right">#[usedRWI]#</td>
-<td class="small" align="right"><input name="ramCacheRWI" type="text" align="right" size="6" maxlength="7" value="#[ramCacheRWI]#"></td>
-<td class="small" align="right">#[dfltRWI]#</td>
-<td class="small" align="right">#[bestRWI]#</td>
-<td class="small" align="left">The Assortment Cluster stores most of the page indexes.
-Flushing speed of the temporary RWI cache depends on the size of this file cache. Increasing the space of this
-cache will speed up crawls with a depth > 3.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">HTTP Response Header</td>
-<td class="small" align="right">#[slreqHTTP]#</td>
-<td class="small" align="right">#[nodszHTTP]#</td>
-<td class="small" align="right">#[slempHTTP]#</td>
-<td class="small" align="right">#[slfilHTTP]#</td>
-<td class="small" align="right">#[slhittmissHTTP]#<br>#[sluniqdoubHTTP]#<br>#[slflushHTTP]#</td>
-<td class="small" align="right">#[ochunksizHTTP]#</td>
-<td class="small" align="right">#[ochunkmaxHTTP]#<br>#[omisscmaxHTTP]#</td>
-<td class="small" align="right">#[ochunkcurHTTP]#</td>
-<td class="small" align="right">#[ohittmissHTTP]#<br>#[ouniqdoubHTTP]#<br>#[oflushHTTP]#</td>
-<td class="small" align="right">#[nhittmissHTTP]#<br>#[nuniqdoubHTTP]#<br>#[nflushHTTP]#</td>
-<td class="small" align="right">#[usedHTTP]#</td>
-<td class="small" align="right"><input name="ramCacheHTTP" type="text" align="right" size="6" maxlength="7" value="#[ramCacheHTTP]#"></td>
-<td class="small" align="right">#[dfltHTTP]#</td>
-<td class="small" align="right">#[bestHTTP]#</td>
-<td class="small" align="left">The Response Header database stores the HTTP heades that other servers send when YaCy retrieves web pages
-during proxy mode, when performing crawls or if it fetches pages for snippet generation.
-Increasing this cache will be most important for a fast proxy mode.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">'loaded' URLs</td>
-<td class="small" align="right">#[slreqLURL]#</td>
-<td class="small" align="right">#[nodszLURL]#</td>
-<td class="small" align="right">#[slempLURL]#</td>
-<td class="small" align="right">#[slfilLURL]#</td>
-<td class="small" align="right">#[slhittmissLURL]#<br>#[sluniqdoubLURL]#<br>#[slflushLURL]#</td>
-<td class="small" align="right">#[ochunksizLURL]#</td>
-<td class="small" align="right">#[ochunkmaxLURL]#<br>#[omisscmaxLURL]#</td>
-<td class="small" align="right">#[ochunkcurLURL]#</td>
-<td class="small" align="right">#[ohittmissLURL]#<br>#[ouniqdoubLURL]#<br>#[oflushLURL]#</td>
-<td class="small" align="right">#[nhittmissLURL]#<br>#[nuniqdoubLURL]#<br>#[nflushLURL]#</td>
-<td class="small" align="right">#[usedLURL]#</td>
-<td class="small" align="right"><input name="ramCacheLURL" type="text" align="right" size="6" maxlength="7" value="#[ramCacheLURL]#"></td>
-<td class="small" align="right">#[dfltLURL]#</td>
-<td class="small" align="right">#[bestLURL]#</td>
-<td class="small" align="left">This is the database that holds the hash/url - relation and properties regarding the url like load date and server date.
-This cache is very important for a fast search process. Increasing the cache size will result in more search results and less IO during DHT transfer.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">'pre-noticed' URLs</td>
-<td class="small" align="right">#[slreqPreNURL]#</td>
-<td class="small" align="right">#[nodszPreNURL]#</td>
-<td class="small" align="right">#[slempPreNURL]#</td>
-<td class="small" align="right">#[slfilPreNURL]#</td>
-<td class="small" align="right">#[slhittmissPreNURL]#<br>#[sluniqdoubPreNURL]#<br>#[slflushPreNURL]#</td>
-<td class="small" align="right">#[ochunksizPreNURL]#</td>
-<td class="small" align="right">#[ochunkmaxPreNURL]#<br>#[omisscmaxPreNURL]#</td>
-<td class="small" align="right">#[ochunkcurPreNURL]#</td>
-<td class="small" align="right">#[ohittmissPreNURL]#<br>#[ouniqdoubPreNURL]#<br>#[oflushPreNURL]#</td>
-<td class="small" align="right">#[nhittmissPreNURL]#<br>#[nuniqdoubPreNURL]#<br>#[nflushPreNURL]#</td>
-<td class="small" align="right">#[usedPreNURL]#</td>
-<td class="small" align="right"><input name="ramCachePreNURL" type="text" align="right" size="6" maxlength="7" value="#[ramCachePreNURL]#"></td>
-<td class="small" align="right">#[dfltPreNURL]#</td>
-<td class="small" align="right">#[bestPreNURL]#</td>
-<td class="small" align="left"></td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">'noticed' URLs</td>
-<td class="small" align="right">#[slreqNURL]#</td>
-<td class="small" align="right">#[nodszNURL]#</td>
-<td class="small" align="right">#[slempNURL]#</td>
-<td class="small" align="right">#[slfilNURL]#</td>
-<td class="small" align="right">#[slhittmissNURL]#<br>#[sluniqdoubNURL]#<br>#[slflushNURL]#</td>
-<td class="small" align="right">#[ochunksizNURL]#</td>
-<td class="small" align="right">#[ochunkmaxNURL]#<br>#[omisscmaxNURL]#</td>
-<td class="small" align="right">#[ochunkcurNURL]#</td>
-<td class="small" align="right">#[ohittmissNURL]#<br>#[ouniqdoubNURL]#<br>#[oflushNURL]#</td>
-<td class="small" align="right">#[nhittmissNURL]#<br>#[nuniqdoubNURL]#<br>#[nflushNURL]#</td>
-<td class="small" align="right">#[usedNURL]#</td>
-<td class="small" align="right"><input name="ramCacheNURL" type="text" align="right" size="6" maxlength="7" value="#[ramCacheNURL]#"></td>
-<td class="small" align="right">#[dfltNURL]#</td>
-<td class="small" align="right">#[bestNURL]#</td>
-<td class="small" align="left">A noticed URL is one that was discovered during crawling but was not loaded yet.
-Increasing the cache size will result in faster double-check during URL recognition when doing crawls.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">'error' URLs</td>
-<td class="small" align="right">#[slreqEURL]#</td>
-<td class="small" align="right">#[nodszEURL]#</td>
-<td class="small" align="right">#[slempEURL]#</td>
-<td class="small" align="right">#[slfilEURL]#</td>
-<td class="small" align="right">#[slhittmissEURL]#<br>#[sluniqdoubEURL]#<br>#[slflushEURL]#</td>
-<td class="small" align="right">#[ochunksizEURL]#</td>
-<td class="small" align="right">#[ochunkmaxEURL]#<br>#[omisscmaxEURL]#</td>
-<td class="small" align="right">#[ochunkcurEURL]#</td>
-<td class="small" align="right">#[ohittmissEURL]#<br>#[ouniqdoubEURL]#<br>#[oflushEURL]#</td>
-<td class="small" align="right">#[nhittmissEURL]#<br>#[nuniqdoubEURL]#<br>#[nflushEURL]#</td>
-<td class="small" align="right">#[usedEURL]#</td>
-<td class="small" align="right"><input name="ramCacheEURL" type="text" align="right" size="6" maxlength="7" value="#[ramCacheEURL]#"></td>
-<td class="small" align="right">#[dfltEURL]#</td>
-<td class="small" align="right">#[bestEURL]#</td>
-<td class="small" align="left">URLs that cannot be loaded are stored in this database. It is also used for double-checked during crawling.
-Increasing the cache size will most probably speed up crawling slightly, but not significantly.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">DHT Control</td>
-<td class="small" align="right">#[slreqDHT]#</td>
-<td class="small" align="right">#[nodszDHT]#</td>
-<td class="small" align="right">#[slempDHT]#</td>
-<td class="small" align="right">#[slfilDHT]#</td>
-<td class="small" align="right">#[slhittmissDHT]#<br>#[sluniqdoubDHT]#<br>#[slflushDHT]#</td>
-<td class="small" align="right">#[ochunksizDHT]#</td>
-<td class="small" align="right">#[ochunkmaxDHT]#<br>#[omisscmaxDHT]#</td>
-<td class="small" align="right">#[ochunkcurDHT]#</td>
-<td class="small" align="right">#[ohittmissDHT]#<br>#[ouniqdoubDHT]#<br>#[oflushDHT]#</td>
-<td class="small" align="right">#[nhittmissDHT]#<br>#[nuniqdoubDHT]#<br>#[nflushDHT]#</td>
-<td class="small" align="right">#[usedDHT]#</td>
-<td class="small" align="right"><input name="ramCacheDHT" type="text" align="right" size="6" maxlength="7" value="#[ramCacheDHT]#"></td>
-<td class="small" align="right">#[dfltDHT]#</td>
-<td class="small" align="right">#[bestDHT]#</td>
-<td class="small" align="left">This is simply the cache for the seed-dbs (active, passive, potential).
-This cache is divided into three equal parts.
-Increasing this cache may speed up many functions, but we need to test this to see the effects.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">Messages</td>
-<td class="small" align="right">#[slreqMessage]#</td>
-<td class="small" align="right">#[nodszMessage]#</td>
-<td class="small" align="right">#[slempMessage]#</td>
-<td class="small" align="right">#[slfilMessage]#</td>
-<td class="small" align="right">#[slhittmissMessage]#<br>#[sluniqdoubMessage]#<br>#[slflushMessage]#</td>
-<td class="small" align="right">#[ochunksizMessage]#</td>
-<td class="small" align="right">#[ochunkmaxMessage]#<br>#[omisscmaxMessage]#</td>
-<td class="small" align="right">#[ochunkcurMessage]#</td>
-<td class="small" align="right">#[ohittmissMessage]#<br>#[ouniqdoubMessage]#<br>#[oflushMessage]#</td>
-<td class="small" align="right">#[nhittmissMessage]#<br>#[nuniqdoubMessage]#<br>#[nflushMessage]#</td>
-<td class="small" align="right">#[usedMessage]#</td>
-<td class="small" align="right"><input name="ramCacheMessage" type="text" align="right" size="6" maxlength="7" value="#[ramCacheMessage]#"></td>
-<td class="small" align="right">#[dfltMessage]#</td>
-<td class="small" align="right">#[bestMessage]#</td>
-<td class="small" align="left">The Message cache for peer-to-peer messages. Less important.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">Wiki</td>
-<td class="small" align="right">#[slreqWiki]#</td>
-<td class="small" align="right">#[nodszWiki]#</td>
-<td class="small" align="right">#[slempWiki]#</td>
-<td class="small" align="right">#[slfilWiki]#</td>
-<td class="small" align="right">#[slhittmissWiki]#<br>#[sluniqdoubWiki]#<br>#[slflushWiki]#</td>
-<td class="small" align="right">#[ochunksizWiki]#</td>
-<td class="small" align="right">#[ochunkmaxWiki]#<br>#[omisscmaxWiki]#</td>
-<td class="small" align="right">#[ochunkcurWiki]#</td>
-<td class="small" align="right">#[ohittmissWiki]#<br>#[ouniqdoubWiki]#<br>#[oflushWiki]#</td>
-<td class="small" align="right">#[nhittmissWiki]#<br>#[nuniqdoubWiki]#<br>#[nflushWiki]#</td>
-<td class="small" align="right">#[usedWiki]#</td>
-<td class="small" align="right"><input name="ramCacheWiki" type="text" align="right" size="6" maxlength="7" value="#[ramCacheWiki]#"></td>
-<td class="small" align="right">#[dfltWiki]#</td>
-<td class="small" align="right">#[bestWiki]#</td>
-<td class="small" align="left">The YaCy-Wiki uses a database to store its pages.
-This cache is divided in two parts, one for the wiki database and one for its backup.
-Increasing this cache may speed up access to the wiki pages.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">Blog</td>
-<td class="small" align="right">#[slreqBlog]#</td>
-<td class="small" align="right">#[nodszBlog]#</td>
-<td class="small" align="right">#[slempBlog]#</td>
-<td class="small" align="right">#[slfilBlog]#</td>
-<td class="small" align="right">#[slhittmissBlog]#<br>#[sluniqdoubBlog]#<br>#[slflushBlog]#</td>
-<td class="small" align="right">#[ochunksizBlog]#</td>
-<td class="small" align="right">#[ochunkmaxBlog]#</td>
-<td class="small" align="right">#[ochunkcurBlog]#</td>
-<td class="small" align="right">#[ohittmissBlog]#<br>#[ouniqdoubBlog]#<br>#[oflushBlog]#</td>
-<td class="small" align="right">#[nhittmissBlog]#<br>#[nuniqdoubBlog]#<br>#[nflushBlog]#</td>
-<td class="small" align="right">#[usedBlog]#</td>
-<td class="small" align="right"><input name="ramCacheBlog" type="text" align="right" size="6" maxlength="7" value="#[ramCacheBlog]#"></td>
-<td class="small" align="right">#[dfltBlog]#</td>
-<td class="small" align="right">#[bestBlog]#</td>
-<td class="small" align="left">The YaCy-Blog uses a database to store its entries.
-Increasing this cache may speed up access to the Blog.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">News</td>
-<td class="small" align="right">#[slreqNews]#</td>
-<td class="small" align="right">#[nodszNews]#</td>
-<td class="small" align="right">#[slempNews]#</td>
-<td class="small" align="right">#[slfilNews]#</td>
-<td class="small" align="right">#[slhittmissNews]#<br>#[sluniqdoubNews]#<br>#[slflushNews]#</td>
-<td class="small" align="right">#[ochunksizNews]#</td>
-<td class="small" align="right">#[ochunkmaxNews]#</td>
-<td class="small" align="right">#[ochunkcurNews]#</td>
-<td class="small" align="right">#[ohittmissNews]#<br>#[ouniqdoubNews]#<br>#[oflushNews]#</td>
-<td class="small" align="right">#[nhittmissNews]#<br>#[nuniqdoubNews]#<br>#[nflushNews]#</td>
-<td class="small" align="right">#[usedNews]#</td>
-<td class="small" align="right"><input name="ramCacheNews" type="text" align="right" size="6" maxlength="7" value="#[ramCacheNews]#"></td>
-<td class="small" align="right">#[dfltNews]#</td>
-<td class="small" align="right">#[bestNews]#</td>
-<td class="small" align="left">The News-DB stores property-lists for news that are included in seeds.
-Increasing this cache may speed up the peer-ping.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">robots.txt DB</td>
-<td class="small" align="right">#[slreqRobots]#</td>
-<td class="small" align="right">#[nodszRobots]#</td>
-<td class="small" align="right">#[slempRobots]#</td>
-<td class="small" align="right">#[slfilRobots]#</td>
-<td class="small" align="right">#[slhittmissRobots]#<br>#[sluniqdoubRobots]#<br>#[slflushRobots]#</td>
-<td class="small" align="right">#[ochunksizRobots]#</td>
-<td class="small" align="right">#[ochunkmaxRobots]#</td>
-<td class="small" align="right">#[ochunkcurRobots]#</td>
-<td class="small" align="right">#[ohittmissRobots]#<br>#[ouniqdoubRobots]#<br>#[oflushRobots]#</td>
-<td class="small" align="right">#[nhittmissRobots]#<br>#[nuniqdoubRobots]#<br>#[nflushRobots]#</td>
-<td class="small" align="right">#[usedRobots]#</td>
-<td class="small" align="right"><input name="ramCacheRobots" type="text" align="right" size="6" maxlength="7" value="#[ramCacheRobots]#"></td>
-<td class="small" align="right">#[dfltRobots]#</td>
-<td class="small" align="right">#[bestRobots]#</td>
-<td class="small" align="left">The robots.txt DB stores downloaded records from robots.txt files.
-Increasing this cache may speed up validation if crawling of the URL is allowed.</td>
-</tr>
-
-<tr class="TableCellDark">
-<td class="small" align="left">Crawl Profiles</td>
-<td class="small" align="right">#[slreqProfiles]#</td>
-<td class="small" align="right">#[nodszProfiles]#</td>
-<td class="small" align="right">#[slempProfiles]#</td>
-<td class="small" align="right">#[slfilProfiles]#</td>
-<td class="small" align="right">#[slhittmissProfiles]#<br>#[sluniqdoubProfiles]#<br>#[slflushProfiles]#</td>
-<td class="small" align="right">#[ochunksizProfiles]#</td>
-<td class="small" align="right">#[ochunkmaxProfiles]#</td>
-<td class="small" align="right">#[ochunkcurProfiles]#</td>
-<td class="small" align="right">#[ohittmissProfiles]#<br>#[ouniqdoubProfiles]#<br>#[oflushProfiles]#</td>
-<td class="small" align="right">#[nhittmissProfiles]#<br>#[nuniqdoubProfiles]#<br>#[nflushProfiles]#</td>
-<td class="small" align="right">#[usedProfiles]#</td>
-<td class="small" align="right"><input name="ramCacheProfiles" type="text" align="right" size="6" maxlength="7" value="#[ramCacheProfiles]#"></td>
-<td class="small" align="right">#[dfltProfiles]#</td>
-<td class="small" align="right">#[bestProfiles]#</td>
-<td class="small" align="left">The profile database stores properties for each crawl that is started on the local peer.
-Increasing this cache may speed up crawling, but not much space is needed, so the effect may be low.</td>
-</tr>
-
-<tr class="TableCellSummary">
-<td class="small" align="left" colspan="11">Totals</td>
-<td class="small" align="right">#[usedTotal]# MB</td>
-<td class="small" align="right">#[currTotal]# MB</td>
-<td class="small" align="right">#[dfltTotal]# MB</td>
-<td class="small" align="right">#[bestTotal]# MB</td>
-<td class="small" align="left">Sum of memory amounts</td>
-</tr>
-
-<tr class="TableCellLight">
-<td class="small" align="right" colspan="12">Re-Configuration:</td>
-<td class="small" align="center"><input type="submit" name="setCustom" value="Set"><br>these<br>custom<br>values<br>&nbsp;</td>
-<td class="small" align="center"><input type="submit" name="setDefault" value="Set"><br>all<br>default<br>values<br>&nbsp;</td>
-<td class="small" align="center"><input type="submit" name="setBest" value="Set"><br>all<br>optimum<br>values<br>&nbsp;</td>
-<td class="small" align="left">Changes take effect after <b>re-start</b> of YaCy</td>
-</tr>
-
-</form>
-</table>
-</p>
-
-<!--
-<p>
-<div class=small><b>Write Cache Object Allocation:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">&nbsp;<br>Chunk Sizes</td>
-#{sizes}#
-<td class="small">#[chunk]#</td>
-#{/sizes}#
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">now alive in write cache</td>
-#{alive}#
-<td class="small">#[count]#</td>
-#{/alive}#
-</tr>
-<tr class="TableCellDark">
-<td class="TableHeader" align="left">currently held in write buffer heap</td>
-#{heap}#
-<td class="small">#[count]#</td>
-#{/heap}#
-</tr>
-</table>
-</p>
--->
-
-<!-- other cache sizes -->
-<div class=small><b>Other caching structures:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Type</td>
-<td class="small">Amount</td>
-</tr>
-<tr class="TableCellLight">
-<td class="small">DNSCache</td>
-<td class="small">#[namecache.hit]#</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small">DNSNoCache</td>
-<td class="small">#[namecache.noCache]#</td>
-</tr>
-<tr class="TableCellLight">
-<td class="small">HashBlacklistedCache</td>
-<td class="small">#[blacklistcache.size]#</td>
-</tr>
-</table>
-</p>
-
-#%env/templates/footer.template%#
-</body>
+ <!--
+ <p><strong>Write Cache Object Allocation:</strong></p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>&nbsp;<br />Chunk Sizes</td>
+ #{sizes}#
+ <td>#[chunk]#</td>
+ #{/sizes}#
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">now alive in write cache</td>
+ #{alive}#
+ <td>#[count]#</td>
+ #{/alive}#
+ </tr>
+ <tr class="TableCellDark">
+ <td class="TableHeader" align="left">currently held in write buffer heap</td>
+ #{heap}#
+ <td>#[count]#</td>
+ #{/heap}#
+ </tr>
+ </table>
+ -->
+ <!-- other cache sizes -->
+ <p><strong>Other caching structures:</strong></p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>Type</td>
+ <td>Amount</td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>DNSCache</td>
+ <td>#[namecache.hit]#</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>DNSNoCache</td>
+ <td>#[namecache.noCache]#</td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>HashBlacklistedCache</td>
+ <td>#[blacklistcache.size]#</td>
+ </tr>
+ </table>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/PerformanceQueues_p.html b/htroot/PerformanceQueues_p.html
index ff4a541d8..3a010b1da 100644
--- a/htroot/PerformanceQueues_p.html
+++ b/htroot/PerformanceQueues_p.html
@@ -1,234 +1,247 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Performance Settings of Queues and Processes</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuPerformance.template%#
-<br>
-<h2>Performance Settings of Queues and Processes</h2>
-
-<p>
-<div class=small><b>Scheduled tasks overview and waiting time settings:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Thread</td>
-<td class="small">Queue Size</td>
-<td class="small" colspan="2">Total<br>Block Time</td>
-<td class="small" colspan="2">Total<br>Sleep Time</td>
-<td class="small" colspan="2">Total<br>Exec Time</td>
-<td class="small">Total<br>Cycles</td>
-<td class="small">Idle<br>Cycles</td>
-<td class="small">Busy<br>Cycles</td>
-<td class="small">Short Mem<br>Cycles</td>
-<td class="small">Sleep Time<br>per Cycle<br>(millis)</td>
-<td class="small">Exec Time<br>per Busy-Cycle<br>(millis)</td>
-<td class="small">Memoy Use<br>per Busy-Cycle<br>(kbytes)</td>
-<td class="small">Delay between<br>idle loops</td>
-<td class="small">Delay between<br>busy loops</td>
-<td class="small">Minimum of<br>Required Memory</td>
-<td class="small">Full Description</td>
-</tr>
-#{table}#
-<tr class="TableCellDark">
-<td class="small" align="left">#[shortdescr]#</td>
-<td class="small" align="right">#[queuesize]#</td>
-<td class="small" align="right">#[blocktime]#&nbsp;sec</td>
-<td class="small" align="right">#[blockpercent]#%</td>
-<td class="small" align="right">#[sleeptime]#&nbsp;sec</td>
-<td class="small" align="right">#[sleeppercent]#%</td>
-<td class="small" align="right">#[exectime]#&nbsp;sec</td>
-<td class="small" align="right">#[execpercent]#%</td>
-<td class="small" align="right">#[totalcycles]#</td>
-<td class="small" align="right">#[idlecycles]#</td>
-<td class="small" align="right">#[busycycles]#</td>
-<td class="small" align="right">#[memscycles]#</td>
-<td class="small" align="right">#[sleeppercycle]#</td>
-<td class="small" align="right">#[execpercycle]#</td>
-<td class="small" align="right">#[memusepercycle]#</td>
-<td class="small" align="right"><input name="#[threadname]#_idlesleep" type="text" align="right" size="7" maxlength="7" value="#[idlesleep]#"> milliseconds</td>
-<td class="small" align="right"><input name="#[threadname]#_busysleep" type="text" align="right" size="7" maxlength="7" value="#[busysleep]#"> milliseconds</td>
-<td class="small" align="right"><input name="#[threadname]#_memprereq" type="text" align="right" size="5" maxlength="5" value="#[memprereq]#"> kbytes</td>
-<td class="small" align="left">#[longdescr]#</td>
-</tr>
-#{/table}#
-<tr class="TableCellLight">
-<td class="small" align="left" colspan="19">
-<input type="submit" name="submitdelay" value="Submit New Delay Values">&nbsp;&nbsp;&nbsp;
-<input type="submit" name="submitdefault" value="Reset To Default Values">&nbsp;&nbsp;&nbsp;
-Changes take effect immediately</td>
-</tr>
-</form>
-</table>
-</p>
-
-<p>
-<div class=small><b>Cache Settings:</b></div>
-<form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
- <tr valign="top" class="TableHeader">
- <td class=small>Cache Type</td>
- <td class=small>Indexing</td>
- <td class=small>DHT</td>
- <td class=small>Description</td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>URLs in RAM cache:</td>
- <td class=small colspan="2" align="center">#[urlCacheSize]#</td>
- <td class=small>
- This is the size of the URL cache. Its purpose is to buffer incoming URLs
- in case of search result transmission and during DHT transfer.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Words in RAM cache:</td>
- <td class=small>#[wordCacheWSize]#</td>
- <td class=small>#[wordCacheKSize]#</td>
- <td class=small>
- This is the current size of the word caches.
- The indexing cache speeds up the indexing process, the DHT cache holds indexes temporary for approval.
- The maximum of this caches can be set below.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Maximum URLs currently assigned<br>to one cached word:</td>
- <td class=small>#[maxURLinWCache]#</td>
- <td class=small>not controlled<br>for DHT cache</td>
- <td class=small>
- This is the maximum size of URLs assigned to a single word cache entry.
- If this is a big number, it shows that the caching works efficiently.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Maximum age of a word:</td>
- <td class=small>#[maxAgeOfWCache]#</td>
- <td class=small>#[maxAgeOfKCache]#</td>
- <td class=small>
- This is the maximum age of a word in an index in minutes.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Minimum age of a word:</td>
- <td class=small>#[minAgeOfWCache]#</td>
- <td class=small>#[minAgeOfKCache]#</td>
- <td class=small>
- This is the minimum age of a word in an index in minutes.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Maximum number of words in cache:</td>
- <td class=small colspan="2"><input name="wordCacheMaxCount" type="text" size="20" maxlength="100" value="#[wordCacheMaxCount]#"></td>
- <td class=small>
- This is is the number of word indexes that shall be held in the
- ram cache during indexing. When YaCy is shut down, this cache must be
- flushed to disc; this may last some minutes.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>Initial space of words in cache:</td>
- <td class=small colspan="2"><input name="wordCacheInitCount" type="text" size="20" maxlength="100" value="#[wordCacheInitCount]#"></td>
- <td class=small>
- This is is the init size of space for words in cache.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>word-flush idle divisor:</td>
- <td class=small colspan="2"><input name="wordFlushIdleDivisor" type="text" size="20" maxlength="100" value="#[wordFlushIdleDivisor]#"></td>
- <td class=small rowspan="2">
- The word flush divisor is applied when an indexing loop is executed.
- The divisor is used to divide the number of words in the cache; the result is the number of words that are flushed.
- The idleDivisor is used if the indexing queue is empty, the busyDivisor is used if the indexing queue contains at least one element.
- </td>
- </tr>
- <tr valign="top" class="TableCellDark">
- <td class=small>word-flush busy divisor:</td>
- <td class=small colspan="2"><input name="wordFlushBusyDivisor" type="text" size="20" maxlength="100" value="#[wordFlushBusyDivisor]#"></td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small colspan="4">
- <input type="submit" name="cacheSizeSubmit" value="Enter New Cache Size">
- Changes take effect immediately</td>
- </tr>
-</table>
-</form>
-</p>
-
-<p>
-<div class=small><b>Thread pool settings:</b></div>
-<form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableHeader" valign="bottom">
-<td class="small" width="150">Thread Pool</td>
-<td class="small" width="80">maximum Active</td>
-<td class="small" width="80">maximum Idle</td>
-<td class="small" width="80">minimum Idle</td>
-<td class="small" width="80">current Active</td>
-<td class="small" width="80">current Idle</td>
-<td class="small">Full Description</td>
-</tr>
-#{pool}#
-<tr class="TableCellDark">
-<td class="small" align="left">#[name]#</td>
-<td class="small" align="right"><input name="#[name]#_maxActive" type="text" size="8" maxlength="8" value="#[maxActive]#"></td>
-<td class="small" align="right"><input name="#[name]#_maxIdle" type="text" size="8" maxlength="8" value="#[maxIdle]#"></td>
-<td class="small" align="right"><input name="#[name]#_minIdle" type="text" size="8" maxlength="8" value="#[minIdle]#" #(minIdleConfigurable)#disabled="disabled"::#(/minIdleConfigurable)#></td>
-<td class="small" align="right">#[numActive]#</td>
-<td class="small" align="right">#[numIdle]#</td>
-<td class="small" align="left"></td>
-</tr>
-#{/pool}#
-<tr class="TableCellLight">
-<td class="small" align="left" colspan="7">
-<input type="submit" name="poolConfig" value="Enter new Threadpool Configuration">
-Changes take effect immediately</td>
-</tr>
-</table>
-</p></form>
-
-<p>
-<div class=small><b>Index Assortments:</b></div>
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
- #{assortmentCluster}#
- <tr valign="top" class="TableCellDark">
- <td class=small>Assortments #[assortmentSlots]#:</td>
- <td class=small align="right">#[assortmentSizeA]#</td>
- <td class=small align="right">#[assortmentSizeB]#</td>
- <td class=small align="right">#[assortmentSizeC]#</td>
- <td class=small align="right">#[assortmentSizeD]#</td>
- <td class=small align="right">#[assortmentSizeE]#</td>
- <td class=small align="right">#[assortmentSizeF]#</td>
- <td class=small align="right">#[assortmentSizeG]#</td>
- <td class=small align="right">#[assortmentSizeH]#</td>
- </tr>
- #{/assortmentCluster}#
-</table>
-</p>
-
-<p>
-<div class=small><b>Proxy Performance Settings:</b></div>
-<form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
- <tr valign="top" class="TableCellDark">
- <td class=small>Online Caution Delay (milliseconds):</td>
- <td class=small><input name="onlineCautionDelay" type="text" size="20" maxlength="100" value="#[onlineCautionDelay]#"></td>
- <td class=small>
- This is the time that the crawler idles when the proxy is accessed. The delay is extended by this time
- each time the proxy is accessed afterwards. This shall improve performance of the proxy throughput.
- (current delta is #[onlineCautionDelayCurrent]# milliseconds since last proxy access.)
- </td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small colspan="3">
- <input type="submit" name="proxyControlSubmit" value="Enter New Parameters">
- Changes take effect immediately</td>
- </tr>
-</table>
-</form>
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Performance Settings of Queues and Processes</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="PerformanceQueues">
+ #%env/templates/header.template%#
+ #%env/templates/submenuPerformance.template%#
+ <h2>Performance Settings of Queues and Processes</h2>
+
+ <p>
+ <strong>Scheduled tasks overview and waiting time settings:</strong>
+ </p>
+ <form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>Thread</td>
+ <td>Queue Size</td>
+ <td colspan="2">Total<br />Block Time</td>
+ <td colspan="2">Total<br />Sleep Time</td>
+ <td colspan="2">Total<br />Exec Time</td>
+ <td>Total<br />Cycles</td>
+ <td>Idle<br />Cycles</td>
+ <td>Busy<br />Cycles</td>
+ <td>Short Mem<br />Cycles</td>
+ <td>Sleep Time<br />per Cycle<br />(millis)</td>
+ <td>Exec Time<br />per Busy-Cycle<br />(millis)</td>
+ <td>Memoy Use<br />per Busy-Cycle<br />(kbytes)</td>
+ <td>Delay between<br />idle loops</td>
+ <td>Delay between<br />busy loops</td>
+ <td>Minimum of<br />Required Memory</td>
+ <td>Full Description</td>
+ </tr>
+ #{table}#
+ <tr class="TableCellDark">
+ <td align="left">#[shortdescr]#</td>
+ <td align="right">#[queuesize]#</td>
+ <td align="right">#[blocktime]#&nbsp;sec</td>
+ <td align="right">#[blockpercent]#%</td>
+ <td align="right">#[sleeptime]#&nbsp;sec</td>
+ <td align="right">#[sleeppercent]#%</td>
+ <td align="right">#[exectime]#&nbsp;sec</td>
+ <td align="right">#[execpercent]#%</td>
+ <td align="right">#[totalcycles]#</td>
+ <td align="right">#[idlecycles]#</td>
+ <td align="right">#[busycycles]#</td>
+ <td align="right">#[memscycles]#</td>
+ <td align="right">#[sleeppercycle]#</td>
+ <td align="right">#[execpercycle]#</td>
+ <td align="right">#[memusepercycle]#</td>
+ <td align="right"><input name="#[threadname]#_idlesleep" size="7" maxlength="7" value="#[idlesleep]#" /> milliseconds</td>
+ <td align="right"><input name="#[threadname]#_busysleep" size="7" maxlength="7" value="#[busysleep]#" /> milliseconds</td>
+ <td align="right"><input name="#[threadname]#_memprereq" size="5" maxlength="5" value="#[memprereq]#" /> kbytes</td>
+ <td align="left">#[longdescr]#</td>
+ </tr>
+ #{/table}#
+ <tr class="TableCellLight">
+ <td align="left" colspan="19">
+ <input type="submit" name="submitdelay" value="Submit New Delay Values" />&nbsp;&nbsp;&nbsp;
+ <input type="submit" name="submitdefault" value="Reset To Default Values" />&nbsp;&nbsp;&nbsp;
+ Changes take effect immediately</td>
+ </tr>
+ </table>
+ </form>
+
+ <p>
+ <strong>Cache Settings:</strong>
+ </p>
+ <form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr valign="top" class="TableHeader">
+ <td>Cache Type</td>
+ <td>Indexing</td>
+ <td>DHT</td>
+ <td>Description</td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>URLs in RAM cache:</td>
+ <td colspan="2" align="center">#[urlCacheSize]#</td>
+ <td>
+ This is the size of the URL cache. Its purpose is to buffer incoming URLs
+ in case of search result transmission and during DHT transfer.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Words in RAM cache:</td>
+ <td>#[wordCacheWSize]#</td>
+ <td>#[wordCacheKSize]#</td>
+ <td>
+ This is the current size of the word caches.
+ The indexing cache speeds up the indexing process, the DHT cache holds indexes temporary for approval.
+ The maximum of this caches can be set below.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Maximum URLs currently assigned<br />to one cached word:</td>
+ <td>#[maxURLinWCache]#</td>
+ <td>not controlled<br />for DHT cache</td>
+ <td>
+ This is the maximum size of URLs assigned to a single word cache entry.
+ If this is a big number, it shows that the caching works efficiently.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Maximum age of a word:</td>
+ <td>#[maxAgeOfWCache]#</td>
+ <td>#[maxAgeOfKCache]#</td>
+ <td>
+ This is the maximum age of a word in an index in minutes.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Minimum age of a word:</td>
+ <td>#[minAgeOfWCache]#</td>
+ <td>#[minAgeOfKCache]#</td>
+ <td>
+ This is the minimum age of a word in an index in minutes.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Maximum number of words in cache:</td>
+ <td colspan="2">
+ <input name="wordCacheMaxCount" type="text" size="20" maxlength="100" value="#[wordCacheMaxCount]#" />
+ </td>
+ <td>
+ This is is the number of word indexes that shall be held in the
+ ram cache during indexing. When YaCy is shut down, this cache must be
+ flushed to disc; this may last some minutes.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>Initial space of words in cache:</td>
+ <td colspan="2">
+ <input name="wordCacheInitCount" type="text" size="20" maxlength="100" value="#[wordCacheInitCount]#" />
+ </td>
+ <td>
+ This is is the init size of space for words in cache.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>word-flush idle divisor:</td>
+ <td colspan="2">
+ <input name="wordFlushIdleDivisor" type="text" size="20" maxlength="100" value="#[wordFlushIdleDivisor]#" />
+ </td>
+ <td rowspan="2">
+ The word flush divisor is applied when an indexing loop is executed.
+ The divisor is used to divide the number of words in the cache; the result is the number of words that are flushed.
+ The idleDivisor is used if the indexing queue is empty, the busyDivisor is used if the indexing queue contains at least one element.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellDark">
+ <td>word-flush busy divisor:</td>
+ <td colspan="2">
+ <input name="wordFlushBusyDivisor" type="text" size="20" maxlength="100" value="#[wordFlushBusyDivisor]#" />
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td colspan="4">
+ <input type="submit" name="cacheSizeSubmit" value="Enter New Cache Size" />
+ Changes take effect immediately</td>
+ </tr>
+ </table>
+ </form>
+
+ <p>
+ <strong>Thread pool settings:</strong>
+ </p>
+ <form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="2" cellspacing="1">
+ <colgroup>
+ <col width="150" />
+ <col width="80" span="5" />
+ <col />
+ </colgroup>
+ <tr class="TableHeader" valign="bottom">
+ <td>Thread Pool</td>
+ <td>maximum Active</td>
+ <td>maximum Idle</td>
+ <td>minimum Idle</td>
+ <td>current Active</td>
+ <td>current Idle</td>
+ <td>Full Description</td>
+ </tr>
+ #{pool}#
+ <tr class="TableCellDark">
+ <td align="left">#[name]#</td>
+ <td align="right"><input name="#[name]#_maxActive" type="text" size="8" maxlength="8" value="#[maxActive]#" /></td>
+ <td align="right"><input name="#[name]#_maxIdle" type="text" size="8" maxlength="8" value="#[maxIdle]#" /></td>
+ <td align="right"><input name="#[name]#_minIdle" type="text" size="8" maxlength="8" value="#[minIdle]#" #(minIdleConfigurable)#disabled="disabled"::#(/minIdleConfigurable)# /></td>
+ <td align="right">#[numActive]#</td>
+ <td align="right">#[numIdle]#</td>
+ <td align="left"></td>
+ </tr>
+ #{/pool}#
+ <tr class="TableCellLight">
+ <td align="left" colspan="7">
+ <input type="submit" name="poolConfig" value="Enter new Threadpool Configuration" />
+ Changes take effect immediately</td>
+ </tr>
+ </table>
+ </form>
+
+ <p>
+ <strong>Index Assortments:</strong>
+ </p>
+ <table border="0" cellpadding="5" cellspacing="1">
+ #{assortmentCluster}#
+ <tr valign="top" class="TableCellDark">
+ <td>Assortments #[assortmentSlots]#:</td>
+ <td align="right">#[assortmentSizeA]#</td>
+ <td align="right">#[assortmentSizeB]#</td>
+ <td align="right">#[assortmentSizeC]#</td>
+ <td align="right">#[assortmentSizeD]#</td>
+ <td align="right">#[assortmentSizeE]#</td>
+ <td align="right">#[assortmentSizeF]#</td>
+ <td align="right">#[assortmentSizeG]#</td>
+ <td align="right">#[assortmentSizeH]#</td>
+ </tr>
+ #{/assortmentCluster}#
+ </table>
+
+ <p>
+ <strong>Proxy Performance Settings:</strong>
+ </p>
+ <form action="PerformanceQueues_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr valign="top" class="TableCellDark">
+ <td>Online Caution Delay (milliseconds):</td>
+ <td><input name="onlineCautionDelay" type="text" size="20" maxlength="100" value="#[onlineCautionDelay]#" /></td>
+ <td>
+ This is the time that the crawler idles when the proxy is accessed. The delay is extended by this time
+ each time the proxy is accessed afterwards. This shall improve performance of the proxy throughput.
+ (current delta is #[onlineCautionDelayCurrent]# milliseconds since last proxy access.)
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td colspan="3">
+ <input type="submit" name="proxyControlSubmit" value="Enter New Parameters" />
+ Changes take effect immediately</td>
+ </tr>
+ </table>
+ </form>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/PerformanceQueues_p.java b/htroot/PerformanceQueues_p.java
index 0492fbe67..05e5f6609 100644
--- a/htroot/PerformanceQueues_p.java
+++ b/htroot/PerformanceQueues_p.java
@@ -97,7 +97,7 @@ public class PerformanceQueues_p {
// set values to templates
prop.put("table_" + c + "_threadname", threadName);
- prop.put("table_" + c + "_shortdescr", (thread.getMonitorURL() == null) ? thread.getShortDescription() : "<a href=\"" + thread.getMonitorURL() + "\" class=?\"small\">" + thread.getShortDescription() + "</a>");
+ prop.put("table_" + c + "_shortdescr", (thread.getMonitorURL() == null) ? thread.getShortDescription() : "<a href=\"" + thread.getMonitorURL() + "\">" + thread.getShortDescription() + "</a>");
prop.put("table_" + c + "_longdescr", thread.getLongDescription());
queuesize = thread.getJobCount();
prop.put("table_" + c + "_queuesize", (queuesize == Integer.MAX_VALUE) ? "unlimited" : Integer.toString(queuesize));
@@ -258,7 +258,7 @@ public class PerformanceQueues_p {
}
// table cache settings
- prop.put("urlCacheSize", switchboard.urlPool.loadedURL.writeCacheSize());
+ prop.put("urlCacheSize", switchboard.urlPool.loadedURL.writeCacheSize());
prop.put("wordCacheWSize", switchboard.wordIndex.wSize());
prop.put("wordCacheKSize", switchboard.wordIndex.kSize());
prop.put("maxURLinWCache", "" + switchboard.wordIndex.maxURLinWCache());
@@ -313,7 +313,7 @@ public class PerformanceQueues_p {
prop.put("pool_2_maxActive",stackerPoolConfig.maxActive);
prop.put("pool_2_maxIdle",stackerPoolConfig.maxIdle);
prop.put("pool_2_minIdleConfigurable",1);
- prop.put("pool_2_minIdle",stackerPoolConfig.minIdle);
+ prop.put("pool_2_minIdle",stackerPoolConfig.minIdle);
prop.put("pool_2_numActive",switchboard.sbStackCrawlThread.getNumActiveWorker());
prop.put("pool_2_numIdle",switchboard.sbStackCrawlThread.getNumIdleWorker());
prop.put("pool",3);
diff --git a/htroot/PerformanceSearch_p.html b/htroot/PerformanceSearch_p.html
index e3a848130..787149224 100644
--- a/htroot/PerformanceSearch_p.html
+++ b/htroot/PerformanceSearch_p.html
@@ -1,118 +1,117 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Performance Settings of Search Sequence</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-#%env/templates/submenuPerformance.template%#
-<br>
-<h2>Timing Settings of Search Sequence</h2>
-
-<p>
-<div class=small><b>Settings for local search profile:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<form action="PerformanceSearch_p.html" method="post" enctype="multipart/form-data">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Entity</td>
-<td class="small">Collection</td>
-<td class="small">Join</td>
-<td class="small">Pre-Sort</td>
-<td class="small">URL Fetch</td>
-<td class="small">Post-Sort</td>
-<td class="small">Filter</td>
-<td class="small">Snippet-Fetch</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">execution Time (percentage; sum of this must be 100)</td>
-<td class="small" align="right"><input name="searchProcessLocalTime_c" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_c]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_j" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_j]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_r" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_r]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_u" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_u]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_o" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_o]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_f" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_f]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalTime_s" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalTime_s]#"></td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">result count (percentage of requested amount)</td>
-<td class="small" align="right"><input name="searchProcessLocalCount_c" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_c]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_j" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_j]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_r" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_r]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_u" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_u]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_o" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_o]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_f" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_f]#"></td>
-<td class="small" align="right"><input name="searchProcessLocalCount_s" type="text" align="right" size="8" maxlength="8" value="#[searchProcessLocalCount_s]#"></td>
-</tr>
-<tr class="TableCellLight">
-<td class="small" align="left" colspan="8">
-<input type="submit" name="submitlocalprofilecustom" value="Submit New Profile Values">&nbsp;&nbsp;&nbsp;
-<input type="submit" name="submitlocalprofiledefault" value="Reset To Default Values">&nbsp;&nbsp;&nbsp;
-</td>
-</tr>
-</form>
-</table>
-</p>
-
-#(submitlocalrespond)#
-::
-<p>Your settings are valid and will be used for next search.</p>
-::
-<p>Reset to default settings done.</p>
-::
-<p>Your settings cannot be accepted: sum of execution time percentage is not 100</p>
-#(/submitlocalrespond)#
-
-<p>
-<div class=small><b>Timing results of latest search request:</b></div>
-<table border="0" cellpadding="2" cellspacing="1">
-<tr class="TableHeader" valign="bottom">
-<td class="small">Entity</td>
-<td class="small">Collection</td>
-<td class="small">Join</td>
-<td class="small">Pre-Sort</td>
-<td class="small">URL Fetch</td>
-<td class="small">Post-Sort</td>
-<td class="small">Filter</td>
-<td class="small">Snippet-Fetch</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">execution Time (absolute milliseconds)</td>
-<td class="small" align="right">#[latestLocalTimeAbs_c]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_j]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_r]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_u]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_o]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_f]#</td>
-<td class="small" align="right">#[latestLocalTimeAbs_s]#</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">execution Time (relative)</td>
-<td class="small" align="right">#[latestLocalTimeRel_c]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_j]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_r]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_u]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_o]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_f]#</td>
-<td class="small" align="right">#[latestLocalTimeRel_s]#</td>
-</tr>
-<tr class="TableCellDark">
-<td class="small" align="left">result count (absolute amount)</td>
-<td class="small" align="right">#[latestLocalCountAbs_c]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_j]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_r]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_u]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_o]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_f]#</td>
-<td class="small" align="right">#[latestLocalCountAbs_s]#</td>
-</tr>
-</table>
-</p>
-
-<p>
-The network picture below shows how the latest search query was solved by asking corresponding peers in the DHT:
-<img src="SearchEventPicture.png">
-</p>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Performance Settings of Search Sequence</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="PerformanceSearch">
+ #%env/templates/header.template%#
+ #%env/templates/submenuPerformance.template%#
+ <h2>Timing Settings of Search Sequence</h2>
+
+ <p>
+ <strong>Settings for local search profile:</strong>
+ </p>
+ <form action="PerformanceSearch_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>Entity</td>
+ <td>Collection</td>
+ <td>Join</td>
+ <td>Pre-Sort</td>
+ <td>URL Fetch</td>
+ <td>Post-Sort</td>
+ <td>Filter</td>
+ <td>Snippet-Fetch</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">execution Time (percentage; sum of this must be 100)</td>
+ <td align="right"><input name="searchProcessLocalTime_c" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_c]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_j" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_j]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_r" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_r]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_u" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_u]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_o" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_o]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_f" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_f]#" /></td>
+ <td align="right"><input name="searchProcessLocalTime_s" type="text" size="8" maxlength="8" value="#[searchProcessLocalTime_s]#" /></td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">result count (percentage of requested amount)</td>
+ <td align="right"><input name="searchProcessLocalCount_c" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_c]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_j" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_j]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_r" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_r]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_u" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_u]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_o" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_o]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_f" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_f]#" /></td>
+ <td align="right"><input name="searchProcessLocalCount_s" type="text" size="8" maxlength="8" value="#[searchProcessLocalCount_s]#" /></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td align="left" colspan="8">
+ <input type="submit" name="submitlocalprofilecustom" value="Submit New Profile Values" />&nbsp;&nbsp;&nbsp;
+ <input type="submit" name="submitlocalprofiledefault" value="Reset To Default Values" />&nbsp;&nbsp;&nbsp;
+ </td>
+ </tr>
+ </table>
+ </form>
+
+ #(submitlocalrespond)#
+ ::
+ <p>Your settings are valid and will be used for next search.</p>
+ ::
+ <p>Reset to default settings done.</p>
+ ::
+ <p>Your settings cannot be accepted: sum of execution time percentage is not 100</p>
+ #(/submitlocalrespond)#
+
+ <p>
+ <strong>Timing results of latest search request:</strong>
+ </p>
+ <table border="0" cellpadding="2" cellspacing="1">
+ <tr class="TableHeader" valign="bottom">
+ <td>Entity</td>
+ <td>Collection</td>
+ <td>Join</td>
+ <td>Pre-Sort</td>
+ <td>URL Fetch</td>
+ <td>Post-Sort</td>
+ <td>Filter</td>
+ <td>Snippet-Fetch</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">execution Time (absolute milliseconds)</td>
+ <td align="right">#[latestLocalTimeAbs_c]#</td>
+ <td align="right">#[latestLocalTimeAbs_j]#</td>
+ <td align="right">#[latestLocalTimeAbs_r]#</td>
+ <td align="right">#[latestLocalTimeAbs_u]#</td>
+ <td align="right">#[latestLocalTimeAbs_o]#</td>
+ <td align="right">#[latestLocalTimeAbs_f]#</td>
+ <td align="right">#[latestLocalTimeAbs_s]#</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">execution Time (relative)</td>
+ <td align="right">#[latestLocalTimeRel_c]#</td>
+ <td align="right">#[latestLocalTimeRel_j]#</td>
+ <td align="right">#[latestLocalTimeRel_r]#</td>
+ <td align="right">#[latestLocalTimeRel_u]#</td>
+ <td align="right">#[latestLocalTimeRel_o]#</td>
+ <td align="right">#[latestLocalTimeRel_f]#</td>
+ <td align="right">#[latestLocalTimeRel_s]#</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td align="left">result count (absolute amount)</td>
+ <td align="right">#[latestLocalCountAbs_c]#</td>
+ <td align="right">#[latestLocalCountAbs_j]#</td>
+ <td align="right">#[latestLocalCountAbs_r]#</td>
+ <td align="right">#[latestLocalCountAbs_u]#</td>
+ <td align="right">#[latestLocalCountAbs_o]#</td>
+ <td align="right">#[latestLocalCountAbs_f]#</td>
+ <td align="right">#[latestLocalCountAbs_s]#</td>
+ </tr>
+ </table>
+
+ <p>
+ The network picture below shows how the latest search query was solved by asking corresponding peers in the DHT:
+ <img src="SearchEventPicture.png" alt="Search event picture" />
+ </p>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/ProxyIndexingMonitor_p.html b/htroot/ProxyIndexingMonitor_p.html
index 3f3f45a44..6a744e34d 100644
--- a/htroot/ProxyIndexingMonitor_p.html
+++ b/htroot/ProxyIndexingMonitor_p.html
@@ -1,100 +1,101 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Proxy Index Monitor</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Index Monitor for Proxy Indexing</h2>
-<p>
-This is the control page for web pages that your peer has indexed during the current application run-time
-as result of proxy fetch/prefetch.
-<b>No personal or protected page is indexed</b>;
-those pages are detected by properties in the HTTP header (like Cookie-Use, or HTTP Authorization)
-or by POST-Parameters (either in URL or as HTTP protocol)
-and automatically excluded from indexing.
-</p>
-
-<p><form action="ProxyIndexingMonitor_p.html" method="post" enctype="multipart/form-data">
-
-<table border="0" cellpadding="5" cellspacing="1" width="100%">
- <tr class="TableCellDark">
- <td colspan="3"><div class=small><b>Proxy pre-fetch setting:</b>
-this is an automated html page loading procedure that takes actual proxy-requested
-URLs as crawling start points for crawling.</div></td>
- </tr>
-
- <tr valign="top" class="TableCellLight">
- <td class=small>Prefetch Depth</td>
- <td class=small><input name="proxyPrefetchDepth" type="text" size="2" maxlength="2" value="#[proxyPrefetchDepth]#"></td>
- <td class=small>
- A prefetch of 0 means no prefetch; a prefetch of 1 means to prefetch all
- embedded URLs, but since embedded image links are loaded by the browser
- this means that only embedded href-anchors are prefetched additionally.</td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Store to Cache</td>
- <td class=small><input type="checkbox" name="proxyStoreHTCache" align="top" #(proxyStoreHTCacheChecked)#::checked#(/proxyStoreHTCacheChecked)#></td>
- <td class=small>It is almost always recommended to set this on. The only exception is that you have another caching proxy running as secondary proxy and YaCy is configured to used that proxy in proxy-proxy - mode.</td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Do Remote Indexing</td>
- <td class=small><input type="checkbox" name="proxyCrawlOrder" align="top" #(proxyCrawlOrder)#::checked#(/proxyCrawlOrder)#></td>
- <td class=small>If checked, the crawler will contact other peers and use them as remote indexers for your crawl.
- If you need your crawling results locally, you should switch this off.
- Only senior and principal peers can initiate or receive remote crawls.
- Please note that this setting only take effect for a prefetch depth greater than 0.</td>
- </tr>
-
- <tr class="TableCellDark">
- <td colspan="3"><div class=small><b>Proxy generally</b></div></td>
- </tr>
-
- <tr valign="top" class="TableCellLight">
- <td class=small>Path</td>
- <td class=small><input name="proxyCache" type="text" size="20" maxlength="300" value="#[proxyCache]#"></td>
- <td class=small>The path where the pages are stored (max. length 300)</td>
- </tr>
- <tr valign="top" class="TableCellLight">
- <td class=small>Size</td>
- <td class=small><input name="proxyCacheSize" type="text" size="8" maxlength="24" value="#[proxyCacheSize]#"></td>
- <td class=small>The size in MB of the cache.</td>
- </tr>
-
- <tr valign="top" class="TableCellDark">
- <td class=small colspan="1">&nbsp;</td>
- <td class=small colspan="2"><input type="submit" name="proxyprofileset" value="Set proxy profile"></td>
- </tr>
-</table>
-</form></p>
-
-<p>
-#(info)#
-<!-- info 0 -->
-::
-<!-- info 1 -->
-<b>The file DATA/PLASMADB/crawlProfiles0.db is missing or corrupted.
-Please delete that file and restart.</b><br>
-::
-<!-- info 2 -->
-<b>Pre-fetch is now set to depth-#[message]#.</b><br>
-<b>Caching is now #(caching)#off::on#(/caching)#.</b><br>
-<b>Remote Indexing is now #(crawlOrder)#off::on#(/crawlOrder)#.</b><br>
-#(path)#::<b>Cachepath is now set to '#[return]#'.</b> Please move the old data in the new directory.<br>#(/path)#
-#(size)#::<b>Cachesize is now set to #[return]#MB.</b><br>#(/size)#
-#(restart)#::<br><font color="red"><b>Changes will take effect after restart only.</b></font><br>#(/restart)#
-::
-<!-- info 3 -->
-<b>An error has occurred: #[error]#.</b><br>
-#(/info)#
-</p>
-
-<p>You can see a snapshot of recently indexed pages
-on the <a href="/IndexMonitor.html?process=4">Proxy Index Monitor</a> Page.
-</p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Proxy Index Monitor</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ProxyIndexingMonitor">
+ #%env/templates/header.template%#
+ <h2>Index Monitor for Proxy Indexing</h2>
+ <p>
+ This is the control page for web pages that your peer has indexed during the current application run-time
+ as result of proxy fetch/prefetch.
+ <strong>No personal or protected page is indexed</strong>;
+ those pages are detected by properties in the HTTP header (like Cookie-Use, or HTTP Authorization)
+ or by POST-Parameters (either in URL or as HTTP protocol)
+ and automatically excluded from indexing.
+ </p>
+
+ <form action="ProxyIndexingMonitor_p.html" method="post" enctype="multipart/form-data">
+ <table border="0" cellpadding="5" cellspacing="1">
+ <tr class="TableCellDark">
+ <td colspan="3"><strong>Proxy pre-fetch setting:</strong>
+ this is an automated html page loading procedure that takes actual proxy-requested
+ URLs as crawling start points for crawling.</td>
+ </tr>
+
+ <tr valign="top" class="TableCellLight">
+ <td>Prefetch Depth</td>
+ <td><input name="proxyPrefetchDepth" type="text" size="2" maxlength="2" value="#[proxyPrefetchDepth]#" /></td>
+ <td>
+ A prefetch of 0 means no prefetch; a prefetch of 1 means to prefetch all
+ embedded URLs, but since embedded image links are loaded by the browser
+ this means that only embedded href-anchors are prefetched additionally.
+ </td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Store to Cache</td>
+ <td><input type="checkbox" name="proxyStoreHTCache" #(proxyStoreHTCacheChecked)#::checked="checked"#(/proxyStoreHTCacheChecked)# /></td>
+ <td>It is almost always recommended to set this on. The only exception is that you have another caching proxy running as secondary proxy and YaCy is configured to used that proxy in proxy-proxy - mode.</td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Do Remote Indexing</td>
+ <td><input type="checkbox" name="proxyCrawlOrder" #(proxyCrawlOrder)#::checked="checked"#(/proxyCrawlOrder)# /></td>
+ <td>
+ If checked, the crawler will contact other peers and use them as remote indexers for your crawl.
+ If you need your crawling results locally, you should switch this off.
+ Only senior and principal peers can initiate or receive remote crawls.
+ Please note that this setting only take effect for a prefetch depth greater than 0.
+ </td>
+ </tr>
+
+ <tr class="TableCellDark">
+ <td colspan="3"><strong>Proxy generally</strong></td>
+ </tr>
+
+ <tr valign="top" class="TableCellLight">
+ <td>Path</td>
+ <td><input name="proxyCache" type="text" size="20" maxlength="300" value="#[proxyCache]#" /></td>
+ <td>The path where the pages are stored (max. length 300)</td>
+ </tr>
+ <tr valign="top" class="TableCellLight">
+ <td>Size</td>
+ <td><input name="proxyCacheSize" type="text" size="8" maxlength="24" value="#[proxyCacheSize]#" /></td>
+ <td>The size in MB of the cache.</td>
+ </tr>
+
+ <tr valign="top" class="TableCellDark">
+ <td colspan="1">&nbsp;</td>
+ <td colspan="2"><input type="submit" name="proxyprofileset" value="Set proxy profile" /></td>
+ </tr>
+ </table>
+ </form>
+
+
+ #(info)#
+ <!-- info 0 -->
+ ::
+ <!-- info 1 -->
+ <p><strong>The file DATA/PLASMADB/crawlProfiles0.db is missing or corrupted.
+ Please delete that file and restart.</strong></p>
+ ::
+ <!-- info 2 -->
+ <p><strong>Pre-fetch is now set to depth-#[message]#.</strong></p>
+ <p><strong>Caching is now #(caching)#off::on#(/caching)#.</strong></p>
+ <p><strong>Remote Indexing is now #(crawlOrder)#off::on#(/crawlOrder)#.</strong></p>
+ #(path)#::<p><strong>Cachepath is now set to '#[return]#'.</strong> Please move the old data in the new directory.</p>#(/path)#
+ #(size)#::<p><strong>Cachesize is now set to #[return]#MB.</strong></p>#(/size)#
+ #(restart)#::<p style="color:red;"><strong>Changes will take effect after restart only.</strong></p>#(/restart)#
+ ::
+ <!-- info 3 -->
+ <p><strong>An error has occurred: #[error]#.</strong></p>
+ #(/info)#
+
+ <p>
+ You can see a snapshot of recently indexed pages
+ on the <a href="/IndexMonitor.html?process=4">Proxy Index Monitor</a> Page.
+ </p>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/QuickCrawlLink_p.html b/htroot/QuickCrawlLink_p.html
index f81d0bb18..9d7351baa 100644
--- a/htroot/QuickCrawlLink_p.html
+++ b/htroot/QuickCrawlLink_p.html
@@ -1,70 +1,42 @@
-<html>
-<head>
- <title>YaCy '#[clientname]#': Quick Crawl Link</title>
- #%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-
-<table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr><td>
- <table class="Heading" border="0" cellspacing="0" cellpadding="0" width="100%">
- <tr height="36">
- <td width="240">
- <a href="http://www.yacy.net">
- <img width="52" height="33" border="0" src="/env/grafics/yacy.gif" align="top" alt="YaCy-Logo">
- </a>
- </td>
- <td width="50%" align="center">
- <div class="Headline">#[clientname]#: Quick Crawl Link</div>
- </td>
- <td width="240" align="right">
- </td>
- </tr>
- </table>
-</td></tr>
-</table>
-<br><br>
-
-#(mode)#<!-- 0 -->
-<table style="margin-left: auto; margin-right: auto;">
-<tr>
-<td>
-<b>Quickly adding Bookmarks:</b>
-<p>Simply drag and drop the link shown below to your Browsers Toolbar/Link-Bar.
-If you click on it while browsing, the currently viewed website will be inserted into the YaCy crawling queue for indexing.</p>
-</td>
-</tr>
-<tr>
- <td><a href="javascript:w = window.open('http://#[host]#:#[port]#/QuickCrawlLink_p.html?localIndexing=on&amp;crawlingQ=on&amp;xdstopw=on&amp;title='+escape(document.title)+'&amp;url='+escape(location.href),'_blank','height=150,width=500,resizable=yes,scrollbar=no,directory=no,menubar=no,location=no');w.focus();"><img src="/env/grafics/addlink.png" border="0">&nbsp;Crawl with YaCy</a></td>
-</tr>
-</table>
-
-::<!-- 1 -->
-<table style="margin-left: auto; margin-right: auto;">
-<tr>
- <td><b>Title:</b></td>
- <td>#[title]#</td>
-</tr>
-<tr>
- <td><b>Link:</b></td>
- <td><a href="#[url]#">#[url]#</a></td>
-</tr>
-<tr>
- <td><b>Status:</b></td>
- <td>
- #(status)#<!-- 0 -->
- <font color="green">URL successfully added to Crawler Queue</font>
- ::<!-- 1 -->
- <font color="red">Malformed URL</font>
- ::<!-- 2 -->
- <font color="red">Unable to create new crawling profile for URL: #[error]#</font>
- ::<!-- 3 -->
- <font color="red">Unable to add URL to crawler queue: #[error]#</font>
- #(/status)#
- </td>
-</tr>
-</table>
-#(/mode)#
-
-</body>
+<!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]#': Quick Crawl Link</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="QuickCrawlLink">
+ <div class="head">
+ <h1 class="head">#[clientname]#: Quick Crawl Link</h1>
+ </div>
+ #(mode)#<!-- 0 -->
+ <h4>Quickly adding Bookmarks:</h4>
+ <p>
+ Simply drag and drop the link shown below to your Browsers Toolbar/Link-Bar.
+ If you click on it while browsing, the currently viewed website will be inserted into the YaCy crawling queue for indexing.
+ </p>
+ <p>
+ <a class="BookmarkLink" href="javascript:w = window.open('http://#[host]#:#[port]#/QuickCrawlLink_p.html?localIndexing=on&amp;crawlingQ=on&amp;xdstopw=on&amp;title='+escape(document.title)+'&amp;url='+escape(location.href),'_blank','height=150,width=500,resizable=yes,scrollbar=no,directory=no,menubar=no,location=no');w.focus();">Crawl with YaCy</a>
+ </p>
+
+ ::<!-- 1 -->
+ <dl class="pairs">
+ <dt>Title:</dt>
+ <dd>#[title]#</dd>
+ <dt>Link:</dt>
+ <dd><a href="#[url]#">#[url]#</a></dd>
+ <dt>Status:</dt>
+ #(status)#<!-- 0 -->
+ <dd class="success">URL successfully added to Crawler Queue
+ ::<!-- 1 -->
+ <dd class="error">Malformed URL
+ ::<!-- 2 -->
+ <dd class="error">Unable to create new crawling profile for URL: #[error]#
+ ::<!-- 3 -->
+ <dd class="error">Unable to add URL to crawler queue: #[error]#
+ #(/status)#
+ </dd>
+ </dl>
+ #(/mode)#
+
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/SettingsAck_p.html b/htroot/SettingsAck_p.html
index 9223efda6..63f59e59f 100644
--- a/htroot/SettingsAck_p.html
+++ b/htroot/SettingsAck_p.html
@@ -1,215 +1,226 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Settings Acknowledge</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Settings Receipt:</h2>
-
-<p>
-#(info)#<!-- 0 -->
-<b>No information has been submitted</b><br>
-Nothing changed
-::<!-- 1 -->
-<b>Error with submitted information.</b><br>
-Nothing changed.
-::<!-- 2 -->
-<b>The user name must be given.</b><br>
-Your request cannot be processed.<br>Nothing changed.
-::<!-- 3 -->
-<b>The password redundancy check failed. You have probably misstyped your password.</b><br>
-Your request cannot be processed.<br>Nothing changed.
-::<!-- 4 -->
-<b>Shutting down.</b><br>Application will terminate after working off all crawling tasks.
-::<!-- 5 -->
-<b>Your administration account setting has been made.</b><br>
-Your new administration account name is #[user]#. The password has been accepted.<br>If you go back to the Settings page, you must log-in again.
-::<!-- 6 -->
- <b>Your proxy access setting has been changed.<br>
- Your proxy account check has been disabled, since you did not supply a password.</b><p>
- The new proxy IP filter is set to <div class="settingsValue">#[filter]#</div><br>
- The proxy port is: <div class="settingsValue">#[port]#</div><p>
- #(restart)#
- ::
- Port rebinding will be done in a few seconds.<br>
- You can reach your YaCy server under the new location <a href="http://#[ip]#:#[port]#/">http://#[ip]#:#[port]#/</a>
- #(/restart)#
-::<!-- 7 -->
- <b>Your proxy access setting has been changed.</b><br>
- If you open any public web page through the proxy, you must log-in.<p>
- The new proxy IP filter is set to <span class="settingsValue">#[filter]#</span><br>
- The proxy port is: <span class="settingsValue">#[port]#</span>
- #(restart)#
- ::
- Port rebinding will be done in a view seconds.<br>
- You can reach your YaCy server under the new location <a href="http://#[ip]#:#[port]#/">http://#[ip]#:#[port]#/</a>
- #(/restart)#
-::<!-- 8 -->
-<b>Your server access filter is now set to #[filter]#</b><br>
-<!--Your new server account name is #[user]#. The password has been accepted.<br>
-If you go back to the Settings page, you must log-in again.-->
-::<!-- 9 -->
-Auto pop-up of the Status page is now <b>disabled</b><br>
-::<!-- 10 -->
-Auto pop-up of the Status page is now <b>enabled</b><br>
-::<!-- 11 -->
-You are now permanently <b>online</b>. After a short while you should see the effect on the <a href="Status.html">status</a> page.<br>
-::<!-- 12 -->
-<b>The Peer Name is: <div class="settingsValue">#[peerName]#</div><br>
-<b>Your static Ip(or DynDns) is: <div class="settingsValue">#[staticIP]#</div><br>
-::<!-- 13 -->
-<b>Seed Settings changed.#(success)#::You are now a principal peer.#(/success)#<br>
-::<!-- 14 -->
-<p><b>Seed Settings changed, but something is wrong.</b></p>
-<p><font color="red">#[errormsg]#</font></p>
-Seed Uploading was deactivated automatically.
-Please return to the settings page and modify the data.<br>
-::<!-- 15 -->
-<b>The remote-proxy setting has been changed</b><br>
-The new setting is effective immediately, you don't need to re-start.
-::<!-- 16 -->
-<b>The submitted peer name is already used by another peer. Please choose a different name.</b> The Peer name has not been changed.<br>
-Your Peer Language is: <div class="settingsValue">#[peerLang]#</div><br>
-::<!-- 17 -->
-<b>The submitted peer name is not well-formed. Please choose a different name.</b> The Peer name has not been changed.<br>
-Peer names must not contain characters other than (a-z, A-Z, 0-9, '-', '_') and must not be longer than 80 characters.
-Your Peer Language is: <div class="settingsValue">#[peerLang]#</div><br>
-::<!-- 18 -->
-<p>
-The new parser settings where changed successfully.<br>
-Parsing of the following mime-types was enabled:
-</p>
-<table>
-#{parser}#
-<tr>
- <td class="settingsValue">#[parserMode]#</td>
- <td class="settingsValue">#[enabledMime]#</td>
-</tr>
-#{/parser}#
-</table>
-::<!-- 19 -->
-Seed Upload method was changed successfully.
-#(success)#::<br>You are now a principal peer.#(/success)#
-<p>
-<table>
-<tr>
- <td>Seed Upload Method:</td>
- <td class="settingsValue">#[seedUploadMethod]#</td>
-</tr>
-<tr>
- <td>Seed File URL:</td>
- <td class="settingsValue"><a href="#[seedURL]#">#[seedURL]#</a></td></tr>
-</table>
-::<!-- 20: HTTP-Networking -->
-<p><b>Your proxy networking settings have been changed.</b></p>
-<table>
-<tr>
- <td>Transparent Proxy Support is:</td>
- <td class="settingsValue">#[isTransparentProxy]#</td>
-</tr>
-<tr>
- <td>Connection Keep-Alive Support is:</td>
- <td class="settingsValue">#[connectionKeepAliveSupport]#</td>
-</tr>
-<tr>
- <td>Send via header is:</td>
- <td class="settingsValue">#[proxy.sendViaHeader]#</td>
-</tr>
-<tr>
- <td>Send X-Forwarded-For header is:</td>
- <td class="settingsValue">#[proxy.sendXForwardedForHeader]#</td>
-</tr>
-</table>
-::<!-- 21: message forwarding -->
-<p><b>Your message forwarding settings have been changed.</b></p>
-<table>
-<tr>
- <td>Message Forwarding Support is:</td>
- <td class="settingsValue">#[msgForwardingEnabled]#</td>
-</tr>
-<tr>
- <td>Message Forwarding Command:</td>
- <td class="settingsValue">#[msgForwardingCmd]#</td>
-</tr>
-<tr>
- <td>Recipient Address:</td>
- <td class="settingsValue">#[msgForwardingTo]#</td>
-</tr>
-</table>
-::<!-- 22 -->
-<p><b>Your port forwarding settings have been changed.</b></p>
-<table>
-<tr>
- <td>Port Forwarding Support is:</td>
- <td class="settingsValue">#[portForwarding.Enabled]#</td>
-</tr>
-<tr>
- <td>Port Forwarding Method:</td>
- <td class="settingsValue">#[portForwarding.Type]#</t
-</tr>
-<tr><td colspan="2"><hr></td></tr>
-<tr><td colspan="2"><b>Secure channel specific settings:</b></td></tr>
-<tr>
- <td>Port Forwarding Port:</td>
- <td class="settingsValue">#[portForwarding.sch.Port]#</td>
-</tr>
-<tr>
- <td>Port Forwarding Host:</td>
- <td class="settingsValue">#[portForwarding.sch.HostUser]#@#[portForwarding.sch.Host]#:#[portForwarding.sch.HostPort]#</td>
-</tr>
-<tr>
- <td>Port Forwarding uses proxy:</td>
- <td class="settingsValue">#[portForwarding.sch.UseProxy]#</td>
-</tr>
-</table>
-::<!-- 23 : Port forwarding - error -->
-<p><b>Port Forwarding Settings changed, but something is wrong.</b></p>
-<p><font color="red">#[errormsg]#</font></p>
-Port Forwarding was deactivated automatically.<br>
-Please return to the settings page and modify the data.<br>
-::<!-- 24 -->
-You are now <b>event-based online</b>. After a short while you should see the effect on the <a href="Status.html">status</a> page.<br>
-::<!-- 25 -->
-You are now in <b>Cache Mode</b>. Only Proxy-cache ist available in this mode. After a short while you should see the effect on the <a href="Status.html">status</a> page.<br>
-::<!-- 26 -->
-<p><font color="red">Unable to bild the server to the new Port: <div class="settingsValue">#[port]#</div></font><br>
-This values seems not to be a valid port configuration.
-::<!-- 27 -->
-<p><font color="red"><b>Invalid IP-Number filter:</b> <tt>#[filter]#</tt><br>
-<b>Error in pattern nr #[nr]#</b> "<tt>#[pattern]#</tt>": #[error]#</tt>
-</font>
-</p>
-::<!-- 28 : Crawler settings OK -->
-<p><b>Your crawler settings have been changed.</b></p>
-<table>
-<tr><td colspan="2"><p><b>Generic Settings:</b></p></td></tr>
-<tr>
- <td>Crawler timeout:</td>
- <td class="settingsValue">#[crawler.clientTimeout]#</td>
-</tr>
-<tr><td colspan="2"><p><b>Http Crawler Settings:</b></p></td></tr>
-<tr>
- <td>Maximum Filesize:</td>
- <td class="settingsValue">#[crawler.http.maxFileSize]#</td>
-</tr>
-<tr><td colspan="2"><p><b>Ftp Crawler Settings:</b></p></td></tr>
-<tr>
- <td>Maximum Filesize:</td>
- <td class="settingsValue">#[crawler.ftp.maxFileSize]#</td>
-</tr>
-</table>
-::<!-- 29: Crawler settings timeout error -->
-<p><font color="red"><b>Invalid crawler timeout value:</b> <tt>#[crawler.clientTimeout]#</tt></font></p>
-::<!-- 30: Cralwer settings, maxHttpFileSize error -->
-<p><font color="red"><b>Invalid maximum file size for http crawler:</b> <tt>#[crawler.http.maxFileSize]#</tt></font></p>
-::<!-- 31: Cralwer settings, maxFtpFileSize error -->
-<p><font color="red"><b>Invalid maximum file size for ftp crawler:</b> <tt>#[crawler.http.maxFileSize]#</tt></font></p>
-#(/info)#
-</p>
-<p>You can now go back to the <a href="Settings_p.html">Settings</a> page if you want to make more changes.</p>
-#%env/templates/footer.template%#
-</body>
+<!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]#': Settings Acknowledge</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body>
+ #%env/templates/header.template%#
+ <h2>Settings Receipt:</h2>
+
+ #(info)#<!-- 0 -->
+ <p><strong>No information has been submitted</strong><br />
+ Nothing changed></p>
+ ::<!-- 1 -->
+ <p><strong>Error with submitted information.</strong><br />
+ Nothing changed.</p>
+ ::<!-- 2 -->
+ <p><strong>The user name must be given.</strong><br />
+ Your request cannot be processed.<br />Nothing changed.</p>
+ ::<!-- 3 -->
+ <p><strong>The password redundancy check failed. You have probably misstyped your password.</strong><br />
+ Your request cannot be processed.<br />Nothing changed.</p>
+ ::<!-- 4 -->
+ <p><strong>Shutting down.</strong><br />Application will terminate after working off all crawling tasks.</p>
+ ::<!-- 5 -->
+ <p><strong>Your administration account setting has been made.</strong><br />
+ Your new administration account name is #[user]#. The password has been accepted.<br />If you go back to the Settings page, you must log-in again.</p>
+ ::<!-- 6 -->
+ <p>
+ <strong>Your proxy access setting has been changed.<br />
+ Your proxy account check has been disabled, since you did not supply a password.</strong>
+ The new proxy IP filter is set to <span class="settingsValue">#[filter]#</span><br />
+ The proxy port is: <span class="settingsValue">#[port]#</span>
+ #(restart)#
+ ::
+ Port rebinding will be done in a few seconds.<br />
+ You can reach your YaCy server under the new location <a href="http://#[ip]#:#[port]#/">http://#[ip]#:#[port]#/</a>
+ #(/restart)#
+ </p>
+ ::<!-- 7 -->
+ <p>
+ <strong>Your proxy access setting has been changed.</strong><br />
+ If you open any public web page through the proxy, you must log-in.<br />
+ The new proxy IP filter is set to <span class="settingsValue">#[filter]#</span><br />
+ The proxy port is: <span class="settingsValue">#[port]#</span>
+ #(restart)#
+ ::
+ Port rebinding will be done in a view seconds.<br />
+ You can reach your YaCy server under the new location <a href="http://#[ip]#:#[port]#/">http://#[ip]#:#[port]#/</a>
+ #(/restart)#
+ </p>
+ ::<!-- 8 -->
+ <p><strong>Your server access filter is now set to #[filter]#</strong><br />
+ <!--Your new server account name is #[user]#. The password has been accepted.<br />
+ If you go back to the Settings page, you must log-in again.-->
+ </p>
+ ::<!-- 9 -->
+ <p>Auto pop-up of the Status page is now <strong>disabled</strong></p>
+ ::<!-- 10 -->
+ <p>Auto pop-up of the Status page is now <strong>enabled</strong></p>
+ ::<!-- 11 -->
+ <p>You are now permanently <strong>online</strong>. After a short while you should see the effect on the <a href="Status.html">status</a> page.</p>
+ ::<!-- 12 -->
+ <p><strong>The Peer Name is:</strong> <span class="settingsValue">#[peerName]#</span><br />
+ <strong>Your static Ip(or DynDns) is:</strong> <span class="settingsValue">#[staticIP]#</span>
+ </p>
+ ::<!-- 13 -->
+ <p><strong>Seed Settings changed.#(success)#::You are now a principal peer.#(/success)#</strong></p>
+ ::<!-- 14 -->
+ <p><strong>Seed Settings changed, but something is wrong.</strong></p>
+ <p class="error">#[errormsg]#</p>
+ <p>Seed Uploading was deactivated automatically.
+ Please return to the settings page and modify the data.</p>
+ ::<!-- 15 -->
+ <p><strong>The remote-proxy setting has been changed</strong><br />
+ The new setting is effective immediately, you don't need to re-start.</p>
+ ::<!-- 16 -->
+ <p><strong>The submitted peer name is already used by another peer. Please choose a different name.</strong> The Peer name has not been changed.<br />
+ Your Peer Language is: <span class="settingsValue">#[peerLang]#</span></p>
+ ::<!-- 17 -->
+ <p><strong>The submitted peer name is not well-formed. Please choose a different name.</strong> The Peer name has not been changed.<br />
+ Peer names must not contain characters other than (a-z, A-Z, 0-9, '-', '_') and must not be longer than 80 characters.
+ Your Peer Language is: <span class="settingsValue">#[peerLang]#</span></p>
+ ::<!-- 18 -->
+ <p>
+ The new parser settings where changed successfully.<br />
+ Parsing of the following mime-types was enabled:
+ </p>
+ <table>
+ #{parser}#
+ <tr>
+ <td class="settingsValue">#[parserMode]#</td>
+ <td class="settingsValue">#[enabledMime]#</td>
+ </tr>
+ #{/parser}#
+ </table>
+ ::<!-- 19 -->
+ <p>Seed Upload method was changed successfully.
+ #(success)#::<br />You are now a principal peer.#(/success)#
+ </p>
+ <table>
+ <tr>
+ <td>Seed Upload Method:</td>
+ <td class="settingsValue">#[seedUploadMethod]#</td>
+ </tr>
+ <tr>
+ <td>Seed File URL:</td>
+ <td class="settingsValue"><a href="#[seedURL]#">#[seedURL]#</a></td>
+ </tr>
+ </table>
+ ::<!-- 20: HTTP-Networking -->
+ <p><strong>Your proxy networking settings have been changed.</strong></p>
+ <table>
+ <tr>
+ <td>Transparent Proxy Support is:</td>
+ <td class="settingsValue">#[isTransparentProxy]#</td>
+ </tr>
+ <tr>
+ <td>Connection Keep-Alive Support is:</td>
+ <td class="settingsValue">#[connectionKeepAliveSupport]#</td>
+ </tr>
+ <tr>
+ <td>Send via header is:</td>
+ <td class="settingsValue">#[proxy.sendViaHeader]#</td>
+ </tr>
+ <tr>
+ <td>Send X-Forwarded-For header is:</td>
+ <td class="settingsValue">#[proxy.sendXForwardedForHeader]#</td>
+ </tr>
+ </table>
+ ::<!-- 21: message forwarding -->
+ <p><strong>Your message forwarding settings have been changed.</strong></p>
+ <table>
+ <tr>
+ <td>Message Forwarding Support is:</td>
+ <td class="settingsValue">#[msgForwardingEnabled]#</td>
+ </tr>
+ <tr>
+ <td>Message Forwarding Command:</td>
+ <td class="settingsValue">#[msgForwardingCmd]#</td>
+ </tr>
+ <tr>
+ <td>Recipient Address:</td>
+ <td class="settingsValue">#[msgForwardingTo]#</td>
+ </tr>
+ </table>
+ ::<!-- 22 -->
+ <p><strong>Your port forwarding settings have been changed.</strong></p>
+ <table>
+ <tr>
+ <td>Port Forwarding Support is:</td>
+ <td class="settingsValue">#[portForwarding.Enabled]#</td>
+ </tr>
+ <tr>
+ <td>Port Forwarding Method:</td>
+ <td class="settingsValue">#[portForwarding.Type]#</td>
+ </tr>
+ <tr><td colspan="2"><hr /></td></tr>
+ <tr><td colspan="2"><strong>Secure channel specific settings:</strong></td></tr>
+ <tr>
+ <td>Port Forwarding Port:</td>
+ <td class="settingsValue">#[portForwarding.sch.Port]#</td>
+ </tr>
+ <tr>
+ <td>Port Forwarding Host:</td>
+ <td class="settingsValue">#[portForwarding.sch.HostUser]#@#[portForwarding.sch.Host]#:#[portForwarding.sch.HostPort]#</td>
+ </tr>
+ <tr>
+ <td>Port Forwarding uses proxy:</td>
+ <td class="settingsValue">#[portForwarding.sch.UseProxy]#</td>
+ </tr>
+ </table>
+ ::<!-- 23 : Port forwarding - error -->
+ <p><strong>Port Forwarding Settings changed, but something is wrong.</strong></p>
+ <p class="error">#[errormsg]#</p>
+ <p>
+ Port Forwarding was deactivated automatically.<br />
+ Please return to the settings page and modify the data.<br />
+ </p>
+ ::<!-- 24 -->
+ <p>You are now <strong>event-based online</strong>. After a short while you should see the effect on the <a href="Status.html">status</a> page.</p>
+ ::<!-- 25 -->
+ <p>You are now in <strong>Cache Mode</strong>. Only Proxy-cache ist available in this mode. After a short while you should see the effect on the <a href="Status.html">status</a> page.</p>
+ ::<!-- 26 -->
+ <p class="error">Unable to bild the server to the new Port: <span class="settingsValue">#[port]#</span><br />
+ This values seems not to be a valid port configuration.</p>
+ ::<!-- 27 -->
+ <p class="error"><strong>Invalid IP-Number filter:</strong> <tt>#[filter]#</tt><br />
+ <strong>Error in pattern nr #[nr]#</strong> "<tt>#[pattern]#</tt>": <tt>#[error]#</tt>
+ </p>
+ ::<!-- 28 : Crawler settings OK -->
+ <p><strong>Your crawler settings have been changed.</strong></p>
+ <table>
+ <tr>
+ <td colspan="2"><strong>Generic Settings:</strong></td>
+ </tr>
+ <tr>
+ <td>Crawler timeout:</td>
+ <td class="settingsValue">#[crawler.clientTimeout]#</td>
+ </tr>
+ <tr>
+ <td colspan="2"><strong>Http Crawler Settings:</strong></td>
+ </tr>
+ <tr>
+ <td>Maximum Filesize:</td>
+ <td class="settingsValue">#[crawler.http.maxFileSize]#</td>
+ </tr>
+ <tr>
+ <td colspan="2"><strong>Ftp Crawler Settings:</strong></td>
+ </tr>
+ <tr>
+ <td>Maximum Filesize:</td>
+ <td class="settingsValue">#[crawler.ftp.maxFileSize]#</td>
+ </tr>
+ </table>
+ ::<!-- 29: Crawler settings timeout error -->
+ <p class="error">Invalid crawler timeout value: <tt>#[crawler.clientTimeout]#</tt></p>
+ ::<!-- 30: Cralwer settings, maxHttpFileSize error -->
+ <p class="error">Invalid maximum file size for http crawler: <tt>#[crawler.http.maxFileSize]#</tt></p>
+ ::<!-- 31: Cralwer settings, maxFtpFileSize error -->
+ <p class="error">Invalid maximum file size for ftp crawler: <tt>#[crawler.http.maxFileSize]#</tt></p>
+ #(/info)#
+ <p>You can now go back to the <a href="Settings_p.html">Settings</a> page if you want to make more changes.</p>
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Settings_p.html b/htroot/Settings_p.html
index 0706f537c..d7af1584c 100644
--- a/htroot/Settings_p.html
+++ b/htroot/Settings_p.html
@@ -1,65 +1,50 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Settings</title>
-#%env/templates/metas.template%#
-
-<script language="JavaScript">
-
-function ParserCheckboxes(reference)
-{
- var mode = reference.name.substring(0,reference.name.indexOf("."));
- for(i=0; i<document.parsersettings.elements.length; i++)
- {
- if(document.parsersettings.elements[i].type=="checkbox" && document.parsersettings.elements[i].name.indexOf(mode) >= 0)
- {
- document.parsersettings.elements[i].checked=reference.checked;
- }
- }
-}
-</script>
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Settings</h2>
-<p>This is the configuration page for YaCy. Access to this page should be limited to an administration person only.
-To restrict the access to this page, please set an administrator account and password <a href="#admin">below.</a></p>
-<p>If you want to restore all settings to the default values,
-but <b>forgot your administration password</b>, you must stop the proxy,
-delete the file 'DATA/SETTINGS/httpProxy.conf' in the YaCy application root folder and start YaCy again.
-<p>
-<table>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=admin">Administration Account Settings</a></td>
- <td rowspan="6" width="30">&nbsp;</td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=ServerAccess">Server Access Settings</a></td>
-</tr>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=general">General Settings</a></td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=SystemBehaviour">System Behaviour Settings</a></td>
-</tr>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=ProxyAccess">Proxy Access Settings</a></td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=seed">Seed Upload Settings</a></td>
-</tr>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=http">HTTP Networking</a></td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=messageForwarding">Message Forwarding (optional)</a></td>
-</tr>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=proxy">Remote Proxy (optional)</a></td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=parser">Content Parser Settings</a></td>
-</tr>
-<tr>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=portForwarding">Port Forwarding (optional)</a></td>
- <td><img src="env/grafics/down.gif" alt="down"><a href="?page=crawler">Crawler Settings</a></td>
-</tr>
-
-</table>
-</p>
-#%[settingsTables]%#
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Settings</title>
+ #%env/templates/metas.template%#
+
+ <script type="text/javascript">
+ /* <![CDATA[ */
+ function ParserCheckboxes(reference)
+ {
+ var mode = reference.name.substring(0,reference.name.indexOf("."));
+ for(i=0; i<document.parsersettings.elements.length; i++)
+ {
+ if(document.parsersettings.elements[i].type=="checkbox" && document.parsersettings.elements[i].name.indexOf(mode) >= 0)
+ {
+ document.parsersettings.elements[i].checked=reference.checked;
+ }
+ }
+ }
+ /* ]]> */
+ </script>
+ </head>
+ <body id="Settings">
+ #%env/templates/header.template%#
+ <h2>Settings</h2>
+ <p>This is the configuration page for YaCy. Access to this page should be limited to an administration person only.
+ To restrict the access to this page, please set an administrator account and password <a href="#admin">below.</a></p>
+ <p>If you want to restore all settings to the default values,
+ but <strong>forgot your administration password</strong>, you must stop the proxy,
+ delete the file 'DATA/SETTINGS/httpProxy.conf' in the YaCy application root folder and start YaCy again.
+ </p>
+ <ul class="settingsMenu">
+ <li><a href="?page=admin">Administration Account Settings</a></li>
+ <li><a href="?page=general">General Settings</a></li>
+ <li><a href="?page=ProxyAccess">Proxy Access Settings</a></li>
+ <li><a href="?page=http">HTTP Networking</a></li>
+ <li><a href="?page=proxy">Remote Proxy (optional)</a></li>
+ <li><a href="?page=portForwarding">Port Forwarding (optional)</a></li>
+ <li><a href="?page=ServerAccess">Server Access Settings</a></li>
+ <li><a href="?page=SystemBehaviour">System Behaviour Settings</a></li>
+ <li><a href="?page=seed">Seed Upload Settings</a></li>
+ <li><a href="?page=messageForwarding">Message Forwarding (optional)</a></li>
+ <li><a href="?page=parser">Content Parser Settings</a></li>
+ <li><a href="?page=crawler">Crawler Settings</a></li>
+ </ul>
+ #%[settingsTables]%#
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Status.html b/htroot/Status.html
index c0cbfe8a5..b69482a32 100644
--- a/htroot/Status.html
+++ b/htroot/Status.html
@@ -1,110 +1,99 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Status</title>
-#%env/templates/metas.template%#
-<meta http-equiv="REFRESH" content="30">
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>System-, Index- and Peer-Status</h2>
-
-<p>Welcome to YaCy!</p>
-
-<form action="Steering.html" method="get">
-<table border="0" cellpadding="5" cellspacing="0" width="100%">
- <tr valign="top" bgcolor="#DDEEDD">
- <td class="TableCellLight" align="right">
-<!-- <input type="submit" name="restart" value="Restart"> -->
- <input type="submit" name="shutdown" value="Shutdown">
- </td>
- </tr>
-</table>
-</form>
-
-<p>
-<!-- <table border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#000000"><tr><td> -->
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableHeader"><td colspan="2"><b>Public System Properties</b></td></tr>
-<tr class="TableCellDark"><td>System version</td><td>
-#[versionpp]# #(versioncomment)#:: - the latest public version is #[latestVersion]#. Click here to <a href="http://www.yacy.net/yacy/Download.html">download</a> it.#(/versioncomment)#
-</td></tr>
-<tr class="TableCellLight"><td>This&nbsp;peer's&nbsp;address</td><td>
-#(peerAddress)#
-Not assigned
-::
-Not assigned. The peer must go online to get an address.
-The peer does not go online until you use the proxy to surf the internet,
-thus proving that you <i>want</i> to go online.
-If you don't know how to configure your system to use a proxy,
-see the <a href="http://www.yacy.net/yacy/Installation.html#wininst">installation instructions</a>.
-::
-#[address]# ; Your '.yacy' home at http://www.#[peername]#.yacy
-#(/peerAddress)#
-</td></tr>
-<tr class="TableCellDark"><td>This peer's name</td><td>#[peerName]#/#[hash]#</td></tr>
-<tr class="TableCellLight"><td>This peer's statistics</td><td>
-#(peerStatistics)#
-Unknown
-::
-Uptime = #[uptime]#, Links# = #[links]#, RWIs# = #[words]#, PPM = #[pagesperminute]#,
-Connects (#[juniorConnects]#|#[seniorConnects]#|#[principalConnects]#|#[disconnects]#) #[connects]# peers/hour
-#(/peerStatistics)#
-</td></tr>
-<tr class="TableCellDark"><td>This peer's status</td><td>
-#(peerStatus)#
-Virgin - You have not published your peer yet, because you have not used the proxy yet. If you configured your browser's proxy settings (see online: <a href="http://www.yacy.net/yacy/Installation.html#wininst">configure your browser's proxy settings</a>), you must first load any page through the proxy to prove that this works. With this status you are not allowed to search other peers!
-::
-Junior - You cannot be reached from outside. A possible reason is that you are behind a firewall, NAT or Router. But you can <a href="index.html">search the internet</a> using the other peers' global index on your own search page. We encourage you to open your firewall for the port you configured (usually: 8080), or to set up a 'virtual server' in your router settings (often called DMZ). Please be fair, contribute your own index to the global index.
-::
-Senior - You are running a server and you support the global internet index, which you can also <a href="index.html">search yourself</a>. Thank you!
-::
-Principal - You are senior and you publish your seed-list to a public accessible server where it can be retrieved using the URL <a href="#[seedURL]#">#[seedURL]#</a>.<br>
-You can of course <a href="index.html">search the internet</a> using the other peers' global index on your own search page.
-#(/peerStatus)#
-</td></tr>
-<tr class="TableCellLight"><td>Other peers</td><td>#(otherPeers)#not online::#[num]# other peers online.#(/otherPeers)#</td></tr>
-<tr class="TableCellLight"><td>Online-mode</td><td>
-#(omode)#
-You are in <i>Cache-browsing</i> mode.<br>
-Only websites from the proxy-cache are accessible.
-To switch online-mode, press one of the following buttons:
-<form action="SettingsAck_p.html" method="get">
-<input type="submit" name="emode" value="event-based Mode">
-<input type="submit" name="pmode" value="Permanent Mode">
-</form>
-::
-You are in <i>event-based</i> online mode.<br>
-The YaCy p2p network will boot when you start using the proxy or you switch to permanent mode.
-Attention: Using the proxy in permanent mode will keep your internet connection online as long as YaCy runs.
-Use this only if you have a flatrate or you have an always-on connection.
-To switch online-mode, press one of the following buttons:
-<form action="SettingsAck_p.html" method="get">
-<input type="submit" name="pmode" value="Go on-line">
-<input type="submit" name="cmode" value="Go to Cache-Mode">
-</form>
-::
-You are in <i>permanent</i> mode. Attention: If you don't have a flatrate or are always-on, you must switch off the proxy to go off-line.
-To switch online-mode, press one of the following buttons:
-<form action="SettingsAck_p.html" method="get">
-<input type="submit" name="emode" value="event-based Mode">
-<input type="submit" name="cmode" value="Go to Cache-Mode">
-</form>
-#(/omode)#
-</td></tr>
-</table>
-<!-- </td></tr></table> -->
-</p>
-<p>
-#(showPrivateTable)#
- Click <a href="Status.html?login=">here</a> to log in as administrator and see full status.
- ::
-#(/showPrivateTable)#
-#%[privateStatusTable]%#
-</p>
-<p><font size="-3"><i>Last Refresh:</i> #[date]#</font></p>
-
-#%env/templates/footer.template%#
-</body>
+<!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]#': Status</title>
+ #%env/templates/metas.template%#
+ <meta http-equiv="REFRESH" content="30" />
+ </head>
+ <body style="margin:0px;">
+ #%env/templates/header.template%#
+ <h2>System-, Index- and Peer-Status</h2>
+
+ <p>Welcome to YaCy!</p>
+
+ <form action="Steering.html" method="get" class="PeerControl">
+ <fieldset>
+ <!-- <input type="submit" name="restart" value="Restart" /> -->
+ <input type="submit" name="shutdown" value="Shutdown" />
+ </fieldset>
+ </form>
+
+ <table class="StatusTable">
+ <tr class="TableHeader"><td colspan="2"><b>Public System Properties</b></td></tr>
+ <tr class="TableCellLight"><td>System version</td><td>
+ #[versionpp]# #(versioncomment)#:: - the latest public version is #[latestVersion]#. Click here to <a href="http://www.yacy.net/yacy/Download.html">download</a> it.#(/versioncomment)#
+ </td></tr>
+ <tr class="TableCellDark"><td>This&nbsp;peer's&nbsp;address</td><td>
+ #(peerAddress)#
+ Not assigned
+ ::
+ Not assigned. The peer must go online to get an address.
+ The peer does not go online until you use the proxy to surf the internet,
+ thus proving that you <i>want</i> to go online.
+ If you don't know how to configure your system to use a proxy,
+ see the <a href="http://www.yacy.net/yacy/Installation.html#wininst">installation instructions</a>.
+ ::
+ #[address]# ; Your '.yacy' home at http://www.#[peername]#.yacy
+ #(/peerAddress)#
+ </td></tr>
+ <tr class="TableCellLight"><td>This peer's name</td><td>#[peerName]#/#[hash]#</td></tr>
+ <tr class="TableCellDark"><td>This peer's statistics</td><td>
+ #(peerStatistics)#
+ Unknown
+ ::
+ Uptime = #[uptime]#, Links# = #[links]#, RWIs# = #[words]#, PPM = #[pagesperminute]#,
+ Connects (#[juniorConnects]#|#[seniorConnects]#|#[principalConnects]#|#[disconnects]#) #[connects]# peers/hour
+ #(/peerStatistics)#
+ </td></tr>
+ <tr class="TableCellLight"><td>This peer's status</td><td>
+ #(peerStatus)#
+ Virgin - You have not published your peer yet, because you have not used the proxy yet. If you configured your browser's proxy settings (see online: <a href="http://www.yacy.net/yacy/Installation.html#wininst">configure your browser's proxy settings</a>), you must first load any page through the proxy to prove that this works. With this status you are not allowed to search other peers!
+ ::
+ Junior - You cannot be reached from outside. A possible reason is that you are behind a firewall, NAT or Router. But you can <a href="index.html">search the internet</a> using the other peers' global index on your own search page. We encourage you to open your firewall for the port you configured (usually: 8080), or to set up a 'virtual server' in your router settings (often called DMZ). Please be fair, contribute your own index to the global index.
+ ::
+ Senior - You are running a server and you support the global internet index, which you can also <a href="index.html">search yourself</a>. Thank you!
+ ::
+ Principal - You are senior and you publish your seed-list to a public accessible server where it can be retrieved using the URL <a href="#[seedURL]#">#[seedURL]#</a>.<br />
+ You can of course <a href="index.html">search the internet</a> using the other peers' global index on your own search page.
+ #(/peerStatus)#
+ </td></tr>
+ <tr class="TableCellDark"><td>Other peers</td><td>#(otherPeers)#not online::#[num]# other peers online.#(/otherPeers)#</td></tr>
+ <tr class="TableCellLight"><td>Online-mode</td><td>
+ #(omode)#
+ You are in <i>Cache-browsing</i> mode.<br />
+ Only websites from the proxy-cache are accessible.
+ To switch online-mode, press one of the following buttons:
+ <form action="SettingsAck_p.html" method="get">
+ <div><input type="submit" name="emode" value="event-based Mode" />
+ <input type="submit" name="pmode" value="Permanent Mode" /></div>
+ </form>
+ ::
+ You are in <i>event-based</i> online mode.<br />
+ The YaCy p2p network will boot when you start using the proxy or you switch to permanent mode.
+ Attention: Using the proxy in permanent mode will keep your internet connection online as long as YaCy runs.
+ Use this only if you have a flatrate or you have an always-on connection.
+ To switch online-mode, press one of the following buttons:
+ <form action="SettingsAck_p.html" method="get">
+ <div><input type="submit" name="pmode" value="Go on-line" />
+ <input type="submit" name="cmode" value="Go to Cache-Mode" /></div>
+ </form>
+ ::
+ You are in <i>permanent</i> mode. Attention: If you don't have a flatrate or are always-on, you must switch off the proxy to go off-line.
+ To switch online-mode, press one of the following buttons:
+ <form action="SettingsAck_p.html" method="get">
+ <div><input type="submit" name="emode" value="event-based Mode" />
+ <input type="submit" name="cmode" value="Go to Cache-Mode" /></div>
+ </form>
+ #(/omode)#
+ </td></tr>
+ </table>
+ #(showPrivateTable)#
+ Click <a href="Status.html?login=">here</a> to log in as administrator and see full status.
+ ::
+ #(/showPrivateTable)#
+ #%[privateStatusTable]%#
+ <p><i>Last Refresh:</i> #[date]#</p>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/Status_p.inc b/htroot/Status_p.inc
index c69b0a557..d62e0be8b 100644
--- a/htroot/Status_p.inc
+++ b/htroot/Status_p.inc
@@ -1,145 +1,133 @@
-<table border="0" cellpadding="2" cellspacing="1" width="100%">
-<tr class="TableHeader">
- <td colspan="3"><b>Private System Properties</b></td>
-</tr>
-<tr class="TableCellLight">
- <td>System Resources</td>
- <td>Processors: #[processors]#</td>
- <td width="50">&nbsp;</td>
-</tr>
-<tr class="TableCellDark">
- <td>Protection</td>
- <td>
- #(protection)#
- <b>Your settings are _not_ protected!</b> Please go to the <a href="Settings_p.html?page=admin">settings</a> page <b>immediately</b> and set an administration password.
- ::
- Your settings are protected by a password.
- #(/protection)#
- </td>
- <td>&nbsp;</td>
-</tr>
-<tr class="TableCellLight">
- <td>Peer host</td>
- <td>#[host]#:#[port]# #(extPortFormat)#::| (Binding to interface: #[extPort]#)#(/extPortFormat)# #(sslSupport)#::| SSL: enabled#(/sslSupport)#</td>
- <td>&nbsp;</td>
-</tr>
-<tr class="TableCellDark">
- <td>Port forwarding host</td>
- <td>#(portForwarding)#not used::#[host]#:#[port]# (#(status)#broken::connected#(/status)#)#(/portForwarding)#</td>
- <td>&nbsp;</td>
-</tr>
-<tr class="TableCellLight">
- <td>Remote proxy</td>
- <td>#(remoteProxy)#not used::#[host]#:#[port]# | Used for YaCy -> YaCy communication: #(4Yacy)#Yes::No #(/4Yacy)# #(/remoteProxy)#</td>
- <td>&nbsp;</td>
-</tr>
-<tr class="TableCellDark">
- <td>Auto-popup on start-up</td>
- <td>
- #(popup)#
- Disabled. To enable this again please use the <a href="Settings_p.html?page=SystemBehaviour">Settings</a> page.
- ::
- Enabled. To disable this please use the <a href="Settings_p.html?page=SystemBehaviour">Settings</a> page.
- #(/popup)#
- </td>
- <td>&nbsp;</td>
-</tr>
-<tr class="TableCellLight">
- <td>Memory Usage</td>
- <td>
- <!--
- <form action="Status.html" method="get">free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]# | <input type="submit" name="gc" value="Do Garbage-Collect now"></form>
- -->
- free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]#
- </td>
- <td>[<a href="PerformanceMemory_p.html">Configure</a>]</td>
-</tr>
-<tr class="TableCellDark">
- <td>Traffic</td>
- <td>Proxy: #[trafficOut]# | Crawler: #[trafficCrawler]#</td>
- <td>[<a href="Status.html?ResetTraffic=">Reset</a>]</td>
-</tr>
-<tr class="TableCellLight">
- <td>Connections Incoming</td>
- <td>Active: #[connectionsActive]# | Idle: #[connectionsIdle]# | Max: #[connectionsMax]#</td>
- <td>[<a href="Connections_p.html">Details</a>]</td>
-</tr>
-<tr class="TableCellDark">
- <td>Indexing Queue</td>
- <td>
- <table border="0" cellpadding="0" cellspacing="0" width="200" >
- <tr>
- <td width="70">#[indexingQueueSize]#&nbsp;|&nbsp;#[indexingQueueMax]#&nbsp;</td>
- <td>
- <div width="150" height="10" style="border-style:solid; border-width:1px; border-color:#CAD5E3">
- <img src="env/grafics/green_bar.gif" width="#[indexingQueuePercent]#%" height="10" alt="">
- </div>
- </td>
- </tr>
- </table>
- </td>
- <td>[<a href="IndexCreateIndexingQueue_p.html">Details</a>]</td>
-</tr>
-<tr class="TableCellLight">
- <td>Loader Queue</td>
- <td>
- <table border="0" cellpadding="0" cellspacing="0" width="200" >
- <tr>
- <td width="70">#[loaderQueueSize]#&nbsp;|&nbsp;#[loaderQueueMax]#&nbsp;</td>
- <td>
- <div width="150" height="10" style="border-style:solid; border-width:1px; border-color:#CAD5E3">
- <img src="env/grafics/green_bar.gif" width="#[loaderQueuePercent]#%" height="10" alt="">
- </div>
- </td>
- </tr>
- </table>
- </td>
- <td>[<a href="IndexCreateLoaderQueue_p.html">Details</a>]</td>
-</tr>
-<tr class="TableCellDark">
- <td>Crawler Queues</td>
- <td>
- <table>
- <tr>
- <td>Local Crawl</td>
- <td>#[localCrawlQueueSize]#</td>
- <td><a href="Status.html?#(localCrawlPaused)#pauseCrawlJob::continueCrawlJob#(/localCrawlPaused)#=&jobType=localCrawl" title="#(localCrawlPaused)#pause local crawl::continue local crawl#(/localCrawlPaused)#"><img src="env/grafics/#(localCrawlPaused)#stop.gif::start.gif#(/localCrawlPaused)#" border="0" width="12" height="12"></a></td>
- <td>#(localCrawlPaused)#&nbsp;::(paused)#(/localCrawlPaused)#</td>
- </tr>
- <tr>
- <td>Remote triggered Crawl</td>
- <td>#[remoteTriggeredCrawlQueueSize]#</td>
- <td><a href="Status.html?#(remoteTriggeredCrawlPaused)#pauseCrawlJob::continueCrawlJob#(/remoteTriggeredCrawlPaused)#=&jobType=remoteTriggeredCrawl" title="#(remoteTriggeredCrawlPaused)#pause remote triggered crawl::continue remote triggered crawl#(/remoteTriggeredCrawlPaused)#"><img src="env/grafics/#(remoteTriggeredCrawlPaused)#stop.gif::start.gif#(/remoteTriggeredCrawlPaused)#" border="0" width="12" height="12"></a></td>
- <td>#(remoteTriggeredCrawlPaused)#&nbsp;::(paused)#(/remoteTriggeredCrawlPaused)#</td>
- </tr>
- <tr>
- <td>Global Crawl Trigger</td>
- <td>#[globalCrawlTriggerQueueSize]#</td>
- <td><a href="Status.html?#(globalCrawlTriggerPaused)#pauseCrawlJob::continueCrawlJob#(/globalCrawlTriggerPaused)#=&jobType=globalCrawlTrigger" title="#(globalCrawlTriggerPaused)#pause global crawl trigger::continue global crawl trigger#(/globalCrawlTriggerPaused)#"><img src="env/grafics/#(globalCrawlTriggerPaused)#stop.gif::start.gif#(/globalCrawlTriggerPaused)#" border="0" width="12" height="12"></a></td>
- <td>#(globalCrawlTriggerPaused)#&nbsp;::(paused)#(/globalCrawlTriggerPaused)#</td>
- </tr>
- <tr>
- <td>Pre-Queueing</td>
- <td>#[stackCrawlQueueSize]#</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- </tr>
- </table>
- </td>
- <td valign="top">[<a href="IndexCreateWWWLocalQueue_p.html">Details</a>]<br>
- &nbsp;<br>
- [<a href="IndexCreateWWWGlobalQueue_p.html">Details</a>]
- </td>
-</tr>
-<tr class="TableCellLight"><td>Seed server</td><td>
- #(seedServer)#
- Disabled. To enable this you need a FTP account where you can upload files to a web space. If you do that, you become a YaCy root server. You can configure your account details on the <a href="Settings_p.html#seed">Settings page</a>.
- ::
- Enabled: Updating periodically to server #[seedServer]#.
- Last upload: #[lastUpload]# ago.
- ::
- Enabled: Updating periodically to file #[seedFile]#.
- Last upload: #[lastUpload]# ago.
- #(/seedServer)#
-</td></tr>
+<table class="StatusTable">
+ <tr class="TableHeader">
+ <td colspan="3"><b>Private System Properties</b></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>System Resources</td>
+ <td>Processors: #[processors]#</td>
+ <td style="width:50px"></td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Protection</td>
+ <td>
+ #(protection)#
+ <b>Your settings are _not_ protected!</b> Please go to the <a href="Settings_p.html?page=admin">settings</a> page <b>immediately</b> and set an administration password.
+ ::
+ Your settings are protected by a password.
+ #(/protection)#
+ </td>
+ <td></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>Peer host</td>
+ <td>#[host]#:#[port]# #(extPortFormat)#::| (Binding to interface: #[extPort]#)#(/extPortFormat)# #(sslSupport)#::| SSL: enabled#(/sslSupport)#</td>
+ <td></td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Port forwarding host</td>
+ <td>#(portForwarding)#not used::#[host]#:#[port]# (#(status)#broken::connected#(/status)#)#(/portForwarding)#</td>
+ <td></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>Remote proxy</td>
+ <td>#(remoteProxy)#not used::#[host]#:#[port]# | Used for YaCy -> YaCy communication: #(4Yacy)#Yes::No #(/4Yacy)# #(/remoteProxy)#</td>
+ <td></td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Auto-popup on start-up</td>
+ <td>
+ #(popup)#
+ Disabled. To enable this again please use the <a href="Settings_p.html?page=SystemBehaviour">Settings</a> page.
+ ::
+ Enabled. To disable this please use the <a href="Settings_p.html?page=SystemBehaviour">Settings</a> page.
+ #(/popup)#
+ </td>
+ <td></td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>Memory Usage</td>
+ <td>
+ <!--
+ <form action="Status.html" method="get">free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]# | <input type="submit" name="gc" value="Do Garbage-Collect now" /></form>
+ -->
+ free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]#
+ </td>
+ <td>[<a href="PerformanceMemory_p.html">Configure</a>]</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Traffic</td>
+ <td>Proxy: #[trafficOut]# | Crawler: #[trafficCrawler]#</td>
+ <td>[<a href="Status.html?ResetTraffic=">Reset</a>]</td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>Connections Incoming</td>
+ <td>Active: #[connectionsActive]# | Idle: #[connectionsIdle]# | Max: #[connectionsMax]#</td>
+ <td>[<a href="Connections_p.html">Details</a>]</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Indexing Queue</td>
+ <td>
+ <div class="ProgressBarCaption">#[indexingQueueSize]#&nbsp;|&nbsp;#[indexingQueueMax]#</div>
+ <div class="ProgressBar">
+ <img src="env/grafics/green_bar.gif" width="#[indexingQueuePercent]#%" height="100%" alt="" style="position:relative;top:-2px;" />
+ </div>
+ </td>
+ <td>[<a href="IndexCreateIndexingQueue_p.html">Details</a>]</td>
+ </tr>
+ <tr class="TableCellLight">
+ <td>Loader Queue</td>
+ <td>
+ <div class="ProgressBarCaption">#[loaderQueueSize]#&nbsp;|&nbsp;#[loaderQueueMax]#</div>
+ <div class="ProgressBar">
+ <img src="env/grafics/green_bar.gif" width="#[loaderQueuePercent]#%" height="100%" alt="" style="position:relative;top:-2px;" />
+ </div>
+ </td>
+ <td>[<a href="IndexCreateLoaderQueue_p.html">Details</a>]</td>
+ </tr>
+ <tr class="TableCellDark">
+ <td>Crawler Queues</td>
+ <td>
+ <table>
+ <tr>
+ <td>Local Crawl</td>
+ <td>#[localCrawlQueueSize]#</td>
+ <td><a href="Status.html?#(localCrawlPaused)#pauseCrawlJob::continueCrawlJob#(/localCrawlPaused)#=&amp;jobType=localCrawl" title="#(localCrawlPaused)#pause local crawl::continue local crawl#(/localCrawlPaused)#"><img src="env/grafics/#(localCrawlPaused)#stop.gif::start.gif#(/localCrawlPaused)#" alt="#(localCrawlPaused)#pause local crawl::continue local crawl#(/localCrawlPaused)#" style="width:12px;height:12px;" /></a></td>
+ <td>#(localCrawlPaused)#&nbsp;::(paused)#(/localCrawlPaused)#</td>
+ </tr>
+ <tr>
+ <td>Remote triggered Crawl</td>
+ <td>#[remoteTriggeredCrawlQueueSize]#</td>
+ <td><a href="Status.html?#(remoteTriggeredCrawlPaused)#pauseCrawlJob::continueCrawlJob#(/remoteTriggeredCrawlPaused)#=&amp;jobType=remoteTriggeredCrawl" title="#(remoteTriggeredCrawlPaused)#pause remote triggered crawl::continue remote triggered crawl#(/remoteTriggeredCrawlPaused)#"><img src="env/grafics/#(remoteTriggeredCrawlPaused)#stop.gif::start.gif#(/remoteTriggeredCrawlPaused)#" alt="#(remoteTriggeredCrawlPaused)#pause remote triggered crawl::continue remote triggered crawl#(/remoteTriggeredCrawlPaused)#" style="width:12px;height:12px;" /></a></td>
+ <td>#(remoteTriggeredCrawlPaused)#&nbsp;::(paused)#(/remoteTriggeredCrawlPaused)#</td>
+ </tr>
+ <tr>
+ <td>Global Crawl Trigger</td>
+ <td>#[globalCrawlTriggerQueueSize]#</td>
+ <td><a href="Status.html?#(globalCrawlTriggerPaused)#pauseCrawlJob::continueCrawlJob#(/globalCrawlTriggerPaused)#=&amp;jobType=globalCrawlTrigger" title="#(globalCrawlTriggerPaused)#pause global crawl trigger::continue global crawl trigger#(/globalCrawlTriggerPaused)#"><img src="env/grafics/#(globalCrawlTriggerPaused)#stop.gif::start.gif#(/globalCrawlTriggerPaused)#" alt="#(globalCrawlTriggerPaused)#pause global crawl trigger::continue global crawl trigger#(/globalCrawlTriggerPaused)#" style="width:12px;height:12px;" /></a></td>
+ <td>#(globalCrawlTriggerPaused)#&nbsp;::(paused)#(/globalCrawlTriggerPaused)#</td>
+ </tr>
+ <tr>
+ <td>Pre-Queueing</td>
+ <td>#[stackCrawlQueueSize]#</td>
+ <td></td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td valign="top">[<a href="IndexCreateWWWLocalQueue_p.html">Details</a>]<br />
+ &nbsp;<br />
+ [<a href="IndexCreateWWWGlobalQueue_p.html">Details</a>]
+ </td>
+ </tr>
+ <tr class="TableCellLight"><td>Seed server</td><td>
+ #(seedServer)#
+ Disabled. To enable this you need a FTP account where you can upload files to a web space. If you do that, you become a YaCy root server. You can configure your account details on the <a href="Settings_p.html#seed">Settings page</a>.
+ ::
+ Enabled: Updating periodically to server #[seedServer]#.
+ Last upload: #[lastUpload]# ago.
+ ::
+ Enabled: Updating periodically to file #[seedFile]#.
+ Last upload: #[lastUpload]# ago.
+ #(/seedServer)#
+ </td><td></td></tr>
</table>
diff --git a/htroot/ViewLog_p.html b/htroot/ViewLog_p.html
index 48dafc925..123a3e70e 100644
--- a/htroot/ViewLog_p.html
+++ b/htroot/ViewLog_p.html
@@ -1,25 +1,24 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Log</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<br><br>
-<h2>Log</h2><br>
+<!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]#': Log</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ViewLog">
+ #%env/templates/header.template%#
+ <h2>Log</h2>
+
+ <form action="ViewLog_p.html" method="get" >
+ <fieldset>
+ <input type="text" name="lines" id="lines" size ="4" value="#[lines]#" maxlength="9" /><label for="lines"> Lines</label>
+ <input type="checkbox" name="mode" id="mode" value="reversed" #(reverseChecked)#::checked="checked"#(/reverseChecked)# /><label for="mode">reversed order</label>
+ <input type="submit" value="refresh" />
+ </fieldset>
+ </form>
+
+ <pre>#[log]#</pre>
-<iframe src="Log_p.html" width="100%" height="480" name="logFrame">
-<a href="Log_p.html">Log</a>
-</iframe>
-<form action="Log_p.html" method="GET" target="logFrame">
-<table border="0"><tr>
-<td><input type="text" name="lines" size ="4" value="50" maxlength="9"> Lines</td>
-<td><input type="checkbox" name="mode" value="reversed">reversed order</td>
-<td><input type="submit" value="refresh"></td>
-</tr></table>
-</form>
-
-#%env/templates/footer.template%#
-</body>
+
+ #%env/templates/footer.template%#
+ </body>
</html>
diff --git a/htroot/ViewLog_p.java b/htroot/ViewLog_p.java
index a2e7c3be7..e492c3497 100644
--- a/htroot/ViewLog_p.java
+++ b/htroot/ViewLog_p.java
@@ -1,9 +1,93 @@
+//ViewLog_p.java
+//-----------------------
+//part of the AnomicHTTPD caching proxy
+//(C) by Michael Peter Christen; mc@anomic.de
+//first published on http://www.anomic.de
+//Frankfurt, Germany, 2004
+//
+//This File is contributed by Alexander Schier
+//last major change: 14.12.2004
+//
+//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
+//
+//Using this software in any meaning (reading, learning, copying, compiling,
+//running) means that you agree that the Author(s) is (are) not responsible
+//for cost, loss of data or any harm that may be caused directly or indirectly
+//by usage of this softare or this documentation. The usage of this software
+//is on your own risk. The installation and usage (starting/running) of this
+//software may allow other people or application to access your computer and
+//any attached devices and is highly dependent on the configuration of the
+//software which must be done by the user of the software; the author(s) is
+//(are) also not responsible for proper configuration and usage of the
+//software, even if provoked by documentation provided together with
+//the software.
+//
+//Any changes to this file according to the GPL as documented in the file
+//gpl.txt aside this file in the shipment you received can be done to the
+//lines that follows this copyright notice here, but changes must not be
+//done inside the copyright notive above. A re-distribution must contain
+//the intact and unchanged copyright notice.
+//Contributions and changes to the program code must be marked as such.
+
+
+//You must compile this file with
+//javac -classpath .:../classes ViewLog_p.java
+//if the shell's current path is HTROOT
+
+import java.util.logging.Handler;
+import java.util.logging.Logger;
+
import de.anomic.http.httpHeader;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch;
+import de.anomic.server.logging.GuiHandler;
public class ViewLog_p {
- public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) {
- return null;
- }
+
+
+ public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) {
+ serverObjects prop = new serverObjects();
+ String log = "";
+ boolean reversed = false;
+ int lines = 50;
+
+ if(post != null){
+ if(post.containsKey("mode") && ((String)post.get("mode")).equals("reversed")){
+ reversed=true;
+ }
+ if(post.containsKey("lines")){
+ lines = Integer.parseInt((String)post.get("lines"));
+ }
+ }
+
+
+ Logger logger = Logger.getLogger("");
+ Handler[] handlers = logger.getHandlers();
+ for (int i=0; i<handlers.length; i++) {
+ if (handlers[i] instanceof GuiHandler) {
+ log = ((GuiHandler)handlers[i]).getLog(reversed,lines);
+ break;
+ }
+ }
+
+ prop.put("reverseChecked", reversed ? 1 : 0);
+ prop.put("log", log);
+ prop.put("lines", lines);
+
+ // return rewrite properties
+ return prop;
+ }
+
}
diff --git a/htroot/ViewProfile.html b/htroot/ViewProfile.html
index e5624ccce..9aa5e945d 100644
--- a/htroot/ViewProfile.html
+++ b/htroot/ViewProfile.html
@@ -1,98 +1,65 @@
-<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Remote Peer Profile</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#(display)#
-#%env/templates/simpleheader.template%#
-::
-#%env/templates/header.template%#
-#(/display)#
-<br><br>
-#(localremotepeer)#
-<h2>Local Peer Profile:</h2>
-::
-<h2>Remote Peer Profile:</h2>
-#(/localremotepeer)#
-<p>
-#(success)#
-Wrong access of this page
-::
-The requested peer is unknown or a potential peer.<br>
-The profile can't be fetched.
-::
-The peer #[peername]# is not online.
-::
-<br><h3>This is #[peername]#'s Profile:</h3>
-<table border="0" cellpadding="5" cellspacing="1">
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Name</td>
-<td valign="top" class="TableCellLight">#(name)#&nbsp;::#[value]##(/name)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Nick Name</td>
-<td valign="top" class="TableCellLight">#(nickname)#&nbsp;::#[value]##(/nickname)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Homepage</td>
-<td valign="top" class="TableCellLight">#(homepage)#&nbsp;::<a href="#[value]#">#[value]#</a>#(/homepage)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">eMail</td>
-<td valign="top" class="TableCellLight">#(email)#&nbsp;::<a href="mailto:#[value]#">#[value]#</a>#(/email)#</td>
-</tr>
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-
-<tr>
-<td valign="top" class="TableCellDark">ICQ</td>
-<td valign="top" class="TableCellLight">#(icq)#&nbsp;::<img src="http://web.icq.com/whitepages/online?icq=#[value]#&img=5"><a href="http://wwp.icq.com/scripts/search.dll?to=#[value]#">#[value]#</a>#(/icq)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Jabber</td>
-<td valign="top" class="TableCellLight">#(jabber)#&nbsp;::<img src="http://edgar.netflint.net/status.php?jid=#[value]#&type=image&iconset=gabber">#[value]##(/jabber)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">Yahoo!</td>
-<td valign="top" class="TableCellLight">#(yahoo)#&nbsp;::#[value]##(/yahoo)#</td>
-</tr>
-<tr>
-<td valign="top" class="TableCellDark">MSN</td>
-<td valign="top" class="TableCellLight">#(msn)#&nbsp;::#[value]##(/msn)#</td>
-</tr>
-
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-
-<tr>
-<td valign="top" class="TableCellDark">Comment</td>
-<td valign="top" class="TableCellLight">#(comment)#&nbsp;::#[value]##(/comment)#</td>
-</tr>
-#{other}#
-<tr>
-<td valign="top" class="TableCellDark">#[key]#</td>
-<td valign="top" class="TableCellLight">#[value]#</td>
-</tr>
-#{/other}#
-<tr>
-<td colspan="2" valign="top" class="TableHeader">&nbsp;</td>
-</tr>
-
-</table>
-#(/success)#
-#(display)#
-#%env/templates/simplefooter.template%#
-::
-#%env/templates/footer.template%#
-#(/display)#
-</body>
+<!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]#': Remote Peer Profile</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="ViewProfile">
+ #(display)#
+ #%env/templates/simpleheader.template%#
+ ::
+ #%env/templates/header.template%#
+ #(/display)#
+ #(localremotepeer)#
+ <h2>Local Peer Profile:</h2>
+ ::
+ <h2>Remote Peer Profile:</h2>
+ #(/localremotepeer)#
+ #(success)#
+ <p class="error">Wrong access of this page</p>
+ ::
+ <p class="error">The requested peer is unknown or a potential peer.<br />
+ The profile can't be fetched.</p>
+ ::
+ <p class="error">The peer #[peername]# is not online.</p>
+ ::
+ <h3>This is #[peername]#'s Profile:</h3>
+
+ <dl class="pairs">
+ <dt>Name</dt>
+ <dd>#(name)#&nbsp;::#[value]##(/name)#</dd>
+ <dt>Nick Name</dt>
+ <dd>#(nickname)#&nbsp;::#[value]##(/nickname)#</dd>
+ <dt>Homepage</dt>
+ <dd>#(homepage)#&nbsp;::<a href="#[value]#">#[value]#</a>#(/homepage)#</dd>
+ <dt>eMail</dt>
+ <dd>#(email)#&nbsp;::<a href="mailto:#[value]#">#[value]#</a>#(/email)#</dd>
+ </dl>
+
+ <dl class="pairs">
+ <dt>ICQ</dt>
+ <dd>#(icq)#&nbsp;::<img src="http://web.icq.com/whitepages/online?icq=#[value]#&amp;img=5" alt="Onlinestatus" /><a href="http://wwp.icq.com/scripts/search.dll?to=#[value]#">#[value]#</a>#(/icq)#</dd>
+ <dt>Jabber</dt>
+ <dd>#(jabber)#&nbsp;::<img src="http://edgar.netflint.net/status.php?jid=#[value]#&amp;type=image&amp;iconset=gabber" alt="Onlinestatus" />#[value]##(/jabber)#</dd>
+ <dt>Yahoo!</dt>
+ <dd>#(yahoo)#&nbsp;::#[value]##(/yahoo)#</dd>
+ <dt>MSN</dt>
+ <dd>#(msn)#&nbsp;::#[value]##(/msn)#</dd>
+ </dl>
+
+ <dl class="pairs">
+ <dt>Comment</dt>
+ <dd>#(comment)#&nbsp;::#[value]##(/comment)#</dd>
+ #{other}#
+ <dt>#[key]#</dt>
+ <dd>#[value]#&nbsp;</dd>
+ #{/other}#
+ </dl>
+ #(/success)#
+ #(display)#
+ #%env/templates/simplefooter.template%#
+ ::
+ #%env/templates/footer.template%#
+ #(/display)#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/Wiki.html b/htroot/Wiki.html
index 3d238029e..8f611e72b 100644
--- a/htroot/Wiki.html
+++ b/htroot/Wiki.html
@@ -1,111 +1,114 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-<head>
-<title>YaCy '#[clientname]#': Wiki</title>
-#%env/templates/metas.template%#
-</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
-#%env/templates/header.template%#
-<p>
-#(mode)#
-<!-- 0: viewing -->
-<table width="100%" border="0" cellpadding="0" cellspacing="0">
- <tr class="TableHeader" width="100%">
- <td height="10" class="TableHeader">
- <font size="1">&nbsp;<b>yacyWiki page: #[pagename]# &nbsp;&nbsp;&nbsp;
- last edited by #[author]# &nbsp;&nbsp;&nbsp;change date #[date]#</b></font>
- </td>
- </tr>
- <tr class="WikiBackground">
- <td>
- <table width="100%" border="0" cellpadding="5" cellspacing="0">
- <tr>
- <td>
- #[page]#
- </td>
+<!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]#': Wiki</title>
+ #%env/templates/metas.template%#
+ </head>
+ <body id="Wiki">
+ #%env/templates/header.template%#
+
+ #(mode)#
+ <!-- 0: viewing -->
+
+ <div class="Post">
+ <h2 class="PostSubject">yacyWiki page: #[pagename]#</h2>
+ <div class="PostBody">
+ #[page]#
+ </div>
+ <p class="PostInfo">
+ last edited by #[author]# | change date #[date]# | <a href="Wiki.html?page=#[pagename]#&amp;edit=Edit">Edit</a>
+ </p>
+ </div>
+ <p class="Navigation"><a href="Wiki.html">Start Page</a> - <a href="Wiki.html?index=Index">Index</a></p>
+ ::
+ <!-- 1: edit -->
+ <form action="Wiki.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <dl>
+ <dt><label for="author">Author:</label></dt>
+ <dd>
+ <input name="author" id="author" type="text" size="80" maxlength="80" value="#[author]#" />
+ </dd>
+ <dt><label for="content">Text:</label></dt>
+ <dd>
+ <textarea name="content" id="content" cols="80" rows="24">#[page-code]#</textarea>
+ </dd>
+ </dl>
+ <p class="help">
+ You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.
+ </p>
+ <input type="hidden" name="page" value="#[pagename]#" />
+ <input type="hidden" name="reason" value="edit" />
+ <input type="submit" name="submit" value="Submit" />
+ <input type="submit" name="preview" value="Preview" />
+ <input type="submit" name="view" value="Discard" />
+ </fieldset>
+ </form>
+ ::
+ <!-- 2: preview -->
+ <h2>Preview</h2>
+ <p>No changes have been submitted so far!</p>
+ <div class="Post">
+ <h2 class="PostSubject">yacyWiki page: #[pagename]#</h2>
+ <div class="PostBody">
+ #[page]#
+ </div>
+ <p class="PostInfo">
+ last edited by #[author]# | change date #[date]#
+ </p>
+ </div>
+ <form action="Wiki.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
+ <fieldset>
+ <input type="submit" name="submit" value="Submit" />
+ <input type="submit" name="view" value="Discard" />
+ </fieldset>
+
+ <h2>Edit</h2>
+
+ <fieldset>
+ <dl>
+ <dt><label for="author">Author:</label></dt>
+ <dd>
+ <input name="author" id="author" type="text" size="80" maxlength="80" value="#[author]#" />
+ </dd>
+ <dt><label for="content">Text:</label></dt>
+ <dd>
+ <textarea name="content" id="content" cols="80" rows="24">#[page-code]#</textarea>
+ </dd>
+ </dl>
+ <p class="help">
+ You can use <a href="WikiHelp.html" onclick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.
+ </p>
+ <input type="hidden" name="page" value="#[pagename]#" />
+ <input type="hidden" name="reason" value="edit" />
+ <input type="submit" name="submit" value="Submit" />
+ <input type="submit" name="preview" value="Preview" />
+ <input type="submit" name="view" value="Discard" />
+ </fieldset>
+ </form>
+ ::
+ <!-- 3: Index -->
+ <table border="0" cellpadding="5" cellspacing="0">
+ <tr class="TableHeader">
+ <td>Subject</td>
+ <td>Change Date</td>
+ <td>Last Author</td>
</tr>
- </table>
- </td>
- </tr>
-</table>
-<p/>
-<form action="Wiki.html" method="GET">
-<input type="hidden" name="page" value="#[pagename]#">
-<input type="button" name="demo" value="Start Page" onClick="self.location.href='Wiki.html'">
-<input type="submit" name="index" value="Index">
-<input type="submit" name="edit" value="Edit">
-</form>
-::
-<!-- 1: edit -->
-<form action="Wiki.html" method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
-<p>Author:<br><input name="author" type="text" size="80" maxlength="80" value="#[author]#"></p>
-<p>Text:<br><textarea name="content" cols="80" rows="24">#[page-code]#</textarea>
-<br><font size="-1">You can use <a href="WikiHelp.html" target="_blank" onClick="window.open('WikiHelp.html','WikiHelp','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=640,height=480');return false;">Wiki Code</a> here.</font>
-</p>
-<input type="hidden" name="page" value="#[pagename]#">
-<input type="hidden" name="reason" value="edit">
-<input type="submit" name="submit" value="Submit">
-<input type="submit" name="preview" value="Preview">
-<input type="submit" name="view" value="Discard">
-</form>
-::
-<!-- 2: preview -->
-<h2>Preview</h2>
-<p>No changes have been submitted so far!</p>
-<table width="100%" border="0" cellpadding="0" cellspacing="0">
- <tr class="TableHeader" width="100%">
- <td height="10" class="TableHeader" class="black">
- <font size="1">&nbsp;
- <b>yacyWiki page: #[pagename]# &nbsp;&nbsp;&nbsp;last edited by #[author]#,&nbsp;&nbsp;&nbsp;change date #[date]#</b>
- </font>
- </td>
- </tr>
- <tr class="WikiBackground">
- <td>
- <table width="100%" border="0" cellpadding="5" cellspacing="0">
- <tr>
- <td>#[page]#</td>
+ #{pages}#
+ <tr class="TableCellLight">
+ <td><a href="Wiki.html?page=#[name]#">#[subject]#</a></td>
+ <td>#[date]#</td>
+ <td>#[author]#</td>
</tr>
+ #{/pages}#
</table>
- </td>
- </tr>
-</table>
-<form action="Wiki.html" method="post" enctype="multipart/form-data" accept-charset="UTF-8">
- <input type="submit" name="submit" value="Submit">
- <input type="submit" name="view" value="Discard"><br><br><br>
- <h2>Edit</h2>
- <p>Author:<br><input name="author" type="text" size="80" maxlength="80" value="#[author]#"></p>
- <p>Text:<br><textarea name="content" cols="80" rows="24">#[page-code]#</textarea></p>
- <input type="hidden" name="page" value="#[pagename]#">
- <input type="hidden" name="reason" value="edit">
- <input type="submit" name="submit" value="Submit">
- <input type="submit" name="preview" value="Preview">
- <input type="submit" name="view" value="Discard">
-</form>
-::
-<!-- 3: Index -->
-<table border="0" cellpadding="2" cellspacing="0">
- <tr class="TableHeader">
- <td>Subject</td>
- <td>Change Date</td>
- <td>Last Author</td>
- </tr>
-#{pages}#
- <tr class="TableCellLight">
- <td><a href="Wiki.html?page=#[name]#">#[subject]#</a></td>
- <td>#[date]#</td>
- <td>#[author]#</td>
- </tr>
-#{/pages}#
-</table>
-#(error)#::IO Error reading wiki database: #[message]##(/error)#
-<form action="Wiki.html" method="POST" enctype="multipart/form-data">
-<input type="hidden" name="page" value="#[pagename]#">
-<input type="button" name="demo" value="Start Page" onClick="self.location.href='Wiki.html'">
-</form>
-#(/mode)#
-<p>
-Changes will be published as announcement on YaCyNews</p>
-#%env/templates/footer.template%#
-</body>
-</html>
+ #(error)#::<p class="error">IO Error reading wiki database: #[message]#</p>#(/error)#
+ <p class="Navigation">
+ <a href="Wiki.html">Start Page</a>
+ </p>
+ #(/mode)#
+
+ <p>Changes will be published as announcement on YaCyNews</p>
+ #%env/templates/footer.template%#
+ </body>
+</html> \ No newline at end of file
diff --git a/htroot/env/base.css b/htroot/env/base.css
new file mode 100644
index 000000000..27d43b3ac
--- /dev/null
+++ b/htroot/env/base.css
@@ -0,0 +1,402 @@
+/* Layout and general style */
+
+body, table, textarea {
+ font-size: 12px;
+}
+
+* {
+ font-family:Helvetica, Arial, sans-serif;
+}
+
+body {
+ margin:0;
+ padding:0;
+}
+
+img {
+ border:0;
+}
+
+h1, h2, h3, h4 {
+ font-style:normal;
+}
+
+h1 {
+ font-size:2em;
+}
+h2 {
+ font-size:1.6em;
+ clear:left; /* The heading after the submenu has to be left again */
+}
+
+h3 {
+ font-size:1.3em;
+}
+h4 {
+ font-size:1.1em;
+}
+
+a:link {
+ text-decoration:none;
+}
+
+a:visited {
+ text-decoration:none;
+}
+
+a:hover {
+ text-decoration:underline;
+}
+
+*.tt {
+ font-family:Courier,Terminal,sans-serif;
+}
+
+td {
+ padding:1px 2px;
+}
+
+/* Head */
+
+div.head h1 {
+ padding:4px;
+ background:url(/env/grafics/yacy.gif) 10px center no-repeat;
+ font-weight: bold;
+ font-size: 1.6em;
+ text-align: center;
+ margin:0;
+}
+
+/* Menu*/
+
+ul#menu {
+ padding:0;
+ margin:0;
+ margin-left:1px;
+ position:absolute;
+ top:3em;
+ left:0;
+ width:11em;
+ overflow:hidden;
+}
+
+ul.menu, ul.SubMenu {
+ padding:0;
+ margin:0;
+}
+
+ul.menu li, ul.SubMenu li {
+ list-style:none;
+ margin:0;
+ margin-top:1px;
+ padding:0;
+}
+
+li.menugroup {
+ margin-left:5px;
+ margin-bottom:10px;
+ list-style:none;
+}
+li.menugroup h3, div.SubMenugroup h3, div.SubMenu h3 {
+ font-size:1em;
+ font-weight:bold;
+ margin:0;
+ padding:1px 10px;
+}
+
+div.SubMenu h3 {
+ margin-bottom:1px;
+}
+
+div.SubMenugroup, ul.SubMenu li {
+ float:left;
+ margin-right:1px;
+ margin-top:0;
+}
+
+a.MenuItemLink, ul.SubMenu em {
+ display:block;
+ text-decoration:none;
+ margin-top:1px;
+ margin-bottom:1px;
+ padding:1px 10px 1px 15px;
+ font-size:0.9em;
+}
+
+ul#menu a.MenuItemLink {
+ width:80%;
+ padding:1px 5% 1px 15%;
+}
+
+ul.SubMenu a.MenuItemLink, ul.SubMenu em {
+ margin-top:0;
+}
+
+a:hover.MenuItemLink {
+ text-decoration:none;
+}
+
+a.MenuItemLink.lock, ul.SubMenu em.lock {
+ background-image:url(/env/grafics/lock.gif);
+ background-position:2px center;
+ background-repeat:no-repeat;
+}
+
+/* Content */
+
+div.content {
+ position:absolute;
+ top:3em;
+ left:12em;
+ right:10px;
+ margin:0;
+}
+
+/* Searchpages */
+
+form.search {
+ text-align:center;
+ margin:0;
+}
+
+form.search table {
+ margin:0 auto;
+ text-align:left;
+}
+
+h2.yacy { /* The heading in index.html */
+ margin:10px auto;
+ text-align:center;
+ padding-top:130px;
+ width:256px;
+ min-width:256px;
+ background:url(/env/grafics/kaskelix.png) top center no-repeat;
+}
+
+form.search.small p.yacylogo { /* The logo in yacysearch.html */
+ display:block;
+ float:left;
+ padding:0;
+ width:70px;
+}
+
+form.search.small h2 {
+ clear:none;
+}
+
+div.urlactions {
+ float:left;
+}
+
+div.urlactions a {
+ display:block;
+}
+
+img.bookmarkIcon, img.deleteIcon {
+ height: 16px;
+ width: 16px;
+}
+
+a.deletelink:hover {
+ background:url(/env/grafics/minus.gif) center center no-repeat;
+}
+
+a.bookmarklink:hover {
+ background:url(/env/grafics/plus.gif) center center no-repeat;
+}
+
+div.searchresults p, div.searchresults h4 {
+ margin:2px 2px 2px 22px;
+}
+
+.snippetLoaded {
+ font-style:italic;
+}
+
+.snippetError {
+ font-style:italic;
+}
+
+div.searchresults {
+ padding-top:1em;
+ margin-bottom:1em;
+}
+
+/* Bookmarks */
+
+div.Tags {
+ float:right;
+ width:12em;
+ text-align:right;
+ padding-left: 5px;
+}
+
+ul.tagList {
+ list-style:none;
+ padding:0;
+ margin-left:0;
+}
+
+div.bookmarkList, div.Tags {
+ margin-top:1em;
+}
+
+div.bookmark {
+ margin-top:1em;
+ margin-right:13em;
+ padding-bottom:1em;
+}
+
+div.bookmark p {
+ margin:1px;
+}
+
+a.bookmarkTags {
+ font-weight:bold;
+ white-space:nowrap;
+}
+
+h4.bookmarkTitle {
+ margin:0;
+}
+
+a.bookmarkTitle {
+ font-size:17px;
+ font-weight:bold;
+}
+
+a.BookmarkLink {
+ background:url(/env/grafics/addlink.png) left center no-repeat;
+ padding-left:15px;
+}
+
+/* Blog and Wiki */
+
+.Post {
+ padding:10px;
+ margin-bottom:10px;
+}
+.PostSubject {
+ padding:5px;
+ margin:0;
+}
+.PostBody {
+ margin:10px;
+}
+.PostInfo {
+ padding:1px 10px;
+}
+
+.WikiTOCBox {
+ padding: 8px;
+}
+
+/* Forms and key-value pairs with dl */
+
+fieldset {
+ margin:1em 0.4em;
+ padding:5px;
+}
+
+legend {
+ font-size:1.2em;
+ padding:0.2em;
+ text-align:center;
+}
+
+form dt, dl.pairs dt {
+ float:left;
+ clear:left;
+ width:17em;
+ margin:0 0.25em;
+ padding:0.2em 1em;
+ text-align:right;
+}
+
+form dd, dl.pairs dd {
+ margin:0 0 0.5em 0.25em;
+}
+
+dl.pairs dd {
+ padding:2px 1em;
+ margin-left:20em;
+}
+
+/* for pages: */
+
+body#ViewLog pre {
+ width:100%; /* TODO: fix width in IE */
+ height:480px;
+ overflow:scroll;
+}
+body#QuickCrawlLink p, body#QuickCrawlLink h4 {
+ padding:0 5%;
+}
+
+form.PeerControl fieldset { /* on Status.html */
+ text-align:right;
+}
+
+body#Settings ul.settingsMenu li {
+ list-style-image:url(/env/grafics/down.gif);
+}
+
+body#help dt {
+ margin-top:0.2em;
+ font-weight:bold;
+}
+
+table.networkTable {
+ font-size:90%;
+}
+
+table.StatusTable {
+ border-width:0px;
+ border-spacing:1px;
+}
+
+/* other */
+
+div.ProgressBarCaption {
+ float:left;
+ width:70px;
+}
+div.ProgressBar {
+ float:left;
+ width:150px;
+ height:10px;
+}
+
+p.info {
+ margin-top:5em;
+ padding-top:5px;
+ text-align:center;
+}
+
+.settingsValue {
+ font-weight:bold;
+}
+
+.Headline {
+ font-weight: bold;
+ font-size: 160%;
+ text-align: center;
+ height: 36px;
+ width:100%;
+}
+
+.Heading {
+ height: 36px;
+}
+
+div.CacheAdminInfo {
+ margin-top:1em;
+}
+
+.error {
+ font-weight:bold;
+}
+
+.help {
+ font-size:90%;
+}
diff --git a/htroot/env/templates/footer.template b/htroot/env/templates/footer.template
index 27e828c29..0c2eddc2b 100644
--- a/htroot/env/templates/footer.template
+++ b/htroot/env/templates/footer.template
@@ -1,6 +1 @@
-<br><br></td></tr></table>
-</td>
-<td width="8" valign="top">
-</td>
-</tr></table>
-</td></tr></table>
+</div>
diff --git a/htroot/env/templates/header.template b/htroot/env/templates/header.template
index 37361d6e5..effb8e7c2 100644
--- a/htroot/env/templates/header.template
+++ b/htroot/env/templates/header.template
@@ -1,87 +1,68 @@
-<table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr><td>
- <table class="Heading" border="0" cellspacing="0" cellpadding="0" width="100%">
- <tr height="36">
- <td width="160">
- <a href="http://www.yacy.net">
- <img width="52" height="33" border="0" src="/env/grafics/yacy.gif" align="top" alt="YaCy-Logo">
- </a>
- </td>
- <td width="100%" align="center" class="Headline">
- <h1>
- YaCy&nbsp;-&nbsp;Distributed&nbsp;Web&nbsp;Indexing&nbsp;-&nbsp;Administration
- </h1>
- </td>
- <td width="60" align="right">
- &nbsp;
- </td>
- </tr>
- <!--<tr height="1" bgcolor="#223322"><td height="1" colspan="3" bgcolor="#223322"></td></tr>-->
- </table>
-</td></tr>
-
-<tr><td height="2"></td></tr>
-
-<tr><td><table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr><td width="100" valign="top">
-<table width="100%" border="0" cellspacing="2" cellpadding="0" class="Menu">
- <tr><td class="MenuHeader">&nbsp;Global&nbsp;Index</td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/index.html?display=1" accesskey="s" class="MenuItemLink">Search Page</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/DetailedSearch.html" class="MenuItemLink">Detailed Search</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Bookmarks.html" class="MenuItemLink">Bookmarks</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Help.html" class="MenuItemLink">Help</a></td></tr>
-<!--<tr><td class="MenuItem">&nbsp;<a href="/Statistics.html" class="MenuItemLink">Statistics</a></td></tr>-->
- <tr><td class="MenuSpacer"></td></tr>
-
- <tr><td class="MenuHeader">&nbsp;Crawler Control</td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/IndexCreate_p.html" class="MenuItemLink">Index Create</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/IndexControl_p.html" class="MenuItemLink">Index Control</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/IndexMonitor.html" class="MenuItemLink">Index Monitor</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/Blacklist_p.html" class="MenuItemLink">Blacklist</a></td></tr>
- <tr><td class="MenuSpacer"></td></tr>
-
- <tr><td class="MenuHeader">&nbsp;Communication / Publication</td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/www/" class="MenuItemLink">Home&nbsp;Page</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/share/" class="MenuItemLink">File&nbsp;Share</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Wiki.html" class="MenuItemLink">Wiki</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Blog.html" class="MenuItemLink">Blog</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/Messages_p.html" class="MenuItemLink">Messages</a>&nbsp;<img border="0" src="notifier.gif" align="center" alt="You have a new message!"></td></tr>
- <tr><td class="MenuSpacer"></td></tr>
-
- <tr><td class="MenuHeader">&nbsp;Peer&nbsp;Control</td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Status.html" accesskey="t" class="MenuItemLink">Status &amp; Shutdown</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/ConfigBasic.html" class="MenuItemLink">Basic Configuration</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/Settings_p.html" class="MenuItemLink">Advanced Settings</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Network.html" accesskey="w" class="MenuItemLink">Network Monitor</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/News.html" accesskey="n" class="MenuItemLink">News System</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/ViewLog_p.html" class="MenuItemLink">Log</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/PerformanceQueues_p.html" class="MenuItemLink">Performance</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/Connections_p.html" class="MenuItemLink">Connections</a></td></tr>
- <tr><td class="MenuSpacer"></td></tr>
-
- <tr><td class="MenuHeader">&nbsp;Local Proxy</td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/ProxyIndexingMonitor_p.html" class="MenuItemLink">Proxy Indexing</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/CacheAdmin_p.html" class="MenuItemLink">Cache Monitor</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="Password protected">&nbsp;<a href="/CookieMonitorIncoming_p.html" class="MenuItemLink">Cookie Monitor</a></td></tr>
- <tr><td class="MenuSpacer"></td></tr>
-
- <tr><td class="MenuHeader">&nbsp;The Project</td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy.net/yacy/" class="MenuItemLink">Project Home</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy.net/yacy/News.html" class="MenuItemLink">Project News</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://sourceforge.net/forum/?group_id=116142" class="MenuItemLink">English Forum</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy-forum.de" class="MenuItemLink">Deutsches Forum</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://newsletters.yacy-forum.de" class="MenuItemLink">Newsletters</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy.net/yacy/Download.html" class="MenuItemLink">Download YaCy</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy-websuche.de/wiki/index.php/Hauptseite" class="MenuItemLink">YaCy Wiki</a></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="http://www.yacy.net/yacy/Contact.html" class="MenuItemLink">Contact</a></td></tr>
-
- <!--
- <tr><td class="MenuSpacer"></td></tr>
- <tr><td class="MenuHeader">&nbsp;Experimental</b></td></tr>
- <tr><td class="MenuItem">&nbsp;<a href="/Lab.html" class="MenuItemLink">The Lab</a></td></tr>
- -->
-</table>
-</td><td width="6" valign="top"></td><td valign="top">
-<table width="100%" border="0" cellspacing="0" cellpadding="0">
- <tr><td height="2"></td></tr>
- <tr><td>
+<div class="head">
+ <h1 class="head">YaCy - Distributed Web Indexing - Administration</h1>
+</div>
+<ul id="menu">
+ <li class="menugroup" id="menugroupGlobalIndex">
+ <h3>Global Index</h3>
+ <ul class="menu">
+ <li><a href="/index.html?display=1" accesskey="s" class="MenuItemLink">Search Page</a></li>
+ <li><a href="/DetailedSearch.html" class="MenuItemLink">Detailed Search</a></li>
+ <li><a href="/Bookmarks.html" class="MenuItemLink">Bookmarks</a></li>
+ <li><a href="/Help.html" class="MenuItemLink">Help</a></li>
+ </ul>
+ </li>
+ <li class="menugroup" id="menugroupCrawlerControl">
+ <h3>Crawler Control</h3>
+ <ul class="menu">
+ <li><a href="/IndexCreate_p.html" class="MenuItemLink lock">Index Create</a></li>
+ <li><a href="/IndexControl_p.html" class="MenuItemLink lock">Index Control</a></li>
+ <li><a href="/IndexMonitor.html" class="MenuItemLink">Index Monitor</a></li>
+ <li><a href="/Blacklist_p.html" class="MenuItemLink lock">Blacklist</a></li>
+ </ul>
+ </li>
+ <li class="menugroup" id="menugroupCommunicationPublication">
+ <h3>Communication / Publication</h3>
+ <ul class="menu">
+ <li><a href="/www/" class="MenuItemLink">Home Page</a></li>
+ <li><a href="/share/" class="MenuItemLink">File Share</a></li>
+ <li><a href="/Wiki.html" class="MenuItemLink">Wiki</a></li>
+ <li><a href="/Blog.html" class="MenuItemLink">Blog</a></li>
+ <li><a href="/Messages_p.html" class="MenuItemLink lock">Messages <img src="notifier.gif" alt="New Messages" /></a></li>
+ </ul>
+ </li>
+ <li class="menugroup" id="menugroupPeerControl">
+ <h3>Peer Control</h3>
+ <ul class="menu">
+ <li><a href="/Status.html" accesskey="t" class="MenuItemLink">Status &amp; Shutdown</a></li>
+ <li><a href="/ConfigBasic.html" class="MenuItemLink lock">Basic Configuration</a></li>
+ <li><a href="/Settings_p.html" class="MenuItemLink lock">Advanced Settings</a></li>
+ <li><a href="/Network.html" accesskey="w" class="MenuItemLink">Network</a></li>
+ <li><a href="/News.html" accesskey="n" class="MenuItemLink">News System</a></li>
+ <li><a href="/ViewLog_p.html" class="MenuItemLink lock">Log</a></li>
+ <li><a href="/PerformanceQueues_p.html" class="MenuItemLink lock">Performance</a></li>
+ <li><a href="/Connections_p.html" class="MenuItemLink lock">Connections</a></li>
+ </ul>
+ </li>
+ <li class="menugroup" id="menugroupLocalProxy">
+ <h3>Local Proxy</h3>
+ <ul class="menu">
+ <li><a href="/ProxyIndexingMonitor_p.html" class="MenuItemLink lock">Proxy Indexing</a></li>
+ <li><a href="/CacheAdmin_p.html" class="MenuItemLink lock">Cache Monitor</a></li>
+ <li><a href="/CookieMonitorIncoming_p.html" class="MenuItemLink lock">Cookie Monitor</a></li>
+ </ul>
+ </li>
+ <li class="menugroup" id="menugroupTheProjekt">
+ <h3>The Project</h3>
+ <ul class="menu">
+ <li><a href="http://www.yacy.net/yacy/" class="MenuItemLink">Project Home</a></li>
+ <li><a href="http://www.yacy.net/yacy/News.html" class="MenuItemLink">Project News</a></li>
+ <li><a href="http://sourceforge.net/forum/?group_id=116142" class="MenuItemLink">English Forum</a></li>
+ <li><a href="http://www.yacy-forum.de" class="MenuItemLink">Deutsches Forum</a></li>
+ <li><a href="http://newsletters.yacy-forum.de" class="MenuItemLink">Newsletters</a></li>
+ <li><a href="http://www.yacy.net/yacy/Download.html" class="MenuItemLink">Download YaCy</a></li>
+ <li><a href="http://www.yacy-websuche.de/wiki/index.php/Hauptseite" class="MenuItemLink">YaCy Wiki</a></li>
+ <li><a href="http://www.yacy.net/yacy/Contact.html" class="MenuItemLink">Contact</a></li>
+ </ul>
+ </li>
+</ul>
+<div class="content"> \ No newline at end of file
diff --git a/htroot/env/templates/metas.template b/htroot/env/templates/metas.template
index c2421d967..3b67f9491 100644
--- a/htroot/env/templates/metas.template
+++ b/htroot/env/templates/metas.template
@@ -1,8 +1,9 @@
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<link rel="shortcut icon" href="favicon.ico">
-<meta name="Content-Language" content="English, Englisch">
-<meta name="keywords" content="Anomic HTTP Proxy search engine spider indexer java network open free download Mac Windows Linux Software development">
-<meta name="description" content="Anomic Software HTTP Proxy Freeware Home Page">
-<meta name="copyright" content="Michael Christen">
-<link rel="stylesheet" media="all" href="/env/style.css">
-<!-- (C), Architecture and Realisation: Michael Peter Christen; Contact: mc <at> anomic.de -->
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <link rel="shortcut icon" href="favicon.ico" />
+ <meta name="Content-Language" content="English, Englisch" />
+ <meta name="keywords" content="Anomic HTTP Proxy search engine spider indexer java network open free download Mac Windows Linux Software development" />
+ <meta name="description" content="Anomic Software HTTP Proxy Freeware Home Page" />
+ <meta name="copyright" content="Michael Christen" />
+ <link rel="stylesheet" type="text/css" media="all" href="/env/base.css" />
+ <link rel="stylesheet" type="text/css" media="screen" href="/env/style.css" />
+<!-- (C), Architecture and Realisation: Michael Peter Christen; Contact: mc <at> anomic.de --> \ No newline at end of file
diff --git a/htroot/env/templates/simplefooter.template b/htroot/env/templates/simplefooter.template
index 45eab8fd7..04f5b8449 100644
--- a/htroot/env/templates/simplefooter.template
+++ b/htroot/env/templates/simplefooter.template
@@ -1,6 +1 @@
-<br><br></td></tr></table>
-</td>
-<td width="20" valign="top">
-</td>
-</tr></table>
-</td></tr></table>
+</div>
diff --git a/htroot/env/templates/simpleheader.template b/htroot/env/templates/simpleheader.template
index 93410e75c..5a4b7304a 100644
--- a/htroot/env/templates/simpleheader.template
+++ b/htroot/env/templates/simpleheader.template
@@ -1,27 +1,9 @@
-<table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr><td></td></tr>
-<tr><td height="2"></td></tr>
-
-<tr><td><table border="0" cellspacing="0" cellpadding="0" width="100%">
-<tr>
-<td width="20" valign="top"></td>
-<td valign="top">
-<table width="100%" border="0" cellspacing="0" cellpadding="0">
- <tr><td height="2"></td></tr>
- <tr><td>
-
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr class="TableHeader">
-<td width="25%" class="MenuSubItem">&nbsp;
-<a href="/Status.html" class="MenuItemLink">Peer Administration</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;
-<a href="http://www.yacy.net/yacy/" class="MenuItemLink">Project Home</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;
-<a href="http://www.yacy-websearch.net/wiki/" class="MenuItemLink">Help / Wiki</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;
-<a href="/ViewProfile.html?hash=localhash" class="MenuItemLink">Peer Owner Profile</a>&nbsp;</td>
-</tr>
-</table><br> \ No newline at end of file
+<div class="SubMenu">
+<ul class="SubMenu">
+<li style="width:24%;"><a href="/Status.html" class="MenuItemLink">Peer Administration</a></li>
+<li style="width:24%;"><a href="http://www.yacy.net/yacy/" class="MenuItemLink">Project Home</a></li>
+<li style="width:24%;"><a href="http://www.yacy-websearch.net/wiki/" class="MenuItemLink">Help / Wiki</a></li>
+<li style="width:24%;"><a href="/ViewProfile.html?hash=localhash" class="MenuItemLink">Peer Owner Profile</a></li>
+</ul>
+</div>
+<div style="clear:left; padding:10px;"> \ No newline at end of file
diff --git a/htroot/env/templates/submenuConfig.template b/htroot/env/templates/submenuConfig.template
index fc48816cf..4224c6182 100644
--- a/htroot/env/templates/submenuConfig.template
+++ b/htroot/env/templates/submenuConfig.template
@@ -1,20 +1,10 @@
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="9" class="MenuHeader">&nbsp;Peer Configuration Menu</td></tr>
-<tr height="2"><td colspan="9"></td></tr>
-<tr class="TableHeader">
-<td width="22%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/ConfigBasic.html" class="MenuItemLink">Basic Configuraton</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="22%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/ConfigLanguage_p.html" class="MenuItemLink">Language</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="22%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/ConfigProfile_p.html" class="MenuItemLink">Peer Profile</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="22%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/ConfigSkins_p.html" class="MenuItemLink">Interface Skins</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="12%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/ConfigAdvanced_p.html" class="MenuItemLink">Advanced</a>&nbsp;</td>
-</tr>
-</table> \ No newline at end of file
+<div class="SubMenu">
+ <h3>Peer Configuration Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/ConfigBasic.html" class="MenuItemLink lock">Basic Configuraton</a></li>
+ <li><a href="/ConfigLanguage_p.html" class="MenuItemLink lock">Language</a></li>
+ <li><a href="/ConfigProfile_p.html" class="MenuItemLink lock">Peer Profile</a></li>
+ <li><a href="/ConfigSkins_p.html" class="MenuItemLink lock">Interface Skins</a></li>
+ <li><a href="/ConfigAdvanced_p.html" class="MenuItemLink lock">Advanced</a></li>
+ </ul>
+</div> \ No newline at end of file
diff --git a/htroot/env/templates/submenuCookie.template b/htroot/env/templates/submenuCookie.template
index e072506de..2ad542b5b 100644
--- a/htroot/env/templates/submenuCookie.template
+++ b/htroot/env/templates/submenuCookie.template
@@ -1,9 +1,7 @@
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="7" class="MenuHeader">&nbsp;Cookie Menu</td></tr>
-<tr height="2"><td colspan="7"></td></tr>
-<tr class="TableHeader">
-<td width="50%" class="MenuSubItem">&nbsp;&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;&nbsp;<a href="/CookieMonitorIncoming_p.html" class="MenuItemLink">Incoming&nbsp;Cookies</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="50%" class="MenuSubItem">&nbsp;&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;&nbsp;<a href="/CookieMonitorOutgoing_p.html" class="MenuItemLink">Outgoing&nbsp;Cookies</a>&nbsp;</td>
-</tr>
-</table> \ No newline at end of file
+<div class="SubMenu">
+ <h3>Cookie Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/CookieMonitorIncoming_p.html" class="MenuItemLink lock">Incoming&nbsp;Cookies</a></li>
+ <li><a href="/CookieMonitorOutgoing_p.html" class="MenuItemLink lock">Outgoing&nbsp;Cookies</a></li>
+ </ul>
+</div> \ No newline at end of file
diff --git a/htroot/env/templates/submenuIndexControl.template b/htroot/env/templates/submenuIndexControl.template
index e13fc3302..4ddb9f763 100644
--- a/htroot/env/templates/submenuIndexControl.template
+++ b/htroot/env/templates/submenuIndexControl.template
@@ -1,17 +1,9 @@
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="7" class="MenuHeader">&nbsp;Index Control Menu</td></tr>
-<tr height="2"><td colspan="17"></td></tr>
-<tr class="TableHeader">
-<td width="25%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexControl_p.html" class="MenuItemLink">Index Administration</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexImport_p.html" class="MenuItemLink">Index Import</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexTransfer_p.html" class="MenuItemLink">Index Transfer</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="25%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCleaner_p.html" class="MenuItemLink">Index Cleaner</a>&nbsp;</td>
-</tr>
-</table> \ No newline at end of file
+<div class="SubMenu">
+ <h3>Index Control Menu</h3>
+ <ul class="SubMenu">
+ <li><a href="/IndexControl_p.html" class="MenuItemLink lock">Index Administration</a></li>
+ <li><a href="/IndexImport_p.html" class="MenuItemLink lock">Index Import</a></li>
+ <li><a href="/IndexTransfer_p.html" class="MenuItemLink lock">Index Transfer</a></li>
+ <li><a href="/IndexCleaner_p.html" class="MenuItemLink lock">Index Cleaner</a></li>
+ </ul>
+</div>
diff --git a/htroot/env/templates/submenuIndexCreate.template b/htroot/env/templates/submenuIndexCreate.template
index dfe8d18f1..6540d34da 100644
--- a/htroot/env/templates/submenuIndexCreate.template
+++ b/htroot/env/templates/submenuIndexCreate.template
@@ -1,39 +1,27 @@
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="17" class="MenuHeader">&nbsp;Index Creation Menu</td></tr>
-<tr height="2"><td colspan="17"></td></tr>
-<tr class="TableHeader">
-<td class="MenuTopItem" colspan="5">&nbsp;Control Queues</td>
-<td class="MenuSubSpacer"></td>
-<td class="MenuTopItem" colspan="5">&nbsp;WWW Crawl Queues</td>
-<td class="MenuSubSpacer"></td>
-<td class="MenuTopItem" colspan="5">&nbsp;Media Crawl Queues</td>
-</tr>
-<tr class="TableHeader">
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCreate_p.html" class="MenuItemLink">Crawl Start</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCreateIndexingQueue_p.html" class="MenuItemLink">Indexing</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCreateLoaderQueue_p.html" class="MenuItemLink">Loader</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCreateWWWLocalQueue_p.html" class="MenuItemLink">Local</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/IndexCreateWWWGlobalQueue_p.html" class="MenuItemLink">Global</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<!--<a href="/IndexCreateWWWOverhangQueue_p.html" class="MenuItemLink">--><i>Overhang</i><!--</a>-->&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<!--<a href="/IndexCreateImageQueue_p.html" class="MenuItemLink">--><i>Images</i><!--</a>-->&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<!--<a href="/IndexCreateMovieQueue_p.html" class="MenuItemLink">--><i>Movies</i><!--</a>-->&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="11%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<!--<a href="/IndexCreateMusicQueue_p.html" class="MenuItemLink">--><i>Music</i><!--</a>-->&nbsp;</td>
-</tr>
-</table> \ No newline at end of file
+<div class="SubMenu">
+ <h3>Index Creation Menu</h3>
+ <div class="SubMenugroup">
+ <h3>Control Queues</h3>
+ <ul class="SubMenu">
+ <li><a href="/IndexCreate_p.html" class="MenuItemLink lock">Crawl Start</a></li>
+ <li><a href="/IndexCreateIndexingQueue_p.html" class="MenuItemLink lock">Indexing</a></li>
+ <li><a href="/IndexCreateLoaderQueue_p.html" class="MenuItemLink lock">Loader</a></li>
+ </ul>
+ </div>
+ <div class="SubMenugroup">
+ <h3>WWW Crawl Queues</h3>
+ <ul class="SubMenu">
+ <li><a href="/IndexCreateWWWLocalQueue_p.html" class="MenuItemLink lock">Local</a></li>
+ <li><a href="/IndexCreateWWWGlobalQueue_p.html" class="MenuItemLink lock">Global</a></li>
+ <li><!--<a href="/IndexCreateWWWOverhangQueue_p.html" class="MenuItemLink">--><em class="lock">Overhang</em><!--</a>--></li>
+ </ul>
+ </div>
+ <div class="SubMenugroup">
+ <h3>Media Crawl Queues</h3>
+ <ul class="SubMenu">
+ <li><!--<a href="/IndexCreateImageQueue_p.html" class="MenuItemLink">--><em class="lock">Images</em><!--</a>--></li>
+ <li><!--<a href="/IndexCreateMovieQueue_p.html" class="MenuItemLink">--><em class="lock">Movies</em><!--</a>--></li>
+ <li><!--<a href="/IndexCreateMusicQueue_p.html" class="MenuItemLink">--><em class="lock">Music</em><!--</a>--></li>
+ </ul>
+ </div>
+</div> \ No newline at end of file
diff --git a/htroot/env/templates/submenuPerformance.template b/htroot/env/templates/submenuPerformance.template
index 7289a1fba..fc5378c2e 100644
--- a/htroot/env/templates/submenuPerformance.template
+++ b/htroot/env/templates/submenuPerformance.template
@@ -1,14 +1,8 @@
-<table width="100%" border="0" cellpadding="0" cellspacing="0" class="SubMenu">
-<tr height="10"><td colspan="17" class="MenuHeader">&nbsp;Performance Menu</td></tr>
-<tr height="2"><td colspan="17"></td></tr>
-<tr class="TableHeader">
-<td width="33%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/PerformanceQueues_p.html" class="MenuItemLink">Queues Performance Settings</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="33%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/PerformanceMemory_p.html" class="MenuItemLink">Memory Settings for Database Caches</a>&nbsp;</td>
-<td class="MenuSubSpacer"></td>
-<td width="33%" class="MenuSubItem">&nbsp;<img border="0" src="/env/grafics/lock.gif" align="top" alt="password-protected">&nbsp;
-<a href="/PerformanceSearch_p.html" class="MenuItemLink">Timing Settings for Search Sequence</a>&nbsp;</td>
-</tr>
-</table> \ No newline at end of file
+<div class="SubMenu">
+<h3>Performance Menu</h3>
+<ul class="SubMenu">
+<li><a href="/PerformanceQueues_p.html" class="MenuItemLink lock">Queues Performance Settings</a></li>
+<li><a href="/PerformanceMemory_p.html" class="MenuItemLink lock">Memory Settings for Database Caches</a></li>
+<li><a href="/PerformanceSearch_p.html" class="MenuItemLink lock">Timing Settings for Search Sequence</a></li>
+</ul>
+</div> \ No newline at end of file
diff --git a/htroot/index.html b/htroot/index.html
index fa366b331..365084d0f 100644
--- a/htroot/index.html
+++ b/htroot/index.html
@@ -1,134 +1,116 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
- <head>
- <title>YaCy '#[clientname]#': Search Page</title>
-#%env/templates/metas.template%#
- <link rel="alternate" type="application/rss+xml" title="Search for #[former]#" href="yacysearch.rss?search=#[former]#">
- </head>
- <body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0" onload="document.getElementById('search').focus()">
-#(display)#
-#%env/templates/simpleheader.template%#
-::
-#%env/templates/header.template%#
-#(/display)#
- <br>
- <center><img src="/env/grafics/kaskelix.png" align="middle" alt="Kaskelix - the YaCy logo"></center><br>
- <center>#[promoteSearchPageGreeting]#</center><br>
+<!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]#': Search Page</title>
+ #%env/templates/metas.template%#
+ <link rel="alternate" type="application/rss+xml" title="Search for #[former]#" href="yacysearch.rss?search=#[former]#" />
+ </head>
+ <body id="index" onload="document.getElementById('search').focus()">
+ #(display)#
+ #%env/templates/simpleheader.template%#
+ ::
+ #%env/templates/header.template%#
+ #(/display)#
- <form action="yacysearch.html" method="get" name="searchform">
- <input type="hidden" name="display" value="#[display]#">
- <center>
- <table border="0" cellspacing="0" cellpadding="0">
- <tr>
- <td colspan=2>
- <center>
- <input name="search" type="text" size="52" maxlength="80" value="#[former]#">
- <input type="submit" name="Enter" value="Search"><p>
- <input type="hidden" name="former" value="#[former]#">
- </center>
- </td>
- </tr>
- #(searchoptions)#
- <input type="hidden" name="count" value="20">
- <input type="hidden" name="order" value="Date-YBR-Quality">
- <input type="hidden" name="resource" value="global">
- <input type="hidden" name="time" value="6">
- <input type="hidden" name="urlmaskfilter" value=".*">
- <input type="hidden" name="prefermaskfilter" value="">
- <tr align="left">
- <td></td>
- <td><a href="/index.html?searchoptions=1&display=#[display]#" onClick="this.href='/index.html?searchoptions=1&display=#[display]#&handover='+document.searchform.search.value">more options...</a></td>
- </tr>
- ::
- <tr align="left">
- <td>
- Max. number of results:
- </td>
- <td>
- <select NAME="count">
- <option #(count-10)#::selected#(/count-10)#>10</option>
- <option #(count-50)#::selected#(/count-50)#>50</option>
- <option #(count-100)#::selected#(/count-100)#>100</option>
- <option #(count-1000)#::selected#(/count-1000)#>1000</option>
- </select>
- </td>
- </tr>
- <tr align="left">
- <td>
- order by:
- </td>
- <td>
- <select NAME="order">
- <option value="YBR-Date-Quality" #(order-ybr-date-quality)#::selected#(/order-ybr-date-quality)#>YBR-Date-Quality</option>
- <option value="YBR-Quality-Date" #(order-ybr-quality-date)#::selected#(/order-ybr-quality-date)#>YBR-Quality-Date</option>
- <option value="Date-YBR-Quality" #(order-date-ybr-quality)#::selected#(/order-date-ybr-quality)#>Date-YBR-Quality</option>
- <option value="Quality-YBR-Date" #(order-quality-ybr-date)#::selected#(/order-quality-ybr-date)#>Quality-YBR-Date</option>
- <option value="Date-Quality-YBR" #(order-date-quality-ybr)#::selected#(/order-date-quality-ybr)#>Date-Quality-YBR</option>
- <option value="Quality-Date-YBR" #(order-quality-date-ybr)#::selected#(/order-quality-date-ybr)#>Quality-Date-YBR</option>
- </select>
- </td>
- </tr>
- <tr align="left">
- <td>
- Resource:
- </td>
- <td>
- <select NAME="resource">
- <option value="global" #(resource-global)#::selected#(/resource-global)#>global</option>
- <option value="local" #(resource-local)#::selected#(/resource-local)#>local</option>
- </select>
- </td>
- </tr>
- <tr align="left">
- <td>
- Max. search time (seconds):
- </td>
- <td>
- <select NAME="time">
- <option #(time-1)#::selected#(/time-1)#>1</option>
- <option #(time-3)#::selected#(/time-3)#>3</option>
- <option #(time-6)#::selected#(/time-6)#>6</option>
- <option #(time-10)#::selected#(/time-10)#>10</option>
- <option #(time-30)#::selected#(/time-30)#>30</option>
- <option #(time-60)#::selected#(/time-60)#>60</option>
- </select>
- </td>
- </tr>
- <tr align="left">
- <td>
- URL mask:
- </td>
- <td>
- #(urlmaskoptions)#
- <input name="urlmaskfilter" type="text" size="12" maxlength="80" value="#[urlmaskfilter]#">
- ::
- <input type="radio" name="urlmask" value="yes" checked> restrict on <input name="urlmaskfilter" type="text" size="12" maxlength="80" value="#[urlmaskfilter]#">
- <input type="radio" name="urlmask" value="no"> show all
- #(/urlmaskoptions)#
- </td>
- </tr>
- <tr align="left">
- <td>
- Prefer mask:
- </td>
- <td>
- #(prefermaskoptions)#
- <input name="prefermaskfilter" type="text" size="12" maxlength="80" value="#[prefermaskfilter]#">
- ::
- <input type="radio" name="prefermask" value="yes" 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>
- #(/searchoptions)#
- </table>
- </center>
- </form>
-
-#(display)#
-#%env/templates/simplefooter.template%#
-::
-#%env/templates/footer.template%#
-#(/display)#
-</body>
+ <h2 class="yacy">
+ #[promoteSearchPageGreeting]#
+ </h2>
+
+ <form class="search" action="yacysearch.html" method="get" name="searchform">
+ <fieldset class="maininput">
+ <input type="hidden" name="display" value="#[display]#" />
+ <input name="search" type="text" size="52" maxlength="80" value="#[former]#" />
+ <input type="submit" name="Enter" value="Search" />
+ <input type="hidden" name="former" value="#[former]#" />
+ #(searchoptions)#
+ <input type="hidden" name="count" value="20" />
+ <input type="hidden" name="order" value="Date-YBR-Quality" />
+ <input type="hidden" name="resource" value="global" />
+ <input type="hidden" name="time" value="6" />
+ <input type="hidden" name="urlmaskfilter" value=".*" />
+ <input type="hidden" name="prefermaskfilter" value="" />
+ </fieldset>
+ <p><a href="/index.html?searchoptions=1&amp;display=#[display]#" onclick="this.href='/index.html?searchoptions=1&amp;display=#[display]#&amp;handover='+document.searchform.search.value">more options...</a></p>
+ ::
+ </fieldset>
+
+ <table>
+ <tr>
+ <td>Max. number of results:</td>
+ <td>
+ <select name="count">
+ <option #(count-10)#::selected="selected"#(/count-10)#>10</option>
+ <option #(count-50)#::selected="selected"#(/count-50)#>50</option>
+ <option #(count-100)#::selected="selected"#(/count-100)#>100</option>
+ <option #(count-1000)#::selected="selected"#(/count-1000)#>1000</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>order by:</td>
+ <td>
+ <select name="order">
+ <option value="YBR-Date-Quality" #(order-ybr-date-quality)#::selected="selected"#(/order-ybr-date-quality)#>YBR-Date-Quality</option>
+ <option value="YBR-Quality-Date" #(order-ybr-quality-date)#::selected="selected"#(/order-ybr-quality-date)#>YBR-Quality-Date</option>
+ <option value="Date-YBR-Quality" #(order-date-ybr-quality)#::selected="selected"#(/order-date-ybr-quality)#>Date-YBR-Quality</option>
+ <option value="Quality-YBR-Date" #(order-quality-ybr-date)#::selected="selected"#(/order-quality-ybr-date)#>Quality-YBR-Date</option>
+ <option value="Date-Quality-YBR" #(order-date-quality-ybr)#::selected="selected"#(/order-date-quality-ybr)#>Date-Quality-YBR</option>
+ <option value="Quality-Date-YBR" #(order-quality-date-ybr)#::selected="selected"#(/order-quality-date-ybr)#>Quality-Date-YBR</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Resource:</td>
+ <td>
+ <select name="resource">
+ <option value="global" #(resource-global)#::selected="selected"#(/resource-global)#>global</option>
+ <option value="local" #(resource-local)#::selected="selected"#(/resource-local)#>local</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>Max. search time (seconds):</td>
+ <td>
+ <select name="time">
+ <option #(time-1)#::selected="selected"#(/time-1)#>1</option>
+ <option #(time-3)#::selected="selected"#(/time-3)#>3</option>
+ <option #(time-6)#::selected="selected"#(/time-6)#>6</option>
+ <option #(time-10)#::selected="selected"#(/time-10)#>10</option>
+ <option #(time-30)#::selected="selected"#(/time-30)#>30</option>
+ <option #(time-60)#::selected="selected"#(/time-60)#>60</option>
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <td>URL mask:</td>
+ <td>#(urlmaskoptions)#
+ <input name="urlmaskfilter" type="text" size="12" maxlength="80" value="#[urlmaskfilter]#" />
+ ::
+ <input type="radio" name="urlmask" value="yes" checked /> restrict on <input name="urlmaskfilter" type="text" size="12" maxlength="80" value="#[urlmaskfilter]#" />
+ <input type="radio" name="urlmask" value="no" /> show all
+ #(/urlmaskoptions)#
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Prefer mask:
+ </td>
+ <td>
+ #(prefermaskoptions)#
+ <input 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>
+ </table>
+ #(/searchoptions)#
+ </form>
+ #(display)#
+ #%env/templates/simplefooter.template%#
+ ::
+ #%env/templates/footer.template%#
+ #(/display)#
+ </body>
</html> \ No newline at end of file
diff --git a/htroot/yacysearch.html b/htroot/yacysearch.html
index 1a1181d8c..12c0950fd 100644
--- a/htroot/yacysearch.html
+++ b/htroot/yacysearch.html
@@ -1,16 +1,16 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<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>YaCy '#[clientname]#': Search Page</title>
#%env/templates/metas.template%#
- <link rel="alternate" type="application/rss+xml" title="Search for #[former]#" href="yacysearch.rss?search=#[former]#">
+ <link rel="alternate" type="application/rss+xml" title="Search for #[former]#" href="yacysearch.rss?search=#[former]#" />
- <script src="/js/ajax.js"></script>
- <script src="/js/xml.js"></script>
- <script src="/js/yacysearch.js"></script>
+ <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>
</head>
-<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
+<body id="yacysearch">
#(display)#
#%env/templates/simpleheader.template%#
@@ -18,111 +18,82 @@
#%env/templates/header.template%#
#(/display)#
-<SCRIPT LANGUAGE="JavaScript">
-picEmpty = new Image(11, 11);
-picEmpty.src = "/env/grafics/empty.gif";
-picMinus = new Image(11, 11);
-picMinus.src = "/env/grafics/minus.gif";
-picPlus = new Image(11, 11);
-picPlus.src = "/env/grafics/plus.gif";
-</SCRIPT>
-
- <form name="searchform" action="yacysearch.html" method="get">
- <p>
- <table border="0" cellspacing="0" cellpadding="0">
- <tr>
- <td rowspan="2">
- <a href="http://yacy.net/yacy/"><img border="0" src="/env/grafics/yacy.png" align="top"></a>
- </td>
- <td rowspan="2" width="5px"></td>
- <td align="center"><h2><font color="#212942" face="Helvetica, Arial" size="2">#[promoteSearchPageGreeting]#</font></h2></td>
- <td rowspan="2" width="5px">
- </td>
- <td>&nbsp;</td>
- </tr>
- <tr>
- <td>
- <input name="search" type="text" size="52" maxlength="80" value="#[former]#" onClick='document.searchform.Enter.value = "search"' >
- </td>
- <td>
- <input type="submit" name="Enter" value="Search">
- </td>
- </tr>
- </table>
- <input type="hidden" name="former" value="#[former]#">
- <input type="hidden" name="count" value="#[count]#">
- <input type="hidden" name="order" value="#[order]#">
- <input type="hidden" name="resource" value="#[resource]#">
- <input type="hidden" name="time" value="#[time]#">
- <input type="hidden" name="urlmaskfilter" value="#[urlmaskfilter]#">
- <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="type" value="#[type]#">
- <input type="hidden" name="display" value="#[display]#">
+ <form class="search small" name="searchform" action="yacysearch.html" method="get">
+ <p class="yacylogo"><a href="http://yacy.net/yacy/" class="yacylogo"><img src="/env/grafics/yacy.png" alt="yacy" /></a></p>
+ <h2>#[promoteSearchPageGreeting]#</h2>
+ <fieldset class="maininput">
+ <input name="search" type="text" size="52" maxlength="80" value="#[former]#" onClick='document.searchform.Enter.value = "search"' />
+ <input type="submit" name="Enter" value="Search" />
+ <input type="hidden" name="former" value="#[former]#" />
+ <input type="hidden" name="count" value="#[count]#" />
+ <input type="hidden" name="order" value="#[order]#" />
+ <input type="hidden" name="resource" value="#[resource]#" />
+ <input type="hidden" name="time" value="#[time]#" />
+ <input type="hidden" name="urlmaskfilter" value="#[urlmaskfilter]#" />
+ <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="type" value="#[type]#" />
+ <input type="hidden" name="display" value="#[display]#" />
+ </fieldset>
</form>
-</p><hr>
-
-<SCRIPT LANGUAGE="JavaScript">
+<script type="text/javascript">
document.searchform.Enter.value = "search again - catch up more links";
-</SCRIPT>
+</script>
#(type)#
-<p>
#(excluded)#
::
-<b>The following words are stop-words and had been excluded from the search: #[stopwords]#.</b><br>
+<p><strong>The following words are stop-words and had been excluded from the search: #[stopwords]#.</strong></p>
#(/excluded)#
#(num-results)#
-<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
::
-No Results.
+<p>No Results.</p>
::
-No Results. (length of search words must be at least 3 characters)
+<p>No Results. (length of search words must be at least 3 characters)</p>
::
<p>No Results. If you think this is unsatisfactory then you may consider to support the global index by running your own proxy/peer.
If everybody contributes, the results will get better.</p>
-<p>Other possible reasons for no result:<br>
+<p>Other possible reasons for no result:<p>
<ul>
<li>The search time was too short. Search again with same query to catch up 'late peers'</li>
<li>There is currently no support for german umlaute. Please use ae/oe/ue instead</li>
-<li>Words of length < 3 are not indexed. Please omit such words</li>
+<li>Words of length &lt; 3 are not indexed. Please omit such words</li>
<li>YaCy tries to index singular instead of plural words. Please use the singular form</li>
<li>Only complete words are indexed, not parts of words</li>
<li>Don't use stopwords as search words</li>
<li>During this test phase the reaction time of remote peers is unknown.
Please repeat your search to see if there are late-responses from remote peers</li>
-</ul></p>
+</ul>
<p>If you think the information you searched should exist in the global index,
then please run your own peer and start a crawl of your wanted information to make it
available for everyone. Then stay online to support crawls from other peers. Thank you!</p>
::
-<b>#[linkcount]#</b> results from <b>#[orderedcount]#</b> ordered links of a total number of <b>#[totalcount]#</b> known.
+<p><strong>#[linkcount]#</strong> results from <strong>#[orderedcount]#</strong> ordered links of a total number of <strong>#[totalcount]#</strong> known.</p>
#(/num-results)#
#(combine)#
::
-<br><br><b>Refine your search with these topwords</b>:<br>
+<p><strong>Refine your search with these topwords</strong>:</p>
+<p>
#{words}#
-<a href="yacysearch.html?search=#[newsearch]#&Enter=Search&count=#[count]#&order=#[order]#&resource=#[resource]#&time=#[time]#">#[word]#</a>
+<a href="yacysearch.html?search=#[newsearch]#&amp;Enter=Search&amp;count=#[count]#&amp;order=#[order]#&amp;resource=#[resource]#&amp;time=#[time]#">#[word]#</a>
#{/words}#
-#(/combine)#
</p>
+#(/combine)#
<!-- linklist begin -->
#{results}#
<!-- link begin -->
-<p style="border-bottom:1px #000 dashed; padding-bottom: 1em;">
-<a href="/Bookmarks.html?edit=#[urlhash]#" onMouseover="document.plus_#[urlhexhash]#.src=picPlus.src" onMouseout="document.plus_#[urlhexhash]#.src=picEmpty.src">
-<img src="/env/grafics/empty.gif" title="bookmark" alt="bookmark" name="plus_#[urlhexhash]#" border="0"></a>
-<span class="ResultDescription">#[description]#</span><br>
-<a href="#[delete]#" onMouseover="document.minus_#[urlhexhash]#.src=picMinus.src" onMouseout="document.minus_#[urlhexhash]#.src=picEmpty.src">
-<img src="/env/grafics/empty.gif" title="delete" alt="delete" name="minus_#[urlhexhash]#" border="0"></a>
-<span class="#(snippet)#snippetLoading::snippetLoaded#(/snippet)#" id="#[urlhash]#">#(snippet)#loading snippet ...::#[text]##(/snippet)#</span><br>
-<img src="/env/grafics/empty.gif" border="0">&nbsp;<a id="url#[urlhash]#" href="#[url]#">#[urlname]#</a><br>
-<img src="/env/grafics/empty.gif"><span class="ResultDateYBR">&nbsp;#[date]#</span> |
-<span class="ResultDateYBR">YBR-#[ybr]#</span> | <a href="ViewFile.html?urlHash=#[urlhash]#&words=#[words]#">Info</a> | <a href="yacysearch.html?cat=image&url=#[url]#&search=#[former]#">Pictures</a>
-<br>
-</p>
+ <div class="searchresults">
+ <div class="urlactions">
+ <a href="/Bookmarks.html?edit=#[urlhash]#" class="bookmarklink" title="bookmark"><img src="/env/grafics/empty.gif" title="bookmark" alt="bookmark" class="bookmarkIcon" /></a>
+ <a href="#[delete]#" title="delete" class="deletelink" ><img src="/env/grafics/empty.gif" title="delete" alt="delete" class="deleteIcon" /></a>
+ </div>
+ <h4 class="linktitle"><a href="#[url]#">#[description]#</a></h4>
+ <p class="snippet"><span class="#(snippet)#snippetLoading::snippetLoaded#(/snippet)#" id="#[urlhash]#">#(snippet)#loading snippet ...::#[text]##(/snippet)#</span></p>
+ <p class="url"><a href="#[url]#" id="url#[urlhash]#">#[urlname]#</a></p>
+ <p class="urlinfo">#[date]# | YBR-#[ybr]# | <a href="ViewFile.html?urlHash=#[urlhash]#&amp;words=#[words]#">Info</a> | <a href="yacysearch.html?cat=image&amp;url=#[url]#&amp;search=#[former]#">Pictures</a></p>
+ </div>
<!-- link end -->
#{/results}#
@@ -138,10 +109,11 @@ You cannot get global search results because you are not connected to another Ya
To connect you must first use the proxy.
See here for an <a href="http://www.anomic.de/AnomicHTTPProxy/Installation.html#wininst">installation guide</a>.
Alternatively, you can run the proxy in permanent online mode, which also grants global search.
-To do this, press this button:
+To do this, press this button:</p>
<form action="SettingsAck_p.html" method="get">
<input type="submit" name="pmode" value="go online">
</form>
+<p>
::
You can enrich the search results by using the 'global' option; you must also switch to online mode
(by using the proxy) to contribute to the global index.
@@ -153,27 +125,24 @@ You can enrich the search results by using the 'global' option; you must also sw
<tr valign="bottom">
#{line}#
<td>
-<a href="#[url]#"><img src="/ViewImage.png?maxwidth=96&maxheight=96&url=#[url]#" border="0"></a><br><a href="#[url]#">#[name]#</a>
+<a href="#[url]#"><img src="/ViewImage.png?maxwidth=96&amp;maxheight=96&amp;url=#[url]#" /></a><br /><a href="#[url]#">#[name]#</a>
</td>
#{/line}#
</tr>
#{/results}#
</table>
#(/type)#
-
-<br><hr>
-<center><i>YaCy is a GPL'ed project
-with the target of implementing a P2P-based global search engine.<br>
-Architecture (C) by Michael Peter Christen,
-<img src="/env/grafics/mcemailh.gif"></i></center>
-
+ <p class="info">YaCy is a GPL'ed project
+ with the target of implementing a P2P-based global search engine.<br />
+ Architecture (C) by Michael Peter Christen,
+<img src="/env/grafics/mcemailh.gif" alt="Mail-Adresse von Michael Peter Christen" /></p>
#(display)#
#%env/templates/simplefooter.template%#
::
#%env/templates/footer.template%#
#(/display)#
-<script language="JavaScript">
+<script type="text/javascript">
AllSnippets();
</script>
diff --git a/skins/default.css b/skins/default.css
index 4a19ba1a1..0a6d37305 100644
--- a/skins/default.css
+++ b/skins/default.css
@@ -1,239 +1,214 @@
-body {
- background-color:#F8F8FF;
-}
-h1 {
-font-family:Helvetica, sans-serif;
-font-size:16pt;
-font-style:normal;
-line-height:14pt;
-margin-top:0pt;
- margin-bottom:0pt;
-}
-h2 {
-font-family:Helvetica, sans-serif;
-font-size:14pt;
-font-style:normal;
-line-height:14pt;
-margin-top:0pt;
- margin-bottom:0pt;
-}
-h3 {
-font-family:Helvetica, sans-serif;
-font-size:12pt;
-font-style:normal;
-line-height:14pt;
-margin-top:0pt;
- margin-bottom:0pt;
-}
-h4 {
-font-family:Helvetica, sans-serif;
-font-size:10pt;
-font-style:normal;
-line-height:14pt;
-margin-top:0pt;
- margin-bottom:0pt;
-}
-a, body, div, li, ol, span, table, td, tr, ul {
-color:#000000;
-font-family:Helvetica, sans-serif;
-font-size:10pt;
-font-style:normal;
-line-height:14px;
-margin-top:0px;
-margin-bottom:0px;
-}
-*.small {
-font-family:Helvetica, sans-serif;
-font-size:8pt;
-font-style:normal;
-line-height:9px;
-margin-top:0px;
-margin-bottom:0px;
-}
-body, div, li, ol, span, table, td, tr, ul {
-
-text-decoration:none;
-}
-a:hover {
-color:#0000FF;
-}
-a.unknown {
-color:#990000;
-}
-a.known {
-color:#009900;
-}
-a.extern {
-color:#000099;
-}
-*.xxxyellow {
-color:#0000FF;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-}
-*.xxxblue {
-color:#556699;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-}
-*.tt {
-font-family:Courier,Terminal,sans-serif;
-font-size:8pt;
-line-height:10px;
-vertical-align:top;
-}
-.Menu {
-width: 140;
-}
-.SubMenu {
-
-}
-.MenuHeader {
-background-color: #4070a0;
-color:white;
-font-size: 9px;
-font-weight:bold;
-}
-.MenuItem {
-background-color: #bdcdd4;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-padding-top: 2;
-padding-bottom: 2;
-}
-.MenuTopItem {
-background-color: #bdcdd4;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-padding-top: 3;
-padding-bottom: 3;
-}
-.MenuSubItem {
-background-color: #bdcdd4;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-padding-top: 3;
-padding-bottom: 3;
-}
-.MenuItemLink {
-color: black;
-font-weight:bold;
-text-decoration:none;
-font-size:11px;
-}
-a.MenuItemLink:hover {
-color:#0088BB;
-font-weight:bold;
-text-decoration:none;
-}
-.MenuSpacer {
-height: 4;
-background-color: #ffffff;
-}
-.MenuSubSpacer {
-padding-left: 2;
-padding-right: 2;
-background-color: #ffffff;
-}
-.Headline {
-color: white;
-font-weight: bold;
-font-size: 160%;
-font-family: Helvetica, Arial;
-text-align: center;
-}
-.Heading {
-background-color: #4070a0;
-height: 36px;
-}
-.TableHeader {
-background-color: #88aaaa;
-}
-.TableCellDark {
-background-color: #bbcccc;
-}
-.TableCellLight {
-background-color: #ddeeee;
-}
-.TableCellActive {
-background-color: #ffbbaa;
-}
-.TableCellSummary {
-background-color: #ffbbaa;
-}
-.TableCellPassive {
-background-color: lightgrey;
-}
-.WikiBackground {
-background-color: #eeeeee;
-}
-.WikiTOCBox {
-border: 1px solid #aaa;
-background-color: #F8F8FF;
-padding: 8px;
-}
-.WikiTOC {
-color:#0000FF;
-font-size: 10px;
-text-decoration:underline;
-}
-.MessageBackground {
-background-color: #eeeeee;
-}
-.bookmarkTags{
-color: #007050;
-font-weight:bold;
-text-decoration:none;
-white-space:nowrap;
-}
-.bookmarkTitle{
-line-height: 120%;
-color: #4070a0;
-font-size:17px;
-font-weight:bold;
-text-decoration:none;
-}
-.bookmarkDescription{
-font-style:normal;
-}
-.bookmarkAction{
-color: #999999;
-text-decoration:none;
-}
-img.bookmarkIcon{
-height: 16px;
-width: 16px;
-}
-
-.ResultDescription {
- color:#4070a0;
- font-weight:bold;
-}
-
-.ResultDateYBR {
- color:#007050;
-}
-
-.snippetLoading {
- color:#999999;
-}
-
-.snippetLoaded {
- color:black;
- font-style:italic;
-}
-
-.snippetError {
- color:red;
- font-style:italic;
-}
-
-.settingsValue {
- color:#556699;
- font-weight:bold;
-}
+/* Skin */
+
+body {
+ background-color:#F8F8FF;
+}
+
+a:link {
+ color:#00008B;
+}
+
+a:link:hover {
+ color:#0000FF;
+}
+
+
+/* Menu */
+
+.menugroup h3, .SubMenugroup h3, .SubMenu h3 {
+ background-color: #4070a0;
+ color:white;
+}
+
+a.MenuItemLink, ul.SubMenu em {
+ background-color: #bdcdd4;
+ color: black;
+}
+
+a:hover.MenuItemLink {
+ color:#0088BB;
+}
+
+/* Head */
+
+div.head h1 {
+ background-color:#4070a0;
+ color:white;
+}
+
+/* Tables */
+
+.TableHeader {
+ background-color: #88aaaa;
+}
+
+.TableCellDark {
+ background-color: #bbcccc;
+}
+
+.TableCellLight {
+ background-color: #ddeeee;
+}
+
+.TableCellSummary {
+ background-color: #ffbbaa;
+}
+
+.TableCellPassive {
+ background-color: lightgrey;
+}
+
+/* Blog and Wiki*/
+
+.Post {
+ background-color:#eee;
+}
+
+.PostSubject {
+ background-color:#8aa;
+}
+
+.PostSubject a {
+ color:black;
+}
+
+.PostInfo {
+ background-color:#bdcdd4;
+}
+
+/* Wiki */
+
+.WikiTOCBox {
+ border: 1px solid #aaa;
+ background-color: #F8F8FF;
+}
+
+a.unknown {
+ color:#990000;
+}
+
+a.known {
+ color:#009900;
+}
+
+a.extern {
+ color:#000099;
+}
+
+/* in Bookmarks */
+
+.bookmark {
+ border-bottom:1px #000 dashed;
+}
+
+a.bookmarkTitle {
+ color: #4070a0;
+}
+
+a:hover.bookmarkTitle {
+ color: #4070a0;
+}
+
+a.bookmarkTags {
+ color: #007050;
+}
+
+a:hover.bookmarkTags {
+ color: #4070a0;
+}
+
+a.bookmarkAction {
+ color: #999999;
+}
+
+.Tags {
+ border-left: 2px solid black;
+}
+
+
+/* in Status.html */
+
+.ProgressBar {
+ border: #CAD5E3 solid 1px;
+}
+
+/* Copyright info */
+
+.info {
+ border-top:1px solid gray;
+}
+
+/* Searchresults */
+
+.searchresults {
+ border-top:1px #000 dashed;
+}
+
+.searchresults .url a {
+ color:#008000;
+}
+
+.snippetLoading {
+ color:#999999;
+}
+
+.snippetError {
+ color:red;
+}
+
+/* other */
+
+.settingsValue {
+ color:#556699;
+}
+
+.Headline {
+ background-color: #4070a0;
+ color: white;
+}
+
+.Heading {
+ background-color: #4070a0;
+}
+
+.error, .warning {
+ color:red;
+}
+
+.success {
+ color:green;
+}
+
+.Message {
+ background-color: #eeeeee;
+}
+
+.example {
+ background-color:#D3D3D3;
+}
+
+
+/* Log */
+
+body#ViewLog pre {
+ background-color:white;
+}
+
+/* Forms */
+
+fieldset {
+ background-color:#ddeeee;
+ border:1px solid #aaa;
+}
+
+legend {
+ background-color:#88aaaa;
+}
+
+form dt, dl.pairs dt {
+ background-color:#bbcccc;
+}
+
+form dd, dl.pairs dd {
+ background-color:#ddeeee;
+}