📄 mainpage.java
字号:
package jp.co.sjts.gsession.link;
/*
* 嫟捠儕儞僋 儊僀儞夋柺 MainPage.java
* Copyright (C) 1999-2000 Japan Total System Co,LTD
* Satoru K <koni@sjts.co.jp>
*/
import java.util.Hashtable;
import java.util.Set;
import java.util.HashSet;
import java.util.List;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.Iterator;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import jp.co.sjts.gsession.tools.*;
public class MainPage extends CreatePage {
private class Dir {
protected int dirId;
protected String name;
protected Dir(int dirId,String name) {
this.dirId = dirId;
this.name = name;
}
}
private final String title="嫟捠儕儞僋";
private final String bgcolor = "#ffffff";
private final String text = "#000000";
private final String link = "#0000ff";
private final String vlink = "#0000ff";
private final String alink = "#800080";
private Hashtable hsPara;
private String dataDir;
private String mapUrl;
private String helpUrl;
// 僐儞僗僩儔僋僞
public MainPage(Hashtable hsPara,String dataDir,String mapUrl,String helpUrl) {
this.hsPara = hsPara;
this.dataDir = dataDir;
this.mapUrl = mapUrl;
this.helpUrl = helpUrl;
}
protected boolean writePage(HttpServletRequest req,HttpServletResponse res) throws GSException {
String url = GSTool.removeParaFormURI(req.getRequestURI());
int currentDirId = 0;
setCharset("iso-2022-jp");
setTitle(title);
setHelpUrl(helpUrl+GSHelpPage.LK000000);
setBodyColor(bgcolor,text,link,vlink,alink);
addBodyString("<CENTER>");
addBodyString("<TABLE HEIGHT=\"100%\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
// 僞僀僩儖
addBodyString("<TR>");
addBodyString("<TD BGCOLOR=\"#000080\">");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
addBodyString(" <TR>");
addBodyString(" <TD><FONT SIZE=\"+1\" COLOR=\"#ffffff\"><B>"+title+"</B></FONT></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
// 尰嵼偺僨傿儗僋僩儕ID傪庢摼
if( hsPara.get(LkCmd.GS_PARA_DIRID)!=null )
currentDirId = Integer.parseInt( ((String[])hsPara.get(LkCmd.GS_PARA_DIRID))[0]);
DirData dirData = new DirData(this.dataDir);
dirData.Load();
// 尰嵼偺僨傿儗僋僩儕偐傜慡偰偺恊僨傿儗僋僩儕ID傪庢摼
Set DirIdSet = new HashSet();
DirIdSet.add(new Integer(currentDirId));
int i=currentDirId;
while(true) {
i = dirData.getParentDirId(i);
if(i<0)
break;
DirIdSet.add(new Integer(i));
}
// 僨僀儗僋僩儕 僷僗
addBodyString("<TR>");
addBodyString("<TD>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"2\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
addBodyString(" <TR BGCOLOR=\"#ffffcf\">");
addBodyString(" <TD HEIGHT=\"20\" WIDTH=\"5%\" NOWRAP><B>僨傿儗僋僩儕</B></TD>");
Integer[] DirIdArray = (Integer[])DirIdSet.toArray(new Integer[1]);
Arrays.sort(DirIdArray);
String buf = " <TD WIDTH=\"100%\">";
//for(int idx=DirIdArray.length-1;idx>=0;idx--) {
for(int idx=0; idx < DirIdArray.length; idx++) {
String dirname = "[" + dirData.getDirName(DirIdArray[idx].intValue()) + "]";
buf += " / <A HREF=\""+url+"?"+LkCmd.GS_PARA_CMD+"="+LkCmd.LK_MAIN+"&"
+LkCmd.GS_PARA_DIRID+"="+DirIdArray[idx].toString()+"\">";
if(DirIdArray[idx].intValue()==0)
buf += "<FONT COLOR=\"#ff0000\">"+dirname+"</FONT></A>";
else
buf += dirname;
}
buf += "</TD>";
addBodyString(buf);
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
// 杮懱
addBodyString("<TR>");
addBodyString("<TD HEIGHT=\"100%\" VALIGN=\"top\">");
addBodyString(" <TABLE HEIGHT=\"100%\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
addBodyString(" <TR>");
// 僨僀儗僋僩儕 僣儕------------------------------------------------------------------------------
addBodyString(" <TD HEIGHT=\"100%\" WIDTH=\"5%\" VALIGN=\"top\" BGCOLOR=\"#93d0ab\">");
/**/ addBodyString(" <FORM METHOD=\"post\" ACTION=\"" + url + "\">");
/**/ addBodyString(" <INPUT TYPE=\"hidden\" NAME=\""+LkCmd.GS_PARA_PDIRID+"\" VALUE=\""
+Integer.toString(currentDirId)+"\">");
/**/ addBodyString(" <INPUT TYPE=\"hidden\" NAME=\""+LkCmd.GS_PARA_CMD+"\" VALUE=\""
+LkCmd.DEL_DIR+"\">");
addBodyString(" <TABLE HEIGHT=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
addBodyString(" <TR>");
addBodyString(" <TD ALIGN=\"center\">");
// 怴婯僨傿儗僋僩儕搊榐儃僞儞
addBodyString(" <A HREF=\""+url+"?"+LkCmd.GS_PARA_CMD+"="+LkCmd.NEW_DIR
+"&"+LkCmd.GS_PARA_DIRID+"="+currentDirId+"\"><IMG SRC=\""
+mapUrl+GSFilename.GS_NEW_DIR_BTN
+"\" ALT=\"怴婯僨傿儗僋僩儕\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></A></TD>");
addBodyString(" </TR>");
// 僇儗儞僩僨傿儗僋僩儕
addBodyString(" <TR>");
addBodyString(" <TD NOWRAP><IMG SRC=\""+mapUrl+GSFilename.GS_OPEN_FOLDER2
+"\" WIDTH=\"24\" HEIGHT=\"22\">"+dirData.getDirName(currentDirId)+"</TD>");
addBodyString(" </TR>");
// 恊僨傿儗僋僩儕
if(currentDirId>0) {
addBodyString(" <TR>");
addBodyString(" <TD NOWRAP>丂丂<A HREF=\""+url+"?"
+LkCmd.GS_PARA_CMD+"="+LkCmd.LK_MAIN+"&"+LkCmd.GS_PARA_DIRID
+"="+Integer.toString(dirData.getParentDirId(currentDirId))
+"\"><IMG SRC=\""+mapUrl+GSFilename.GS_CLOSE_FOLDER2
+"\" WIDTH=\"24\" HEIGHT=\"22\" BORDER=\"0\">"+".."+"</A></TD>");
addBodyString(" </TR>");
}
// 巕僨傿儗僋僩儕
int[] childIds = dirData.getChildDirIds(currentDirId);
for(i=0;(childIds!=null)&&(i<childIds.length);i++) {
addBodyString(" <TR>");
/**/ addBodyString(" <TD NOWRAP>丂<INPUT TYPE=\"checkbox\" NAME=\""
+LkCmd.GS_PARA_DIRID+"\" VALUE=\""+Integer.toString(childIds[i])
+"\"><A HREF=\""+url+"?"+LkCmd.GS_PARA_CMD+"="+LkCmd.LK_MAIN
+"&"+LkCmd.GS_PARA_DIRID+"="+Integer.toString(childIds[i])
+"\"><IMG SRC=\""+mapUrl+GSFilename.GS_CLOSE_FOLDER2
+"\" WIDTH=\"24\" HEIGHT=\"22\" BORDER=\"0\">"+""
+dirData.getDirName(childIds[i])+"</A></TD>");
addBodyString(" </TR>");
}
// 嶍彍儃僞儞
addBodyString(" <TR>");
/**/ addBodyString(" <TD ALIGN=\"center\"><INPUT TYPE=\"image\" SRC=\""
+mapUrl+GSFilename.GS_KILL_BTN
+"\" ALT=\"嶍彍\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
addBodyString(" <TD HEIGHT=\"100%\"><BR></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
/**/ addBodyString(" </FORM>");
addBodyString(" </TD>");
//-------------------------------------------------------------------------------------
// 儁僀儞
/**/ addBodyString(" <FORM METHOD=\"post\" ACTION=\"" + url + "\">");
/**/ addBodyString(" <INPUT TYPE=\"hidden\" NAME=\""+LkCmd.GS_PARA_CMD+"\" VALUE=\""
+LkCmd.DEL_MOVE_CHECK+"\">");
/**/ addBodyString(" <INPUT TYPE=\"hidden\" NAME=\""+LkCmd.GS_PARA_PDIRID+"\" VALUE=\""
+Integer.toString(currentDirId)+"\">");
addBodyString(" <TD HEIGHT=\"100%\" WIDTH=\"100%\" VALIGN=\"top\">");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"5\">");
// 僐儅儞僪
addBodyString(" <TR>");
addBodyString(" <TD>");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
addBodyString(" <TR>");
addBodyString(" <TD>");
// 怴婯儕儞僋搊榐儃僞儞
addBodyString(" <A HREF=\""+url+"?"+LkCmd.GS_PARA_CMD+"="+LkCmd.NEW_LINK
+"&"+LkCmd.GS_PARA_DIRID+"="+currentDirId+"\"><IMG SRC=\""
+mapUrl+GSFilename.GS_NEW_TOUROKU_BTN
+"\" ALT=\"怴婯搊榐\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></A>");
// 嶍彍儃僞儞
/**/ addBodyString(" <INPUT TYPE=\"image\" NAME=\""+LkCmd.DEL_SUB_LINK+"\" SRC=\""
+mapUrl+GSFilename.GS_KILL_BTN+"\" ALT=\"嶍彍\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
addBodyString(" <TR>");
/**/ addBodyString(" <TD><SELECT NAME=\""+LkCmd.GS_PARA_MDIRID+"\">");
addBodyString(" <OPTION VALUE=\"0\" SELECTED>"+dirData.getDirName(0));
List dirList = new ArrayList(dirData.getDirSize());
setMoveDirList(dirData.getChildDirIds(0),dirData,dirList,1);
Iterator it = dirList.iterator();
while(it.hasNext()) {
Dir dir = (Dir)it.next();
addBodyString(" <OPTION VALUE=\""+dir.dirId+"\">"+dir.name);
}
addBodyString(" </SELECT></TD>");
/**/ addBodyString(" <TD><INPUT TYPE=\"image\" NAME=\""+LkCmd.MOVE_SUB_LINK+"\" SRC=\""
+mapUrl+GSFilename.GS_MOVE_BTN+"\" ALT=\"堏摦\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" </TD>");
addBodyString(" </TR>");
// 儕儞僋
LinkData linkData = new LinkData(dataDir,currentDirId);
linkData.Load();
int[] linkIds = linkData.getLinkIDs();
addBodyString(" <TR>");
addBodyString(" <TD>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"3\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
for(i=0;(linkIds!=null)&&(i<linkIds.length);i++) {
addBodyString(" <TR BGCOLOR=\"#ffffcf\">");
/**/ addBodyString(" <TD WIDTH=\"2%\" VALIGN=\"top\" ROWSPAN=\"2\">"
+"<INPUT TYPE=\"checkbox\" NAME=\""+LkCmd.GS_PARA_LINKID+"\" VALUE=\""+
+linkIds[i]+"\"></TD>");
addBodyString(" <TD WIDTH=\"100%\"><A HREF=\""+linkData.getLinkUrl(linkIds[i])
+"\" TARGET=\"_blank\">"+linkData.getLinkUrl(linkIds[i])+"</A></TD>");
// 曄峏儃僞儞
addBodyString(" <TD WIDTH=\"2%\"><A HREF=\""+url+"?"+LkCmd.GS_PARA_CMD+"="+LkCmd.EDIT_LINK
+"&"+LkCmd.GS_PARA_DIRID+"="+currentDirId+"&"+LkCmd.GS_PARA_LINKID+"="
+Integer.toString(linkIds[i])+"\"><IMG SRC=\""+mapUrl+GSFilename.GS_SEDIT_BTN
+"\" ALT=\"曄峏\" WIDTH=\"33\" HEIGTH=\"16\" BORDER=\"0\"></A></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
addBodyString(" <TD COLSPAN=\"2\">");
addBodyString(" "+GSHtml.transMsg(linkData.getLinkMsg(linkIds[i])));
addBodyString(" </TD>");
addBodyString(" </TR>");
}
addBodyString(" </TABLE>");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" </TD>");
addBodyString(" </FORM>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
addBodyString("</TABLE>");
return true;
}
private void setMoveDirList(int[] dirIds,DirData dirData,List dirList,int node) {
if(dirIds==null)
return;
for(int i=0;i<dirIds.length;i++) {
String name="";
for(int j=0;j<node;j++) // 奒憌
name += "丂丂";
Dir dir = new Dir(dirIds[i],name+dirData.getDirName(dirIds[i]));
dirList.add(dir);
setMoveDirList(dirData.getChildDirIds(dirIds[i]),dirData,dirList,node+1);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -