- some bugfixes to compare search

- redesigned input boxes: smaller, more space for result page

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@5158 6c8d7289-2bf4-0310-a012-ef5d649a1542
This commit is contained in:
orbiter 2008-09-15 09:43:51 +00:00
parent 693fa2a157
commit 105be67998
2 changed files with 28 additions and 37 deletions

View File

@ -12,35 +12,24 @@
:: ::
#%env/templates/embeddedheader.template%# #%env/templates/embeddedheader.template%#
#(/display)# #(/display)#
<h2>Websearch Comparison</h2>
<p>This page lets you compare two search engines. Please select search engines
and enter your searchword(s) below.</p>
<fieldset> <fieldset>
<legend>Parameters</legend> <legend>Websearch Comparison</legend>
<form action="" method="get"> <form action="" method="get">
<dl> <p>Left Search Engine
<dt>Left Search Engine</dt>
<dd>
<select name="left"> <select name="left">
#{searchengines}# #{searchengines}#
<option #(leftengine)#::selected="selected"#(/leftengine)#>#[searchengine]#</option> <option #(leftengine)#::selected="selected"#(/leftengine)#>#[searchengine]#</option>
#{/searchengines}# #{/searchengines}#
</select> </select>
</dd> &nbsp;&nbsp;Right Search Engine
<dt>Right Search Engine</dt>
<dd>
<select name="right"> <select name="right">
#{searchengines}# #{searchengines}#
<option #(rightengine)#::selected="selected"#(/rightengine)#>#[searchengine]#</option> <option #(rightengine)#::selected="selected"#(/rightengine)#>#[searchengine]#</option>
#{/searchengines}# #{/searchengines}#
</select> </select>
</dd> &nbsp;&nbsp;Query
<dt>Query</dt> <input type="text" name="query" value="#[search_query]#" size="60"><input type="submit" />
<dd> </p>
<input type="text" name="query" value="#[search_query]#" size="60">
</dd>
</dl>
<input type="submit" />
</form> </form>
</fieldset> </fieldset>
#(search)# #(search)#

View File

@ -63,35 +63,37 @@ public class compare_yacy {
String default_right = sb.getConfig("compare_yacy.right", defaultsearch); String default_right = sb.getConfig("compare_yacy.right", defaultsearch);
if (post != null) { if (post != null) {
prop.put("search", 1); if (searchengines.get(post.get("left", default_left)) != null) {
prop.putHTML("search_query", post.get("query", "")); default_left = post.get("left", default_left);
prop.putHTML("search_left", searchengines.get(post.get("left", default_left))); sb.setConfig("compare_yacy.left", default_left);
prop.putHTML("search_right", searchengines.get(post.get("right", default_right))); }
} else { if (searchengines.get(post.get("right", default_right)) != null) {
prop.put("search", 0); default_right = post.get("right", default_right);
prop.put("search_query", ""); sb.setConfig("compare_yacy.right", default_right);
}
} }
prop.put("searchengines", order.length); prop.put("searchengines", order.length);
String name; String name;
for (int i = 0; i < order.length; i++) { for (int i = 0; i < order.length; i++) {
name = order[i]; name = order[i];
prop.putHTML("searchengines_" + i + "_searchengine", name); prop.putHTML("searchengines_" + i + "_searchengine", name);
if (post != null && post.get("left", default_left).equals(name)) { prop.put("searchengines_" + i + "_leftengine", name.equals(default_left) ? 1 : 0);
prop.put("searchengines_" + i + "_leftengine", 1); prop.put("searchengines_" + i + "_rightengine", name.equals(default_right) ? 1 : 0);
sb.setConfig("compare_yacy.left", name);
} else {
prop.put("searchengines_" + i + "_leftengine", 0);
}
if (post != null && post.get("right", default_right).equals(name)) {
prop.put("searchengines_" + i + "_rightengine", 1);
sb.setConfig("compare_yacy.right", name);
} else {
prop.put("searchengines_" + i + "_rightengine", 0);
} }
prop.putHTML("search_left", searchengines.get(default_left));
prop.putHTML("search_right", searchengines.get(default_right));
if (post == null || post.get("query", "").length() == 0) {
prop.put("search", 0);
prop.put("search_query", "");
return prop;
} }
prop.put("search", 1);
prop.putHTML("search_query", post.get("query", ""));
// return rewrite properties // return rewrite properties
return prop; return prop;
} }