This is an automated email from the ASF dual-hosted git repository.
jamesyong pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git The following commit(s) were added to refs/heads/trunk by this push: new 10fbedb Fixed: Open FTL File from browser (OFBIZ-12018) 10fbedb is described below commit 10fbedbce0dff5afab729f07e19fd40756a61b43 Author: James Yong <[hidden email]> AuthorDate: Fri Oct 2 20:33:44 2020 +0800 Fixed: Open FTL File from browser (OFBIZ-12018) Not able to open source file when clicking on named border in ecomseo landing page Thanks Jacques for reporting --- .../src/main/java/org/apache/ofbiz/widget/model/HtmlWidget.java | 6 ++++-- .../apache/ofbiz/widget/renderer/html/HtmlWidgetRenderer.java | 9 +++++++-- themes/common-theme/webapp/common/js/util/OfbizUtil.js | 5 +++-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/framework/widget/src/main/java/org/apache/ofbiz/widget/model/HtmlWidget.java b/framework/widget/src/main/java/org/apache/ofbiz/widget/model/HtmlWidget.java index fb70871..708a84b 100644 --- a/framework/widget/src/main/java/org/apache/ofbiz/widget/model/HtmlWidget.java +++ b/framework/widget/src/main/java/org/apache/ofbiz/widget/model/HtmlWidget.java @@ -176,8 +176,10 @@ public class HtmlWidget extends ModelScreenWidget { insertWidgetNamedBorder = true; } } + String contextPath = ""; if (insertWidgetNamedBorder) { - writer.append(HtmlWidgetRenderer.buildNamedBorder("Begin", "Template", location, namedBorderType)); + contextPath = ((HttpServletRequest) context.get("request")).getContextPath(); + writer.append(HtmlWidgetRenderer.buildNamedBorder("Begin", "Template", location, namedBorderType, contextPath)); } Template template = null; @@ -189,7 +191,7 @@ public class HtmlWidget extends ModelScreenWidget { FreeMarkerWorker.renderTemplate(template, context, writer); if (insertWidgetNamedBorder) { - writer.append(HtmlWidgetRenderer.buildNamedBorder("End", "Template", location, namedBorderType)); + writer.append(HtmlWidgetRenderer.buildNamedBorder("End", "Template", location, namedBorderType, contextPath)); } if (insertWidgetBoundaryComments) { writer.append(HtmlWidgetRenderer.buildBoundaryComment("End", "Template", location)); diff --git a/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/html/HtmlWidgetRenderer.java b/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/html/HtmlWidgetRenderer.java index 99ee553..950c6f2 100644 --- a/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/html/HtmlWidgetRenderer.java +++ b/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/html/HtmlWidgetRenderer.java @@ -23,6 +23,7 @@ import java.util.List; import org.apache.ofbiz.base.util.UtilHtml; import org.apache.ofbiz.base.util.UtilHttp; +import org.apache.ofbiz.product.category.SeoConfigUtil; import org.apache.ofbiz.widget.model.ModelWidget; /** @@ -74,7 +75,8 @@ public class HtmlWidgetRenderer { return "<!-- " + boundaryType + " " + widgetType + " " + widgetName + " -->" + WHITE_SPACE; } - public static String buildNamedBorder(String boundaryType, String widgetType, String widgetName, ModelWidget.NamedBorderType namedBorderType) { + public static String buildNamedBorder(String boundaryType, String widgetType, String widgetName, + ModelWidget.NamedBorderType namedBorderType, String contextPath) { List<String> themeBasePathsToExempt = UtilHtml.getVisualThemeFolderNamesToExempt(); if (!themeBasePathsToExempt.stream().anyMatch(widgetName::contains)) { // add additional visual label for non-theme ftl @@ -82,7 +84,10 @@ public class HtmlWidgetRenderer { String fileName = widgetName.substring(widgetName.lastIndexOf("/") + 1); switch (namedBorderType) { case SOURCE: - return "<div class='info-container'><span class='info-overlay-item info-cursor-none' data-source='" + widgetName + "'>" + return "<div class='info-container'><span class='info-overlay-item info-cursor-none' data-source='" + + widgetName + "' data-target='" + contextPath + + (SeoConfigUtil.isCategoryUrlEnabled(contextPath) ? "" : "/control") + + "/openSourceFile'>" + fileName + "</span>"; case LABEL: diff --git a/themes/common-theme/webapp/common/js/util/OfbizUtil.js b/themes/common-theme/webapp/common/js/util/OfbizUtil.js index 90a1a93..a81f9a2 100644 --- a/themes/common-theme/webapp/common/js/util/OfbizUtil.js +++ b/themes/common-theme/webapp/common/js/util/OfbizUtil.js @@ -48,10 +48,11 @@ $(document).ready(function() { selectList.each(function(){ const $this = $(this); $this.removeClass("info-cursor-none"); - var sourceLocaton = $this.data("source"); + let sourceLocaton = $this.data("source"); + let target = $this.data("target"); $this.addClass("info-cursor").click(function(){ jQuery.ajax({ - url: 'openSourceFile', + url: target, type: "POST", data: {sourceLocation:sourceLocaton}, success: function(data) { |
Free forum by Nabble | Edit this page |