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

📄 createshainaddresskanapage.java

📁 一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package jp.co.sjts.gsession.main;

/*
 * 幮堳柤曤(偐側)  CreateShainKanaPage.java
 * Copyright (C) 1999-2000 Japan Total System Co,LTD
 *    Satoru K  <koni@sjts.co.jp>
 *	  Junichi K <kaneuchi@sjts.co.jp>
 */

import java.io.File;
import java.util.Hashtable;
import java.util.Map;
import java.util.List;
import java.util.Iterator;
import java.util.Vector;
import java.util.Arrays;
import java.util.HashSet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jp.co.sjts.gsession.tools.*;

public class CreateShainAddressKanaPage extends CreatePage {

	private final String title = "幮堳柤曤(偐側)";
	private final String bgcolor = "#ffffff";
	private final String text = "#000000";
	private final String link = "#0000ff";
	private final String alink = "#ff0000";
	private final String vlink = "#0000ff";

	private static final int ID = 0;
	private static final int NAME = 1;
	private static final int EMAIL = 2;
	private static final int GROUP = 3;
	private static final int KNAME = 4;

	private static final int TO = 1;
	private static final int CC = 2;
	private static final int BCC = 3;

	private String urlMap;
	private String dataDir;
	private Hashtable hsPara;
	private UserManager userManager;
	private String helpURL;
	private int sortkey;
	private boolean sortflg;
	private HashSet toSet;
	private HashSet ccSet;
	private HashSet bccSet;

	public CreateShainAddressKanaPage(Hashtable hsPara,String dataDir,UserManager userManager
									  ,String urlMap,String helpURL) {
		this.urlMap = urlMap;
		this.dataDir = dataDir;
		this.userManager = userManager;
		this.hsPara = hsPara;
		this.helpURL = helpURL;
	}

	private void initPara() {
		String[] tos = (String[])hsPara.get("to");
		if(tos==null) {
			toSet = new HashSet();
		} else {
			toSet = new HashSet(tos.length);
			for(int i=0; i<tos.length; i++)
				toSet.add(tos[i]);
		}

		String[] ccs = (String[])hsPara.get("cc");
		if(ccs==null) {
			ccSet = new HashSet();
		} else {
			ccSet = new HashSet(ccs.length);
			for(int i=0; i<ccs.length; i++)
				ccSet.add(ccs[i]);
		}

		String[] bccs = (String[])hsPara.get("bcc");
		if(bccs==null) {
			bccSet = new HashSet();
		} else {
			bccSet = new HashSet(bccs.length);
			for(int i=0; i<bccs.length; i++)
				bccSet.add(bccs[i]);
		}
	}

	private void getSortPara() {

		int nextkey = 0;
		if(hsPara.get(GSCmd.GS_PARA_NEXTSKEY) != null)
			nextkey = Integer.parseInt(((String[])hsPara.get(GSCmd.GS_PARA_NEXTSKEY))[0]);

		if(hsPara.get(GSCmd.GS_PARA_SORTFLG) != null)
			sortflg = ((String[])hsPara.get(GSCmd.GS_PARA_SORTFLG))[0].equals("true");
		else
			sortflg = true;

		if(hsPara.get(GSCmd.GS_PARA_SORTKEY) != null) {
			sortkey = Integer.parseInt(((String[])hsPara.get(GSCmd.GS_PARA_SORTKEY))[0]);
			switch(sortkey) {
			case NAME :
				if(nextkey == NAME)
					sortflg = !sortflg;
				else if(nextkey > 0) {
					sortkey = nextkey;
					sortflg = true;
				}
				break;
			case EMAIL :
				if(nextkey == EMAIL)
					sortflg = !sortflg;
				else if(nextkey > 0) {
					sortkey = nextkey;
					sortflg = true;
				}
				break;
			case GROUP :
				if(nextkey == GROUP)
					sortflg = !sortflg;
				else if(nextkey > 0) {
					sortkey = nextkey;
					sortflg = true;
				}
				break;
			}

		} else
			sortkey = NAME;
	}

	protected boolean writePage(HttpServletRequest req,HttpServletResponse res) throws GSException {
		String url = GSTool.removeParaFormURI(req.getRequestURI());
		HttpSession session = req.getSession(false);
		Integer sessionUID = (Integer)session.getAttribute(GSBase.SESSION_PARA_UID);
		MailerFile mailerFile = new MailerFile(dataDir+GSFilename.GS_DIR_USER+File.separator
											   +sessionUID.toString());
		mailerFile.Load();
		HashSet indexSet = (HashSet)hsPara.get(GSCmd.GS_PARA_INDEXS);

		String index = null;
		if(hsPara.get(GSCmd.GS_PARA_IDX) != null)
			index = ((String[])hsPara.get(GSCmd.GS_PARA_IDX))[0];
		else
			index = "-1";

		initPara();
		getSortPara();

		addScript(
			 "function openWindow(i)\r\n"
			+"{\r\n"
			+"   var win=window.open(\"\",\"window\"+i,\"width=550,height=500,resizable=1\");\r\n"
			+"   win.location=\""+url+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_SHAIN+"&"+GSCmd.GS_PARA_UID+"=\"+i.toString();\r\n"
			+"}"
		);

		addScript(
			 "function setIndex(i)\r\n"
			+"{\r\n"
			+"   document.myForm."+GSCmd.GS_PARA_IDX+".value=i;\r\n"
			+"   document.myForm.submit();\r\n}"
		);

		addScript(
			 "function setSort(key)\r\n"
			+"{\r\n"
			+"   document.myForm."+GSCmd.GS_PARA_NEXTSKEY+".value=key;\r\n"
			+"   document.myForm.submit();\r\n}"
		);

		setCharset("iso-2022-jp");
		setTitle(title);
		setHelpUrl(helpURL+GSHelpPage.SH101000);

		setBodyColor(bgcolor,text,link,vlink,alink);


		addBodyString("<FORM METHOD=\"post\" ACTION=\""+ url + "\" NAME=\"myForm\">");
/**/	addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_CMD+"\" VALUE=\""
					  +GSCmd.GS_SHAINADD+"\">");
/**/	addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_SUBCMD+"\" VALUE=\""
					  +GSCmd.SUB_SHAINADD_NAME + "\">");
/**/	addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_FLG+"\" VALUE=\""
					  +GSCmd.SUB_SHAINADD_NAME+"\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_SORTKEY+"\" VALUE=\""
					  +sortkey+"\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_NEXTSKEY+"\" VALUE=\"0\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_SORTFLG+"\" VALUE=\""
					  +((sortflg)?"true":"false")+"\">");
		addBodyString("  <INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_IDX+"\" VALUE=\""
					  +index+"\">");
		addBodyString("<TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\">");

		// 僞僀僩儖
		addBodyString("<TR>");
		addBodyString("<TD>");
		addBodyString("  <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
		addBodyString("  <TR BGCOLOR=\"#000080\">");
		addBodyString("  <TD HEIGHT=\"40\" WIDTH=\"100%\" NOWRAP><FONT SIZE=\"+1\" COLOR=\"#ffffff\"><B>"
					  +title+"</B></FONT></TD>");
		addBodyString("    <TD ALIGN=\"right\" NOWRAP>");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\"" + GSCmd.GS_PARA_REGISTRY + "\" SRC=\""+urlMap+GSFilename.GS_TUIKA_BTN+"\" ALT=\"捛壛\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    <TD ALIGN=\"right\" NOWRAP>");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\"" + GSCmd.GS_PARA_CANCEL + "\" SRC=\""+urlMap+GSFilename.GS_TORIKESHI_BTN+"\" ALT=\"庢徚\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("  </TR>");
		addBodyString("  </TABLE>");
		addBodyString("</TD>");
		addBodyString("</TR>");


		// 専嶕僞僽
		addBodyString("<TR>");
		addBodyString("<TD>");
		addBodyString("  <TABLE BGCOLOR=\"#cccccc\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
		addBodyString("  <TR BGCOLOR=\"#ffffff\">");
		addBodyString("  <TD>");
		addBodyString("    <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
		addBodyString("    <TR>");

		addBodyString( getTab(GSCmd.GS_PARA_NAMETAB, GSFilename.GS_TAB_NAMEO01, "柤慜偱専嶕") );
		addBodyString( getTab(GSCmd.GS_PARA_EMAILTAB, GSFilename.GS_TAB_EMAILC01, "E-Mail傾僪儗僗偱専嶕") );
		addBodyString( getTab(GSCmd.GS_PARA_GROUPTAB, GSFilename.GS_TAB_GROUPC01, "僌儖乕僾偱専嶕") );

		addBodyString("    </TR>");
		addBodyString("    </TABLE>");
		addBodyString("  </TD>");
		addBodyString("  </TR>");

		KanaIndexSearch idxSearch = new KanaIndexSearch(dataDir+GSFilename.GS_DIR_IDX
														+File.separator+GSFilename.GS_IDX_KANA);
		Map idxMap = idxSearch.getIndex();

		search(idxMap, indexSet);


		addBodyString("  </TABLE>");
		addBodyString("</TD>");
		addBodyString("</TR>");


		// 儃僞儞
		addBodyString("<TR>");
		addBodyString("<TD BGCOLOR=\"fff7d2\" VALIGN=\"MIDDLE\" WIDTH=\"100%\">");

		addBodyString("  <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
		addBodyString("  <TR>");
		addBodyString("  <TD VALIGN=\"MIDDLE\" WIDTH=\"100%\">");
		addBodyString("    <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
		addBodyString("    <TR>");
		addBodyString("    <TD VALIGN=\"MIDDLE\">");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\""+ GSCmd.GS_PARA_TOSELECT + "\" SRC=\""+urlMap+GSFilename.GS_SELECT_TO_BTN+"\" ALT=\"専嶕寢壥偺TO傪慖戰\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    <TD VALIGN=\"MIDDLE\">");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\""+ GSCmd.GS_PARA_CCSELECT + "\" SRC=\""+urlMap+GSFilename.GS_SELECT_CC_BTN+"\" ALT=\"専嶕寢壥偺CC傪慖戰\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    <TD VALIGN=\"MIDDLE\">");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\""+ GSCmd.GS_PARA_BCCSELECT + "\" SRC=\""+urlMap+GSFilename.GS_SELECT_BCC_BTN+"\" ALT=\"専嶕寢壥偺BCC傪慖戰\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    <TD VALIGN=\"MIDDLE\">");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\""+ GSCmd.GS_PARA_ITEMREL + "\" SRC=\""+urlMap+GSFilename.GS_RET_ITEM_BTN+"\" ALT=\"専嶕崁栚傪夝彍\" WIDTH=\"133\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    <TD VALIGN=\"MIDDLE\">");
		addBodyString("    <INPUT TYPE=\"image\" NAME=\""+ GSCmd.GS_PARA_ALLRELEASE + "\" SRC=\""+urlMap+GSFilename.GS_ALLUNSELECT_BTN+"\" ALT=\"慡偰夝彍\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></TD>");
		addBodyString("    </TR>");
		addBodyString("    </TABLE>");
		addBodyString("  </TD>");
		addBodyString("  </TR>");
		addBodyString("  </TABLE>");

		addBodyString("</TD>");
		addBodyString("</TR>");

		int idx = (hsPara.get(GSCmd.GS_PARA_IDX)!=null)?
			Integer.parseInt(((String[])hsPara.get(GSCmd.GS_PARA_IDX))[0]):-1;

		// 儕僗僩
		addBodyString("<TR>");
		addBodyString("<TD>");

		addBodyString("  <TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"0\" CELLPADDING=\"2\">");
		addBodyString("  <TR BGCOLOR=\"#8080ff\">");

		addBodyString("  <TH WIDTH=\"1%\" NOWRAP><FONT COLOR=\"#ffffff\">To</FONT></TH>");
		addBodyString("  <TH WIDTH=\"1%\" NOWRAP><FONT COLOR=\"#ffffff\">Cc</FONT></TH>");
		addBodyString("  <TH WIDTH=\"1%\" NOWRAP><FONT COLOR=\"#ffffff\">Bcc</FONT></TH>");
		addTitle(sortkey, sortflg, NAME);
		addTitle(sortkey, sortflg, EMAIL);
		addTitle(sortkey, sortflg, GROUP);

		addBodyString("  </TR>");


		if(idx>0) {
			List UIDsList = idxSearch.getIDs(idx);
			if(UIDsList != null) {
				Iterator it = UIDsList.iterator();
				Object[] dspUsers = new Object[UIDsList.size()];

				boolean remove = false;
				if(hsPara.get(GSCmd.GS_PARA_ITEMRELX) != null)
					remove = true;

				int selection = 0;
				if(hsPara.get(GSCmd.GS_PARA_SELECTION) != null)
					selection = Integer.parseInt((String)hsPara.get(GSCmd.GS_PARA_SELECTION));

				// 僜乕僩梡僥乕僽儖
				for(int i=0;it.hasNext();i++) {
					Integer uid = (Integer)it.next();
					IUser user = userManager.getUser(uid.intValue());
					int defGroupID = user.getDefaultGroup();

					Vector vec = new Vector(5);
					vec.add(uid.toString());
					vec.add(user.getName());
					vec.add(user.getEmail());
					vec.add(userManager.getGName(defGroupID));
					vec.add(user.getKana());
					dspUsers[i] = (Object)vec;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -