This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git

commit 3f53f9d4308a8c7c14b8782db8e3083b0472c2d4
Author: Dan Klco <[email protected]>
AuthorDate: Mon Feb 24 22:08:38 2020 -0500

    Encoding paths with sling:encode
---
 .../sling-cms/components/cms/contentactions/contentactions.jsp | 10 +++++-----
 .../libs/sling-cms/components/cms/contentgrid/contentgrid.jsp  |  2 +-
 .../sling-cms/components/cms/contenttable/contenttable.jsp     |  2 +-
 .../components/cms/fileeditorinclude/fileeditorinclude.jsp     |  2 +-
 .../sling-cms/components/cms/i18ncontainer/i18ncontainer.jsp   |  4 ++--
 .../sling-cms/components/cms/optimizefile/optimizefile.jsp     |  6 +++---
 .../sling-cms/components/cms/pageeditbar/actions/actions.jsp   |  4 ++--
 .../libs/sling-cms/components/cms/pageeditor/pageeditor.jsp    |  4 ++--
 .../sling-cms/components/cms/versionmanager/versionmanager.jsp |  6 +++---
 .../sling-cms/components/editor/fields/thumbnail/thumbnail.jsp |  2 +-
 .../libs/sling-cms/components/editor/slingform/slingform.jsp   |  4 ++--
 11 files changed, 23 insertions(+), 23 deletions(-)

diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentactions/contentactions.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentactions/contentactions.jsp
index e057216..fc39439 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentactions/contentactions.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentactions/contentactions.jsp
@@ -22,7 +22,7 @@
         <div class="level-item">
             <div class="buttons has-addons">
                 <c:forEach var="action" 
items="${sling:listChildren(sling:getRelativeResource(resource,'actions'))}" 
varStatus="status">
-                    <a class="button Fetch-Modal" data-title="Add 
${action.valueMap.label}" data-path=".Main-Content form" 
href="${action.valueMap.prefix}${slingRequest.requestPathInfo.suffix}">+ 
${action.valueMap.label}</a>
+                    <a class="button Fetch-Modal" data-title="Add 
${action.valueMap.label}" data-path=".Main-Content form" 
href="${action.valueMap.prefix}${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">+
 ${action.valueMap.label}</a>
                 </c:forEach>
             </div>
         </div>
@@ -44,12 +44,12 @@
                                 <select>
                                     <c:choose>
                                         <c:when 
test="${slingRequest.requestPathInfo.selectorString == 'table' || 
(profile.valueMap.defaultLayout == 'table' && 
slingRequest.requestPathInfo.selectorString != 'grid')}">
-                                            <option 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.grid.html${slingRequest.requestPathInfo.suffix}">Grid</option>
-                                            <option selected 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.table.html${slingRequest.requestPathInfo.suffix}">Table</option>
+                                            <option 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.grid.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">Grid</option>
+                                            <option selected 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.table.html$${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">Table</option>
                                         </c:when>
                                         <c:otherwise>
-                                            <option selected 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.grid.html${slingRequest.requestPathInfo.suffix}">Grid</option>
-                                            <option 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.table.html${slingRequest.requestPathInfo.suffix}">Table</option>
+                                            <option selected 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.grid.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">Grid</option>
+                                            <option 
value="/cms${fn:substring(pagePath,30,fn:length(pagePath))}.table.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">Table</option>
                                         </c:otherwise>
                                     </c:choose>
                                 </select>
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentgrid/contentgrid.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentgrid/contentgrid.jsp
index 94948e5..00ab099 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentgrid/contentgrid.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contentgrid/contentgrid.jsp
@@ -17,7 +17,7 @@
  * under the License.
  */ --%>
  <%@include file="/libs/sling-cms/global.jsp"%>
-<div class="reload-container scroll-container contentnav" 
data-path="${resource.path}.grid.html${slingRequest.requestPathInfo.suffix}">
+<div class="reload-container scroll-container contentnav" 
data-path="${resource.path}.grid.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">
     <div class="tile is-ancestor">
         <c:forEach var="child" 
items="${sling:listChildren(slingRequest.requestPathInfo.suffixResource)}" 
varStatus="status">
             <c:set var="showCard" value="${false}" />
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contenttable/contenttable.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contenttable/contenttable.jsp
index ef96d59..5c8ff58 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contenttable/contenttable.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/contenttable/contenttable.jsp
@@ -17,7 +17,7 @@
  * under the License.
  */ --%>
  <%@include file="/libs/sling-cms/global.jsp"%>
- <div class="reload-container table__wrapper scroll-container contentnav" 
data-path="${resource.path}.table.html${slingRequest.requestPathInfo.suffix}">
+ <div class="reload-container table__wrapper scroll-container contentnav" 
data-path="${resource.path}.table.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">
     <table class="table is-fullwidth is-striped sortable">
         <thead>
             <tr>
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorinclude/fileeditorinclude.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorinclude/fileeditorinclude.jsp
index 64dd632..91b393e 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorinclude/fileeditorinclude.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorinclude/fileeditorinclude.jsp
@@ -30,7 +30,7 @@
         </c:when>
     </c:choose>
 </c:forEach>
-<form method="post" action="${slingRequest.requestPathInfo.suffix}" 
enctype="multipart/form-data" class="Form-Ajax">
+<form method="post" 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
enctype="multipart/form-data" class="Form-Ajax">
     <c:choose>
         <c:when test="${matches != null}">
             <sling:include path="${matches.path}/fields" 
resourceType="sling-cms/components/general/container" />
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/i18ncontainer/i18ncontainer.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/i18ncontainer/i18ncontainer.jsp
index 55e1112..57aa356 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/i18ncontainer/i18ncontainer.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/i18ncontainer/i18ncontainer.jsp
@@ -17,7 +17,7 @@
  * under the License.
  */ --%>
  <%@include file="/libs/sling-cms/global.jsp"%>
-<div class="scroll-container reload-container" 
data-path="${resource.path}.html${slingRequest.requestPathInfo.suffix}">
+<div class="scroll-container reload-container" 
data-path="${resource.path}.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">
     <sling:include path="${resource.path}" 
resourceType="sling-cms/components/general/container" />
     <c:forEach var="language" 
items="${sling:listChildren(slingRequest.requestPathInfo.suffixResource)}">
         <c:if test="${firstChild == null && not empty 
language.valueMap['jcr:language']}">
@@ -31,7 +31,7 @@
             </div>
         </div>
     </nav>
-    <form method="post" action="${slingRequest.requestPathInfo.suffix}" 
enctype="multipart/form-data" class="Form-Ajax" data-add-date="false">
+    <form method="post" 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
enctype="multipart/form-data" class="Form-Ajax" data-add-date="false">
         <fieldset class="form-wrapper field">
             <input type="hidden" name="_charset_" value="utf-8" />
             <table class="table is-fullwidth is-striped">
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/optimizefile/optimizefile.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/optimizefile/optimizefile.jsp
index e0881b1..8123fee 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/optimizefile/optimizefile.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/optimizefile/optimizefile.jsp
@@ -50,7 +50,7 @@
                         <fmt:formatNumber value="${optimizer.result.savings * 
100}" type="number" groupingUsed="false" maxFractionDigits="2" />%
                     </dd>
                 </dl>
-                <form action="${slingRequest.requestPathInfo.suffix}" 
class="Form-Ajax" method="post">
+                <form 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
class="Form-Ajax" method="post">
                     <fieldset class="form-wrapper field">
                         <input type="hidden" name=":operation" 
value="fileoptim:optimize" />
                         <button type="submit" class="button is-primary">
@@ -76,7 +76,7 @@
                         <fmt:formatNumber value="${optimizedFile.savings * 
100}" type="number" groupingUsed="false" maxFractionDigits="2" />%
                     </dd>
                 </dl>
-                <form action="${slingRequest.requestPathInfo.suffix}" 
class="Form-Ajax" method="post">
+                <form 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
class="Form-Ajax" method="post">
                     <fieldset class="form-wrapper field">
                         <input type="hidden" name=":operation" 
value="fileoptim:restore" />
                         <button type="submit" class="button is-primary">
@@ -97,7 +97,7 @@
     <div class="column">
         <c:if test="${optimizer.canOptimize && optimizer.result.optimized}">
             <h4>Preview</h4>
-            <img 
src="/system/fileoptim/preview?path=${slingRequest.requestPathInfo.suffix}" 
class="preview" />
+            <img 
src="/system/fileoptim/preview?path=${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}"
 class="preview" />
         </c:if>
     </div>
 </div>
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditbar/actions/actions.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditbar/actions/actions.jsp
index 1a180d9..91042ca 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditbar/actions/actions.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditbar/actions/actions.jsp
@@ -21,7 +21,7 @@
     <c:choose>
         <c:when test="${actionConfig.valueMap.modal}">
             <div class="control">
-                <a class="button Fetch-Modal" 
data-title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}" 
data-path="${actionConfig.valueMap.ajaxPath != null ? 
actionConfig.valueMap.ajaxPath : '.Main-Content form'}" 
href="${actionConfig.valueMap.prefix}${slingRequest.requestPathInfo.suffix}" 
title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}">
+                <a class="button Fetch-Modal" 
data-title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}" 
data-path="${actionConfig.valueMap.ajaxPath != null ? 
actionConfig.valueMap.ajaxPath : '.Main-Content form'}" 
href="${sling:encode(actionConfig.valueMap.prefix,'HTML_ATTR')}${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}"
 title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}">
                     <span class="jam jam-${actionConfig.valueMap.icon}">
                         <span class="is-vhidden">
                             ${sling:encode(actionConfig.valueMap.title,'HTML')}
@@ -32,7 +32,7 @@
         </c:when>
         <c:otherwise>
             <div class="control">
-                <a class="button" ${actionConfig.valueMap.new != false ? 
'target="_blank"' : ''} 
href="${actionConfig.valueMap.prefix}${slingRequest.requestPathInfo.suffix}" 
title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}">
+                <a class="button" ${actionConfig.valueMap.new != false ? 
'target="_blank"' : ''} 
href="${sling:encode(actionConfig.valueMap.prefix,'HTML_ATTR')}${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}"
 title="${sling:encode(actionConfig.valueMap.title,'HTML_ATTR')}">
                     <span class="jam jam-${actionConfig.valueMap.icon}">
                         <span class="is-vhidden">
                             ${sling:encode(actionConfig.valueMap.title,'HTML')}
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditor/pageeditor.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditor/pageeditor.jsp
index 6886310..309c013 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditor/pageeditor.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/pageeditor/pageeditor.jsp
@@ -17,6 +17,6 @@
  * under the License.
  */ --%>
 <%@include file="/libs/sling-cms/global.jsp"%>
-<div class="sling-cms-editor reload-container" 
data-path="${resource.path}.html${slingRequest.requestPathInfo.suffix}">
-       <iframe class="page-wrapper-frame" 
src="/cms/page/pagewrapper.html${slingRequest.requestPathInfo.suffix}"></iframe>
+<div class="sling-cms-editor reload-container" 
data-path="${resource.path}.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}">
+       <iframe class="page-wrapper-frame" 
src="/cms/page/pagewrapper.html${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}"></iframe>
 </div>
\ No newline at end of file
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/versionmanager/versionmanager.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/versionmanager/versionmanager.jsp
index 7fe3301..b2d1eda 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/versionmanager/versionmanager.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/versionmanager/versionmanager.jsp
@@ -24,7 +24,7 @@
      </c:if>
      <c:choose>
          <c:when test="${versionable == 'true'}">
-             <form method="post" 
action="${slingRequest.requestPathInfo.suffix}" enctype="multipart/form-data" 
class="Form-Ajax" data-add-date="false">
+             <form method="post" 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
enctype="multipart/form-data" class="Form-Ajax" data-add-date="false">
                 <fieldset class="form-wrapper field">
                     <input type="hidden" name=":operation" value="checkpoint" 
/>
                     <div class="Field-Group">
@@ -36,7 +36,7 @@
             </form>
          </c:when>
          <c:otherwise>
-             <form method="post" 
action="${slingRequest.requestPathInfo.suffix}" enctype="multipart/form-data" 
class="Form-Ajax" data-add-date="false">
+             <form method="post" 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
enctype="multipart/form-data" class="Form-Ajax" data-add-date="false">
                 <fieldset class="form-wrapper field">
                     <input type="hidden" name=":autoCheckout" value="true">
                     <input type="hidden" name=":autoCheckin" value="true">
@@ -84,7 +84,7 @@
                             </td>
                             <td>
                                 <c:if test="${!status.first}">
-                                    <form method="post" 
action="${slingRequest.requestPathInfo.suffix}" enctype="multipart/form-data" 
class="Form-Ajax" data-add-date="false">
+                                    <form method="post" 
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}" 
enctype="multipart/form-data" class="Form-Ajax" data-add-date="false">
                                         <fieldset class="form-wrapper field">
                                             <input type="hidden" 
name=":operation" value="restore" />
                                             <input type="hidden" 
name=":version" value="${version.name}" />
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/thumbnail/thumbnail.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/thumbnail/thumbnail.jsp
index 67d1e84..e1708ab 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/thumbnail/thumbnail.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/thumbnail/thumbnail.jsp
@@ -19,6 +19,6 @@
  <%@include file="/libs/sling-cms/global.jsp"%>
 <div class="field">
     <c:if 
test="${sling:getRelativeResource(slingRequest.requestPathInfo.suffixResource,properties.subpath)
 != null}">
-        <img 
src="${slingRequest.requestPathInfo.suffix}/${properties.subpath}${properties.suffix}"
 alt="${sling:encode(properties.alt,'HTML_ATTR')}" class="image 
${properties.className}" />
+        <img 
src="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}/${sling:encode(properties.subpath,'HTML_ATTR')}${properties.suffix}"
 alt="${sling:encode(properties.alt,'HTML_ATTR')}" class="image 
${properties.className}" />
     </c:if>
 </div>
\ No newline at end of file
diff --git 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/slingform/slingform.jsp
 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/slingform/slingform.jsp
index 7a4641c..0b53d0f 100644
--- 
a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/slingform/slingform.jsp
+++ 
b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/slingform/slingform.jsp
@@ -18,7 +18,7 @@
  */ --%>
 <%@include file="/libs/sling-cms/global.jsp"%>
 <form method="post"
-    action="${slingRequest.requestPathInfo.suffix}${properties.actionSuffix}"
+    
action="${sling:encode(slingRequest.requestPathInfo.suffix,'HTML_ATTR')}${sling:encode(properties.actionSuffix,'HTML_ATTR')}"
     enctype="multipart/form-data" class="Form-Ajax"
     data-add-date="${properties.addDate != false}"
     data-callback="${properties.callback}">
@@ -29,7 +29,7 @@
             <sling:encode value="${properties.button}" default="Save" 
mode="HTML" />
         </button>
         <c:if test="${properties.skipcancel != true}">
-            <a href="${header.referer}" class="button close">Cancel</a>
+            <a href="${sling:encode(header.referer,'HTML_ATTR')}" 
class="button close">Cancel</a>
         </c:if>
     </fieldset>
 </form>
\ No newline at end of file

Reply via email to