This is an automated email from the ASF dual-hosted git repository. sebawagner pushed a commit to branch feature/OPENMEETINGS-2692-update-webapp-path-for-manifest-references in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/feature/OPENMEETINGS-2692-update-webapp-path-for-manifest-references by this push: new d1259e6 OPENMEETINGS-2692 Update review comments on parsing path element. d1259e6 is described below commit d1259e697fc8545d3f6e4f3400ab57d8a5fcc6cb Author: Sebastian Wagner <seba.wag...@gmail.com> AuthorDate: Tue Oct 19 10:02:33 2021 +1300 OPENMEETINGS-2692 Update review comments on parsing path element. --- .../apache/openmeetings/util/OpenmeetingsVariables.java | 16 ++++++++++++---- .../apache/openmeetings/webservice/InfoWebService.java | 4 ++-- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java index cad96b9..b8ba523 100644 --- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java +++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java @@ -21,9 +21,16 @@ package org.apache.openmeetings.util; import static org.apache.wicket.csp.CSPDirectiveSrcValue.SELF; import static org.apache.wicket.csp.CSPDirectiveSrcValue.STRICT_DYNAMIC; +import java.net.URI; +import java.net.URISyntaxException; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import com.github.openjson.JSONObject; public class OpenmeetingsVariables { + private static final Logger log = LoggerFactory.getLogger(OpenmeetingsVariables.class); public static final String ATTR_CLASS = "class"; public static final String ATTR_TITLE = "title"; public static final String ATTR_DISABLED = "disabled"; @@ -249,11 +256,12 @@ public class OpenmeetingsVariables { } public static String getWebappPath() { - String webappPath = baseUrl; - if (webappPath.endsWith("/")) { - webappPath = webappPath.substring(0, webappPath.length() - 1); + try { + return new URI(baseUrl).getPath(); + } catch (URISyntaxException e) { + log.error("could not parse baseUrl", e); } - return webappPath.substring(webappPath.lastIndexOf("/") + 1); + return ""; } public static void setBaseUrl(String url) { diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java index 7967e1d..7b9bd42 100644 --- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java +++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java @@ -106,7 +106,7 @@ public class InfoWebService { manifest.put("name", OpenmeetingsVariables.getApplicationName() + " " + Version.getVersion()); manifest.put("short_name", OpenmeetingsVariables.getApplicationName() + " " + Version.getVersion()); manifest.put("description", "Openmeetings provides video conferencing, instant messaging, white board, collaborative document editing and other groupware tools."); - manifest.put("start_url", "/" + OpenmeetingsVariables.getWebappPath() + "/?pwa=true"); + manifest.put("start_url", OpenmeetingsVariables.getWebappPath() + "?pwa=true"); manifest.put("scope", "/"); manifest.put("background_color", "#ffffff"); manifest.put("theme_color", "#ffffff"); @@ -123,7 +123,7 @@ public class InfoWebService { private JSONObject generateIcon(String name, String dimension, String purpose) { JSONObject icon = new JSONObject(); - icon.put("src", "/" + OpenmeetingsVariables.getWebappPath() + "/images/icons/" + name); + icon.put("src", OpenmeetingsVariables.getWebappPath() + "images/icons/" + name); icon.put("type", "image/png"); icon.put("sizes", dimension); icon.put("purpose", purpose);