mirror of
https://github.com/yacy/yacy_search_server.git
synced 2024-09-19 00:01:41 +02:00
Major update to YaCy-UI...still not perfect...but I thought I share my progress :-)
git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@5519 6c8d7289-2bf4-0310-a012-ef5d649a1542
This commit is contained in:
parent
a2b336dfe7
commit
92d77c3bef
|
@ -114,7 +114,7 @@ public class get_bookmarks {
|
|||
// default covers all non XBEL formats
|
||||
|
||||
// set bookmark iterator according to query
|
||||
if (qtype.equals("tags") && !query.equals("")) {
|
||||
if (qtype.equals("tags") && !query.equals("") && !query.equals("/")) {
|
||||
it = sb.bookmarksDB.getBookmarksIterator(query, isAdmin);
|
||||
} else {
|
||||
it = sb.bookmarksDB.getBookmarksIterator(isAdmin);
|
||||
|
|
9
htroot/api/bookmarks/get_folders.json
Normal file
9
htroot/api/bookmarks/get_folders.json
Normal file
|
@ -0,0 +1,9 @@
|
|||
[
|
||||
#{folders}#{
|
||||
"text": "#[foldername]#",
|
||||
"expanded": #[expanded]#,
|
||||
"classes": "#[classes]#",
|
||||
"id": "#[hash]#",
|
||||
"hasChildren": #[hasChildren]#
|
||||
}#[comma]##{/folders}#
|
||||
]
|
|
@ -7,6 +7,47 @@ div.main {
|
|||
height:100%;
|
||||
}
|
||||
|
||||
.yresult .favicon {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
padding: 5px 1px 1px 15px; /* top right bottom left */
|
||||
}
|
||||
|
||||
/* Admin Console */
|
||||
.banner {
|
||||
margin-top: 20px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
table.adminconsole {
|
||||
width:100%;
|
||||
margin:8px 0px 6px 0px;
|
||||
display:inline-block;
|
||||
|
||||
}
|
||||
table.adminconsole td {
|
||||
width: 63px;
|
||||
text-align:center;
|
||||
}
|
||||
table.adminconsole td.head {
|
||||
text-align:left;
|
||||
}
|
||||
table.adminconsole h3 {
|
||||
margin-top: 15px;
|
||||
margin-bottom: 5px;
|
||||
font-size: 14px;
|
||||
color: #27537a;
|
||||
}
|
||||
table.adminconsole img {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
padding: 1px 1px 7px 1px; /* top right bottom left */
|
||||
vertical-align: middle;
|
||||
}
|
||||
table.adminconsole a {
|
||||
text-decoration:none;
|
||||
color: black;
|
||||
}
|
||||
|
||||
|
||||
/* Searchbox */
|
||||
table.contentdom {
|
||||
|
@ -57,20 +98,11 @@ div.ys {
|
|||
}
|
||||
|
||||
/* Sidebar */
|
||||
|
||||
|
||||
|
||||
div.sidebar {
|
||||
margin-right: 1em;
|
||||
float:left;
|
||||
width:250px;
|
||||
}
|
||||
.menu img {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
padding: 2px 15px 2px 2px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.menu img.logo {
|
||||
width: 256px;
|
||||
height: 128px;
|
||||
|
@ -236,7 +268,7 @@ dl.pairs dt {
|
|||
border: 1px solid black;
|
||||
text-decoration: none;
|
||||
font-size: 14px;
|
||||
max-height: 220px;
|
||||
max-height: 320px;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
|
|
@ -30,10 +30,13 @@
|
|||
<script src="js/jquery.field.min.js" type="text/javascript"></script>
|
||||
|
||||
<script src="js/jquery.pagination.js" type="text/javascript"></script>
|
||||
|
||||
<script src="js/jquery-faviconize-1.0.js" type="text/javascript"></script>
|
||||
|
||||
<script src="js/jquery-flexigrid.js" type="text/javascript"></script>
|
||||
<script src="js/jquery-flexigrid.js" type="text/javascript"></script>
|
||||
<script src="js/jquery.treeview.min.js" type="text/javascript"></script>
|
||||
<script src="js/jquery.treeview.async.js" type="text/javascript"></script>
|
||||
|
||||
<script src="js/jquery.xslTransform.js" type="text/javascript"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
@ -81,30 +84,16 @@
|
|||
$("select[@name='resource']").setValue('ymarks');
|
||||
$("input[@name='contentdom']").setValue('text');
|
||||
$("input[@name='search']").setValue(qtag);
|
||||
} else {
|
||||
/* set query string */
|
||||
} else {
|
||||
var search = $(tabid).attr('search');
|
||||
var contentdom = $(tabid).attr('contentdom');
|
||||
var count = $(tabid).attr('count');
|
||||
var offset = $(tabid).attr('offset');
|
||||
var resource = $(tabid).attr('resource');
|
||||
var constraint= $(tabid).attr('constraint');
|
||||
var prefermaskfilter = $(tabid).attr('prefermaskfilter');
|
||||
var urlmaskfilter = $(tabid).attr('urlmaskfilter');
|
||||
var language = $(tabid).attr('language');
|
||||
|
||||
query = $(tabid).attr('resource')
|
||||
+"&search="+search
|
||||
+"&contentdom="+contentdom
|
||||
+"&count="+count
|
||||
+"&offset="+offset
|
||||
+"&urlmaskfilter="+urlmaskfilter;
|
||||
if (constraint!="") { query = query+"&constraint="+constraint; };
|
||||
if (prefermaskfilter!="") { query = query+"&prefermaskfilter="+prefermaskfilter; };
|
||||
if (language!="") { query = query+"&lr=lang_"+language; };
|
||||
|
||||
$("input[@name='search']").setValue(search);
|
||||
$("select[@name='itemsPerPage']").setValue(count);
|
||||
$("input[@name='contentdom']").setValue(contentdom);
|
||||
$("select[@name='constraint']").setValue(constraint);
|
||||
$("input[@name='prefermaskfilter']").setValue(prefermaskfilter);
|
||||
|
@ -136,8 +125,7 @@
|
|||
var desc = $("textarea[@name='bm_desc']").getValue();
|
||||
var tags = $("input[@name='bm_tags']").getValue()
|
||||
var path = $("input[@name='bm_path']").getValue();
|
||||
var pub = $("select[@name='bm_public']").getValue();
|
||||
// var query = "&url="+url+"&title="+title+"&description="+desc+"&tags="+tags+"&path="+path+"&public="+pub+"&add=create";
|
||||
var pub = $("select[@name='bm_public']").getValue();
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/api/bookmarks/posts/add_p.xml",
|
||||
|
@ -146,13 +134,20 @@
|
|||
success: function(xml) {
|
||||
$('#bmaddform').resetForm();
|
||||
$("#bm_url").unbind('blur');
|
||||
$("#bmadd").dialog("close");
|
||||
loadFolders();
|
||||
$("#bmadd").dialog("close");
|
||||
loadTagCloud();
|
||||
$tabs.tabs("load", 3);
|
||||
reloadBM();
|
||||
}
|
||||
});
|
||||
}
|
||||
function reloadBM() {
|
||||
$('#ymarks').flexOptions({
|
||||
query: qtag,
|
||||
qtype: "tags"
|
||||
});
|
||||
$('div.ftitle').empty().html('YaCy Bookmarks: ' + HTMLenc(qtag));
|
||||
$('#ymarks').flexReload();
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
</head>
|
||||
|
@ -169,8 +164,7 @@
|
|||
<ul>
|
||||
<!-- initial tabs only, dynamic tabs are loaded via jQuery -->
|
||||
<li><a href="yacyui-welcome.html" title="About YaCy-UI"><span>About YaCy-UI</span></a></li>
|
||||
<li><a href="yacyui-admin.html" title="Admin Console"><span>Admin Console</span></a></li>
|
||||
<li><a href="yacyui-compare.html" title="Compare Search"><span>Compare Search</span></a></li>
|
||||
<li><a href="yacyui-admin.html" title="Admin Console"><span>Admin Console</span></a></li>
|
||||
<li><a href="yacyui-bookmarks.html" title="Bookmarks"><span>Bookmarks</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
72
htroot/yacy/ui/js/jquery.treeview.async.js
Normal file
72
htroot/yacy/ui/js/jquery.treeview.async.js
Normal file
|
@ -0,0 +1,72 @@
|
|||
/*
|
||||
* Async Treeview 0.1 - Lazy-loading extension for Treeview
|
||||
*
|
||||
* http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
|
||||
*
|
||||
* Copyright (c) 2007 Jörn Zaefferer
|
||||
*
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*
|
||||
* Revision: $Id$
|
||||
*
|
||||
*/
|
||||
|
||||
;(function($) {
|
||||
|
||||
function load(settings, root, child, container) {
|
||||
$.getJSON(settings.url, {root: root}, function(response) {
|
||||
function createNode(parent) {
|
||||
var current = $("<li/>").attr("id", this.id || "").html("<span>" + this.text + "</span>").appendTo(parent);
|
||||
if (this.classes) {
|
||||
current.children("span").addClass(this.classes);
|
||||
}
|
||||
if (this.expanded) {
|
||||
current.addClass("open");
|
||||
}
|
||||
if (this.hasChildren || this.children && this.children.length) {
|
||||
var branch = $("<ul/>").appendTo(current);
|
||||
if (this.hasChildren) {
|
||||
current.addClass("hasChildren");
|
||||
createNode.call({
|
||||
text:"placeholder",
|
||||
id:"placeholder",
|
||||
children:[]
|
||||
}, branch);
|
||||
}
|
||||
if (this.children && this.children.length) {
|
||||
$.each(this.children, createNode, [branch])
|
||||
}
|
||||
}
|
||||
}
|
||||
$.each(response, createNode, [child]);
|
||||
$(container).treeview({add: child});
|
||||
});
|
||||
}
|
||||
|
||||
var proxied = $.fn.treeview;
|
||||
$.fn.treeview = function(settings) {
|
||||
if (!settings.url) {
|
||||
return proxied.apply(this, arguments);
|
||||
}
|
||||
var container = this;
|
||||
load(settings, "source", this, container);
|
||||
var userToggle = settings.toggle;
|
||||
return proxied.call(this, $.extend({}, settings, {
|
||||
collapsed: true,
|
||||
toggle: function() {
|
||||
var $this = $(this);
|
||||
if ($this.hasClass("hasChildren")) {
|
||||
var childList = $this.removeClass("hasChildren").find("ul");
|
||||
childList.empty();
|
||||
load(settings, this.id, childList, container);
|
||||
}
|
||||
if (userToggle) {
|
||||
userToggle.apply(this, arguments);
|
||||
}
|
||||
}
|
||||
}));
|
||||
};
|
||||
|
||||
})(jQuery);
|
|
@ -5,9 +5,33 @@
|
|||
/* Init Sidebar_1 */
|
||||
$("#side1").accordion({
|
||||
autoHeight: false,
|
||||
clearStyle: true,
|
||||
header: "h3"
|
||||
});
|
||||
$("#side1").accordion("activate", 2);
|
||||
|
||||
$("#yfolder").treeview({
|
||||
url: "/api/bookmarks/get_folders.json?bmtype=href",
|
||||
unique: false,
|
||||
toggle: function() {
|
||||
var $this = $(this);
|
||||
if ($this.hasClass("expandable")) {
|
||||
var select = "li:has(ul li[id="+$this.attr("id")+"])";
|
||||
qtag = $(select).attr("id");
|
||||
if (!qtag) qtag = "/";
|
||||
$this.addClass("hasChildren");
|
||||
$this.find("ul").empty();
|
||||
if (tabid == "#Bookmarks") {
|
||||
reloadBM();
|
||||
}
|
||||
} else if ($this.hasClass("collapsable")) {
|
||||
qtag = $this.attr("id");
|
||||
if (tabid == "#Bookmarks") {
|
||||
reloadBM();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/* Menu .click(function() */
|
||||
$("#login").click(function() {
|
||||
|
@ -239,29 +263,10 @@
|
|||
</p>
|
||||
</form>
|
||||
</div>
|
||||
<h3>YaCy Project</h3><!-- 1 -->
|
||||
<h3>Bookmark Folders<span id="sidebar-1-3"></span></h3><!-- 1 -->
|
||||
<div class="menu">
|
||||
<img alt="YaCy Project Home" title="YaCy Project Home" src="img-1/home.png" />
|
||||
<a href="http://www.yacy.net" >YaCy Home</a><br />
|
||||
<img alt="YaCy Statistics" title="YaCy Statistics" src="img-2/bar_graph.png" />
|
||||
<a href="http://www.yacystats.de" >YaCy Statistics</a><br />
|
||||
<img alt="YaCy Forum" title="YaCy Forum" src="img-1/Discussion.png" />
|
||||
<a href="http://forum.yacy-websuche.de/" >YaCy Forum</a><br />
|
||||
<img alt="Help" title="YaCy Wiki" src="img-1/Help%20Blue%20Button.png" />
|
||||
<a href="http://yacy-websuche.de/wiki/index.php/Hauptseite" >YaCy Wiki</a><br />
|
||||
<ul class="filetree" id="yfolder"></ul>
|
||||
</div>
|
||||
<h3>YaCy Peer Admin</h3><!-- 2 -->
|
||||
<div class="menu">
|
||||
<img alt="Login" title="Login" src="img-1/User.png" />
|
||||
<a id="login" href="#Login">Login</a><br />
|
||||
<img alt="Admin Console" title="Admin Console" src="img-1/Gear.png" />
|
||||
<a id="admin" href="#AdminConsole">Admin Console</a><br />
|
||||
<img alt="Re-Start" title="Re-Start" src="img-1/Backup%20Green%20Button.png" />
|
||||
<a href="../../Steering.html?restart=">Re-Start</a><br />
|
||||
<img alt="Shutdown" title="Shutdown" src="img-1/Stop%20Red%20Button.png" />
|
||||
<a id="shutdown" href="#Shutdown">Shutdown</a><br />
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,125 +0,0 @@
|
|||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
$(document).ready(function() {
|
||||
/* Init Sidebar_2 */
|
||||
$("#side2").accordion({
|
||||
autoHeight: false,
|
||||
clearStyle: true,
|
||||
header: "h3"
|
||||
});
|
||||
$("#side2").accordion("activate", 1);
|
||||
/* Load Folders */
|
||||
loadFolders();
|
||||
/* experiemntal: only works with first folder level */
|
||||
$("span.folder").click(function() {
|
||||
qtag = "/"+$(this).text();
|
||||
if (tabid == "#Bookmarks") {
|
||||
$tabs.tabs("load", 3);
|
||||
} else {
|
||||
$tabs.tabs('select',3);
|
||||
}
|
||||
});
|
||||
/* Load TagCloud */
|
||||
loadTagCloud();
|
||||
});
|
||||
function loadFolders() {
|
||||
$("#yfolder *").remove();
|
||||
$("#yfolder").getTransform('xsl/xbel2folder-ul.xsl','/api/bookmarks/xbel/xbel.xml');
|
||||
$("#yfolder").treeview({
|
||||
collapsed: true,
|
||||
unique: true
|
||||
});
|
||||
}
|
||||
function loadTagCloud() {
|
||||
$("#tagcloud *").remove();
|
||||
$("#sidebar-2-1").toggleClass("loading");
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/api/bookmarks/tags/getTag.xml?top=25&sort=alpha",
|
||||
dataType: "xml",
|
||||
cache: false,
|
||||
success: function(xml) {
|
||||
$(xml).find('tag').each(function(){
|
||||
var count = $(this).attr('count');
|
||||
var tag = $(this).attr('tag');
|
||||
var size = ((count/20)+0.3);
|
||||
if (size < 1) {size = 1;}
|
||||
$('<a style="font-size:'+size+'em"></a>')
|
||||
.html(HTMLenc(tag)+' ')
|
||||
.appendTo('#tagcloud')
|
||||
.bind('click', function() {
|
||||
qtag = $(this).text();
|
||||
$("select[@name='resource']").setValue('ymarks');
|
||||
$("input[@name='search']").setValue(qtag);
|
||||
if (tabid == "#Bookmarks") {
|
||||
$tabs.tabs("load", 3);
|
||||
} else {
|
||||
$tabs.tabs('select',3);
|
||||
}
|
||||
});
|
||||
}); //close each(
|
||||
$("#sidebar-2-1").toggleClass("loading");
|
||||
}
|
||||
}); //close $.ajax(
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
<!-- 0 -->
|
||||
<h3>Search Options</h3>
|
||||
<div class="yform">
|
||||
<form id="yoptions" class="small" method="get" action="" accept-charset="UTF-8">
|
||||
<p>
|
||||
<label for="itemsPerPage">Items per page: </label>
|
||||
<br />
|
||||
<select class="selector" name="itemsPerPage">
|
||||
<option selected="selected" value="10">10</option>
|
||||
<option value="15">15</option>
|
||||
<option value="25">25</option>
|
||||
<option value="50">50</option>
|
||||
</select>
|
||||
<br />
|
||||
<label for="constraint">Constraint:</label>
|
||||
<br />
|
||||
<select class="selector" id="constraint" name="constraint">
|
||||
<option value="" selected="selected">all pages</option>
|
||||
<option value="AQAAAA" >index pages</option>
|
||||
</select>
|
||||
<br />
|
||||
<label for="urlmaskfilter">URL mask:</label>
|
||||
<br />
|
||||
<input class="filter" name="urlmaskfilter" value=".*" type="text" size="12" maxlength="80" />
|
||||
<img src="img-2/question_blue.png" class="help" alt="help" title="help" />
|
||||
<br />
|
||||
<label for="prefermaskfilter">Prefer mask:</label>
|
||||
<br />
|
||||
<input class="filter" name="prefermaskfilter" value="" type="text" size="12" maxlength="80" />
|
||||
<img src="img-2/question_blue.png" class="help" alt="help" title="help" />
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 1 -->
|
||||
<h3 id="tagcloud-h3">Bookmark TagCloud
|
||||
<span id="sidebar-2-1"></span>
|
||||
</h3>
|
||||
<div class="menu">
|
||||
<p id="tagcloud"></p>
|
||||
</div>
|
||||
|
||||
<!-- 2 -->
|
||||
<h3>Bookmark Folders
|
||||
<span id="sidebar-2-2"></span>
|
||||
</h3>
|
||||
<div class="menu">
|
||||
<ul class="filetree" id="yfolder"></ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,9 +1,5 @@
|
|||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
$(function() {
|
||||
loaderBanner = window.setInterval("loadBanner()", 15000);
|
||||
window.setInterval("reloadGraph()", 6000);
|
||||
});
|
||||
function loadBanner() {
|
||||
for (var i = 0; i < document.images.length; i++) {
|
||||
if (document.images[i].src.indexOf("Banner.png") > 0) {
|
||||
|
@ -12,24 +8,133 @@ function loadBanner() {
|
|||
}
|
||||
}
|
||||
}
|
||||
function reloadGraph() {
|
||||
document.images["graph"].src="/PerformanceGraph.png?time="+(new Date()).getTime();
|
||||
window.status="";
|
||||
}
|
||||
$(function() {
|
||||
loaderBanner = window.setInterval("loadBanner()", 5000);
|
||||
})
|
||||
//]]>
|
||||
</script>
|
||||
<p>
|
||||
<img src="/Banner.png?textcolor=000000&bgcolor=ffffff&bordercolor=aaaaaa" alt="banner" />
|
||||
</p>
|
||||
<div style="display: block, float: left; width:670px; border:1px solid #CCCCCC;">
|
||||
<iframe
|
||||
src="/rssTerminal.html?set=PEERNEWS,REMOTESEARCH,LOCALSEARCH,REMOTEINDEXING,LOCALINDEXING,INDEXRECEIVE&width=670px&height=180px&maxlines=20&maxwidth=120"
|
||||
name="newsframe" marginheight="5" marginwidth="5" scrolling="no" frameborder="0" height="180" width="670">
|
||||
</iframe>
|
||||
</div>
|
||||
<br />
|
||||
<div style="display: block, float: left; width:670px; border:1px solid #CCCCCC;">
|
||||
<img src="/PerformanceGraph.png?time=" id="graph" alt="PerformanceGraph">
|
||||
</div>
|
||||
|
||||
|
||||
<img src="/Banner.png?textcolor=000000&bgcolor=ffffff&bordercolor=aaaaaa" alt="banner" class="banner"/>
|
||||
<table class="adminconsole">
|
||||
<tr><td class="head" colspan="7"><h3>Peer Control</h3><hr /></td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a id="login" href="#Login">
|
||||
<img alt="Login" title="Login" src="img-1/User.png" border="0"/>
|
||||
<br />
|
||||
Login
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="#Messages">
|
||||
<img alt="Messages" title="Messages" src="img-1/New%20Mail.png" border="0"/>
|
||||
<br />
|
||||
Messages
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="../../Steering.html?restart=">
|
||||
<img alt="Re-Start" title="Re-Start" src="img-1/Backup%20Green%20Button.png" border="0"/>
|
||||
<br />
|
||||
Re-Start
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a id="shutdown" href="#Shutdown">
|
||||
<img alt="Shutdown" title="Shutdown" src="img-1/Stop%20Red%20Button.png" border="0"/>
|
||||
<br />
|
||||
Shutdown
|
||||
</a>
|
||||
</td>
|
||||
<td> </td><td> </td>
|
||||
</tr>
|
||||
<tr><td class="head" colspan="7"><h3>Web Indexing</h3><hr /></td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="#CrawlStart">
|
||||
<img alt="Crawl Start" title="Crawl Start" src="img-1/New%20Document.png" border="0"/>
|
||||
<br />
|
||||
Crawl Start
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td class="head" colspan="7"><h3>Monitoring</h3><hr /></td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="#YaCyNetwork">
|
||||
<img alt="YaCy Network" title="YaCy Network" src="img-1/Menu%20Item.png" border="0"/>
|
||||
<br />
|
||||
YaCy Network
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td class="head" colspan="7"><h3>Settings</h3><hr /></td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="#Basic">
|
||||
<img alt="Basic Settings" title="Basic Setting" src="img-1/Gear.png" border="0"/>
|
||||
<br />
|
||||
Basic
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="#Users">
|
||||
<img alt="Accounts" title="Accounts" src="img-1/Users.png" border="0"/>
|
||||
<br />
|
||||
Accounts
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="#Network">
|
||||
<img alt="Network" title="Network" src="img-1/Network.png" border="0"/>
|
||||
<br />
|
||||
Network
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="#Advanced">
|
||||
<img alt="Advanced Settings" title="Advanced Setting" src="img-1/Run.png" border="0"/>
|
||||
<br />
|
||||
Advanced
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="#Update">
|
||||
<img alt="Advanced Settings" title="Advanced Setting" src="img-1/Import%20Document.png" border="0"/>
|
||||
<br />
|
||||
Update
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td class="head" colspan="7"><h3>YaCy Project</h3><hr /></td></tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="http://www.yacy.net" target="_blanc">
|
||||
<img alt="YaCy Project Home" title="YaCy Project Home" src="img-1/home.png" border="0"/>
|
||||
<br />
|
||||
Project
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://www.yacystats.de" target="_blanc">
|
||||
<img alt="YaCy Statistics" title="YaCy Statistics" src="img-2/bar_graph.png" border="0"/>
|
||||
<br />
|
||||
Statistics
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://forum.yacy-websuche.de/" target="_blanc">
|
||||
<img alt="YaCy Forum" title="YaCy Forum" src="img-1/Discussion.png" border="0"/>
|
||||
<br />
|
||||
Forum
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://yacy-websuche.de/wiki/index.php/Hauptseite" target="_blanc">
|
||||
<img alt="Help" title="YaCy Wiki" src="img-1/Help%20Blue%20Button.png" border="0"/>
|
||||
<br />
|
||||
Wiki
|
||||
</a>
|
||||
</td>
|
||||
<td> </td><td> </td><td> </td>
|
||||
</tr>
|
||||
</table>
|
|
@ -1,10 +1,10 @@
|
|||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
$(document).ready(function() {
|
||||
$("#side1").accordion("activate", 0);
|
||||
$("#side1").accordion("activate", 1);
|
||||
// $("#side2").accordion("activate", 1);
|
||||
// $('#yoptions').resetForm();
|
||||
|
||||
|
||||
var height=document.documentElement.clientHeight - 240;
|
||||
$('#ymarks').flexigrid({
|
||||
url: '/api/bookmarks/get_bookmarks.json?display=1',
|
||||
|
@ -45,19 +45,21 @@
|
|||
striped: true,
|
||||
nowrap: false,
|
||||
height: height,
|
||||
query: qtag,
|
||||
qtype: "tags",
|
||||
title: 'YaCy Bookmarks: ' + HTMLenc(qtag)
|
||||
});
|
||||
|
||||
});
|
||||
function bm_action(com,grid) {
|
||||
if (com=='XBEL') {
|
||||
window.document.location.href = '/api/bookmarks/xbel/xbel.xml';
|
||||
window.document.location.href = '/api/bookmarks/get_bookmarks.xml?display=xbel';
|
||||
}
|
||||
else if (com=='RSS') {
|
||||
window.document.location.href = '/Bookmarks.rss';
|
||||
}
|
||||
else if (com=='XML') {
|
||||
window.document.location.href = '/api/bookmarks/posts/all.xml';
|
||||
window.document.location.href = '/api/bookmarks/get_bookmarks.xml';
|
||||
}
|
||||
else if (com=='Delete') {
|
||||
confirm('Delete ' + $('.trSelected',grid).length + ' bookmark(s)?')
|
||||
|
|
|
@ -1,137 +1,144 @@
|
|||
<script type="application/javascript">
|
||||
//<![CDATA[
|
||||
$(document).ready(function() {
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
$(document).ready(function() {
|
||||
$("#side3").accordion("activate", 0);
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: query,
|
||||
async: false,
|
||||
dataType: "xml",
|
||||
success: function(xml) {
|
||||
if (($.browser.mozilla && (parseInt($.browser.version.replace(".","","g")) > 1800))) {
|
||||
var totalResults = parseInt($(xml).find('opensearch\\:totalResults').text().replace(",","","g"));
|
||||
var startIndex = parseInt($(xml).find('opensearch\\:startIndex').text());
|
||||
var itemsPerPage = parseInt($(xml).find('opensearch\\:itemsPerPage').text());
|
||||
var query = $(xml).find('opensearch\\:Query').attr('searchTerms');
|
||||
} else {
|
||||
var totalResults = parseInt($(xml).find('totalResults').text().replace(",","","g"));
|
||||
var startIndex = parseInt($(xml).find('startIndex').text());
|
||||
var itemsPerPage = parseInt($(xml).find('itemsPerPage').text());
|
||||
var query = $(xml).find('Query').attr('searchTerms');
|
||||
}
|
||||
$(xml).find('item').each(function(){
|
||||
var title = $(this).find('title').text();
|
||||
var link = $(this).find('link').text();
|
||||
var desc = $(this).find('description').text();
|
||||
var hash = $(this).find('guid').text();
|
||||
var date = $(this).find('pubDate').text();
|
||||
var tags = "";
|
||||
$('<tr></tr')
|
||||
.html('<td>' +hash+ '</td><td>' +''+ '</td><td><h3 class="linktitle">' +HTMLenc(title)+ '</h3><p class="desc">' +HTMLenc(desc)+ '</p><p class="url"><a href="' +link+ '">' +link+ '</a></p><td>' +HTMLenc(tags)+ ' </td><td>' +date+ '</td>')
|
||||
.appendTo(tabid+" .yresult tbody");
|
||||
}); //close each(
|
||||
var height=document.documentElement.clientHeight - 205;
|
||||
var page = " " + (startIndex+1) + "-" + (startIndex+itemsPerPage) + " of " + totalResults;
|
||||
$(tabid+" .yresult").flexigrid({
|
||||
colModel: [
|
||||
{display: 'Hash', name : 'hash', width : 50, sortable : false, align: 'center', hide: true},
|
||||
{display: '', name : 'public', width : 25, sortable : true, align: 'center'},
|
||||
{display: 'Title', name : 'title', width : 450, sortable : true, align: 'left'},
|
||||
{display: 'Tags', name : 'tags', width : 240, sortable : false, align: 'left'},
|
||||
{display: 'Date', name : 'date', width : 130, sortable : true, align: 'left'}
|
||||
],
|
||||
buttons: [
|
||||
{name: 'Crawl', bclass: 'crawl', onpress: yaction},
|
||||
{name: 'Open', bclass: 'pictures', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: 'Bookmark', bclass: 'bookmark', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: 'Blacklist', bclass: 'blacklist', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: 'Refresh', bclass: 'load', onpress: yload},
|
||||
{name: 'RSS', bclass: 'rss', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: page, bclass: 'prev', onpress: yload},
|
||||
{name: ' ', bclass: 'next', onpress: yload},
|
||||
{separator: true},
|
||||
{name: 'Help', bclass: 'help', onpress:yaction},
|
||||
],
|
||||
striped: true,
|
||||
nowrap: false,
|
||||
height: height,
|
||||
title: 'YaCy P2P Web Search: '+query
|
||||
});
|
||||
}
|
||||
}); //close $.ajax(
|
||||
|
||||
/*
|
||||
$(".linktitle a").faviconize({
|
||||
position: "before",
|
||||
defaultImage: "img-2/article.png",
|
||||
className: "favicon"
|
||||
});
|
||||
*/
|
||||
|
||||
function yaction(com, grid) {
|
||||
if (com == 'Bookmark') {
|
||||
confirm('Add ' + $('.trSelected',grid).length + ' search results to bookmark(s)?')
|
||||
$('.trSelected',grid).each(function(){
|
||||
var url = $(this).find('.url').text();
|
||||
var title = $(this).find('.linktitle').text();
|
||||
var desc = $(this).find('.desc').text();
|
||||
var tags = $(tabid).attr('search');
|
||||
var path = "/searchResults";
|
||||
var pub = "private";
|
||||
var query = "&url="+url+"&title="+title+"&description="+desc+"&tags="+tags+"&path="+path+"&public="+pub+"&add=create";
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/api/bookmarks/posts/add_p.xml?login="+query,
|
||||
dataType: "xml",
|
||||
success: function(xml) {
|
||||
alert("Debug: posted bookmark for: "+url);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else if (com =='Open') {
|
||||
$('.trSelected',grid).each(function(){
|
||||
var url = $(this).find('.url').text();
|
||||
window.open(url);
|
||||
var height=document.documentElement.clientHeight - 240;
|
||||
|
||||
$(tabid+" .yresult").flexigrid({
|
||||
url: '/yacysearch.json',
|
||||
dataType: 'json',
|
||||
method: 'GET',
|
||||
query: $(tabid).attr('search'),
|
||||
colModel: [
|
||||
{display: 'Hash', name : 'hash', width : 50, sortable : false, align: 'center', hide: true},
|
||||
{display: 'Public', name : 'public', width : 25, sortable : true, align: 'center'},
|
||||
{display: 'Title', name : 'title', width : 450, sortable : true, align: 'left'},
|
||||
{display: 'Tags', name : 'tags', width : 240, sortable : false, align: 'left'},
|
||||
{display: 'Folders', name : 'folders', width : 240, sortable : false, align: 'left', hide: true},
|
||||
{display: 'Date', name : 'date', width : 100, sortable : true, align: 'left'}
|
||||
],
|
||||
buttons: [
|
||||
{name: 'Crawl', bclass: 'crawl', onpress: yaction},
|
||||
{name: 'Open', bclass: 'pictures', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: 'Bookmark', bclass: 'bookmark', onpress: yaction},
|
||||
{name: 'Blacklist', bclass: 'blacklist', onpress: yaction},
|
||||
{separator: true},
|
||||
{name: 'Help', bclass: 'help', onpress:yaction},
|
||||
],
|
||||
useRp: true,
|
||||
rp: 10,
|
||||
usepager: true,
|
||||
striped: true,
|
||||
nowrap: false,
|
||||
height: height,
|
||||
autoload: true,
|
||||
onSuccess: function() {
|
||||
$("a.favicon").faviconize({
|
||||
position: "before",
|
||||
defaultImage: "img-2/article.png",
|
||||
className: "favicon"
|
||||
});
|
||||
} else {
|
||||
alert("Test!");
|
||||
}
|
||||
},
|
||||
preProcess: function(data) {
|
||||
var total = data.channels[0].totalResults.replace(/[,.]/,"");
|
||||
var page = (data.channels[0].startIndex / data.channels[0].itemsPerPage) + 1;
|
||||
var rows = {};
|
||||
$.each (
|
||||
data.channels[0].items,
|
||||
function(i,item) {
|
||||
if (item) {
|
||||
var html = "<h3 class='linktitle'>"+item.title+"</h3><p class='desc'>"+item.description+"</p><p class='url'><a href='"+item.link+"'>"+item.link+"</a>"
|
||||
var fav = "<a class='favicon' href='"+item.link+"'></a>";
|
||||
rows[i] = {id: item.guid, cell: [item.guid, fav, html, "Tags", "Folders", item.pubDate]};
|
||||
}
|
||||
}
|
||||
);
|
||||
var pdata = {
|
||||
page: page,
|
||||
total: total,
|
||||
rows: rows
|
||||
};
|
||||
return pdata;
|
||||
},
|
||||
onSubmit: function() {
|
||||
var p = this;
|
||||
var g = $(tabid+" .yresult");
|
||||
|
||||
$('.pPageStat',this.pDiv).html(p.procmsg);
|
||||
$('.pReload',this.pDiv).addClass('loading');
|
||||
if (g.bDiv) $(g.block).css({top:g.bDiv.offsetTop});
|
||||
if (p.hideOnSubmit) $(this.gDiv).prepend(g.block); //$(t).hide();
|
||||
if ($.browser.opera) $(t).css('visibility','hidden');
|
||||
if (!p.newp) p.newp = 1;
|
||||
if (p.page>p.pages) p.page = p.pages;
|
||||
|
||||
var offset = p.newp * p.rp -p.rp;
|
||||
|
||||
var param = [
|
||||
{ name : 'startRecord', value : offset }
|
||||
,{ name : 'maximumRecords', value : p.rp }
|
||||
,{ name : 'resource', value : $(tabid).attr('resource')}
|
||||
,{ name : 'verify', value : "true" }
|
||||
,{ name : 'search', value : p.query}
|
||||
,{ name : 'urlmaskfilter', value : $(tabid).attr('urlmaskfilter')}
|
||||
,{ name : 'prefermaskfilter', value : $(tabid).attr('prefermaskfilter')}
|
||||
,{ name : 'contentdom', value : $(tabid).attr('contentdom')}
|
||||
,{ name : 'constraint', value : $(tabid).attr('constraint')}
|
||||
,{ name : 'language', value : $(tabid).attr('language')}
|
||||
];
|
||||
|
||||
if (p.params) {
|
||||
for (var pi = 0; pi < p.params.length; pi++) param[param.length] = p.params[pi];
|
||||
}
|
||||
$.ajax({
|
||||
type: p.method,
|
||||
url: p.url,
|
||||
data: param,
|
||||
dataType: p.dataType,
|
||||
success: function(data){
|
||||
/* yacy limits itemsPerPage for unauthenticated users */
|
||||
p.rp = parseInt(data.channels[0].itemsPerPage);
|
||||
g.flexAddData(data);
|
||||
},
|
||||
error: function(data) {
|
||||
try { if (p.onError) p.onError(data); } catch (e) {}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function yaction(com, grid) {
|
||||
if (com == 'Bookmark') {
|
||||
confirm('Add ' + $('.trSelected',grid).length + ' search results to bookmark(s)?')
|
||||
$('.trSelected',grid).each(function(){
|
||||
var url = $(this).find('.url').text();
|
||||
var title = $(this).find('.linktitle').text();
|
||||
var desc = $(this).find('.desc').text();
|
||||
var tags = $(tabid).attr('search');
|
||||
var path = "/searchResults";
|
||||
var pub = "private";
|
||||
var query = "&url="+url+"&title="+title+"&description="+desc+"&tags="+tags+"&path="+path+"&public="+pub+"&add=create";
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/xml/bookmarks/posts/add_p.xml?login="+query,
|
||||
dataType: "xml",
|
||||
success: function(xml) {
|
||||
alert("Debug: posted bookmark for: "+url);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else if (com =='Open') {
|
||||
$('.trSelected',grid).each(function(){
|
||||
var url = $(this).find('.url').text();
|
||||
window.open(url);
|
||||
});
|
||||
} else {
|
||||
alert("Test!");
|
||||
}
|
||||
function yload(com, grid) {
|
||||
var $tabs = $('#container ul');
|
||||
var count = parseInt($(tabid).attr('count'));
|
||||
var offset = parseInt($(tabid).attr('offset'));
|
||||
if (com == ' ') {
|
||||
offset = offset+count;
|
||||
}
|
||||
else if (com == 'Refresh') {
|
||||
offset = 0;
|
||||
}
|
||||
else if (offset > count) {
|
||||
offset = offset-count;
|
||||
}
|
||||
$(tabid).attr('offset', offset);
|
||||
query = $(tabid).attr('resource')
|
||||
+"&search="+$(tabid).attr('search')
|
||||
+"&contentdom="+$(tabid).attr('contentdom')
|
||||
+"&count="+$(tabid).attr('count')
|
||||
+"&offset="+$(tabid).attr('offset')
|
||||
+"&constraint="+$(tabid).attr('constraint')
|
||||
+"&prefermaskfilter="+$(tabid).attr('prefermaskfilter')
|
||||
+"&urlmaskfilter="+$(tabid).attr('urlmaskfilter');
|
||||
|
||||
var selected = $tabs.data('selected.tabs');
|
||||
$tabs.tabs("load", selected);
|
||||
return false;
|
||||
}
|
||||
}); //close $(
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
</script>
|
||||
<table class="yresult">
|
||||
<tbody></tbody>
|
||||
</table>
|
||||
|
||||
</table>
|
|
@ -8,6 +8,9 @@
|
|||
apfelmaennchen
|
||||
<h3>Change Log</h3>
|
||||
<ul>
|
||||
<li>26-01-2009: reworked search interface, still has timing problems, but now uses yacysearch.json and has full support for flexigrid</li>
|
||||
<li>25-01-2009: bookmark folders sidebar is now directly linked to flexigrid if bookmark tab is selected</li>
|
||||
<li>25-01-2009: successfully migrated bookmark folders to treeview.async mode (==> new json api)</li>
|
||||
<li>11-01-2009: support for new unified bookmark api ==> much improved handling due to json and flexigrid</li>
|
||||
<li>27-09-2008: Enabled edit bookmark and added some more icons to toolbar</li>
|
||||
<li>27-09-2008: Added scrollbar to folder widget</li>
|
||||
|
|
Loading…
Reference in New Issue
Block a user