previous page and number of links per page

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@1622 6c8d7289-2bf4-0310-a012-ef5d649a1542
This commit is contained in:
allo 2006-02-12 15:35:17 +00:00
parent addc802cf3
commit 08aea2597d
2 changed files with 29 additions and 5 deletions

View File

@ -102,10 +102,18 @@ Tagged with |&nbsp;#{tags}#<a href="Bookmarks_p.html?tag=#[tag]#" class="bookmar
</p>
#{/bookmarks}#
<p />
#(prev-page)#
::<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#&num=#[num]#">previous page</a>
#(/prev-page)#
#(next-page)#
::<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#">next page</a>
::<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#&num=#[num]#">next page</a>
#(/next-page)#
&nbsp;
<br />
Show
<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#&num=10">10</a>
<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#&num=50">50</a>
<a href="Bookmarks_p.html?tag=#[tag]#&start=#[start]#&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;">
<a href="Bookmarks_p.html" class="bookmarkTags">All</a><br />

View File

@ -61,7 +61,7 @@ public class Bookmarks_p {
public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) {
serverObjects prop = new serverObjects();
plasmaSwitchboard switchboard = (plasmaSwitchboard) env;
int MAX_COUNT=10; //TODO: Changeable per Interface
int max_count=10;
String tagName="";
int start=0;
@ -167,6 +167,9 @@ public class Bookmarks_p {
if(post.containsKey("start")){
start=Integer.parseInt((String) post.get("start"));
}
if(post.containsKey("num")){
max_count=Integer.parseInt((String) post.get("num"));
}
}
Iterator it=switchboard.bookmarksDB.getTagIterator(true);
int count=0;
@ -195,7 +198,7 @@ public class Bookmarks_p {
Vector tags;
Iterator tagsIt;
int tagCount;
while(count<MAX_COUNT && it.hasNext()){
while(count<max_count && it.hasNext()){
bookmark=switchboard.bookmarksDB.getBookmark((String)it.next());
if(bookmark!=null){
prop.put("bookmarks_"+count+"_link", bookmark.getUrl());
@ -217,10 +220,23 @@ public class Bookmarks_p {
count++;
}
}
prop.put("tag", tagName);
prop.put("start", start);
if(it.hasNext()){
prop.put("next-page", 1);
prop.put("next-page_start", start+10);
prop.put("next-page_start", start+max_count);
prop.put("next-page_tag", tagName);
prop.put("next-page_num", max_count);
}
if(start >= max_count){
start=start-max_count;
if(start <0){
start=0;
}
prop.put("prev-page", 1);
prop.put("prev-page_start", start);
prop.put("prev-page_tag", tagName);
prop.put("next-page_num", max_count);
}
prop.put("bookmarks", count);
return prop;