📄 _forumperms__jsp.java
字号:
/*
* JSP generated by Resin 2.1.2 (built Tue Jun 11 08:26:56 PDT 2002)
*/
package _admin._forum;
import javax.servlet.*;
import javax.servlet.jsp.*;
import javax.servlet.http.*;
import java.util.*;
import java.net.URLEncoder;
import com.coolservlets.forum.*;
import com.coolservlets.forum.util.*;
import com.coolservlets.forum.util.admin.*;
public class _forumperms__jsp extends com.caucho.jsp.JavaPage{
private boolean _caucho_isDead;
////////////////////////
// global page variables
private final int READ = ForumPermissions.READ;
private final int CREATE_THREAD = ForumPermissions.CREATE_THREAD;
private final int CREATE_MESSAGE = ForumPermissions.CREATE_MESSAGE;
private final int[] perms = { READ, CREATE_THREAD, CREATE_MESSAGE };
private final String[] permDescriptions = {
"read content of","post threads in","post messages in"
};
///////////////////
// global methods
private int[] getIntListboxParams( String[] paramVal ) {
if( paramVal == null ) {
return new int[0];
}
int[] params = new int[paramVal.length];
for (int i=0;i<paramVal.length;i++)
{
try {
params[i] = Integer.parseInt(paramVal[i]);
} catch( NumberFormatException nfe ) {}
}
return params;
}
public void
_jspService(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws java.io.IOException, javax.servlet.ServletException
{
com.caucho.jsp.QPageContext pageContext = (com.caucho.jsp.QPageContext) com.caucho.jsp.QJspFactory.create().getPageContext(this, request, response, null, true, 8192, true);
javax.servlet.jsp.JspWriter out = (javax.servlet.jsp.JspWriter) pageContext.getOut();
javax.servlet.ServletConfig config = getServletConfig();
javax.servlet.Servlet page = this;
javax.servlet.http.HttpSession session = pageContext.getSession();
javax.servlet.ServletContext application = pageContext.getServletContext();
response.setContentType("text/html;charset=gb2312");
request.setCharacterEncoding("GB2312");
try {
pageContext.write(_jsp_string0, 0, _jsp_string0.length);
/**
* $RCSfile: forumPerms.jsp,v $
* $Revision: 1.3.2.1 $
* $Date: 2001/02/09 20:38:41 $
*/
pageContext.write(_jsp_string0, 0, _jsp_string0.length);
pageContext.write(_jsp_string0, 0, _jsp_string0.length);
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
com.coolservlets.forum.util.admin.AdminBean adminBean;
synchronized (session) {
adminBean = (com.coolservlets.forum.util.admin.AdminBean) session.getValue("adminBean");
if (adminBean == null) {
adminBean = new com.coolservlets.forum.util.admin.AdminBean();
session.putValue("adminBean", adminBean);
}
}
pageContext.write(_jsp_string2, 0, _jsp_string2.length);
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
////////////////////////////////
// Jive authorization check
// check the bean for the existence of an authorization token.
// Its existence proves the user is valid. If it's not found, redirect
// to the login page
Authorization authToken = adminBean.getAuthToken();
if( authToken == null ) {
response.sendRedirect( "login.jsp" );
return;
}
pageContext.write(_jsp_string2, 0, _jsp_string2.length);
////////////////////
// Security check
// make sure the user is authorized to administer users:
ForumFactory forumFactory = ForumFactory.getInstance(authToken);
ForumPermissions permissions = forumFactory.getPermissions(authToken);
boolean isSystemAdmin = permissions.get(ForumPermissions.SYSTEM_ADMIN);
boolean isForumAdmin = permissions.get(ForumPermissions.FORUM_ADMIN);
// redirect to error page if we're not a group admin or a system admin
if( !isForumAdmin && !isSystemAdmin ) {
request.setAttribute("message","No permission to administer forums");
response.sendRedirect("error.jsp");
return;
}
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
////////////////////
// get parameters
int forumID = ParamUtils.getIntParameter(request,"forum",-1);
// action parameters
boolean doAddUserPerm = ParamUtils.getBooleanParameter(request,"doAddUserPerm");
boolean doAddGroupPerm = ParamUtils.getBooleanParameter(request,"doAddGroupPerm");
boolean doRemoveUserPerm = ParamUtils.getBooleanParameter(request,"doRemoveUserPerm");
boolean doRemoveGroupPerm = ParamUtils.getBooleanParameter(request,"doRemoveGroupPerm");
int permType = ParamUtils.getIntParameter(request,"permType",-1);
int[] usersWithPerm = getIntListboxParams(request.getParameterValues("usersWithPerm"));
int[] groupsWithPerm = getIntListboxParams(request.getParameterValues("groupsWithPerm"));
int[] userList = getIntListboxParams(request.getParameterValues("userList"));
String userAddUsername = request.getParameter("userListField");
int[] groupList = getIntListboxParams(request.getParameterValues("groupList"));
int[] userPermTypesList = getIntListboxParams(request.getParameterValues("userPermTypes"));
int[] groupPermTypesList = getIntListboxParams(request.getParameterValues("groupPermTypes"));
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
/////////////////////
// other page variables
boolean doAction = (
doAddUserPerm || doAddGroupPerm || doRemoveUserPerm || doRemoveGroupPerm
);
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
///////////////////////
// error variables
boolean errors = false;
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
//////////////////////////////////
// global variables
ProfileManager manager = forumFactory.getProfileManager();
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
/////////////////////
// try to load the forum from the passed in forumID
Forum forum = null;
try {
forum = forumFactory.getForum(forumID);
}
catch( ForumNotFoundException fnfe ) {
response.sendRedirect("error.jsp?msg="
+ URLEncoder.encode("Forum " + forumID + " not found") );
return;
}
catch( UnauthorizedException ue ) {
response.sendRedirect("error.jsp?msg="
+ URLEncoder.encode("No permission to work with this forum"));
return;
}
pageContext.write(_jsp_string1, 0, _jsp_string1.length);
/////////////////////
// this forum's properties
String forumName = forum.getName();
String forumDescription = forum.getDescription();
Iterator allUsers = manager.users();
Iterator allGroups = manager.groups();
int[] usersWithReadPerm = new int[0];
int[] usersWithThreadPerm = new int[0];
int[] usersWithMessagePerm = new int[0];
int[] groupsWithReadPerm = new int[0];
int[] groupsWithThreadPerm = new int[0];
int[] groupsWithMessagePerm = new int[0];
try {
usersWithReadPerm = forum.usersWithPermission(READ);
usersWithThreadPerm = forum.usersWithPermission(CREATE_THREAD);
usersWithMessagePerm = forum.usersWithPermission(CREATE_MESSAGE);
groupsWithReadPerm = forum.groupsWithPermission(READ);
groupsWithThreadPerm = forum.groupsWithPermission(CREATE_THREAD);
groupsWithMessagePerm = forum.groupsWithPermission(CREATE_MESSAGE);
}
catch( UnauthorizedException ue ) {}
pageContext.write(_jsp_string3, 0, _jsp_string3.length);
/////////////////////////
// do an action!
if( doAction ) {
// add a new user permission
if( doAddUserPerm ) {
try {
for( int i=0; i<userList.length; i++ ) {
User user = manager.getUser(userList[i]);
for( int j=0; j<userPermTypesList.length; j++ ) {
forum.addUserPermission(user,userPermTypesList[j]);
}
}
} catch( UserNotFoundException unfe ) {
} catch( UnauthorizedException ue ) {
}
try {
if( !"-Enter Username-".equals(userAddUsername)
&& userAddUsername != null )
{
User user = manager.getUser(userAddUsername);
for( int j=0; j<userPermTypesList.length; j++ ) {
forum.addUserPermission(user,userPermTypesList[j]);
}
}
} catch( UserNotFoundException unfe ) {
} catch( UnauthorizedException ue ) {
}
}
// remove a user permission
if( doRemoveUserPerm ) {
try {
for( int i=0; i<usersWithPerm.length; i++ ) {
User user = manager.getUser(usersWithPerm[i]);
forum.removeUserPermission(user,permType);
}
} catch( UserNotFoundException unfe ) {
} catch( UnauthorizedException ue ) {
}
}
// add a new group permission
if( doAddGroupPerm ) {
try {
for( int i=0; i<groupList.length; i++ ) {
Group group = manager.getGroup(groupList[i]);
for( int j=0; j<groupPermTypesList.length; j++ ) {
forum.addGroupPermission(group,groupPermTypesList[j]);
}
}
} catch( GroupNotFoundException gnfe ) {
} catch( UnauthorizedException ue ) {
}
}
// remove a user permission
if( doRemoveGroupPerm ) {
try {
for( int i=0; i<groupsWithPerm.length; i++ ) {
Group group = manager.getGroup(groupsWithPerm[i]);
forum.removeGroupPermission(group,permType);
}
} catch( GroupNotFoundException gnfe ) {
} catch( UnauthorizedException ue ) {
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -