<%@ page import="org.apache.log4j.*" %> <%@ page import="com.ecyrd.jspwiki.*" %> <%@ page import="com.ecyrd.jspwiki.auth.WikiSecurityException" %> <%@ page import="com.ecyrd.jspwiki.auth.authorize.Group" %> <%@ page import="com.ecyrd.jspwiki.auth.authorize.GroupManager" %> <%@ page errorPage="/Error.jsp" %> <%@ taglib uri="/WEB-INF/jspwiki.tld" prefix="wiki" %> <%! Logger log = Logger.getLogger("JSPWiki"); %> <% WikiEngine wiki = WikiEngine.getInstance( getServletConfig() ); // Create wiki context and check for authorization WikiContext wikiContext = wiki.createContext( request, WikiContext.EDIT_GROUP ); if(!wikiContext.hasAccess( response )) return; // Extract the current user, group name, members and action attributes WikiSession wikiSession = wikiContext.getWikiSession(); GroupManager groupMgr = wiki.getGroupManager(); Group group = null; try { group = groupMgr.parseGroup( wikiContext, false ); pageContext.setAttribute ( "Group", group, PageContext.REQUEST_SCOPE ); } catch ( WikiSecurityException e ) { wikiSession.addMessage( GroupManager.MESSAGES_KEY, e.getMessage() ); response.sendRedirect( "Group.jsp" ); } // Are we saving the group? if( "save".equals(request.getParameter("action")) ) { // Validate the group groupMgr.validateGroup( wikiContext, group ); // If no errors, save the group now if ( wikiSession.getMessages( GroupManager.MESSAGES_KEY ).length == 0 ) { try { groupMgr.setGroup( wikiSession, group ); } catch( WikiSecurityException e ) { // Something went horribly wrong! Maybe it's an I/O error... wikiSession.addMessage( GroupManager.MESSAGES_KEY, e.getMessage() ); } } if ( wikiSession.getMessages( GroupManager.MESSAGES_KEY ).length == 0 ) { response.sendRedirect( "Group.jsp?group=" + group.getName() ); return; } } // Set the content type and include the response content response.setContentType("text/html; charset="+wiki.getContentEncoding() ); String contentPage = wiki.getTemplateManager().findJSP( pageContext, wikiContext.getTemplate(), "EditTemplate.jsp" ); %>