<%-- - $Revision$ - $Date$ - - Copyright (C) 2004 Jive Software. All rights reserved. - - This software is published under the terms of the GNU Public License (GPL), - a copy of which is included in this distribution. --%> <%@ page import="org.jivesoftware.util.*, java.util.*, org.jivesoftware.openfire.muc.MultiUserChatServer" errorPage="error.jsp" %> <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %> <%@ taglib uri="http://java.sun.com/jstl/fmt_rt" prefix="fmt" %> <% webManager.init(request, response, session, application, out ); %> <% // Get parameters boolean kickEnabled = ParamUtils.getBooleanParameter(request,"kickEnabled"); String idletime = ParamUtils.getParameter(request,"idletime"); String logfreq = ParamUtils.getParameter(request,"logfreq"); String logbatchsize = ParamUtils.getParameter(request,"logbatchsize"); boolean kickSettings = request.getParameter("kickSettings") != null; boolean logSettings = request.getParameter("logSettings") != null; boolean kickSettingSuccess = request.getParameter("kickSettingSuccess") != null; boolean logSettingSuccess = request.getParameter("logSettingSuccess") != null; // Get muc server MultiUserChatServer mucServer = webManager.getMultiUserChatServer(); Map errors = new HashMap(); // Handle an update of the kicking task settings if (kickSettings) { if (!kickEnabled) { // Disable kicking users by setting a value of -1 mucServer.setUserIdleTime(-1); response.sendRedirect("muc-tasks.jsp?kickSettingSuccess=true"); return; } // do validation if (idletime == null) { errors.put("idletime","idletime"); } int idle = 0; // Try to obtain an int from the provided strings if (errors.size() == 0) { try { idle = Integer.parseInt(idletime) * 1000 * 60; } catch (NumberFormatException e) { errors.put("idletime","idletime"); } if (idle < 0) { errors.put("idletime","idletime"); } } if (errors.size() == 0) { mucServer.setUserIdleTime(idle); response.sendRedirect("muc-tasks.jsp?kickSettingSuccess=true"); return; } } // Handle an update of the log conversations task settings if (logSettings) { // do validation if (logfreq == null) { errors.put("logfreq","logfreq"); } if (logbatchsize == null) { errors.put("logbatchsize","logbatchsize"); } int frequency = 0; int batchSize = 0; // Try to obtain an int from the provided strings if (errors.size() == 0) { try { frequency = Integer.parseInt(logfreq) * 1000; } catch (NumberFormatException e) { errors.put("logfreq","logfreq"); } try { batchSize = Integer.parseInt(logbatchsize); } catch (NumberFormatException e) { errors.put("logbatchsize","logbatchsize"); } } if (errors.size() == 0) { mucServer.setLogConversationsTimeout(frequency); mucServer.setLogConversationBatchSize(batchSize); response.sendRedirect("muc-tasks.jsp?logSettingSuccess=true"); return; } } %> <fmt:message key="muc.tasks.title"/>

<% if (kickSettingSuccess || logSettingSuccess) { %>
<% if (kickSettingSuccess) { %> <% } else if (logSettingSuccess) { %> <% } %>

<% } %> <% if (errors.size() != 0) { %>
<% if (errors.get("idletime") != null) { %> <% } else if (errors.get("logfreq") != null) { %> <% } else if (errors.get("logbatchsize") != null) { %> <% } %>

<% } %>
>
-1) ? "checked" : "") %>> .

">


">