📄 computefavoritespaging.jsp
字号:
<%--
The favorite.jsp page had to be cut in 2 part in order to be able to compute
the next and previous link before the writing of the headers
--%>
<%@page contentType="text/html;charset=ISO-8859-15" pageEncoding="ISO-8859-1"%>
<%@page import="org.homeplayer.util.*"%>
<%@page import="java.util.*"%>
<jsp:useBean id="hppc" class="org.homeplayer.web.HPPageContext" scope="request" />
<%!
private static int TITLE_HEIGHT = 27;
private static int FAV_HEIGHT = 20;
%>
<%
FavoriteManager favman = FavoriteManager.getInstance();
final int PAGE_HEIGHT = 300;
int remainingHeight = PAGE_HEIGHT;
List pages = new ArrayList();
List currentPage = new ArrayList();
pages.add(currentPage);
for (Iterator it = favman.getServiceNames().iterator(); it.hasNext();) {
String serviceName = (String) it.next();
List favs = favman.getFavorites(serviceName);
int size = TITLE_HEIGHT + FAV_HEIGHT * favs.size();
String serviceName2 = null;
if (it.hasNext()) {
serviceName2 = (String) it.next();
favs = favman.getFavorites(serviceName2);
int sizeCol2 = TITLE_HEIGHT + FAV_HEIGHT * favs.size();
size = Math.max(size, sizeCol2);
}
if (remainingHeight - size < 0) {
if (remainingHeight == PAGE_HEIGHT) {
currentPage.add(serviceName);
if (serviceName2 != null) {
currentPage.add(serviceName2);
}
currentPage = new ArrayList();
} else {
currentPage = new ArrayList();
currentPage.add(serviceName);
if (serviceName2 != null) {
currentPage.add(serviceName2);
}
}
pages.add(currentPage);
remainingHeight = PAGE_HEIGHT;
} else {
currentPage.add(serviceName);
if (serviceName2 != null) {
currentPage.add(serviceName2);
}
remainingHeight -= size;
}
}
int pageNum = WebUtil.getParam(request, "pageNum", 0) ;
if (pageNum < 0) {
pageNum = 0;
} else if (pageNum > pages.size()-1) {
pageNum = pages.size()-1;
}
for (int i=0; i < pages.size(); i++) {
String shortName = "Favoris";
hppc.addPage(i+1, shortName, WebUtil.setParam(hppc.getLocalURL(), "pageNum=" + i));
}
hppc.setCurrentPage(pageNum+1);
List services = (List) pages.get(pageNum);
request.setAttribute("PAGE_SERVICES", services);
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -