createpersonalpage.java
来自「一个日本流行的,功能较全的开源Web办公管理(Groupware)系统。」· Java 代码 · 共 272 行
JAVA
272 行
package jp.co.sjts.gsession.main;
/*
* 屄恖愝掕儁乕僕 CreatePersonalPage.java
* Copyright (C) 1999-2000 Japan Total System Co,LTD
* Satoru K <koni@sjts.co.jp>
*/
import java.io.File;
import java.io.FileOutputStream;
import java.io.BufferedOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Hashtable;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import jp.co.sjts.gsession.tools.*;
public class CreatePersonalPage 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 String mapURL;
private String dataDir;
private Hashtable hsPara;
private UserManager userManager;
private String helpUrl;
public CreatePersonalPage(Hashtable hsPara,String dataDir,String mapURL,UserManager userManager,String helpUrl) {
this.mapURL = mapURL;
this.dataDir = dataDir;
this.hsPara = hsPara;
this.userManager = userManager;
this.helpUrl = helpUrl;
}
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);
int subcmd=(hsPara.get(GSCmd.GS_PARA_SUBCMD)!=null) ?
Integer.parseInt(((String[])hsPara.get(GSCmd.GS_PARA_SUBCMD))[0]) : -1;
switch(subcmd){
// 屄恖梡婎杮愝掕
case GSCmd.GS_P_SET_BASE:{
if(hsPara.get(GSCmd.GS_PARA_SUBMITX)==null)
break;
String[] buf;
int flg=0,refresh=0;
if((buf = (String[])hsPara.get(GSCmd.GS_PARA_REFRESH))!=null)
refresh=Integer.parseInt(buf[0]);
if((buf = (String[])hsPara.get(GSCmd.GS_PARA_FLG))!=null)
flg = Integer.parseInt(buf[0]);
UserConfFile ucf = new UserConfFile(dataDir + GSFilename.GS_DIR_USER + File.separator + sessionUID.toString());
ucf.Load();
if(flg==1){
ucf.setRefreshTime(refresh);
}else{
ucf.Load();
ucf.setRefreshTime(0);
}
ucf.Save();
break;
}
// 屄恖忣曬曇廤
case GSCmd.GS_P_INFO_DEIT:{
String buf;
UserFile userFile = new UserFile(dataDir+GSFilename.GS_DIR_USER+File.separator+sessionUID.toString());
userFile.Load();
String oldname = userFile.getName();
String oldkana = userFile.getKana();
String oldemail = userFile.getEmail();
// 儐乕僓柤
buf=(hsPara.get(GSCmd.GS_PARA_UNAME)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_UNAME))[0]:"";
if(buf.length()<=0){
CreateErrorPage page = new CreateErrorPage("柤慜偼昁恵崁栚偱偡",mapURL,null);
page.write(req,res);
return false;
}
userFile.setName(buf.trim());
// 偐側
buf=(hsPara.get(GSCmd.GS_PARA_UKANA)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_UKANA))[0]:"";
if(buf.length()<=0){
CreateErrorPage page = new CreateErrorPage("偐側偼昁恵崁栚偱偡",mapURL,null);
page.write(req,res);
return false;
}
userFile.setKana(buf.trim());
// E-mail
buf=(hsPara.get(GSCmd.GS_PARA_EMAIL)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_EMAIL))[0]:"";
userFile.setEmail(buf.trim());
// 栶怑
buf=(hsPara.get(GSCmd.GS_PARA_YAKU)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_YAKU))[0]:"";
userFile.setPosition(buf);
// 梄曋斣崋
buf=(hsPara.get(GSCmd.GS_PARA_POST)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_POST))[0]:"";
userFile.setPostno(buf);
// 廧強侾
buf=(hsPara.get(GSCmd.GS_PARA_ADR1)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_ADR1))[0]:"";
userFile.setAddress1(buf);
// 廧強俀
buf=(hsPara.get(GSCmd.GS_PARA_ADR2)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_ADR2))[0]:"";
userFile.setAddress2(buf);
// TEL
buf=(hsPara.get(GSCmd.GS_PARA_TEL)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_TEL))[0]:"";
userFile.setTel(buf);
// FAX
buf=(hsPara.get(GSCmd.GS_PARA_FAX)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_FAX))[0]:"";
userFile.setFax(buf);
// 実懷斣崋侾
buf=(hsPara.get(GSCmd.GS_PARA_PTEL1)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_PTEL1))[0]:"";
userFile.setPtel1(buf);
// 実懷斣崋俀
buf=(hsPara.get(GSCmd.GS_PARA_PTEL2)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_PTEL2))[0]:"";
userFile.setPtel2(buf);
// 旛峫
buf=(hsPara.get(GSCmd.GS_PARA_NOTE)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_NOTE))[0]:"";
userFile.setMemo(buf);
// 幨恀搊榐
if(hsPara.get(GSCmd.GS_PARA_DELETE)==null) {
Hashtable picHash=((hsPara.get(GSCmd.GS_PARA_PIC))!=null)?(Hashtable)hsPara.get(GSCmd.GS_PARA_PIC):null;
if(picHash!=null) {
if( (picHash.get("filename")!=null)&&(((String)picHash.get("filename")).length()>0)) {
userFile.setShashin(true);
byte[] content = (byte[])picHash.get("content");
try {
FileOutputStream fos = new FileOutputStream(dataDir+GSFilename.GS_DIR_USER+File.separator
+sessionUID.toString()+File.separator+User.PICNAME);
BufferedOutputStream bos = new BufferedOutputStream(fos,content.length+1);
bos.write(content,0,content.length);
bos.flush();
bos.close();
}catch(FileNotFoundException e){
throw new GSException("僼傽僀儖偑尒偮偐傝傑偣傫丅",e);
}catch(IOException e){
throw new GSException("IO僄儔乕偱偡丅",e);
}
}
}
} else {
// 幨恀嶍彍
userFile.setShashin(false);
File file = new File(dataDir+GSFilename.GS_DIR_USER+File.separator
+sessionUID.toString()+File.separator+User.PICNAME);
if(file.exists())
file.delete();
}
userFile.Save();
if(!oldname.equals(userFile.getName()))
userManager.setUserName(sessionUID.intValue(),userFile.getName());
// 偐側僀儞僨僢僋僗偺嶍彍/捛壛
if(!oldkana.equals(userFile.getKana())) {
IndexSearch idxSearch=new KanaIndexSearch(dataDir+GSFilename.GS_DIR_IDX+File.separator+GSFilename.GS_IDX_KANA);
idxSearch.delIdx(sessionUID.intValue(),oldkana);
idxSearch.addIdx(sessionUID.intValue(),userFile.getKana());
}
// email僀儞僨僢僋僗偺嶍彍/捛壛
if(!oldemail.equals(userFile.getEmail())){
IndexSearch idxSearch = new EmailIndexSearch(dataDir+GSFilename.GS_DIR_IDX+File.separator+GSFilename.GS_IDX_MAIL);
idxSearch.delIdx(sessionUID.intValue(),oldemail);
idxSearch.addIdx(sessionUID.intValue(),userFile.getEmail());
}
break;
}
// 屄恖僷僗儚乕僪曄峏
case GSCmd.GS_CHANG_PASS:{
// 僷僗儚乕僪侾
String pass1=(hsPara.get(GSCmd.GS_PARA_PASS)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_PASS))[0]:"";
String pass2=(hsPara.get(GSCmd.GS_PARA_PASS2)!=null)?((String[])hsPara.get(GSCmd.GS_PARA_PASS2))[0]:"";
if((pass1.length()<=0)&&(pass2.length()<=0))
userManager.setMDPass(sessionUID.intValue(),"");
if((pass1.equals("$$$$$$$$$$$$$$$$$$$$"))&&(pass1.equals("####################")))
break;
else if(pass1.equals(pass2))
userManager.setMDPass(sessionUID.intValue(),Password.encode(pass1.getBytes()));
else{
CreateErrorPage page = new CreateErrorPage(CreateErrorPage.ERR_PARA,mapURL,null);
page.write(req,res);
return false;
}
}
}
setCharset("iso-2022-jp");
setTitle(title);
// setHelpUrl(helpUrl+GSHelpPage.MN300000);
setBodyColor(bgcolor,text,link,vlink,alink);
addBodyString("<CENTER>");
addBodyString("<FORM>");
addBodyString("<TABLE WIDTH=\"600\" BORDER=\"3\" CELLSPACING=\"0\" CELLPADDING=\"0\">");
// 僞僀僩儖
addBodyString("<TR>");
addBodyString("<TD ALIGN=\"center\" BGCOLOR=\"#000080\">");
addBodyString(" <TABLE WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\">");
addBodyString(" <TR>");
addBodyString(" <TD><FONT COLOR=\"#ffffff\"><B>" + title + "</B></FONT></TD>");
addBodyString(" <TD ALIGN=\"right\">");
addBodyString(" <A HREF=\""+url+"?"+GSCmd.GS_PARA_CMD+"="+GSCmd.GS_MAIN+"\">");
addBodyString(" <IMG SRC=\""+mapURL+GSFilename.GS_MAIN_BACK+"\" ALT=\"儊僀儞傊栠傞\""
+" WIDTH=\"173\" HEIGHT=\"28\" BORDER=\"0\"></A>");
addBodyString(" </TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
// 杮懱
addBodyString("<TR>");
addBodyString("<TD ALIGN=\"center\" BGCOLOR=\"#ffffcf\">");
addBodyString(" <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"10\">");
addBodyString(" <TR>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "=" + GSCmd.GS_P_SET_BASE
+ "\"><IMG SRC=\"" + mapURL + GSFilename.GS_MARU_K
+ "\" WIDTH=\"16\" HEIGHT=\"16\" BORDER=\"0\"></A></TD>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "="
+ GSCmd.GS_P_SET_BASE + "\">婎杮愝掕</A></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "=" + GSCmd.GS_P_INFO_DEIT
+ "\"><IMG SRC=\"" + mapURL + GSFilename.GS_MARU_K
+ "\" WIDTH=\"16\" HEIGHT=\"16\" BORDER=\"0\"></A></TD>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "="
+ GSCmd.GS_P_INFO_DEIT + "\">屄恖忣曬曇廤</A></TD>");
addBodyString(" </TR>");
addBodyString(" <TR>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "=" + GSCmd.GS_CHANG_PASS
+ "\"><IMG SRC=\"" + mapURL + GSFilename.GS_MARU_K
+ "\" WIDTH=\"16\" HEIGHT=\"16\" BORDER=\"0\"></A></TD>");
addBodyString(" <TD><A HREF=\"" + url + "?" + GSCmd.GS_PARA_CMD + "="
+ GSCmd.GS_CHANG_PASS + "\">僷僗儚乕僪曄峏</A></TD>");
addBodyString(" </TR>");
addBodyString(" </TABLE>");
addBodyString("</TD>");
addBodyString("</TR>");
addBodyString("</TABLE>");
addBodyString("</FORM>");
addBodyString("</CENTER>");
return true;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?