You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2018/12/15 04:38:21 UTC

[sling-org-apache-sling-app-cms] branch master updated: Fixing SLING-8176 and adding SLING-8070

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


The following commit(s) were added to refs/heads/master by this push:
     new 310af0b  Fixing SLING-8176 and adding SLING-8070
310af0b is described below

commit 310af0bd245bba277c5acb3ce48b6bc44c279d94
Author: Dan Klco <dk...@apache.org>
AuthorDate: Fri Dec 14 23:38:15 2018 -0500

    Fixing SLING-8176 and adding SLING-8070
    
    Moving the CA Config components into sling-cms/components/caconfig and
    adding support for setting a taxonomy root via the site CA Config
---
 ui/src/main/resources/jcr_root/conf/global.json    | 274 ++++++++++-----------
 .../component.json}                                |   0
 .../component/component.jsp}                       |   0
 .../component}/edit.json                           |   0
 .../editconfig.jsp => caconfig/edit/edit.jsp}      |   0
 .../fileeditor.json}                               |   0
 .../fileeditor}/config/config.jsp                  |   0
 .../fileeditor}/config/edit.json                   |   0
 .../fileeditor/fileeditor.jsp}                     |   0
 .../rewriterconfig => caconfig/rewriter}/edit.json |   0
 .../rewriter/rewriter.jsp}                         |   0
 .../{cms/siteconfig.json => caconfig/site.json}    |   0
 .../siteconfig.jsp => caconfig/site/site.jsp}      |   4 +-
 .../components/caconfig/sitesettings/edit.json     |  19 ++
 .../sitesettings/sitesettings.jsp}                 |  12 +-
 .../components/editor/fields/taxonomy/field.jsp    |  72 +++---
 .../libs/sling-cms/content/config/edit.json        |   2 +-
 17 files changed, 205 insertions(+), 178 deletions(-)

diff --git a/ui/src/main/resources/jcr_root/conf/global.json b/ui/src/main/resources/jcr_root/conf/global.json
index c2ea9ad..3dd673b 100644
--- a/ui/src/main/resources/jcr_root/conf/global.json
+++ b/ui/src/main/resources/jcr_root/conf/global.json
@@ -1,139 +1,139 @@
 {
-	"jcr:primaryType": "sling:OrderedFolder",
-	"jcr:content": {
-		"jcr:primaryType": "nt:unstructured",
-		"jcr:title": "Global"
-	},
-	"files": {
-		"jcr:primaryType": "sling:OrderedFolder",
-		"jcr:content": {
-			"jcr:primaryType": "nt:unstructured",
-			"jcr:title": "File Configurations"
-		},
-		"editors": {
-			"jcr:primaryType": "sling:OrderedFolder",
-			"jcr:content": {
-				"jcr:primaryType": "nt:unstructured",
-				"jcr:title": "File Editor"
-			},
-			"default": {
-				"jcr:primaryType": "sling:Config",
-				"jcr:title": "Default File Editor",
-				"sling:resourceType": "sling-cms/components/cms/fileeditorconfig",
-				"fields": {
-					"jcr:primaryType": "nt:unstructured",
-					"title": {
-						"jcr:primaryType": "nt:unstructured",
-						"required": false,
-						"name": "jcr:content/jcr:title",
-						"type": "text",
-						"label": "Title",
-						"sling:resourceType": "sling-cms/components/editor/fields/text"
-					},
-					"jcrmimeType": {
-						"jcr:primaryType": "nt:unstructured",
-						"required": true,
-						"name": "jcr:content/jcr:mimeType",
-						"type": "text",
-						"label": "MIME Type",
-						"sling:resourceType": "sling-cms/components/editor/fields/text"
-					},
-					"licensing": {
-						"jcr:primaryType": "nt:unstructured",
-						"required": false,
-						"name": "jcr:content/licensing",
-						"type": "text",
-						"label": "Licensing",
-						"sling:resourceType": "sling-cms/components/editor/fields/text"
-					},
-					"taxonomy": {
-						"jcr:primaryType": "nt:unstructured",
-						"name": "jcr:content/sling:taxonomy",
-						"label": "Taxonomy",
-						"sling:resourceType": "sling-cms/components/editor/fields/taxonomy"
-					},
-					"taxonomyTypeHint": {
-						"jcr:primaryType": "nt:unstructured",
-						"name": "jcr:content/sling:taxonomy@TypeHint",
-						"value": "String[]",
-						"sling:resourceType": "sling-cms/components/editor/fields/hidden"
-					},
-					"published": {
-						"jcr:primaryType": "nt:unstructured",
-						"options": "Yes=true, No=false",
-						"name": "jcr:content/published",
-						"label": "Published",
-						"sling:resourceType": "sling-cms/components/editor/fields/select"
-					},
-					"publishedTypeHint": {
-						"jcr:primaryType": "nt:unstructured",
-						"name": "jcr:content/published@TypeHint",
-						"value": "Boolean",
-						"sling:resourceType": "sling-cms/components/editor/fields/hidden"
-					}
-				}
-			}
-		}
-	},
-	"site": {
-		"jcr:primaryType": "sling:Config",
-		"sling:resourceType": "sling-cms/components/cms/siteconfig",
-		"jcr:title": "Default Site Configuration",
-		"rewrite": {
-			"jcr:primaryType": "nt:unstructured",
-			"doctype": "<!DOCTYPE html>",
-			"attributes": [
-				"action",
-				"href",
-				"src"
-			]
-		},
-		"templates": {
-			"jcr:primaryType": "nt:unstructured",
-			"base-page": {
-				"jcr:primaryType": "nt:unstructured",
-				"jcr:title": "Base Page",
-				"template": "{\r\n  \"jcr:primaryType\": \"sling:Page\",\r\n  \"jcr:content\": {\r\n    \"jcr:primaryType\": \"nt:unstructured\",\r\n    \"jcr:title\": \"{{title}}\",\r\n    \"sling:template\": \"/conf/global/site/templates/base-page\",\r\n    \"sling:resourceType\": \"reference/components/pages/base\",\r\n    \"published\": false\r\n  }\r\n}",
-				"availableComponentTypes": [
-					"General"
-				],
-				"allowedPaths": [
-					"/content/apache/sling-apache-org.*"
-				],
-				"sling:resourceType": "sling-cms/components/cms/pagetemplate",
-				"fields": {
-					"jcr:primaryType": "nt:unstructured",
-					"text": {
-						"jcr:primaryType": "nt:unstructured",
-						"required": true,
-						"name": "title",
-						"type": "text",
-						"label": "Title",
-						"sling:resourceType": "sling-cms/components/editor/fields/text"
-					},
-					"text_1147023191": {
-						"jcr:primaryType": "nt:unstructured",
-						"required": true,
-						"name": ":name",
-						"type": "text",
-						"label": "Name",
-						"sling:resourceType": "sling-cms/components/editor/fields/text"
-					}
-				},
-				"componentConfigurations": {
-					"jcr:primaryType": "nt:unstructured",
-					"componentconfig": {
-						"jcr:primaryType": "nt:unstructured",
-						"type": "reference/components/general/columncontrol",
-						"containerclass": "container",
-						"columns": [
-							"50-50=col-md-6 col-md-6",
-							"100=col-md-12"
-						],
-						"sling:resourceType": "sling-cms/components/cms/componentconfig"
-					}
-				}
-			}
-		}
-	}
+    "jcr:primaryType": "sling:OrderedFolder",
+    "jcr:content": {
+        "jcr:primaryType": "nt:unstructured",
+        "jcr:title": "Global"
+    },
+    "files": {
+        "jcr:primaryType": "sling:OrderedFolder",
+        "jcr:content": {
+            "jcr:primaryType": "nt:unstructured",
+            "jcr:title": "File Configurations"
+        },
+        "editors": {
+            "jcr:primaryType": "sling:OrderedFolder",
+            "jcr:content": {
+                "jcr:primaryType": "nt:unstructured",
+                "jcr:title": "File Editor"
+            },
+            "default": {
+                "jcr:primaryType": "sling:Config",
+                "jcr:title": "Default File Editor",
+                "sling:resourceType": "sling-cms/components/caconfig/fileeditor",
+                "fields": {
+                    "jcr:primaryType": "nt:unstructured",
+                    "title": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "required": false,
+                        "name": "jcr:content/jcr:title",
+                        "type": "text",
+                        "label": "Title",
+                        "sling:resourceType": "sling-cms/components/editor/fields/text"
+                    },
+                    "jcrmimeType": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "required": true,
+                        "name": "jcr:content/jcr:mimeType",
+                        "type": "text",
+                        "label": "MIME Type",
+                        "sling:resourceType": "sling-cms/components/editor/fields/text"
+                    },
+                    "licensing": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "required": false,
+                        "name": "jcr:content/licensing",
+                        "type": "text",
+                        "label": "Licensing",
+                        "sling:resourceType": "sling-cms/components/editor/fields/text"
+                    },
+                    "taxonomy": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "name": "jcr:content/sling:taxonomy",
+                        "label": "Taxonomy",
+                        "sling:resourceType": "sling-cms/components/editor/fields/taxonomy"
+                    },
+                    "taxonomyTypeHint": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "name": "jcr:content/sling:taxonomy@TypeHint",
+                        "value": "String[]",
+                        "sling:resourceType": "sling-cms/components/editor/fields/hidden"
+                    },
+                    "published": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "options": "Yes=true, No=false",
+                        "name": "jcr:content/published",
+                        "label": "Published",
+                        "sling:resourceType": "sling-cms/components/editor/fields/select"
+                    },
+                    "publishedTypeHint": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "name": "jcr:content/published@TypeHint",
+                        "value": "Boolean",
+                        "sling:resourceType": "sling-cms/components/editor/fields/hidden"
+                    }
+                }
+            }
+        }
+    },
+    "site": {
+        "jcr:primaryType": "sling:Config",
+        "sling:resourceType": "sling-cms/components/caconfig/site",
+        "jcr:title": "Default Site Configuration",
+        "rewrite": {
+            "jcr:primaryType": "nt:unstructured",
+            "doctype": "<!DOCTYPE html>",
+            "attributes": [
+                "action",
+                "href",
+                "src"
+            ]
+        },
+        "templates": {
+            "jcr:primaryType": "nt:unstructured",
+            "base-page": {
+                "jcr:primaryType": "nt:unstructured",
+                "jcr:title": "Base Page",
+                "template": "{\r\n  \"jcr:primaryType\": \"sling:Page\",\r\n  \"jcr:content\": {\r\n    \"jcr:primaryType\": \"nt:unstructured\",\r\n    \"jcr:title\": \"{{title}}\",\r\n    \"sling:template\": \"/conf/global/site/templates/base-page\",\r\n    \"sling:resourceType\": \"reference/components/pages/base\",\r\n    \"published\": false\r\n  }\r\n}",
+                "availableComponentTypes": [
+                    "General"
+                ],
+                "allowedPaths": [
+                    "/content/apache/sling-apache-org.*"
+                ],
+                "sling:resourceType": "sling-cms/components/cms/pagetemplate",
+                "fields": {
+                    "jcr:primaryType": "nt:unstructured",
+                    "text": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "required": true,
+                        "name": "title",
+                        "type": "text",
+                        "label": "Title",
+                        "sling:resourceType": "sling-cms/components/editor/fields/text"
+                    },
+                    "text_1147023191": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "required": true,
+                        "name": ":name",
+                        "type": "text",
+                        "label": "Name",
+                        "sling:resourceType": "sling-cms/components/editor/fields/text"
+                    }
+                },
+                "componentConfigurations": {
+                    "jcr:primaryType": "nt:unstructured",
+                    "componentconfig": {
+                        "jcr:primaryType": "nt:unstructured",
+                        "type": "reference/components/general/columncontrol",
+                        "containerclass": "container",
+                        "columns": [
+                            "50-50=col-md-6 col-md-6",
+                            "100=col-md-12"
+                        ],
+                        "sling:resourceType": "sling-cms/components/caconfig/component"
+                    }
+                }
+            }
+        }
+    }
 }
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig/componentconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component/component.jsp
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig/componentconfig.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component/component.jsp
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component/edit.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/componentconfig/edit.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/component/edit.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/editconfig/editconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/edit/edit.jsp
similarity index 100%
copy from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/editconfig/editconfig.jsp
copy to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/edit/edit.jsp
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/config/config.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/config/config.jsp
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/config/config.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/config/config.jsp
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/config/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/config/edit.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/config/edit.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/config/edit.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/fileeditorconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/fileeditor.jsp
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/fileeditorconfig/fileeditorconfig.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/fileeditor/fileeditor.jsp
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/rewriterconfig/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/rewriter/edit.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/rewriterconfig/edit.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/rewriter/edit.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/rewriterconfig/rewriterconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/rewriter/rewriter.jsp
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/rewriterconfig/rewriterconfig.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/rewriter/rewriter.jsp
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/siteconfig.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/site.json
similarity index 100%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/siteconfig.json
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/site.json
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/siteconfig/siteconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/site/site.jsp
similarity index 84%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/siteconfig/siteconfig.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/site/site.jsp
index a0ca814..fb309a3 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/siteconfig/siteconfig.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/site/site.jsp
@@ -21,7 +21,9 @@
  <c:set var="cmsEditEnabled" value="true" scope="request" />
 <sling:call script="/libs/sling-cms/components/editor/scripts/init.jsp" />
 
-<sling:include path="${slingRequest.requestPathInfo.suffix}/rewrite" resourceType="sling-cms/components/cms/rewriterconfig" />
+<sling:include path="${slingRequest.requestPathInfo.suffix}/settings" resourceType="sling-cms/components/caconfig/sitesettings" />
+
+<sling:include path="${slingRequest.requestPathInfo.suffix}/rewrite" resourceType="sling-cms/components/caconfig/rewriter" />
 
 <sling:call script="/libs/sling-cms/components/editor/scripts/finalize.jsp" />
 <c:set var="cmsEditEnabled" value="false" scope="request" />
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/edit.json
new file mode 100644
index 0000000..a1232cf
--- /dev/null
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/edit.json
@@ -0,0 +1,19 @@
+ {
+    "jcr:primaryType": "nt:unstructured",
+    "sling:resourceType": "sling-cms/components/editor/slingform",
+    "button": "Save Site Settings",
+    "fields": {
+        "jcr:primaryType": "nt:unstructured",
+        "sling:resourceType": "sling-cms/components/general/container",
+        "taxonomyroot": {
+            "jcr:primaryType": "nt:unstructured",
+            "sling:resourceType": "sling-cms/components/editor/fields/path",
+            "label": "Taxonomy Root",
+            "name": "taxonomyroot",
+            "hidesearch": true,
+            "basePath": "/etc/taxonomy",
+            "type": "sling:Taxonomy",
+            "required": true
+        }
+    }
+}
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/editconfig/editconfig.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/sitesettings.jsp
similarity index 80%
rename from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/editconfig/editconfig.jsp
rename to ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/sitesettings.jsp
index 69e44fa..3fe200d 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/editconfig/editconfig.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/caconfig/sitesettings/sitesettings.jsp
@@ -16,7 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:if test="${slingRequest.requestPathInfo.suffixResource != null}">
-    <sling:include resource="${slingRequest.requestPathInfo.suffixResource}" />
-</c:if>
\ No newline at end of file
+ <%@include file="/libs/sling-cms/global.jsp"%>
+<h3>Site Settings</h3>
+<dl>
+    <dt>Taxonomy Root</dt>
+    <dd>
+        ${properties.taxonomyroot}
+    </dd>
+</dl>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/taxonomy/field.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/taxonomy/field.jsp
index d68fd58..0c4d7c3 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/taxonomy/field.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/editor/fields/taxonomy/field.jsp
@@ -18,39 +18,41 @@
  */ --%>
  <%@include file="/libs/sling-cms/global.jsp"%>
  <div class="taxonomy">
- 	<fieldset disabled="disabled" class="taxonomy__template is-hidden">
- 		<a class="button taxonomy__item">
-			<input type="hidden" name="${properties.name}" value="" />
-			<span class="taxonomy__title">
-			</span>
-			<span class="jam jam-close"></span>
-		</a>
- 	</fieldset>
-	<div class="taxonomy__field field has-addons">
-		<div class="control is-expanded">
- 			<input class="input" type="text" ${required} ${disabled} list="taxonomy-${fn:replace(resource.name,':','-')}" autocomplete="off" />
- 		</div>
- 		<div class="control">
-	 		<button class="taxonomy__add button">
-	 			<span class="jam jam-plus"></span>
-	 		</button>
-	 	</div>
- 	</div>
- 	<div class="taxonomy__container">
- 		<c:forEach var="item" items="${editProperties[properties.name]}">
- 			<a class="button taxonomy__item">
- 				<input type="hidden" name="${properties.name}" value="${item}" />
- 				<span class="taxonomy__title">
- 					${sling:encode(sling:getResource(resourceResolver,item).valueMap['jcr:title'],'HTML')}
- 				</span>
- 				<span class="jam jam-close"></span>
- 			</a>
- 		</c:forEach>
- 	</div>
-	<datalist id="taxonomy-${fn:replace(resource.name,':','-')}">
-		<c:set var="query" value="SELECT * FROM [sling:Taxonomy] WHERE ISDESCENDANTNODE([${not empty properties.basePath ? properties.basePath : '/etc/taxonomy'}])" />
-		<c:forEach var="taxonomy" items="${sling:findResources(resourceResolver,query,'JCR-SQL2')}">
-			<option value="${taxonomy.path}">${taxonomy.valueMap['jcr:title']}</option>
-		</c:forEach>
-	</datalist>
+     <fieldset disabled="disabled" class="taxonomy__template is-hidden">
+         <a class="button taxonomy__item">
+            <input type="hidden" name="${properties.name}" value="" />
+            <span class="taxonomy__title">
+            </span>
+            <span class="jam jam-close"></span>
+        </a>
+     </fieldset>
+    <div class="taxonomy__field field has-addons">
+        <div class="control is-expanded">
+             <input class="input" type="text" ${required} ${disabled} list="taxonomy-${fn:replace(resource.name,':','-')}" autocomplete="off" />
+         </div>
+         <div class="control">
+             <button class="taxonomy__add button">
+                 <span class="jam jam-plus"></span>
+             </button>
+         </div>
+     </div>
+     <div class="taxonomy__container">
+         <c:forEach var="item" items="${editProperties[properties.name]}">
+             <a class="button taxonomy__item">
+                 <input type="hidden" name="${properties.name}" value="${item}" />
+                 <span class="taxonomy__title">
+                     ${sling:encode(sling:getResource(resourceResolver,item).valueMap['jcr:title'],'HTML')}
+                 </span>
+                 <span class="jam jam-close"></span>
+             </a>
+         </c:forEach>
+     </div>
+     
+    <sling:getCAConfigResource resource="${slingRequest.requestPathInfo.suffixResource}" bucket="site" name="settings" var="sitesettings" />
+    <datalist id="taxonomy-${fn:replace(resource.name,':','-')}">
+        <c:set var="query" value="SELECT * FROM [sling:Taxonomy] WHERE ISDESCENDANTNODE([${not empty properties.basePath ? properties.basePath : sitesettings.valueMap.taxonomyroot}])" />
+        <c:forEach var="taxonomy" items="${sling:findResources(resourceResolver,query,'JCR-SQL2')}">
+            <option value="${taxonomy.path}">${taxonomy.valueMap['jcr:title']}</option>
+        </c:forEach>
+    </datalist>
 </div>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/edit.json
index 7f552c3..7c21313 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/edit.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/edit.json
@@ -20,7 +20,7 @@
             },
             "editconfig": {
                 "jcr:primaryType": "nt:unstructured",
-                "sling:resourceType": "sling-cms/components/cms/editconfig"
+                "sling:resourceType": "sling-cms/components/caconfig/edit"
             }
         }
     }