?? passlogin.java
字號:
package com.laoer.bbscs.web.action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForward;
import com.laoer.bbscs.web.form.LoginForm;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionError;
import com.laoer.bbscs.bean.UserInfo;
import com.laoer.bbscs.sys.Constant;
import com.laoer.bbscs.sys.SysUtil;
import com.laoer.comm.util.Util;
import com.laoer.bbscs.bean.BlackUser;
import com.laoer.bbscs.bean.UserOnline;
import com.laoer.bbscs.web.servlet.UserCheck;
import com.laoer.bbscs.sys.*;
import com.laoer.bbscs.bean.UserDetail;
public class PassLogin
extends TopBaseAction {
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest servletRequest,
HttpServletResponse servletResponse) {
ActionErrors errors = new ActionErrors();
LoginForm form = (LoginForm) actionForm;
if (form.getAction().equals("in")) {
servletRequest.setAttribute("loginForm", form);
return actionMapping.findForward("passlogin");
}
if (form.getAction().equals("passlogin")) {
if (SysUtil.isNotAllowIP(servletRequest.getRemoteAddr())) {
errors.add("error.login.notallowip",
new ActionError("error.login.notallowip",
servletRequest.getRemoteAddr()));
saveErrors(servletRequest, errors);
return actionMapping.findForward("login");
}
UserCheck uc = new UserCheck(servletRequest, servletResponse);
/*
if (!uc.getAuthCode().equals(form.getAuthcode())) {
errors.add("error.login.authcode",
new ActionError("error.login.authcode"));
saveErrors(servletRequest, errors);
return actionMapping.findForward("login");
}*/
if (uc.isLoginPass()) {
UserInfo ui = getUserInfoService().findUserInfoByUserName(uc.
getPusername());
if (ui == null) {
ui = new UserInfo();
ui.setAnswer("");
ui.setArticleNum(0);
ui.setBoard( (short) 0);
ui.setBoardMaster( (short) 0);
ui.setBoardSave("");
ui.setBulletin( (short) 0);
ui.setCanInBoards("");
ui.setEmail(uc.getPusername() + "@");
ui.setExp(0);
ui.setExpression(0);
ui.setForumPerNum( (short) 20);
ui.setFriend("");
ui.setHavePic( (short) 0);
ui.setHpower( (short) 0);
ui.setLastLoginTime(SysUtil.getLongTime());
ui.setLoginTime(SysUtil.getLongTime());
ui.setLoginTimes(0);
ui.setLogoutTime(SysUtil.getLongTime() - 24 * 3600 * 1000);
ui.setManager( (short) 0);
ui.setNickname(uc.getPusername());
ui.setPasswd(uc.getPusername());
ui.setPicFileName("");
ui.setPost( (short) 0);
ui.setPostPerNum( (short) 10);
ui.setPower( (short) 10);
ui.setQuestion("");
ui.setRegTime(SysUtil.getLongTime());
ui.setRepasswd(Util.hash(uc.getPusername()));
ui.setSignDetail1("");
ui.setSignDetail2("");
ui.setSignDetail3("");
ui.setSignName1("");
ui.setSignName2("");
ui.setSignName3("");
ui.setStayTime(0);
ui.setStyle(0);
ui.setSuperAdmin( (short) 0);
ui.setTimeZone("GMT+08:00");
ui.setUserAdmin( (short) 0);
ui.setUserFrom("");
ui.setUsername(uc.getPusername());
Result r = this.getUserInfoService().regUser(ui);
if (r.isRight()) {
ui = (UserInfo) r.getObject();
UserDetail ud = new UserDetail();
ud.setBrief("");
ud.setIcqNo("");
ud.setOicqNo("");
ud.setMsn("");
ud.setYahoo("");
ud.setUserID(ui.getId().longValue());
this.getUserDetailService().saveUserDetail(ud);
this.getUserInfoService().createUserFileInPost(ui);
SysStat.getInstance().setAllUserNum(this.getUserInfoService().
getAllUserNum(),
uc.getPusername());
}
else {
errors.add("error.reg.createrror",
new ActionError("error.reg.createrror"));
saveErrors(servletRequest, errors);
return actionMapping.findForward("passlogin");
}
}
ui = getUserInfoService().userAtLongin(ui);
uc.addCookies(ui);
getUserCache().putUserInfoInCache(ui);
if (! (uc.isSuperAdmin() || uc.isUserAdmin())) {
BlackUser bu = getBlackUserService().findBlackUserByUserName(uc.
getUsername(), (short) 1, 0, 0);
if (bu != null) {
errors.add("error.login.notlogin",
new ActionError("error.login.notlogin1"));
saveErrors(servletRequest, errors);
return actionMapping.findForward("error");
}
}
UserOnline uo = new UserOnline();
uo.setAtPlace(Constant.MESSAGE.getMessage(servletRequest.getLocale(),
"place.main"));
uo.setBoardsID(0);
uo.setIsGuest( (short) 0);
uo.setNickName(ui.getNickname());
uo.setOnlineTime(SysUtil.getLongTime());
uo.setUserID(ui.getId().longValue());
uo.setUserName(ui.getUsername());
getUserOnlineService().saveUserOnline(uo);
if (Util.nullOrBlank(form.getTourl())) {
ActionForward f = new ActionForward("/main" + Constant.FILEPREFIX, true);
return f;
}
else {
ActionForward f = new ActionForward("/main" + Constant.FILEPREFIX +
"?tourl=" + form.getTourl(), true);
return f;
}
}
else {
//ActionForward f = new ActionForward(SysInfo.getInstance().getPassregurl(), true);
//return f;
return actionMapping.findForward("passlogin");
}
}
return actionMapping.findForward("passlogin");
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -