<%@ page contentType="text/html; charset=UTF-8" %> <%-- - - Copyright (C) 2005-2008 Jive Software, 2017-2025 Ignite Realtime Foundation. 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. --%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <%@ taglib uri="admin" prefix="admin" %> <%@ page import="org.jivesoftware.util.ParamUtils, org.jivesoftware.util.StringUtils, org.jivesoftware.util.CookieUtils, org.jivesoftware.openfire.XMPPServer, org.jivesoftware.openfire.update.UpdateManager, java.util.HashMap, java.util.Map" errorPage="error.jsp" %> <% webManager.init(request, response, session, application, out ); %> <fmt:message key="manage-updates.title"/> <% // Get parameters boolean update = request.getParameter("update") != null; boolean serviceEnabled = ParamUtils.getBooleanParameter(request, "serviceEnabled"); boolean notificationsEnabled = ParamUtils.getBooleanParameter(request, "notificationsEnabled"); boolean proxyEnabled = ParamUtils.getBooleanParameter(request,"proxyEnabled"); String proxyHost = ParamUtils.getParameter(request,"proxyHost"); int proxyPort = ParamUtils.getIntParameter(request,"proxyPort", -1); boolean updateSuccess = false; UpdateManager updateManager = XMPPServer.getInstance().getUpdateManager(); // Update the session kick policy if requested Map errors = new HashMap<>(); Cookie csrfCookie = CookieUtils.getCookie(request, "csrf"); String csrfParam = ParamUtils.getParameter(request, "csrf"); if (update) { if (csrfCookie == null || csrfParam == null || !csrfCookie.getValue().equals(csrfParam)) { update = false; errors.put("csrf", "CSRF Failure!"); } } csrfParam = StringUtils.randomString(15); CookieUtils.setCookie(request, response, "csrf", csrfParam, -1); pageContext.setAttribute("csrf", csrfParam); if (update) { // Validate params if (proxyEnabled) { if (proxyHost == null || proxyHost.trim().isEmpty()) { errors.put("proxyHost",""); } if (proxyPort <= 0) { errors.put("proxyPort",""); } } else { proxyHost = null; proxyPort = -1; } // If no errors, continue: if (errors.isEmpty()) { updateManager.setServiceEnabled(serviceEnabled); updateManager.setNotificationEnabled(notificationsEnabled); updateManager.setProxyHost(proxyHost); updateManager.setProxyPort(proxyPort); // Log the event webManager.logEvent("edited managed updates settings", "enabeld = "+serviceEnabled+"\nnotificationsenabled = "+notificationsEnabled+"\nproxyhost = "+proxyHost+"\nproxypost = "+proxyPort); updateSuccess = true; } } // Set page vars if (errors.isEmpty()) { serviceEnabled = updateManager.isServiceEnabled(); notificationsEnabled = updateManager.isNotificationEnabled(); proxyEnabled = updateManager.isUsingProxy(); proxyHost = updateManager.getProxyHost(); proxyPort = updateManager.getProxyPort(); } else { } pageContext.setAttribute("errors", errors); pageContext.setAttribute("success", updateSuccess); %>

: ()

>
>


>
>


>
>
 
">
">