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

📄 _forumperms__jsp.java

📁 JSP聊天系统
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
/*
 * 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 + -