<%-- - $RCSfile$ - $Revision$ - $Date$ - - Copyright (C) 2005-2008 Jive Software. All rights reserved. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. --%> <%@ page import="org.jivesoftware.util.JiveGlobals, org.jivesoftware.util.ParamUtils" %> <%@ page import="org.xmpp.packet.JID"%> <%@ page import="java.net.URLEncoder" %> <%@ page import="java.util.Collection" %> <%@ page import="org.jivesoftware.openfire.security.SecurityAuditManager" %> <%@ page import="org.jivesoftware.openfire.security.SecurityAuditEvent" %> <%@ page import="java.util.Date" %> <%@ page import="org.jivesoftware.openfire.security.AuditWriteOnlyException" %> <%@ page import="java.text.SimpleDateFormat" %> <%@ page import="java.text.ParseException" %> <%@ page import="org.jivesoftware.util.LocaleUtils" %> <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %> <%@ taglib uri="http://java.sun.com/jstl/fmt_rt" prefix="fmt" %> <%! final int DEFAULT_RANGE = 15; final int[] RANGE_PRESETS = {15, 25, 50, 75, 100}; SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yy HH:mm:ss"); SimpleDateFormat shortDateFormat = new SimpleDateFormat("MM/dd/yy"); %> <% webManager.init(request, response, session, application, out ); %> <fmt:message key="security.audit.viewer.title"/> <% // Get parameters int start = ParamUtils.getIntParameter(request,"start",0); int range = ParamUtils.getIntParameter(request,"range",webManager.getRowsPerPage("security-audit-viewer", DEFAULT_RANGE)); String username = null; String usernameParam = ParamUtils.getParameter(request,"username"); if (usernameParam != null && !usernameParam.equals("")) { username = usernameParam; } Date startTime = null; String startTimeParam = ParamUtils.getParameter(request, "startdate"); String startDateSetting = null; if (startTimeParam != null) { try { startTime = dateFormat.parse(startTimeParam+" 00:00:00"); startDateSetting = shortDateFormat.format(startTime); } catch (ParseException e) { // Bad date, ignore } } Date endTime = null; String endTimeParam = ParamUtils.getParameter(request, "enddate"); String endDateSetting = null; if (endTimeParam != null) { try { endTime = dateFormat.parse(endTimeParam+" 23:59:59"); endDateSetting = shortDateFormat.format(endTime); } catch (ParseException e) { // Bad date, ignore } } if (request.getParameter("range") != null) { webManager.setRowsPerPage("security-audit-viewer", range); } // Get the presence manager SecurityAuditManager auditManager = webManager.getSecurityAuditManager(); if (!SecurityAuditManager.getSecurityAuditProvider().isWriteOnly()) { %>

:    : "/>
: : "/> ()   : "/> ()     " />

<% // Print the list of users try { Collection events = auditManager.getEvents(username, start, range, startTime, endTime); if (events.isEmpty()) { %> <% } int i = start; for (SecurityAuditEvent event : events) { i++; %> " valign="top"> <% } } catch (AuditWriteOnlyException e) { // This should never occur, so we're ignoring. } %>
<%= event.getMsgID() %> "><%= JID.unescapeNode(event.getUsername()) %> <%= event.getNode() %> <%= event.getSummary() %> <% if (event.getDetails() != null) { %>   '; return false;} else { document.getElementById('details<%= event.getMsgID() %>').style.display = 'none'; document.getElementById('label<%= event.getMsgID() %>').innerHTML = '<%= LocaleUtils.getLocalizedString("security.audit.viewer.show_details")%>'; return false;}" id="label<%= event.getMsgID() %>">
<% } %>
<%= JiveGlobals.formatDateTime(event.getEventStamp()) %>
<% } else { %>
<% if (SecurityAuditManager.getSecurityAuditProvider().getAuditURL() != null) { %>

: <%= SecurityAuditManager.getSecurityAuditProvider().getAuditURL() %> <% } %>
<% } %>