📄 forumwebhandler.java
字号:
/*
* Copyright (C) 2002 by MyVietnam.net
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or any later version.
*
* All copyright notices regarding mvnForum
* must remain intact in the scripts and in the outputted HTML
* The "powered by" text/logo with a link back to
* http://www.mvnForum.com and http://www.MyVietnam.net in the footer of the pages MUST
* remain visible when the pages are viewed on the internet or intranet.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* Support can be obtained from support forums at:
* http://www.mvnForum.com/mvnforum/index
*
* Correspondence and Marketing Questions can be sent to:
* info@MyVietnam.net
*
* @author: Minh Nguyen minhnn@MyVietnam.net
* @author: Mai Nguyen mai.nh@MyVietnam.net
*/
package net.myvietnam.mvnplugin.mvnforum.admin;
import javax.servlet.http.*;
import java.sql.*;
import java.util.Collection;
import net.myvietnam.mvncore.exception.*;
import net.myvietnam.mvncore.util.ParamUtil;
import net.myvietnam.mvncore.util.DateUtil;
import net.myvietnam.mvnplugin.mvnforum.db.ForumBean;
import net.myvietnam.mvnplugin.mvnforum.auth.*;
class ForumWebHandler {
private OnlineUserManager onlineUserManager = OnlineUserManager.getInstance();
ForumWebHandler() {
}
void processAdd(HttpServletRequest request)
throws BadInputException, CreateException, DatabaseException, DuplicateKeyException,
ForeignKeyNotFoundException, AuthenticationException, AssertionException {
OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
permission.ensureCanNewForum();
Timestamp now = DateUtil.getCurrentGMTTimestamp();
int categoryID = ParamUtil.getParameterInt(request, "CategoryID");
String forumName = ParamUtil.getParameterSafe(request, "ForumName", true);
String forumDesc = ParamUtil.getParameterSafe(request, "ForumDesc", false);
int forumType = 0;//xem lai
int forumFormatOption = 0;//xem lai
int forumOption = 0;//xem lai
int forumStatus = 0;//xem lai
int forumModerationMode = 0;//xem lai
String forumPassword = "";//xem lai
ForumWebHelper.createForum(categoryID, ""/*lastPostMemberName*/, forumName,
forumDesc, now/*forumCreationDate*/, now/*forumModifiedDate*/,
now/*forumLastPostDate*/, 0/*forumOrder*/, forumType,
forumFormatOption, forumOption, forumStatus,
forumModerationMode, forumPassword, 0/*forumThreadCount*/,
0/*forumPostCount*/);
request.setAttribute("ForumName", forumName);
}
public void prepareEdit(HttpServletRequest request)
throws BadInputException, DatabaseException, AuthenticationException, AssertionException {
OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
permission.ensureCanEditForum();
// primary key column(s)
int forumID = ParamUtil.getParameterInt(request, "forum");
ForumBean bean = ForumWebHelper.getForum(forumID);
request.setAttribute("ForumBean", bean);
}
public void processUpdate(HttpServletRequest request)
throws BadInputException, DatabaseException, DuplicateKeyException,
ForeignKeyNotFoundException, AuthenticationException, AssertionException {
OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
permission.ensureCanEditForum();
Timestamp now = DateUtil.getCurrentGMTTimestamp();
// primary key column(s)
int forumID = ParamUtil.getParameterInt(request, "ForumID");
// column(s) to update
int categoryID = ParamUtil.getParameterInt(request, "CategoryID");
String forumName = ParamUtil.getParameterSafe(request, "ForumName", true);
String forumDesc = ParamUtil.getParameterSafe(request, "ForumDesc", false);
Timestamp forumModifiedDate = now;
int forumOrder = ParamUtil.getParameterInt(request, "ForumOrder");
if (forumOrder < 0) {
throw new BadInputException("ForumOrder cannot be negative");
}
int forumType = 0;//ParamUtil.getParameterInt(request, "ForumType");
int forumFormatOption = 0;//ParamUtil.getParameterInt(request, "ForumFormatOption");
int forumOption = 0;//ParamUtil.getParameterInt(request, "ForumOption");
int forumStatus = 0;//ParamUtil.getParameterInt(request, "ForumStatus");
int forumModerationMode = 0;//ParamUtil.getParameterInt(request, "ForumModerationMode");
ForumWebHelper.updateForum(forumID, // primary key
categoryID, forumName, forumDesc,
forumModifiedDate, forumOrder, forumType,
forumFormatOption, forumOption, forumStatus,
forumModerationMode);
}
/**
* @todo: check permission
*/
public void processUpdateForumOrder(HttpServletRequest request)
throws BadInputException, DatabaseException, DuplicateKeyException,
AuthenticationException, AssertionException {
OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
permission.ensureCanEditForum();
Timestamp now = DateUtil.getCurrentGMTTimestamp();
// primary key column(s)
int forumID = ParamUtil.getParameterInt(request, "forum");
String action = ParamUtil.getParameterSafe(request, "action", true);
if (action.equals("up")) {
ForumWebHelper.decreaseForumOrder(forumID, now);
} else if (action.equals("down")) {
ForumWebHelper.increaseForumOrder(forumID, now);
} else {
throw new BadInputException("Cannot update ForumOrder: unknown action: " + action);
}
}
public void prepareList(HttpServletRequest request)
throws DatabaseException, AuthenticationException, AssertionException {
OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
/** @todo is this a correct permission ??? */
permission.ensureCanEditForum();
Collection beans = ForumWebHelper.getForums();
request.setAttribute("ForumBeans", beans);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -