?? bbsdocaction.java
字號:
if(BBSRights.checkRights(obj,"editMessage",user))//修改
form.addResult("editMessage","true");
if(BBSRights.checkRights(obj,"delMessage",user))//刪帖
form.addResult("delMessage","true");
if(BBSRights.checkRights(obj,"moveMessage",user))//移動
form.addResult("moveMessage","true");
if(BBSRights.checkRights(obj,"lockUser",user))//鎖定用戶
form.addResult("lockUser","true");
}
UserInfo inputUser=UserInfo.readByUserName(obj.getInputUser());
if(inputUser!=null)
{
form.addResult("userName",inputUser.getUserName());
form.addResult("userScore",inputUser.getScore());
form.addResult("userQq",inputUser.getQq());
form.addResult("userCid",inputUser.getCid());
form.addResult("userSign",inputUser.getIntro());
form.addResult("userPhoto",inputUser.getPhoto());
}
//保存點擊數
obj.setReadTimes(new Integer(obj.getReadTimes()!=null?obj.getReadTimes().intValue()+1:1));
obj.update();
//處理回復信息
PageList pList=BBSUtil.queryReply(obj,pageSize,currentPage);
List replyList=new ArrayList();
List list=pList.getResult();
if(list!=null){
for(int i=0;i<list.size();i++)
{
Map map=new HashMap();
BBSDoc reply=(BBSDoc)list.get(i);
map.put("cid",reply.getCid());
map.put("title",reply.getTitle());
map.put("content",HtmlUtil.getUBB2HTML(replaceEmotTag(HtmlUtil.escapeHTMLTag(reply.getContent()))));
map.put("inputTime",reply.getInputTime());
map.put("modifyTime",reply.getModifyTime());
map.put("ip",reply.getIp());
map.put("imgs",reply.getImgs()!=null?(reply.getImgs().equals("")?null:reply.getImgs()):null);
map.put("files",reply.getFiles());
if(reply.getTagPic()!=null && (!reply.getTagPic().equals("")))
map.put("tagPic",reply.getTagPic());
map.put("floor",new Integer((pageSize*(currentPage-1)+i+1)));
//處理用戶帖子管理權限
if(user!=null)
{
if(BBSRights.checkRights(reply,"lockMessage",user))
map.put("lockMessage","true");
if(BBSRights.checkRights(reply,"editMessage",user))
map.put("editMessage","true");
if(BBSRights.checkRights(reply,"delMessage",user))
map.put("delMessage","true");
if(BBSRights.checkRights(reply,"lockUser",user))
map.put("lockUser","true");
}
inputUser=UserInfo.readByUserName(reply.getInputUser());
if(inputUser!=null)
{
map.put("userName",inputUser.getUserName());
map.put("userScore",inputUser.getScore());
map.put("userQq",inputUser.getQq());
map.put("userCid",inputUser.getCid());
map.put("userSign",inputUser.getIntro());
map.put("userPhoto",inputUser.getPhoto());
}
replyList.add(map);
System.out.println(i);
}
}
form.addResult("list",replyList);
form.addResult("totalPage",new Integer(pList.getPages()));
form.addResult("rows",new Integer(pList.getRowCount()));
form.addResult("gotoPageHTML",CommUtil.showPageHtml(pList.getCurrentPage(),pList.getPages()));
}
System.out.println("show end");
return module.findPage("show");
}
private Page doEdit(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
BBSDoc obj=BBSDoc.read(cid);
if(obj!=null)
{
if(!BBSRights.checkRights(obj,"edit",user))return new Page("popedomError","/bbs/norights.htm","page");
BBSDir dir=BBSDir.readBySN(obj.getDirSn());
if(dir!=null)
{
form.addResult("dir",dir);
}
else
{
form.addResult("msg","目錄不存在,可能是地址鏈接錯誤!");
}
CommUtil.Obj2Map(obj,form.getTextElement());
}
return module.findPage("edit");
}
private Page doSetTopMessage(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
BBSDoc obj=BBSDoc.read(cid);
if(obj!=null)
{
if(!BBSRights.checkRights(obj,"setTopMessage",user))return new Page("popedomError","/bbs/norights.htm","page");
obj.setTopMessage(new Integer(obj.getTopMessage()!=null && (obj.getTopMessage().intValue()==1)?0:1));
obj.update();
form.addResult("msg","操作成功!");
}
return doQuery(form,module,user);
}
private Page doSetEliteMessage(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
BBSDoc obj=BBSDoc.read(cid);
if(obj!=null)
{
if(!BBSRights.checkRights(obj,"setEliteMessage",user))return new Page("popedomError","/bbs/norights.htm","page");
obj.setEliteMessage(new Integer(obj.getEliteMessage()!=null && (obj.getEliteMessage().intValue()==1)?0:1));
obj.update();
form.addResult("msg","操作成功!");
}
return doQuery(form,module,user);
}
private Page doDel(WebForm form,Module module,ActiveUser user)
{
String cid=CommUtil.null2String(form.get("cid"));
BBSDoc obj=BBSDoc.read(cid);
if(obj!=null)
{
if(!BBSRights.checkRights(obj,"del",user))return new Page("popedomError","/bbs/norights.htm","page");
obj.del();
form.addResult("msg","刪除成功!");
}
return doQuery(form,module,user);
}
private Page doLastElite(WebForm form, Module module,ActiveUser user)
{
int currentPage=CommUtil.null2Int(form.get("page"));
int pageSize=CommUtil.null2Int(form.get("pageSize"));
String sn=CommUtil.null2String(form.get("sn"));
if(sn.equals(""))sn=CommUtil.null2String(form.get("dirSn"));
BBSDir dir=BBSDir.readBySN(sn);
if(dir==null){
dir=new BBSDir();
dir.setTitle("最新精華");
dir.setIntro("論壇中的所有精華帖!");
}
if(currentPage<1)currentPage=1;
if(pageSize<1)pageSize=15;
String sqlWhere="eliteMessage>0 ";
Collection paras=new ArrayList();
if(dir.getSn()!=null &&(!"".equals(dir.getSn())) ){
sqlWhere+=" and dirSn=?";
paras.add(sn);
}
// System.out.println(sqlWhere);
PageList pList=BBSUtil.queryMessage(sqlWhere,paras,pageSize,currentPage);
form.addResult("dir",dir);
form.addResult("list",pList.getResult());
form.addResult("totalPage",new Integer(pList.getPages()));
form.addResult("rows",new Integer(pList.getRowCount()));
form.addResult("gotoPageHTML",CommUtil.showPageHtml(pList.getCurrentPage(),pList.getPages()));
//System.out.println(dir.getTitle());
return module.findPage("list");
}
private Page doQuery(WebForm form, Module module,ActiveUser user)
{
int currentPage=CommUtil.null2Int(form.get("page"));
int pageSize=CommUtil.null2Int(form.get("pageSize"));
String sn=CommUtil.null2String(form.get("sn"));
String title=CommUtil.null2String(form.get("title"));
if(sn.equals(""))sn=CommUtil.null2String(form.get("dirSn"));
String inputUser=CommUtil.null2String(form.get("inputUser"));
BBSDir dir=BBSDir.readBySN(sn);
if(dir!=null)
{
if(currentPage<1)currentPage=1;
if(pageSize<1)pageSize=15;
Collection paras=new ArrayList();
String sqlWhere=" dirSn=?";
paras.add(sn);
if(!title.equals(""))
{
sqlWhere+=" and title like ?";
paras.add("%"+title+"%");
}
if(!inputUser.equals(""))
{
sqlWhere+=" and inputUser=?";
paras.add(inputUser);
}
PageList pList=BBSUtil.queryMessage(sqlWhere,paras,pageSize,currentPage);
form.addResult("dir",dir);
form.addResult("list",pList.getResult());
form.addResult("totalPage",new Integer(pList.getPages()));
form.addResult("rows",new Integer(pList.getRowCount()));
form.addResult("gotoPageHTML",CommUtil.showPageHtml(pList.getCurrentPage(),pList.getPages()));
//System.out.println(dir.getTitle());
}
else
{
form.addResult("msg","所查詢的目錄不存在!");
}
return module.findPage("list");
}
public String replaceEmotTag(String s) {
String makeContent = new String();
String[] r = new String[50];
for (int i = 1; i < 50; i++)
r[i] = "\\[em" + (i < 10 ? "0" + i : i + "") + "\\]";//eval("/em"+(i<10?"0"+i:i+"")+"/;");
StringTokenizer strToken = new StringTokenizer(s, "\n");
while (strToken.hasMoreTokens()) {
makeContent = makeContent + "<br>" + strToken.nextToken();
}
for (int i = 1; i < 50; i++) {
makeContent = makeContent.replaceAll(r[i], "<img src=/images/emot/em"
+ (i < 10 ? "0" + i : i + "") + ".gif>");//s.replace(r[i],"<img
// src=img/emot/em"+(i<10?"0"+i:i+"")+".gif>");
}
r = null;
return makeContent;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -