📄 bbsdocaction.java
字号:
package com.easyjf.bbs.action;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.easyjf.bbs.business.ActiveUser;
import com.easyjf.bbs.business.BBSDir;
import com.easyjf.bbs.business.BBSDoc;
import com.easyjf.bbs.business.UserInfo;
import com.easyjf.bbs.business.BBSRights;
import com.easyjf.bbs.business.BBSUtil;
import com.easyjf.bbs.business.PageList;
import com.easyjf.util.CommUtil;
import com.easyjf.util.HtmlUtil;
import com.easyjf.web.IWebAction;
import com.easyjf.web.Module;
import com.easyjf.web.Page;
import com.easyjf.web.WebForm;
import java.util.StringTokenizer;
/**
* 论坛文档管理Action
* @author 蔡世友
*
*/
public class BBSDocAction implements IWebAction {
public Page execute(WebForm form, Module module,HttpServletRequest request, HttpServletResponse response) {
String method=CommUtil.null2String(form.get("easyJWebCommand"));
ActiveUser user=(ActiveUser)request.getSession().getAttribute("bbsuser");
Page forward=null;
System.out.println(method);
if(method.equals(""))
{
return doQuery(form,module,user);
}
else if("new".equals(method))
{
String sn=CommUtil.null2String(form.get("sn"));
BBSDir dir=BBSDir.readBySN(sn);
if(user==null)
{
form.addResult("msg","您没有登录,不能发表信息!");
return new Page("login","/bbs/login.html","template");
}
if(dir!=null)
{
form.addResult("dir",dir);
}
else
{
form.addResult("msg","目录不存在,可能是地址链接错误!");
}
return module.findPage("edit");
}
else if("edit".equals(method))
{
forward=doEdit(form,module,user);
}
else if("show".equals(method))
{
forward=doShow(form,module,user);
}
else if("add".equals(method))
{
forward= doAdd(form,module,user);
}
else if("update".equals(method))
{
forward=doUpdate(form,module,user);
}
else if("setTopMessage".equals(method))
{
forward=doSetTopMessage(form,module,user);
}
else if("setEliteMessage".equals(method))
{
forward=doSetEliteMessage(form,module,user);
}
else if("lockDoc".equals(method))
{
}
else if("lockUser".equals(method))
{
}
else if("del".equals(method))
{
forward=doDel(form,module,user);
}
else if("eliteList".equals(method))
{
forward=doLastElite(form,module,user);
}
else if("lastElite".equals(method))
{
forward=doLastElite(form,module,user);
}
else if("list".equals(method))//显示文章列表
{
forward=doQuery(form,module,user);
}
return forward;
}
private Page doAdd(WebForm form,Module module,ActiveUser user)
{
BBSDoc obj=new BBSDoc();
if(user!=null)
{
//在Action中检测权限
obj.setTitle(CommUtil.null2String(form.get("title")));
obj.setDirSn(CommUtil.null2String(form.get("dirSn")));
if(!BBSRights.checkRights(obj,"add",user))return new Page("popedomError","/bbs/norights.htm","page");
obj.setTagPic(CommUtil.null2String(form.get("tagPic")));
obj.setContent(CommUtil.null2String(form.get("content")));
obj.setImgs(CommUtil.null2String(form.get("imgs")));
obj.setFiles(CommUtil.null2String(form.get("files")));
obj.setParentId(CommUtil.null2String(form.get("parentId")));
String quotId=CommUtil.null2String(form.get("quotId"));
if(!quotId.equals(""))//处理引用回复
{
BBSDoc quot=BBSDoc.read(quotId);
if(quot!=null)
{
String QuotoSs=(quot.getContent().length()>50?quot.getContent().substring(0,50)+"...":quot.getContent());
String QuotoS="[QUOTE]"+QuotoSs+"[/QUOTE]";
obj.setContent(QuotoS+obj.getContent());
}
}
boolean op=obj.getParentId().equals("")?BBSUtil.publishMessage(user,obj):BBSUtil.replyMessage(user,obj);
//System.out.println(op);
if(op)
{
form.addResult("msg","信息发布成功!");
}
else
{
form.addResult("msg","信息发布失败");
}
}
else
{
form.addResult("msg","您没有登录,不能发表文章!");
return new Page("login","/bbsuser.ejf","template");
}
return new Page("bbsList","/bbsdoc.ejf?easyJWebCommand=list&&sn="+obj.getDirSn(),"page");
}
private Page doUpdate(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
BBSDoc obj=BBSDoc.read(cid);
if(user!=null)
{
if(obj!=null)
{
//在Action中检测权限
if(!BBSRights.checkRights(obj,"update",user))return new Page("popedomError","/bbs/norights.htm","page");
obj.setTitle(CommUtil.null2String(form.get("title")));
obj.setDirSn(CommUtil.null2String(form.get("dirSn")));
obj.setTagPic(CommUtil.null2String(form.get("tagPic")));
obj.setContent(CommUtil.null2String(form.get("content")));
obj.setImgs(CommUtil.null2String(form.get("imgs")));
obj.setFiles(CommUtil.null2String(form.get("files")));
obj.setParentId(CommUtil.null2String(form.get("parentId")));
obj.setModifyTime(new Date());
obj.update();
}
else
{
form.addResult("msg","所要修改的目录不存在!");
}
}
else
{
form.addResult("msg","您没有登录,不能发表文章!");
return new Page("login","/bbsuser.ejf","template");
}
return new Page("bbsList","/bbsdoc.ejf?easyJWebCommand=list&&sn="+obj.getDirSn(),"page");
}
private Page doShow(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
int currentPage=CommUtil.null2Int(form.get("page"));
int pageSize=CommUtil.null2Int(form.get("pageSize"));
BBSDoc obj=BBSDoc.read(cid);
if(obj!=null)
{
if(currentPage<1)currentPage=1;
if(pageSize<1)pageSize=15;
BBSDir dir=BBSDir.readBySN(obj.getDirSn());
if(dir!=null)
{
form.addResult("dir",dir);
}
else
{
form.addResult("msg","目录不存在,可能是地址链接错误!");
}
form.addResult("user",user);
//处理主题信息
form.addResult("cid",obj.getCid());
form.addResult("title",obj.getTitle());
form.addResult("content",HtmlUtil.getUBB2HTML(replaceEmotTag(HtmlUtil.escapeHTMLTag(obj.getContent()))));
form.addResult("inputUser",obj.getInputTime());
form.addResult("modifyTime",obj.getModifyTime());
if(obj.getTagPic()!=null && (!obj.getTagPic().equals("")))
form.addResult("tagPic",obj.getTagPic());
if(obj.getImgs()!=null && (!obj.getImgs().equals("")))
form.addResult("imgs",obj.getImgs());
form.addResult("files",obj.getFiles());
form.addResult("ip",obj.getIp());
if(user!=null)
{
if(BBSRights.checkRights(obj,"setTopMessage",user))//置顶
form.addResult("topMessage","true");
if(BBSRights.checkRights(obj,"setEliteMessage",user))//精华
form.addResult("eliteMessage","true");
if(BBSRights.checkRights(obj,"lockMessage",user))//锁定
form.addResult("lockMessage","true");
if(BBSRights.checkRights(obj,"editMessage",user))//修改
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -