📄 forumadmin.java
字号:
package com.bcxy.bbs.forum.admin;
/**
* Title:
* Description:
* Copyright:
* Company: www.liyunet.com
*
* @author lishujiang
* @version 1.0
*/
import java.sql.ResultSet;
import javax.servlet.http.HttpServletRequest;
import com.bcxy.bbs.database.DBConnect;
import com.bcxy.bbs.forum.Forum;
import com.bcxy.bbs.forum.ForumFactory;
import com.bcxy.bbs.forum.ForumPropertiesManager;
import com.bcxy.bbs.forum.SkinUtil;
import com.bcxy.bbs.forum.User;
import com.bcxy.bbs.util.Format;
import com.bcxy.bbs.util.ParamUtil;
import com.bcxy.cache.CacheManager;
import com.bcxy.conf.ENV;
import com.bcxy.db.SqlQuery;
public class ForumAdmin {
public ForumAdmin() {
}
public static void checkAdmin(HttpServletRequest request) throws Exception {
String adminName = (String) request.getSession().getAttribute(
"adminName");
String adminPass = (String) request.getSession().getAttribute(
"adminPass");
if (adminName == null || adminPass == null) {
throw new Exception("用户登录超时,请重新<a href=elogin.jsp>登录</a>!");
}
User adminUser = SkinUtil.userLogin(adminName, adminPass, 4);
if (adminUser.getUserClass() < 20) {
throw new Exception("您的身份不是论坛后台管理员!");
}
}
public void saveMod(HttpServletRequest request) throws Exception {
checkAdmin(request);
int forumID;
try {
forumID = ParamUtil.getInt(request, "forumID");
} catch (Exception e) {
throw new Exception("对不起,请您选定您想要修改的论坛ID");
}
int forumSkin;
try {
forumSkin = ParamUtil.getInt(request, "forumSkin");
} catch (Exception e) {
throw new Exception("对不起,请您选定论坛的类别!");
}
Forum theForum = ForumFactory.getForum(forumID);
if (theForum == null)
throw new Exception("错误的论坛");
if (theForum.getForumSkin() == forumSkin) {
return;
}
String forumUser_1 = "";
if (forumSkin == 5) {
String vipuser = ParamUtil.getString(request, "vipuser");
if (vipuser != null && !"".equals(vipuser.trim())) {
String[] forumUser = vipuser.split("\\n|\\r");
for (int i = 0; i < forumUser.length; i++) {
if (!"".equals(forumUser_1)) {
if (i != forumUser.length - 1)
forumUser_1 += forumUser[i] + ",";
else
forumUser_1 += forumUser[i];
}
}
}
}
DBConnect dbc = null;
try {
dbc = new DBConnect(
"update board set boardUser=?,boardskin=? where boardID=?");
dbc.setString(1, forumUser_1);
dbc.setInt(2, forumSkin);
dbc.setInt(3, forumID);
dbc.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
dbc.close();
}
}
public static void saveNew(HttpServletRequest request) throws Exception {
checkAdmin(request);
String forumType = ParamUtil.getString(request, "boardtype");
if (forumType == null || "".equals(forumType.trim()))
throw new Exception("请输入论坛名称。");
int classID;
try {
classID = ParamUtil.getInt(request, "class");
} catch (Exception e) {
throw new Exception("请选择论坛分类。");
}
String forumMaster = ParamUtil.getString(request, "boardmaster", "");
String readme = ParamUtil.getString(request, "readme");
if (readme == null || "".equals(readme.trim()))
throw new Exception("请输入论坛说明。");
int lockForum;
try {
lockForum = ParamUtil.getInt(request, "lockboard");
} catch (Exception e) {
throw new Exception("请选择论坛开放状态。");
}
int forumSkin = ParamUtil.getInt(request, "forumSkin", 1);
String forumUser = ParamUtil.getString(request, "vipuser", "");
DBConnect dbc = null;
try {
dbc = new DBConnect();
String sql = "insert into board(boardtype,class,boardmaster,readme,lockboard,tableback,tabletitle,\ntablebody,atablebody,tablefont,tablecontent,alertfont,forumlogo,indeximg,\nstrallowforumcode,strallowhtml,strimginposts,stricons,strflash,lastpostuser,\nlastposttime,lastbbsnum,lasttopicnum,boardskin,boarduser)\n values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,now(),?,?,?,?)";
dbc.prepareStatement(sql);
dbc.setString(1, forumType);
dbc.setInt(2, classID);
dbc.setString(3, forumMaster);
dbc.setString(4, readme);
dbc.setInt(5, lockForum);
dbc.setString(6, ParamUtil.getString(request, "Tableback", ""));
dbc.setString(7, ParamUtil.getString(request, "Tabletitle", ""));
dbc.setString(8, ParamUtil.getString(request, "Tablebody", ""));
dbc.setString(9, ParamUtil.getString(request, "aTablebody", ""));
dbc.setString(10, ParamUtil.getString(request, "TableFont", ""));
dbc.setString(11, ParamUtil.getString(request, "TableContent", ""));
dbc.setString(12, ParamUtil.getString(request, "AlertFont", ""));
dbc.setString(13, ParamUtil.getString(request, "Logo", ""));
dbc.setString(14, ParamUtil.getString(request, "indexIMG", ""));
dbc.setString(15, ParamUtil.getString(request, "strAllowForumCode",
""));
dbc.setString(16, ParamUtil.getString(request, "strAllowHTML", ""));
dbc
.setString(17, ParamUtil.getString(request,
"strIMGInPosts", ""));
dbc.setString(18, ParamUtil.getString(request, "strIcons", ""));
dbc.setString(19, ParamUtil.getString(request, "strflash", ""));
dbc.setString(20, ("未知"));
dbc.setInt(21, 0);
dbc.setInt(22, 0);
dbc.setInt(23, forumSkin);
dbc.setString(24, forumUser);
dbc.executeUpdate();
if (forumMaster != null && !("".equals(forumMaster.trim())))
addMaster(forumMaster, dbc);
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
dbc.close();
}
}
public static void saveEdit(HttpServletRequest request) throws Exception {
checkAdmin(request);
int editID;
try {
editID = ParamUtil.getInt(request, "editid");
} catch (Exception e) {
throw new Exception("请选择编辑论坛的ID。");
}
int newforumID;
try {
newforumID = ParamUtil.getInt(request, "newforumID");
} catch (Exception e) {
throw new Exception("请填写新论坛的ID。");
}
if (newforumID != editID) {
Forum tempForum = ForumFactory.getForum(newforumID);
if (tempForum != null)
throw new Exception("您不能指定和别的论坛一样的序号。");
}
String forumType = ParamUtil.getString(request, "boardtype");
if (forumType == null || "".equals(forumType.trim()))
throw new Exception("请输入论坛名称。");
int classID;
try {
classID = ParamUtil.getInt(request, "class");
} catch (Exception e) {
throw new Exception("请选择论坛分类。");
}
String forumMaster = ParamUtil.getString(request, "boardmaster", "");
String readme = ParamUtil.getString(request, "readme");
if (readme == null || "".equals(readme.trim()))
throw new Exception("请输入论坛说明。");
int lockForum;
try {
lockForum = ParamUtil.getInt(request, "lockboard");
} catch (Exception e) {
throw new Exception("请选择论坛开放状态。");
}
int forumSkin = ParamUtil.getInt(request, "forumSkin", 1);
String forumUser = ParamUtil.getString(request, "vipuser", "");
String oldBoardMaster = ForumFactory.getForum(editID).getForumMaster();
String sql = "update board set boardtype=?,class=?,boardmaster=?,readme=?,lockboard=?,tableback=?,\n tabletitle=?,tablebody=?,atablebody=?,tableFont=?,tablecontent=?,alertfont=?,\n forumlogo=?,indexIMG=?,strAllowForumCode=?,strAllowHTML=?,strIMGInPosts=?,\n strIcons=?,strflash=? ,boardid=? ,boardskin=?, boarduser=? where boardid=?";
DBConnect dbc = null;
try {
dbc = new DBConnect();
dbc.prepareStatement(sql);
dbc.setString(1, forumType);
dbc.setInt(2, classID);
dbc.setString(3, forumMaster);
dbc.setString(4, readme);
dbc.setInt(5, lockForum);
dbc.setString(6, ParamUtil.getString(request, "Tableback", ""));
dbc.setString(7, ParamUtil.getString(request, "Tabletitle", ""));
dbc.setString(8, ParamUtil.getString(request, "Tablebody", ""));
dbc.setString(9, ParamUtil.getString(request, "aTablebody", ""));
dbc.setString(10, ParamUtil.getString(request, "TableFont", ""));
dbc.setString(11, ParamUtil.getString(request, "TableContent", ""));
dbc.setString(12, ParamUtil.getString(request, "AlertFont", ""));
dbc.setString(13, ParamUtil.getString(request, "Logo", ""));
dbc.setString(14, ParamUtil.getString(request, "indexIMG", ""));
dbc.setString(15, ParamUtil.getString(request, "strAllowForumCode",""));
dbc.setString(16, ParamUtil.getString(request, "strAllowHTML", ""));
dbc.setString(17, ParamUtil.getString(request,"strIMGInPosts", ""));
dbc.setString(18, ParamUtil.getString(request, "strIcons", ""));
dbc.setString(19, ParamUtil.getString(request, "strflash", ""));
dbc.setInt(20, newforumID);
dbc.setInt(21, forumSkin);
dbc.setString(22, forumUser);
dbc.setInt(23, editID);
dbc.executeUpdate();
sql = "update bbs1 set boardid=" + newforumID + " where boardid="+ editID;
dbc.executeUpdate(sql);
//
if(!"".equals(oldBoardMaster)){
ForumAdmin.delMaster(oldBoardMaster, dbc);
}
if (forumMaster != null && !("".equals(forumMaster.trim()))) {
addMaster(forumMaster, dbc);
}
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
dbc.close();
}
// 消除缓存
CacheManager.getCache(ENV.FORUM).remove(String.valueOf(newforumID));
}
public static void del(HttpServletRequest request) throws Exception {
checkAdmin(request);
int forumID;
try {
forumID = ParamUtil.getInt(request, "boardid");
} catch (Exception e) {
throw new Exception("请您选择您要修改的论坛ID");
}
String sql = "delete from board where boardid=" + forumID;
DBConnect dbc = null;
try {
dbc = new DBConnect(sql);
dbc.executeUpdate();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -