⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainpage.java

📁 一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。
💻 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 + -