📄 mysubscibe.java
字号:
package com.laoer.bbscs.web.action;
import com.laoer.bbscs.web.form.*;
import com.laoer.bbscs.web.servlet.*;
import com.laoer.bbscs.bean.*;
import com.laoer.bbscs.sys.*;
import org.apache.struts.action.*;
import javax.servlet.http.*;
/**
* <p>Title: TianYi BBS</p>
* <p>Description: TianYi BBS System</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: LAOER.COM/TIANYISOFT.NET</p>
* @author laoer
* @version 6.0
*/
public class MySubscibe
extends BaseAction {
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) {
ActionErrors errors = new ActionErrors();
SubscibeForm form = (SubscibeForm) actionForm;
UserCheck uc = this.getUserCheck(httpServletRequest, httpServletResponse,
form.getBid());
if (uc.isGuest()) {
errors.add("error.pleaselogin", new ActionError("error.pleaselogin"));
saveErrors(httpServletRequest, errors);
//return actionMapping.findForward("login");
return SysUtil.getPassLogin(actionMapping);
}
if (form.getAction().equals("add")) {
if (getSubscibeService().getPostSubscibe(form.getPostID(), uc.getId(),
form.getBid()) != null) {
errors.add("subscibe.already", new ActionError("error.subscibe.already"));
saveErrors(httpServletRequest, errors);
return actionMapping.findForward("error");
}
int num = this.getSubscibeService().getSubscibeNum(uc.getId(),
form.getBid());
boolean isCanAdd = true;
if (uc.isSuperAdmin()) {
if (num >= SysInfo.getInstance().getSubscibenumsuper()) {
isCanAdd = false;
}
}
else if (uc.isMainMaster() || uc.isAssiMaster() || uc.isHideMaster() ||
uc.isBmaster()) {
if (num >= SysInfo.getInstance().getSubscibenummaster()) {
isCanAdd = false;
}
}
else {
if (num >= SysInfo.getInstance().getSubscibenumuser()) {
isCanAdd = false;
}
}
if (!isCanAdd) {
errors.add("error.subscibe.num", new ActionError("error.subscibe.num"));
saveErrors(httpServletRequest, errors);
return actionMapping.findForward("error");
}
Forum forum = this.getForumService().getForum(form.getPostID(),
form.getBid());
if (forum == null) {
errors.add("getpost", new ActionError("error.post.getpost"));
saveErrors(httpServletRequest, errors);
return actionMapping.findForward("error");
}
UserInfo ui = this.getUserCache().getUserInfoFromCache(uc.getId());
if (ui == null) {
errors.add("error.getusererror", new ActionError("error.getusererror"));
saveErrors(httpServletRequest, errors);
return actionMapping.findForward("error");
}
Subscibe subs = SubscibeFactory.getInstance(form.getBid());
subs.setBoardID(form.getBid());
subs.setEmailinform( (short) 0);
subs.setMsginform( (short) 1);
subs.setNickName(uc.getNickname());
subs.setPostID(form.getPostID());
subs.setPostTitle(forum.getTitle());
subs.setUserEmail(ui.getEmail());
subs.setUserID(uc.getId());
subs.setUserName(uc.getUsername());
if (this.getSubscibeService().saveSubscibe(subs) == null) {
errors.add("error.subscibe", new ActionError("error.subscibe"));
saveErrors(httpServletRequest, errors);
return actionMapping.findForward("error");
}
ActionForward f = new ActionForward(SysUtil.getResultUrl(
"succeed.subscibe", Constant.GOBACK), true);
return f;
}
if (form.getAction().equals("list")) {
Pages pages = new Pages(httpServletRequest);
pages.setPage(form.getPage());
pages.setPerPageNum(uc.getFormPerNum());
pages.setFileName("subscibe" + Constant.FILEPREFIX + "?bid=" +
form.getBid());
pages.setStyle(1);
PageList pl = getSubscibeService().getMySubscibeList(uc.getId(),
form.getBid(), pages);
httpServletRequest.setAttribute("pl", pl);
httpServletRequest.setAttribute("uc", uc);
httpServletRequest.setAttribute("pages", String.valueOf(form.getPage()));
return actionMapping.findForward("mysubs");
}
if (form.getAction().equals("delemail")) {
Subscibe subs = this.getSubscibeService().getSubscibe(form.getId(),
uc.getId(), form.getBid());
if (subs != null) {
if (subs.getMsginform() == 0) {
this.getSubscibeService().removeSubscibe(subs);
}
else {
subs.setEmailinform( (short) 0);
this.getSubscibeService().saveSubscibe(subs);
}
}
ActionForward f = new ActionForward("/subscibe" + Constant.FILEPREFIX +
"?bid=" + form.getBid() +
"&page=" + form.getPage(), true);
return f;
}
if (form.getAction().equals("delmsg")) {
Subscibe subs = this.getSubscibeService().getSubscibe(form.getId(),
uc.getId(), form.getBid());
if (subs != null) {
if (subs.getEmailinform() == 0) {
this.getSubscibeService().removeSubscibe(subs);
}
else {
subs.setMsginform( (short) 0);
this.getSubscibeService().saveSubscibe(subs);
}
}
ActionForward f = new ActionForward("/subscibe" + Constant.FILEPREFIX +
"?bid=" + form.getBid() +
"&page=" + form.getPage(), true);
return f;
}
if (form.getAction().equals("delall")) {
Subscibe subs = this.getSubscibeService().getSubscibe(form.getId(),
uc.getId(), form.getBid());
if (subs != null) {
this.getSubscibeService().removeSubscibe(subs);
}
ActionForward f = new ActionForward("/subscibe" + Constant.FILEPREFIX +
"?bid=" + form.getBid() +
"&page=" + form.getPage(), true);
return f;
}
return actionMapping.findForward("error");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -