⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bbsdocaction.java

📁 BBS论坛源码BBS论坛源码BBS论坛源码BBS论坛源码BBS论坛源码BBS论坛源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
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 + -