creategroupeditpage.java
来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 305 行
JAVA
305 行
package jp.co.sjts.gsession.main;
/*
* 僌儖乕僾曇廤儁乕僕 CreateGroupEditPage.java
* Copyright (C) 1999-2000 Japan Total System Co,LTD
* Satoru K <koni@sjts.co.jp>
*/
import java.io.File;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Arrays;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jp.co.sjts.gsession.tools.*;
public class CreateGroupEditPage extends CreatePage {
private static final String title = "僌儖乕僾偺曇廤";
private static final String bgcolor = "#ffffff";
private static final String text = "#000000";
private static final String link = "#0000ff";
private static final String alink = "#ff0000";
private static final String vlink = "#0000ff";
private static final int ID = 0;
private static final int NAME = 1;
private static final int KNAME = 2;
private String dataDir = null;
private String tempDir = null;
private Hashtable hsPara = null;
private UserManager userManager = null;
private String mapURL="";
private String helpURL;
private int bGid; // 曇廤懳徾偲側傞僌儖乕僾ID
private String gname;
private String gmemo;
private boolean flg; // 捛壛:true 嶍彍:false
private int bUid; // 捛壛丒嶍彍偝傟傞儐乕僓ID
private int[] uids;
TempGroupEditFile tempfile;
private String[] bUids = null;
public CreateGroupEditPage(Hashtable hsPara,UserManager userManager
,String dataDir,String mapURL,int gid,String helpURL) {
this.hsPara = hsPara;
this.userManager = userManager;
this.mapURL = mapURL;
this.bGid = gid;
this.dataDir = dataDir;
this.helpURL = helpURL;
gname = "";
gmemo = "";
}
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);
this.tempDir = dataDir+GSFilename.GS_DIR_USER+File.separator+sessionUID.toString();
IGroup group = userManager.getGroup(bGid);
gname = group.GetName();
gmemo = GSHtml.BRtoReturn(group.GetNote());
uids = group.GetUserArray();
if(uids==null)
uids = new int[0];
// 弶夞偺曇廤偼丄僥儞億儔儕僼傽僀儖傪弶婜壔
if(hsPara.get(GSCmd.GS_PARA_EDITX)!=null) {
tempfile = new TempGroupEditFile(tempDir);
tempfile.delete();
int[] adminUids = userManager.GetAdminUserArray(bGid);
if(adminUids!=null)
tempfile.addAdmin(adminUids);
tempfile.Save();
}
// 娗棟幰愝掕偡傞僌儖乕僾偺捛壛
else if(hsPara.get(GSCmd.GS_PARA_RIGHTX)!=null) {
flg=true;
getFormPara();
tempfile = new TempGroupEditFile(tempDir);
tempfile.Load();
if(bUids != null) {
for(int i=0; i < bUids.length; i++)
tempfile.addAdmin(Integer.parseInt(bUids[i]));
}
tempfile.Save();
}
// 娗棟幰愝掕偡傞僌儖乕僾偺嶍彍
else if(hsPara.get(GSCmd.GS_PARA_LEFTX)!=null) {
flg=false;
getFormPara();
tempfile = new TempGroupEditFile(tempDir);
tempfile.Load();
if(bUids != null) {
for(int i=0; i < bUids.length; i++)
tempfile.delAdmin(Integer.parseInt(bUids[i]));
}
tempfile.Save();
}
setCharset("iso-2022-jp");
setTitle(title);
setHelpUrl(helpURL+GSHelpPage.MN222000);
setBodyColor(bgcolor,text,link,vlink,alink);
addBodyString("<CENTER>");
/**/ addBodyString("<FORM METHOD=\"post\" ACTION=\""+url+"\">");
/**/ addBodyString("<INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_CMD+"\" VALUE=\""+GSCmd.GS_GRUP_MNG+"\">");
/**/ addBodyString("<INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_SUBCMD+"\" VALUE=\""+GSCmd.SUB_EDIT_GROUP+"\">");
/**/ addBodyString("<INPUT TYPE=\"hidden\" NAME=\""+GSCmd.GS_PARA_GID+"\" VALUE=\""+Integer.toString(bGid)+"\">");
addBodyString("<TABLE WIDTH=\"400\" BORDER=\"3\" CELLSPACING=\"0\" CELLPADDING=\"5\">");
// 僞僀僩儖
writeTitle(url,mapURL);
// 杮懱
addBodyString("<TR>");
addBodyString("<TD HEIGHT=\"260\" ALIGN=\"center\" BGCOLOR=\"#cccccc\">");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"1\" CELLPADDING=\"5\">");
addBodyString(" <TR>");
addBodyString(" <TD VALIGN=\"top\" NOWRAP><B>僌儖乕僾柤</B><FONT COLOR=\"ff0000\">仸</FONT></TD>");
/**/ addBodyString(" <TD><INPUT TYPE=\"text\" NAME=\""+GSCmd.GS_PARA_GNAME+"\" VALUE=\""+gname+"\" SIZE=\"40\" MAXLENGTH=\"50\"></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
addBodyString(" <TD VALIGN=\"top\" NOWRAP><B>旛峫</B></TD>");
/**/ addBodyString(" <TD><TEXTAREA NAME=\""+GSCmd.GS_PARA_NOTE+"\" COLS=\"40\" ROWS=\"5\" WRAP=\"hard\">"+gmemo+"</TEXTAREA></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString(" <BR><BR>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"1\" CELLPADDING=\"5\">");
addBodyString(" <TR><TD HEIGHT=\"40\" BGCOLOR=\"#408080\"><B>娗棟幰搊榐</B>丂乮偙偺僌儖乕僾偺娗棟幰傪搊榐偟傑偡丅乯</TD></TR>");
addBodyString(" </TABLE>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"1\" CELLPADDING=\"1\">");
addBodyString(" <TR>");
addBodyString(" <TD WIDTH=\"45%\" ALIGN=\"center\" BGCOLOR=\"#cccccc\"><B>強懏儐乕僓</B></TD>");
addBodyString(" <TD WIDTH=\"10%\"></TD><TD WIDTH=\"45%\" ALIGN=\"center\" BGCOLOR=\"#cccccc\"><B>娗棟幰</B></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
/**/ addBodyString(" <TD><SELECT NAME=\""+GSCmd.GS_PARA_LEFTSEL+"\" SIZE=\"10\" MULTIPLE>");
Vector vecLeftUsr = new Vector();
Object dspLeftUsr[] = null;
//僜乕僩梡僥乕僽儖嶌惉
for(int i=0;i<uids.length;i++) {
if(!tempfile.existsAdmin(uids[i])) {
IPassword pass = userManager.getPassword(uids[i]);
IUser user = userManager.getUser(pass.GetUserID());
Vector vec = new Vector(3);
vec.add(Integer.toString(uids[i]));
vec.add(pass.GetName());
vec.add(user.getKana());
vecLeftUsr.add(vec);
}
}
dspLeftUsr = vecLeftUsr.toArray();
//僜乕僩
GSSort leftsort = new GSSort(true,KNAME);
Arrays.sort(dspLeftUsr,leftsort);
for(int i=0;(dspLeftUsr != null) && (i<dspLeftUsr.length);i++) {
Vector vec = (Vector)dspLeftUsr[i];
addBodyString(" <OPTION VALUE=\""+((String)vec.get(ID))+"\">"+((String)vec.get(NAME)));
}
addBodyString(" <OPTION VALUE=\"-1\">丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂");
addBodyString(" </SELECT>");
addBodyString(" </TD>");
addBodyString(" <TD BGCOLOR=\"#ffff80\">");
addBodyString(" <TABLE HEIGHT=\"100%\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR><TD HEIGHT=\"50%\" ALIGN=\"center\">"
/**/ +"<INPUT TYPE=\"image\" NAME=\""+GSCmd.GS_PARA_RIGHT+"\" SRC=\""+mapURL+GSFilename.GS_ARROW2R+"\""
+" ALT=\"捛壛\" HEIGHT=\"16\" WIDTH=\"16\" BORDER=\"0\"></TD></TR>");
addBodyString(" <TR><TD HEIGHT=\"50%\" ALIGN=\"center\">"
/**/ +"<INPUT TYPE=\"image\" NAME=\""+GSCmd.GS_PARA_LEFT+"\" SRC=\""+mapURL+GSFilename.GS_ARROW2L+"\""
+" ALT=\"嶍彍\" HEIGHT=\"16\" WIDTH=\"16\" BORDER=\"0\"></TD></TR>");
addBodyString(" </TABLE>");
addBodyString(" </TD>");
/**/ addBodyString(" <TD><SELECT NAME=\""+GSCmd.GS_PARA_RIGHTSEL+"\" SIZE=\"10\" MULTIPLE>");
Iterator it = tempfile.getAdminIterator();
if(it!=null) {
Vector vecRightUsr = new Vector();
Object[] dspRightUsr = null;
//僜乕僩梡僥乕僽儖嶌惉
while(it.hasNext()) {
Integer i = (Integer)it.next();
IPassword pass = userManager.getPassword(i.intValue());
IUser user = userManager.getUser(pass.GetUserID());
if(pass!=null) {
Vector vec = new Vector(3);
vec.add(i.toString());
vec.add(pass.GetName());
vec.add(user.getKana());
vecRightUsr.add(vec);
}
}
dspRightUsr = vecRightUsr.toArray();
//僜乕僩
GSSort rightsort = new GSSort(true,KNAME);
Arrays.sort(dspRightUsr,rightsort);
for(int i=0;(dspRightUsr != null) && (i<dspRightUsr.length);i++) {
Vector vec = (Vector)dspRightUsr[i];
addBodyString(" <OPTION VALUE=\""+((String)vec.get(ID))+"\">"+((String)vec.get(NAME)));
}
}
addBodyString(" <OPTION VALUE=\"-1\">丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂丂");
addBodyString(" </SELECT>");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
// 僞僀僩儖
writeTitle(url,mapURL);
addBodyString("</TABLE>");
addBodyString("</FORM>");
addBodyString("</CENTER>");
return true;
}
private void writeTitle(String url,String mapURL) {
addBodyString("<TR BGCOLOR=\"#000080\">");
addBodyString("<TD>");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
addBodyString(" <TR>");
addBodyString(" <TD HEIGHT=\"50\" ALIGN=\"left\"><FONT COLOR=\"#ffffff\"><B>"+title+"</B></FONT></TD>");
addBodyString(" <TD ALIGN=\"right\">");
/**/ addBodyString(" <INPUT TYPE=\"image\" NAME=\""+GSCmd.GS_PARA_SUBMIT+"\""
+" SRC=\""+mapURL+GSFilename.GS_HENKOU_BTN+"\" ALT=\"曄峏\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\">");
addBodyString(" <A HREF=\""+url+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_GRUP_MNG+"\">");
addBodyString(" <IMG SRC=\""+mapURL+GSFilename.GS_TORIKESHI_BTN+"\" ALT=\"庢徚\" WIDTH=\"93\" HEIGHT=\"28\" BORDER=\"0\"></A>");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
}
// FORM僷儔儊乕僞偺庢摼
protected void getFormPara() {
String bufs[];
// 僌儖乕僾柤偺庢摼
bufs = (String[])hsPara.get(GSCmd.GS_PARA_GNAME);
if(bufs!=null)
gname = bufs[0];
else
gname = "";
// 旛峫偺庢摼
bufs = (String[])hsPara.get(GSCmd.GS_PARA_NOTE);
if(bufs!=null)
gmemo = bufs[0];
else
gmemo = "";
// 捛壛偺帪
if(flg) {
bufs = (String[])hsPara.get(GSCmd.GS_PARA_LEFTSEL);
if(bufs!=null)
bUids = bufs;
}
// 嶍彍偺帪
else {
bufs = (String[])hsPara.get(GSCmd.GS_PARA_RIGHTSEL);
if(bufs!=null)
bUids = bufs;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?