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 2019/12/19 21:09:56 UTC
[sling-org-apache-sling-app-cms] 09/17: SLING-7900 UI Updates
This is an automated email from the ASF dual-hosted git repository.
dklco pushed a commit to branch SLING-7900
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git
commit 3b977b1fd5325d74b2a021c8f11e9848caf89e91
Author: Jason E Bailey <je...@apache.org>
AuthorDate: Fri Sep 14 16:19:46 2018 -0400
SLING-7900 UI Updates
formatting updates
separated actions from views
testing breadcrumb/menu integration
---
core/pom.xml | 6 +
.../apache/sling/cms/core/models/BaseModel.java | 86 ++++++
.../{AvailableActions.java => Action.java} | 62 +++--
.../{AvailableActions.java => Actions.java} | 95 +++----
.../cms/core/models/components/Breadcrumbs.java | 40 +--
.../cms/core/models/components/ContentTable.java | 7 +-
.../models/components/column/LastModified.java | 63 +++++
.../cms/core/models/components/column/Name.java | 37 +++
ui/pom.xml | 2 +-
ui/src/main/resources/jcr_root/conf/global.json | 276 +++++++++----------
ui/src/main/resources/jcr_root/content.json | 7 -
.../content/sling-cms/errorhandling/401.json | 34 +--
.../content/sling-cms/errorhandling/403.json | 34 +--
.../content/sling-cms/errorhandling/404.json | 34 +--
.../content/sling-cms/errorhandling/default.json | 34 +--
.../jcr_root/libs/sling-cms/actions/nt%3Afile.json | 7 +-
.../{sling%3ASite.json => sling%3AConfig.json} | 10 +-
.../libs/sling-cms/actions/sling%3AFile.json | 7 +-
.../libs/sling-cms/actions/sling%3AFolder.json | 4 +-
.../libs/sling-cms/actions/sling%3AMapping.json | 1 +
.../sling-cms/actions/sling%3AOrderedFolder.json | 6 +-
.../libs/sling-cms/actions/sling%3APage.json | 3 +-
.../libs/sling-cms/actions/sling%3ASite.json | 4 +-
.../{sling%3AFolder.json => sling%3ATaxonomy.json} | 9 +-
.../name.jsp => breadcrumbmenu/breadcrumbmenu.jsp} | 24 +-
.../components/cms/breadcrumbmenu/edit.json | 31 +++
.../components/cms/columns/actions/actions.jsp | 35 +--
.../cms/columns/lastmodified/lastmodified.jsp | 10 +-
.../sling-cms/components/cms/columns/name/name.jsp | 5 +-
.../cms/contentactions/contentactions.jsp | 32 ++-
.../name/name.jsp => resource/action/action.jsp} | 22 +-
.../components/cms/staticnav/staticnav.jsp | 6 +-
.../libs/sling-cms/components/pages/base/nav.jsp | 1 -
.../sling-cms/content/actions/create/config.json | 5 -
.../content/actions/create/sitegroup.json | 129 +++++----
.../sling-cms/content/actions/create/taxonomy.json | 5 -
.../sling-cms/content/actions/create/template.json | 5 -
.../libs/sling-cms/content/actions/edit/site.json | 121 ++++----
.../sling-cms/content/actions/edit/sitegroup.json | 5 -
.../sling-cms/content/actions/edit/taxonomy.json | 2 +-
.../content/actions/optimize/optimize.json | 7 +-
.../libs/sling-cms/content/config/edit.json | 46 ++--
.../libs/sling-cms/content/config/list.json | 12 +-
.../libs/sling-cms/content/mappings/list.json | 304 ++++++++++-----------
.../libs/sling-cms/content/site/content.json | 11 +-
.../libs/sling-cms/content/site/sites.json | 21 +-
.../libs/sling-cms/content/siteconfig/editor.json | 71 ++---
.../libs/sling-cms/content/static/content.json | 9 +-
.../libs/sling-cms/content/taxonomy/list.json | 24 +-
49 files changed, 960 insertions(+), 851 deletions(-)
diff --git a/core/pom.xml b/core/pom.xml
index d936bb1..2b20be9 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -185,6 +185,12 @@
<artifactId>org.apache.sling.cms.api</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.xss</artifactId>
+ <scope>provided</scope>
+ <version>2.0.0</version>
+ </dependency>
</dependencies>
<properties>
<sling.java.version>8</sling.java.version>
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/BaseModel.java b/core/src/main/java/org/apache/sling/cms/core/models/BaseModel.java
new file mode 100644
index 0000000..fa07fee
--- /dev/null
+++ b/core/src/main/java/org/apache/sling/cms/core/models/BaseModel.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.sling.cms.core.models;
+
+import javax.annotation.PostConstruct;
+import javax.inject.Inject;
+
+import org.apache.sling.api.SlingHttpServletRequest;
+import org.apache.sling.api.resource.Resource;
+import org.apache.sling.api.resource.ValueMap;
+import org.apache.sling.models.annotations.DefaultInjectionStrategy;
+import org.apache.sling.models.annotations.Model;
+import org.apache.sling.models.annotations.injectorspecific.OSGiService;
+import org.apache.sling.models.annotations.injectorspecific.Self;
+import org.apache.sling.xss.XSSAPI;
+
+@Model(adaptables = { SlingHttpServletRequest.class,
+ Resource.class }, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
+public class BaseModel {
+
+ @OSGiService
+ public XSSAPI xss;
+
+ @Inject
+ @Self
+ public Resource resource;
+
+ @Inject
+ @Self
+ public SlingHttpServletRequest slingRequest;
+
+ private ValueMap valueMap;
+
+ @PostConstruct
+ public void baseResourceModel() {
+ if (resource == null) {
+ resource = slingRequest.getResource();
+ }
+ valueMap = resource.getValueMap();
+ }
+
+ /**
+ * Convenience method for scripting languages such as the JSP EL.
+ *
+ * @param key
+ * @return
+ */
+ public String get(String key) {
+ return valueMap.get(key, "");
+ }
+
+ /**
+ * Convenience method for scripting languages such as the JSP EL.
+ *
+ * @param key
+ * @return
+ */
+ public <T> T get(String key, T def) {
+ return valueMap.get(key, def);
+ }
+
+ /**
+ * Convenience method for scripting languages such as the JSP EL.
+ *
+ * @param key
+ * @return
+ */
+ public <T> T get(String key, Class<T> def) {
+ return valueMap.get(key, def);
+ }
+
+}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java b/core/src/main/java/org/apache/sling/cms/core/models/components/Action.java
similarity index 50%
copy from core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java
copy to core/src/main/java/org/apache/sling/cms/core/models/components/Action.java
index 13e4770..bde08fe 100644
--- a/core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/Action.java
@@ -16,37 +16,53 @@
*/
package org.apache.sling.cms.core.models.components;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-
+import javax.annotation.PostConstruct;
import javax.inject.Inject;
-import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.cms.core.models.BaseModel;
import org.apache.sling.models.annotations.DefaultInjectionStrategy;
import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.injectorspecific.Self;
-@Model(adaptables = SlingHttpServletRequest.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
-public class AvailableActions {
+@Model(adaptables = Resource.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
+public class Action extends BaseModel {
+
+ @Inject
+ boolean modal;
@Inject
- @Self
- SlingHttpServletRequest slingRequest;
-
- public List<Resource> getChildren() {
- System.out.println(slingRequest.getContextPath());
- System.out.println(slingRequest.getResource().getPath());
- String type = slingRequest.getResource().getValueMap().get("jcr:primaryType", "sling:File");
- System.out.println(type);
- Resource resource = slingRequest.getResourceResolver().resolve("/libs/sling-cms/actions/"+type);
-
- List<Resource> list = new ArrayList<>();
- resource.listChildren().forEachRemaining(list::add);
- System.out.println(list.toString());
- return list;
+ boolean target;
+
+ @PostConstruct
+ public void init() {
+ System.out.println("here");
+ }
+
+ public String getClasses() {
+ String response = "button";
+ if (modal) {
+ response += " Fetch-Modal";
+ }
+ return response;
+ }
+
+ public String getTitle() {
+ return xss.encodeForHTMLAttr(get("title"));
+ }
+
+ public String getDataPath() {
+ return get("ajaxPath", ".Main-Content form");
+ }
+
+ public String getIcon() {
+ return String.format("jam jam-%s", get("icon", "file"));
+ }
+
+ public String getTarget() {
+ if (target) {
+ return "target='_blank'";
+ }
+ return "";
}
}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java b/core/src/main/java/org/apache/sling/cms/core/models/components/Actions.java
similarity index 68%
rename from core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java
rename to core/src/main/java/org/apache/sling/cms/core/models/components/Actions.java
index 13e4770..067c078 100644
--- a/core/src/main/java/org/apache/sling/cms/core/models/components/AvailableActions.java
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/Actions.java
@@ -1,52 +1,43 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.sling.cms.core.models.components;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-
-import javax.inject.Inject;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.DefaultInjectionStrategy;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.injectorspecific.Self;
-
-@Model(adaptables = SlingHttpServletRequest.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
-public class AvailableActions {
-
- @Inject
- @Self
- SlingHttpServletRequest slingRequest;
-
- public List<Resource> getChildren() {
- System.out.println(slingRequest.getContextPath());
- System.out.println(slingRequest.getResource().getPath());
- String type = slingRequest.getResource().getValueMap().get("jcr:primaryType", "sling:File");
- System.out.println(type);
- Resource resource = slingRequest.getResourceResolver().resolve("/libs/sling-cms/actions/"+type);
-
- List<Resource> list = new ArrayList<>();
- resource.listChildren().forEachRemaining(list::add);
- System.out.println(list.toString());
- return list;
- }
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.sling.cms.core.models.components;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.inject.Inject;
+
+import org.apache.sling.api.SlingHttpServletRequest;
+import org.apache.sling.api.resource.Resource;
+import org.apache.sling.cms.core.models.BaseModel;
+import org.apache.sling.models.annotations.DefaultInjectionStrategy;
+import org.apache.sling.models.annotations.Model;
+import org.apache.sling.models.annotations.injectorspecific.Self;
+
+@Model(adaptables = SlingHttpServletRequest.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
+public class Actions extends BaseModel {
+
+
+ public List<Resource> getChildren() {
+ String type = get("jcr:primaryType", "sling:File");
+ Resource target = slingRequest.getResourceResolver().resolve("/libs/sling-cms/actions/"+type);
+ List<Resource> list = new ArrayList<>();
+ target.listChildren().forEachRemaining(list::add);
+ return list;
+ }
+
+}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/Breadcrumbs.java b/core/src/main/java/org/apache/sling/cms/core/models/components/Breadcrumbs.java
index c4abe0c..d119638 100644
--- a/core/src/main/java/org/apache/sling/cms/core/models/components/Breadcrumbs.java
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/Breadcrumbs.java
@@ -25,11 +25,13 @@ import javax.inject.Inject;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
+import org.apache.sling.cms.core.models.BaseModel;
import org.apache.sling.models.annotations.Default;
import org.apache.sling.models.annotations.DefaultInjectionStrategy;
import org.apache.sling.models.annotations.Model;
import org.apache.sling.models.annotations.Via;
import org.apache.sling.models.annotations.injectorspecific.Self;
+
/**
* Logic for the Suffix BreadCrumb Component
*
@@ -37,43 +39,34 @@ import org.apache.sling.models.annotations.injectorspecific.Self;
*
*/
@Model(adaptables = SlingHttpServletRequest.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
-public class Breadcrumbs {
+public class Breadcrumbs extends BaseModel {
@Inject
@Via("resource")
- @Default(intValues=1)
+ @Default(intValues = 2)
int depth;
- @Inject
- Resource resource;
-
- @Inject
- @Via("resource")
- @Default(values="../..")
- String prefix;
@Inject
@Via("resource")
@Default(values = "jcr:title")
String titleProp;
- @Self
- SlingHttpServletRequest servletRequest;
-
Resource suffixResource;
List<PathData> pathData = new ArrayList<>();
@PostConstruct
public void postConstruct() {
- suffixResource = servletRequest.getRequestPathInfo().getSuffixResource();
+ suffixResource = slingRequest.getRequestPathInfo().getSuffixResource();
if (suffixResource == null) {
return;
}
+ String prefix = slingRequest.getPathInfo();
boolean first = true;
while (suffixResource.getParent() != null) {
String suffix = suffixResource.getPath();
- pathData.add(0, new PathData(prefix + suffix, getTitle(suffixResource),first));
+ pathData.add(0, new PathData(suffix, prefix + getTitle(suffixResource), first));
if (first) {
first = false;
}
@@ -85,22 +78,17 @@ public class Breadcrumbs {
}
private String getTitle(Resource resource) {
- ValueMap map = resource.getValueMap();
- String title = map.get("jcr:title", String.class);
+ String title = get("jcr:title", String.class);
if (title != null) {
return title;
}
- title = map.get("jcr:content/jcr:title", String.class);
+ title = get("jcr:content/jcr:title", String.class);
if (title != null) {
return title;
}
return resource.getName();
}
- public String getTitle() {
- return null;
- }
-
public List<PathData> getPathData() {
return pathData;
}
@@ -114,7 +102,7 @@ public class Breadcrumbs {
public PathData(String href, String title, boolean first) {
this.href = href;
this.title = title;
- this.first= first;
+ this.first = first;
}
public String getHref() {
@@ -126,21 +114,19 @@ public class Breadcrumbs {
public String getTitle() {
return title;
}
-
+
public String getAria() {
if (first) {
return "aria-current='page'";
}
return "";
}
-
+
public String getClassAttr() {
if (first) {
- return "class='is-active'";
+ return "class='has-background-grey-lighter'";
}
return "";
}
-
}
-
}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/ContentTable.java b/core/src/main/java/org/apache/sling/cms/core/models/components/ContentTable.java
index cbd611e..fb72f28 100644
--- a/core/src/main/java/org/apache/sling/cms/core/models/components/ContentTable.java
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/ContentTable.java
@@ -27,14 +27,14 @@ import javax.inject.Inject;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
+import org.apache.sling.cms.core.models.BaseModel;
import org.apache.sling.models.annotations.Default;
import org.apache.sling.models.annotations.DefaultInjectionStrategy;
import org.apache.sling.models.annotations.Model;
import org.apache.sling.models.annotations.Via;
-import org.apache.sling.models.annotations.injectorspecific.Self;
@Model(adaptables = SlingHttpServletRequest.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
-public class ContentTable {
+public class ContentTable extends BaseModel {
@Inject
@Via("resource")
@@ -47,12 +47,9 @@ public class ContentTable {
private String[] types;
- @Self
- SlingHttpServletRequest slingRequest;
@PostConstruct
public void init() {
- Resource resource = slingRequest.getResource();
ValueMap data = resource.getChild("columns").getValueMap();
types = data.get("resourceTypes", new String[]{});
}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/column/LastModified.java b/core/src/main/java/org/apache/sling/cms/core/models/components/column/LastModified.java
new file mode 100644
index 0000000..ab653b3
--- /dev/null
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/column/LastModified.java
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.sling.cms.core.models.components.column;
+
+import java.util.Calendar;
+
+import javax.annotation.PostConstruct;
+
+import org.apache.sling.api.resource.Resource;
+import org.apache.sling.cms.core.models.BaseModel;
+import org.apache.sling.models.annotations.DefaultInjectionStrategy;
+import org.apache.sling.models.annotations.Model;
+
+@Model(adaptables = Resource.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
+public class LastModified extends BaseModel {
+
+ private String subPath = "";
+
+ @PostConstruct
+ private void init() {
+ if (resource.getChild("jcr:content") != null) {
+ subPath = "jcr:content/";
+ }
+ }
+
+ public String getLastModified() {
+ Calendar cal = get(subPath +"jcr:lastModified",Calendar.class);
+ if (cal == null) {
+ cal = get(subPath +"jcr:created",Calendar.class);
+ if (cal == null) {
+ return "";
+ }
+ }
+ return xss.encodeForHTML(cal.getTime().toString());
+ }
+
+ public String getLastModifiedBy() {
+ String name = get(subPath+"jcr:lastModifiedBy",String.class);
+ if (name == null) {
+ name = get(subPath+"jcr:createdBy","");
+ }
+ return xss.encodeForHTML(name);
+ }
+
+ public String getTitle() {
+ return getLastModified()+" - " + getLastModifiedBy();
+ }
+
+}
diff --git a/core/src/main/java/org/apache/sling/cms/core/models/components/column/Name.java b/core/src/main/java/org/apache/sling/cms/core/models/components/column/Name.java
new file mode 100644
index 0000000..92f140f
--- /dev/null
+++ b/core/src/main/java/org/apache/sling/cms/core/models/components/column/Name.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.sling.cms.core.models.components.column;
+
+import org.apache.sling.api.resource.Resource;
+import org.apache.sling.cms.core.models.BaseModel;
+import org.apache.sling.models.annotations.DefaultInjectionStrategy;
+import org.apache.sling.models.annotations.Model;
+
+@Model(adaptables = Resource.class, defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
+public class Name extends BaseModel {
+
+ public String getIcon() {
+ if (resource.isResourceType("nt:file")) {
+ return "document";
+ }
+ if (resource.isResourceType("nt:folder")) {
+ return "folder";
+ }
+ return "link";
+ }
+
+}
diff --git a/ui/pom.xml b/ui/pom.xml
index 4a031e4..662a292 100644
--- a/ui/pom.xml
+++ b/ui/pom.xml
@@ -121,7 +121,7 @@
<pluginExecutionFilter>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
- <versionRange>[1.0.0,)</versionRange>
+ <versionRange>[1.6.0,)</versionRange>
<goals>
<goal>install-node-and-npm</goal>
<goal>npm</goal>
diff --git a/ui/src/main/resources/jcr_root/conf/global.json b/ui/src/main/resources/jcr_root/conf/global.json
index 37e62ed..12f7383 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/apache-sling-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"
- }
- }
- }
- }
- }
-}
\ No newline at end of file
+ "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/apache-sling-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"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/content.json b/ui/src/main/resources/jcr_root/content.json
deleted file mode 100644
index 0f29c12..0000000
--- a/ui/src/main/resources/jcr_root/content.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "jcr:primaryType": "sling:Folder",
- "allowedResourceTypes": [
- "sling:Site",
- "sling:OrderedFolder"
- ]
-}
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/401.json b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/401.json
index ce41d15..7ed027a 100644
--- a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/401.json
+++ b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/401.json
@@ -1,18 +1,18 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/error",
- "jcr:title": "Unauthorized",
- "jcr:primaryType": "nt:unstructured",
- "center": true,
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Unauthorized</h3><p>You cannot access the requested resource.</p><p><a href=\"/system/sling/form/login\">Login?</a>"
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/error",
+ "jcr:title": "Unauthorized",
+ "jcr:primaryType": "nt:unstructured",
+ "center": true,
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h3>Unauthorized</h3><p>You cannot access the requested resource.</p><p><a href=\"/system/sling/form/login\">Login?</a>"
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/403.json b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/403.json
index e7685a3..c29719c 100644
--- a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/403.json
+++ b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/403.json
@@ -1,18 +1,18 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/error",
- "jcr:title": "Forbidden",
- "jcr:primaryType": "nt:unstructured",
- "center": true,
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Forbidden</h3><p>You cannot access the requested resource.</p><p><a href=\"/system/sling/form/login\">Login?</a>"
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/error",
+ "jcr:title": "Forbidden",
+ "jcr:primaryType": "nt:unstructured",
+ "center": true,
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h3>Forbidden</h3><p>You cannot access the requested resource.</p><p><a href=\"/system/sling/form/login\">Login?</a>"
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/404.json b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/404.json
index 5faf31a..7a2acaf 100644
--- a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/404.json
+++ b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/404.json
@@ -1,18 +1,18 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/error",
- "jcr:title": "Not Found",
- "jcr:primaryType": "nt:unstructured",
- "center": true,
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Not Found</h3><p>The requested content was not found.</p>"
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/error",
+ "jcr:title": "Not Found",
+ "jcr:primaryType": "nt:unstructured",
+ "center": true,
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h3>Not Found</h3><p>The requested content was not found.</p>"
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/default.json b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/default.json
index da21f25..7d25e3c 100644
--- a/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/default.json
+++ b/ui/src/main/resources/jcr_root/content/sling-cms/errorhandling/default.json
@@ -1,18 +1,18 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/error",
- "jcr:title": "Exception",
- "jcr:primaryType": "nt:unstructured",
- "center": true,
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Unexpected Exception</h3><p>An unexpected exception occurred rendering the response.</p>"
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/error",
+ "jcr:title": "Exception",
+ "jcr:primaryType": "nt:unstructured",
+ "center": true,
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h3>Unexpected Exception</h3><p>An unexpected exception occurred rendering the response.</p>"
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/nt%3Afile.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/nt%3Afile.json
index fc1963a..4f42e3f 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/nt%3Afile.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/nt%3Afile.json
@@ -1,11 +1,11 @@
{
"jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
"title": "Edit File",
"icon": "pencil-f",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/edit/file.html"
},
"optimize": {
@@ -13,12 +13,14 @@
"modal": false,
"title": "Optimize File",
"icon": "archive",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/optimize/file.html"
},
"download": {
"jcr:primaryType": "nt:unstructured",
"modal": false,
"title": "Download file",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"icon": "download"
},
"movecopy": {
@@ -26,6 +28,7 @@
"modal": true,
"title": "Move / Copy File",
"icon": "move-alt",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/movecopy.html"
},
"version": {
@@ -34,6 +37,7 @@
"modal": true,
"title": "Manage Versions",
"icon": "history",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/versions.html"
},
"delete": {
@@ -41,6 +45,7 @@
"modal": true,
"title": "Delete File",
"icon": "trash",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/delete.html"
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AConfig.json
similarity index 69%
copy from ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json
copy to ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AConfig.json
index 7a92041..14badd1 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AConfig.json
@@ -1,23 +1,23 @@
{
- "jcr:resourceType": "nt:unstructured",
+ "jcr:primaryType": "nt:unstructured",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Edit Site",
+ "title": "Edit Site Config",
"icon": "pencil-f",
- "prefix": "/cms/action/edit/site.html"
+ "prefix": "/cms/config/metadata.html"
},
"movecopy": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Move / Copy Site",
+ "title": "Move / Copy Config",
"icon": "move-alt",
"prefix": "/cms/actions/shared/movecopy.html"
},
"delete": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Delete the specified site",
+ "title": "Delete Site Config",
"icon": "trash",
"prefix": "/cms/actions/shared/delete.html"
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFile.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFile.json
index fc1963a..4f42e3f 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFile.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFile.json
@@ -1,11 +1,11 @@
{
"jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
"title": "Edit File",
"icon": "pencil-f",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/edit/file.html"
},
"optimize": {
@@ -13,12 +13,14 @@
"modal": false,
"title": "Optimize File",
"icon": "archive",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/optimize/file.html"
},
"download": {
"jcr:primaryType": "nt:unstructured",
"modal": false,
"title": "Download file",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"icon": "download"
},
"movecopy": {
@@ -26,6 +28,7 @@
"modal": true,
"title": "Move / Copy File",
"icon": "move-alt",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/movecopy.html"
},
"version": {
@@ -34,6 +37,7 @@
"modal": true,
"title": "Manage Versions",
"icon": "history",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/versions.html"
},
"delete": {
@@ -41,6 +45,7 @@
"modal": true,
"title": "Delete File",
"icon": "trash",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/delete.html"
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json
index f437acb..9067adc 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json
@@ -1,11 +1,11 @@
{
"jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
"title": "Edit Folder",
"icon": "pencil-f",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/edit/folder.html"
},
"movecopy": {
@@ -13,6 +13,7 @@
"modal": true,
"title": "Move / Copy Folder",
"icon": "move-alt",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/movecopy.html"
},
"delete": {
@@ -20,6 +21,7 @@
"modal": true,
"title": "Delete Folder",
"icon": "trash",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/delete.html"
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AMapping.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AMapping.json
new file mode 100644
index 0000000..9e26dfe
--- /dev/null
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AMapping.json
@@ -0,0 +1 @@
+{}
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AOrderedFolder.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AOrderedFolder.json
index 6a91288..b6f64a9 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AOrderedFolder.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AOrderedFolder.json
@@ -1,11 +1,11 @@
{
- "jcr:primartyType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
+ "jcr:primaryType": "nt:unstructured",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
"title": "Edit Site Group",
"icon": "pencil-f",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/edit/sitegroup.html"
},
"movecopy": {
@@ -13,12 +13,14 @@
"modal": true,
"title": "Move / Copy Site Group",
"icon": "move-alt",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/movecopy.html"
},
"delete": {
"jcr:primaryType": "nt:unstructured",
"title": "Delete Site Group",
"icon": "trash",
+ "sling:resourceType": "sling-cms/components/cms/resource/action",
"prefix": "/cms/actions/shared/delete.html",
"modal": true
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3APage.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3APage.json
index 356523e..369b7e5 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3APage.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3APage.json
@@ -1,4 +1,5 @@
{
+ "jcr:primaryType": "nt:unstructured",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": false,
@@ -31,7 +32,7 @@
"delete": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Delete the specified page",
+ "title": "Delete Page",
"icon": "trash",
"prefix": "/cms/shared/delete.html"
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json
index 7a92041..154e16a 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ASite.json
@@ -1,11 +1,11 @@
{
- "jcr:resourceType": "nt:unstructured",
+ "jcr:primaryType": "nt:unstructured",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
"title": "Edit Site",
"icon": "pencil-f",
- "prefix": "/cms/action/edit/site.html"
+ "prefix": "/cms/actions/edit/site.html"
},
"movecopy": {
"jcr:primaryType": "nt:unstructured",
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ATaxonomy.json
similarity index 69%
copy from ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json
copy to ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ATaxonomy.json
index f437acb..af5eec7 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3AFolder.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/actions/sling%3ATaxonomy.json
@@ -1,24 +1,23 @@
{
"jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
"edit": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Edit Folder",
+ "jcr:title": "Edit Taxonomy Item",
"icon": "pencil-f",
- "prefix": "/cms/actions/edit/folder.html"
+ "prefix": "/cms/actions/edit/taxonomy.html"
},
"movecopy": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Move / Copy Folder",
+ "jcr:title": "Move / Copy Taxonomy Item",
"icon": "move-alt",
"prefix": "/cms/actions/shared/movecopy.html"
},
"delete": {
"jcr:primaryType": "nt:unstructured",
"modal": true,
- "title": "Delete Folder",
+ "jcr:title": "Delete Taxonomy Item",
"icon": "trash",
"prefix": "/cms/actions/shared/delete.html"
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/breadcrumbmenu.jsp
similarity index 62%
copy from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
copy to ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/breadcrumbmenu.jsp
index 5455d56..309308c 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/breadcrumbmenu.jsp
@@ -16,16 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/ --%>
+<%@page import="org.apache.sling.models.factory.ModelFactory"%>
+<%@page import="org.apache.sling.cms.core.models.components.Breadcrumbs"%>
<%@include file="/libs/sling-cms/global.jsp"%>
-<td><c:set var="colValue" value="${resource.name}" /> <c:choose>
- <c:when test="${colConfig.valueMap.link}">
- <a class="has-text-primary"
- href="${colConfig.valueMap.prefix}${resource.path}">
- <span class="icon"><i class="jam jam-link"></i></span>
- <sling:encode value="${colValue}" mode="HTML" />
- </a>
- </c:when>
- <c:otherwise>
- <sling:encode value="${colValue}" mode="HTML" />
- </c:otherwise>
- </c:choose></td>
\ No newline at end of file
+<sling:adaptTo adaptable="${slingRequest}" adaptTo="org.apache.sling.cms.core.models.components.Breadcrumbs" var="model"/>
+<ul>
+ <c:forEach var="item" items="${model.pathData}">
+ <li>
+ <a href="${item.href}" ${item.aria} ${item.classAttr} >
+ <sling:encode value="${item.title}" mode="HTML" />
+ </a>
+ </li>
+ </c:forEach>
+</ul>
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/edit.json b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/edit.json
new file mode 100644
index 0000000..e5f0709
--- /dev/null
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/breadcrumbmenu/edit.json
@@ -0,0 +1,31 @@
+ {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/slingform",
+ "title": "Suffix BreadCrumb",
+ "button": "Save Suffix Breadcrumb",
+ "fields": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "level": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Depth",
+ "name": "depth",
+ "required": true,
+ "type": "number"
+ },
+ "levelTypeHint": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/hidden",
+ "name": "level@TypeHint",
+ "value": "Long"
+ },
+ "prefix": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Prefix",
+ "name": "prefix",
+ "required": true
+ }
+ }
+}
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/actions/actions.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/actions/actions.jsp
index 116cea6..8499f32 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/actions/actions.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/actions/actions.jsp
@@ -17,29 +17,12 @@
* under the License.
*/ --%>
<%@include file="/libs/sling-cms/global.jsp"%>
-<td class="is-hidden cell-actions">
-<sling:adaptTo adaptable="${slingRequest}"
- adaptTo="org.apache.sling.cms.core.models.components.AvailableActions" var="model" />
-<c:forEach var="child" items="${model.children}">
- <c:choose>
- <c:when test="${child.valueMap.modal}">
- <a class="button Fetch-Modal"
- data-title="${sling:encode(child.valueMap.title,'HTML_ATTR')}"
- data-path="${child.valueMap.ajaxPath != null ? actionConfig.valueMap.ajaxPath : '.Main-Content form'}"
- href="${child.valueMap.prefix}${resource.path}"
- title="${sling:encode(child.valueMap.title,'HTML_ATTR')}">
- <span class="jam jam-${child.valueMap.icon}">
- </span>
- </a>
- </c:when>
- <c:otherwise>
- <a class="button"
- ${child.valueMap.new != false ? 'target="_blank"' : ''}
- href="${child.valueMap.prefix}${resource.path}"
- title="${sling:encode(child.valueMap.title,'HTML_ATTR')}">
- <span class="jam jam-${child.valueMap.icon}">
- </span>
- </a>
- </c:otherwise>
- </c:choose>
- </c:forEach></td>
\ No newline at end of file
+<td class="is-hidden cell-actions"><sling:adaptTo
+ adaptable="${slingRequest}"
+ adaptTo="org.apache.sling.cms.core.models.components.Actions"
+ var="model"
+ /> <c:set var="colResource" value="${resource}" scope="request" />
+ <c:forEach var="child" items="${model.children}">
+ <sling:include resource="${child}" resourceType="sling-cms/components/cms/resource/action" />
+ </c:forEach>
+</td>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/lastmodified/lastmodified.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/lastmodified/lastmodified.jsp
index 2811532..71d647e 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/lastmodified/lastmodified.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/lastmodified/lastmodified.jsp
@@ -17,11 +17,9 @@
* under the License.
*/ --%>
<%@include file="/libs/sling-cms/global.jsp"%>
-<c:set var="modifiedProperty" value="${colConfig.valueMap.subPath}jcr:lastModified" />
-<c:set var="modifiedByProperty" value="${colConfig.valueMap.subPath}jcr:lastModifiedBy" />
-<fmt:formatDate var="lastModified" type = "both" dateStyle = "medium" timeStyle = "medium" value="${resource.valueMap[modifiedProperty].time}" />
+<sling:adaptTo adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.components.column.LastModified" var="model" />
+
<c:set var="colValue" value="${lastModified} - ${resource.valueMap[modifiedByProperty]}" />
-<td title="${sling:encode(colValue,'HTML_ATTR')}">
- <sling:encode value="${lastModified}" mode="HTML" /><br/>
- <sling:encode value="${resource.valueMap[modifiedByProperty]}" mode="HTML" />
+<td title="${model.title}">
+ ${model.lastModified}<br/>${model.lastModifiedBy}
</td>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
index 5455d56..41e5ae3 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
@@ -17,11 +17,14 @@
* under the License.
*/ --%>
<%@include file="/libs/sling-cms/global.jsp"%>
+<sling:adaptTo adaptable="${resource}"
+ adaptTo="org.apache.sling.cms.core.models.components.column.Name"
+ var="model" />
<td><c:set var="colValue" value="${resource.name}" /> <c:choose>
<c:when test="${colConfig.valueMap.link}">
<a class="has-text-primary"
href="${colConfig.valueMap.prefix}${resource.path}">
- <span class="icon"><i class="jam jam-link"></i></span>
+ <span class="icon"><i class="jam jam-${model.icon}"></i></span>
<sling:encode value="${colValue}" mode="HTML" />
</a>
</c:when>
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 5880c78..2644a3e 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
@@ -18,17 +18,23 @@
*/ --%>
<%@include file="/libs/sling-cms/global.jsp"%>
<nav class="level">
- <div class="level-left">
- <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>
- </c:forEach>
- </div>
- </div>
- <div class="level-item">
- <div class="buttons has-addons actions-target">
- </div>
- </div>
- </div>
+ <div class="level-left">
+ <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>
+ </c:forEach>
+ </div>
+ </div>
+ <div class="level-item">
+ <div class="buttons has-addons actions-target"></div>
+ </div>
+ </div>
</nav>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/resource/action/action.jsp
similarity index 62%
copy from ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
copy to ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/resource/action/action.jsp
index 5455d56..1bea8b5 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/columns/name/name.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/resource/action/action.jsp
@@ -17,15 +17,13 @@
* under the License.
*/ --%>
<%@include file="/libs/sling-cms/global.jsp"%>
-<td><c:set var="colValue" value="${resource.name}" /> <c:choose>
- <c:when test="${colConfig.valueMap.link}">
- <a class="has-text-primary"
- href="${colConfig.valueMap.prefix}${resource.path}">
- <span class="icon"><i class="jam jam-link"></i></span>
- <sling:encode value="${colValue}" mode="HTML" />
- </a>
- </c:when>
- <c:otherwise>
- <sling:encode value="${colValue}" mode="HTML" />
- </c:otherwise>
- </c:choose></td>
\ No newline at end of file
+<!-- modal -->
+<sling:adaptTo adaptable="${resource}"
+ adaptTo="org.apache.sling.cms.core.models.components.Action" var="model" />
+<a class="${model.classes}" data-title="${model.title}"
+ data-path="${model.dataPath}"
+ ${model.target}
+ href="${properties.prefix}${colResource.path}"
+ title="${model.title}">
+ <span class="jam jam-${model.icon}"> </span>
+</a>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/staticnav/staticnav.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/staticnav/staticnav.jsp
index 7d6f342..7c008f7 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/staticnav/staticnav.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/cms/staticnav/staticnav.jsp
@@ -27,7 +27,11 @@
</c:forEach>
<ul id="${fn:replace(properties.title,' ','-')}-nav" class="menu-list ${hidden}">
<c:forEach var="item" items="${sling:listChildren(sling:getRelativeResource(resource,'links'))}">
- <li class="${fn:startsWith(slingRequest.requestURI,item.valueMap.link) ? 'active' : ''}"><a href="${item.valueMap.link}">${item.valueMap.text}</a></li>
+ <li ><a href="${item.valueMap.link}"class="${fn:startsWith(slingRequest.requestURI,item.valueMap.link) ? 'is-active' : ''}">${item.valueMap.text}</a>
+ <c:if test="${fn:startsWith(slingRequest.requestURI,item.valueMap.link) }" >
+ <sling:include path="bread" resourceType="sling-cms/components/cms/breadcrumbmenu" />
+ </c:if>
+ </li>
</c:forEach>
</ul>
</div>
\ No newline at end of file
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/components/pages/base/nav.jsp b/ui/src/main/resources/jcr_root/libs/sling-cms/components/pages/base/nav.jsp
index e8ee431..2a6c5c5 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/components/pages/base/nav.jsp
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/components/pages/base/nav.jsp
@@ -24,7 +24,6 @@
</a>
<a href="/cms/start.html" class="navbar-item" title="CMS Home"><span class="icon"><i class="jam jam-home-f"></i></span></a>
<div class="navbar-item">
-<sling:include path="breadcrumb" resourceType="sling-cms/components/cms/contentbreadcrumb" />
</div>
<a role="button" class="navbar-burger" aria-label="menu" aria-expanded="false">
<span aria-hidden="true"></span>
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/config.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/config.json
index e08e63d..ae5f047 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/config.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/config.json
@@ -7,11 +7,6 @@
"container": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Create Site Config</h3>"
- },
"slingform": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/editor/slingform",
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/sitegroup.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/sitegroup.json
index 353affa..936d88a 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/sitegroup.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/sitegroup.json
@@ -1,68 +1,63 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/form",
- "jcr:title": "Create Folder",
- "jcr:primaryType": "nt:unstructured",
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Create Site Group</h3>"
- },
- "slingform": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/slingform",
- "actionSuffix": "/*",
- "button": "Create Site Group",
- "successPrepend": "/libs/sling-cms/content/site/content.html",
- "fields": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/text",
- "label": "Title",
- "name": "jcr:content/jcr:title",
- "required": true
- },
- "name": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/text",
- "label": "Name",
- "name": ":name"
- },
- "nameParam": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/hidden",
- "name": ":nameParam",
- "value": "jcr:content/jcr:title"
- },
- "config": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/path",
- "basePath": "/conf",
- "label": "Config",
- "name": "sling:configRef",
- "required": false,
- "type": "config"
- },
- "primaryType": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/hidden",
- "name": "jcr:primaryType",
- "value": "sling:OrderedFolder"
- },
- "contentPrimaryType": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/hidden",
- "name": "jcr:content/jcr:primaryType",
- "value": "nt:unstructured"
- }
- }
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/form",
+ "jcr:title": "Create Folder",
+ "jcr:primaryType": "nt:unstructured",
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "slingform": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/slingform",
+ "actionSuffix": "/*",
+ "button": "Create Site Group",
+ "successPrepend": "/libs/sling-cms/content/site/content.html",
+ "fields": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "title": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Title",
+ "name": "jcr:content/jcr:title",
+ "required": true
+ },
+ "name": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Name",
+ "name": ":name"
+ },
+ "nameParam": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/hidden",
+ "name": ":nameParam",
+ "value": "jcr:content/jcr:title"
+ },
+ "config": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/path",
+ "basePath": "/conf",
+ "label": "Config",
+ "name": "sling:configRef",
+ "required": false,
+ "type": "config"
+ },
+ "primaryType": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/hidden",
+ "name": "jcr:primaryType",
+ "value": "sling:OrderedFolder"
+ },
+ "contentPrimaryType": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/hidden",
+ "name": "jcr:content/jcr:primaryType",
+ "value": "nt:unstructured"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/taxonomy.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/taxonomy.json
index 5bb6b4f..49aabca 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/taxonomy.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/taxonomy.json
@@ -7,11 +7,6 @@
"container": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Create Taxonomy</h3>"
- },
"slingform": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/editor/slingform",
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/template.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/template.json
index 9a33987..d18f3d3 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/template.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/create/template.json
@@ -7,11 +7,6 @@
"container": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Create Template</h3>"
- },
"slingform": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/editor/slingform",
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/site.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/site.json
index ec528b8..e62680d 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/site.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/site.json
@@ -1,64 +1,59 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/form",
- "jcr:title": "Edit Site",
- "jcr:primaryType": "nt:unstructured",
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Edit Site</h3>"
- },
- "slingform": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/slingform",
- "button": "Save Changes",
- "fields": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/text",
- "label": "Title",
- "name": "jcr:title",
- "required": true
- },
- "description": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/textarea",
- "label": "Description",
- "name": "jcr:description",
- "required": false
- },
- "url": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/text",
- "label": "Primary URL",
- "name": "sling:url",
- "required": true
- },
- "locale": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/select",
- "label": "Language",
- "name": "jcr:language",
- "optionsScript": "/libs/sling-cms/components/editor/scripts/localeOptions.jsp",
- "required": true
- },
- "config": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/editor/fields/path",
- "basePath": "/conf",
- "label": "Config",
- "name": "sling:configRef",
- "required": false,
- "type": "config"
- }
- }
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/form",
+ "jcr:title": "Edit Site",
+ "jcr:primaryType": "nt:unstructured",
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "slingform": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/slingform",
+ "button": "Save Changes",
+ "fields": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "title": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Title",
+ "name": "jcr:title",
+ "required": true
+ },
+ "description": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/textarea",
+ "label": "Description",
+ "name": "jcr:description",
+ "required": false
+ },
+ "url": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/text",
+ "label": "Primary URL",
+ "name": "sling:url",
+ "required": true
+ },
+ "locale": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/select",
+ "label": "Language",
+ "name": "jcr:language",
+ "optionsScript": "/libs/sling-cms/components/editor/scripts/localeOptions.jsp",
+ "required": true
+ },
+ "config": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/editor/fields/path",
+ "basePath": "/conf",
+ "label": "Config",
+ "name": "sling:configRef",
+ "required": false,
+ "type": "config"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/sitegroup.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/sitegroup.json
index 93063f6..d61c3d2 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/sitegroup.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/sitegroup.json
@@ -7,11 +7,6 @@
"container": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Edit Site Group</h3>"
- },
"slingform": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/editor/slingform",
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/taxonomy.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/taxonomy.json
index f664ab9..59e3b47 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/taxonomy.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/edit/taxonomy.json
@@ -1,7 +1,7 @@
{
"jcr:primaryType": "sling:Page",
"jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/base",
+ "sling:resourceType": "sling-cms/components/pages/form",
"jcr:title": "Edit Taxonomy Item",
"jcr:primaryType": "nt:unstructured",
"container": {
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/optimize/optimize.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/optimize/optimize.json
index 5c92acd..eded2e9 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/optimize/optimize.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/actions/optimize/optimize.json
@@ -1,17 +1,12 @@
{
"jcr:primaryType": "sling:Page",
"jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/base",
+ "sling:resourceType": "sling-cms/components/pages/form",
"jcr:title": "Optimize File",
"jcr:primaryType": "nt:unstructured",
"container": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Optimize File</h3>"
- },
"slingform": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/optimizefile"
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 8e475ce..29af331 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
@@ -1,27 +1,21 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/base",
- "jcr:title": "Edit Configuration",
- "jcr:primaryType": "nt:unstructured",
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h2>Edit Configuration</h2>"
- },
- "contentbreadcrumb": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contentbreadcrumb",
- "depth": 2,
- "prefix": "/cms/config/list.html"
- },
- "editconfig": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/editconfig"
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/base",
+ "jcr:title": "Edit Configuration",
+ "jcr:primaryType": "nt:unstructured",
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h2>Edit Configuration</h2>"
+ },
+ "editconfig": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/editconfig"
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/list.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/list.json
index bd7dda8..11809a1 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/list.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/config/list.json
@@ -14,12 +14,12 @@
"folder": {
"jcr:primaryType": "nt:unstructured",
"label": "Folder",
- "prefix": "/cms/folder/create.html"
+ "prefix": "/cms/actions/create/folder.html"
},
"config": {
"jcr:primaryType": "nt:unstructured",
"label": "Config",
- "prefix": "/cms/config/create.html"
+ "prefix": "/cms/actions/create/config.html"
}
}
},
@@ -34,11 +34,17 @@
"sling:resourceType": "sling-cms/components/cms/contenttable",
"columns": {
"jcr:primaryType": "nt:unstructured",
+ "resourceTypes": [
+ "sling:OrderedFolder",
+ "sling:Folder",
+ "sling:Conf",
+ "nt:file"
+ ],
"name": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/columns/name",
"jcr:title": "Name",
- "prefix": "/cms/config/edit.html",
+ "prefix": "/cms/config/list.html",
"link": true
},
"title": {
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/mappings/list.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/mappings/list.json
index 01804ee..b1ba3cf 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/mappings/list.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/mappings/list.json
@@ -1,153 +1,153 @@
{
- "jcr:primaryType": "sling:Page",
- "jcr:content": {
- "sling:resourceType": "sling-cms/components/pages/base",
- "jcr:title": "Mappings",
- "jcr:primaryType": "nt:unstructured",
- "container": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/container",
- "richtext": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/general/richtext",
- "text": "<h3>Mappings</h3>"
- },
- "contentactions": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contentactions",
- "actions": {
- "folder": {
- "jcr:primaryType": "nt:unstructured",
- "label": "Folder",
- "prefix": "/cms/folder/create.html"
- },
- "mappings": {
- "jcr:primaryType": "nt:unstructured",
- "label": "Mapping",
- "prefix": "/cms/mappings/create.html"
- }
- }
- },
- "contenttable": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contenttable",
- "columns": {
- "jcr:primaryType": "nt:unstructured",
- "name": {
- "jcr:primaryType": "nt:unstructured",
- "title": "Name"
- },
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "title": "Match"
- },
- "lastModified": {
- "jcr:primaryType": "nt:unstructured",
- "title": "Last Modified"
- },
- "actions": {
- "jcr:primaryType": "nt:unstructured",
- "title": "Actions"
- }
- },
- "types": {
- "jcr:primaryType": "nt:unstructured",
- "sling:Mapping": {
- "jcr:primaryType": "nt:unstructured",
- "columns": {
- "jcr:primaryType": "nt:unstructured",
- "name": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/name",
- "link": true,
- "prefix": "/cms/mappings/list.html"
- },
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/text",
- "property": "sling:match"
- },
- "lastModified": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
- "subPath": ""
- },
- "actions": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
- "edit": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Edit Mapping",
- "icon": "pencil-f",
- "prefix": "/cms/mappings/edit.html"
- },
- "movecopy": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Move / Copy Mapping",
- "icon": "move-alt",
- "prefix": "/cms/shared/movecopy.html"
- },
- "delete": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Delete Mapping",
- "icon": "trash",
- "prefix": "/cms/shared/delete.html"
- }
- }
- }
- },
- "sling:OrderedFolder": {
- "jcr:primaryType": "nt:unstructured",
- "columns": {
- "jcr:primaryType": "nt:unstructured",
- "name": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/name",
- "link": true,
- "prefix": "/cms/mappings/list.html"
- },
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/static",
- "value": ""
- },
- "lastModified": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
- "subPath": "jcr:content/"
- },
- "actions": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
- "edit": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Edit Folder",
- "icon": "pencil-f",
- "prefix": "/cms/folder/edit.html"
- },
- "movecopy": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Move / Copy Folder",
- "icon": "move-alt",
- "prefix": "/cms/shared/movecopy.html"
- },
- "delete": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Delete Folder",
- "icon": "trash",
- "prefix": "/cms/shared/delete.html"
- }
- }
- }
- }
- }
- }
- }
- }
-}
\ No newline at end of file
+ "jcr:primaryType": "sling:Page",
+ "jcr:content": {
+ "sling:resourceType": "sling-cms/components/pages/base",
+ "jcr:title": "Mappings",
+ "jcr:primaryType": "nt:unstructured",
+ "container": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/container",
+ "richtext": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/general/richtext",
+ "text": "<h3>Mappings</h3>"
+ },
+ "contentactions": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/contentactions",
+ "actions": {
+ "folder": {
+ "jcr:primaryType": "nt:unstructured",
+ "label": "Folder",
+ "prefix": "/cms/folder/create.html"
+ },
+ "mappings": {
+ "jcr:primaryType": "nt:unstructured",
+ "label": "Mapping",
+ "prefix": "/cms/mappings/create.html"
+ }
+ }
+ },
+ "contenttable": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/contenttable",
+ "columns": {
+ "jcr:primaryType": "nt:unstructured",
+ "name": {
+ "jcr:primaryType": "nt:unstructured",
+ "title": "Name"
+ },
+ "title": {
+ "jcr:primaryType": "nt:unstructured",
+ "title": "Match"
+ },
+ "lastModified": {
+ "jcr:primaryType": "nt:unstructured",
+ "title": "Last Modified"
+ },
+ "actions": {
+ "jcr:primaryType": "nt:unstructured",
+ "title": "Actions"
+ }
+ },
+ "types": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:Mapping": {
+ "jcr:primaryType": "nt:unstructured",
+ "columns": {
+ "jcr:primaryType": "nt:unstructured",
+ "name": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/name",
+ "link": true,
+ "prefix": "/cms/mappings/list.html"
+ },
+ "title": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/text",
+ "property": "sling:match"
+ },
+ "lastModified": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
+ "subPath": ""
+ },
+ "actions": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/actions",
+ "edit": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Edit Mapping",
+ "icon": "pencil-f",
+ "prefix": "/cms/mappings/edit.html"
+ },
+ "movecopy": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Move / Copy Mapping",
+ "icon": "move-alt",
+ "prefix": "/cms/shared/movecopy.html"
+ },
+ "delete": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Delete Mapping",
+ "icon": "trash",
+ "prefix": "/cms/shared/delete.html"
+ }
+ }
+ }
+ },
+ "sling:OrderedFolder": {
+ "jcr:primaryType": "nt:unstructured",
+ "columns": {
+ "jcr:primaryType": "nt:unstructured",
+ "name": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/name",
+ "link": true,
+ "prefix": "/cms/mappings/list.html"
+ },
+ "title": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/static",
+ "value": ""
+ },
+ "lastModified": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
+ "subPath": "jcr:content/"
+ },
+ "actions": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/actions",
+ "edit": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Edit Folder",
+ "icon": "pencil-f",
+ "prefix": "/cms/folder/edit.html"
+ },
+ "movecopy": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Move / Copy Folder",
+ "icon": "move-alt",
+ "prefix": "/cms/shared/movecopy.html"
+ },
+ "delete": {
+ "jcr:primaryType": "nt:unstructured",
+ "modal": true,
+ "title": "Delete Folder",
+ "icon": "trash",
+ "prefix": "/cms/shared/delete.html"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/content.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/content.json
index d882436..e5941cf 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/content.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/content.json
@@ -28,13 +28,6 @@
}
}
},
- "contentbreadcrumb": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contentbreadcrumb",
- "depth": 2,
- "prefix": "/cms/site/content.html",
- "titleProp": "jcr:content/jcr:title"
- },
"contenttable": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/contenttable",
@@ -76,6 +69,10 @@
"sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
"jcr:title": "Last Modified",
"subPath": "jcr:content/"
+ },
+ "actions": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/actions"
}
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/sites.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/sites.json
index 85b1f8e..0129958 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/sites.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/site/sites.json
@@ -25,13 +25,6 @@
}
}
},
- "contentbreadcrumb": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contentbreadcrumb",
- "depth": 2,
- "prefix": "/cms/site/sites.html",
- "titleProp": "jcr:content/jcr:title"
- },
"contenttable": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/contenttable",
@@ -39,17 +32,18 @@
"columns": {
"jcr:primaryType": "nt:unstructured",
"resourceTypes": [
- "sling:Page",
- "sling:File",
+ "sling:Site",
"sling:OrderedFolder",
- "sling:Folder"
+ "sling:Folder",
+ "sling:Page",
+ "nt:file"
],
"name": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/columns/name",
"link": true,
"jcr:title": "Name",
- "prefix": "/cms/site/content.html"
+ "prefix": "/cms/site/sites.html"
},
"title": {
"jcr:primaryType": "nt:unstructured",
@@ -63,6 +57,11 @@
"sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
"jcr:title": "Last Modified",
"subPath": "jcr:content/"
+ },
+ "actions": {
+ "jcr:primaryType": "nt:unstructured",
+ "sling:resourceType": "sling-cms/components/cms/columns/actions",
+ "jcr:title": "Actions"
}
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/siteconfig/editor.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/siteconfig/editor.json
index 453c58f..3ef82cc 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/siteconfig/editor.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/siteconfig/editor.json
@@ -23,71 +23,34 @@
"appendSuffix": "/templates",
"columns": {
"jcr:primaryType": "nt:unstructured",
+ "resourceTypes": [
+ "sling:OrderedFolder",
+ "sling:Folder",
+ "sling:Conf",
+ "nt:file"
+ ],
"name": {
"jcr:primaryType": "nt:unstructured",
- "title": "Name"
+ "sling:resourceType": "sling-cms/components/cms/columns/name",
+ "jcr:title": "Name",
+ "link": false
},
"title": {
"jcr:primaryType": "nt:unstructured",
- "title": "Title"
+ "sling:resourceType": "sling-cms/components/cms/columns/text",
+ "jcr:title": "Title",
+ "property": "jcr:title"
},
"lastModified": {
"jcr:primaryType": "nt:unstructured",
- "title": "Last Modified"
+ "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
+ "jcr:title": "Last Modified",
+ "subPath": ""
},
"actions": {
"jcr:primaryType": "nt:unstructured",
- "title": "Actions"
- }
- },
- "types": {
- "jcr:primaryType": "nt:unstructured",
- "nt:unstructured": {
- "jcr:primaryType": "nt:unstructured",
- "columns": {
- "jcr:primaryType": "nt:unstructured",
- "name": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/name",
- "link": false
- },
- "title": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/text",
- "property": "jcr:title"
- },
- "lastModified": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/lastmodified",
- "subPath": ""
- },
- "actions": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
- "edit": {
- "jcr:primaryType": "nt:unstructured",
- "modal": false,
- "new": false,
- "title": "Edit Template",
- "icon": "pencil-f",
- "prefix": "/cms/template/edit.html"
- },
- "movecopy": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Move / Copy Template",
- "icon": "move-alt",
- "prefix": "/cms/shared/movecopy.html"
- },
- "delete": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "title": "Delete Template",
- "icon": "trash",
- "prefix": "/cms/shared/delete.html"
- }
- }
- }
+ "jcr:title": "Actions",
+ "sling:resourceType": "sling-cms/components/cms/columns/actions"
}
}
}
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/static/content.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/static/content.json
index 3c38b2f..06704ba 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/static/content.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/static/content.json
@@ -23,20 +23,13 @@
}
}
},
- "contentbreadcrumb": {
- "jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/contentbreadcrumb",
- "depth": 2,
- "prefix": "/cms/static/content.html",
- "titleProp": "jcr:content/jcr:title"
- },
"contenttable": {
"jcr:primaryType": "nt:unstructured",
"sling:resourceType": "sling-cms/components/cms/contenttable",
"defaultPath": "/content",
"columns": {
"resourceTypes": [
- "sling:File",
+ "sling:Conf",
"sling:OrderedFolder",
"sling:Folder",
"nt:file"
diff --git a/ui/src/main/resources/jcr_root/libs/sling-cms/content/taxonomy/list.json b/ui/src/main/resources/jcr_root/libs/sling-cms/content/taxonomy/list.json
index 0b69881..147c40b 100644
--- a/ui/src/main/resources/jcr_root/libs/sling-cms/content/taxonomy/list.json
+++ b/ui/src/main/resources/jcr_root/libs/sling-cms/content/taxonomy/list.json
@@ -57,28 +57,8 @@
},
"actions": {
"jcr:primaryType": "nt:unstructured",
- "sling:resourceType": "sling-cms/components/cms/columns/actions",
- "edit": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "jcr:title": "Edit Taxonomy Item",
- "icon": "pencil-f",
- "prefix": "/cms/actions/edit/taxonomy.html"
- },
- "movecopy": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "jcr:title": "Move / Copy Taxonomy Item",
- "icon": "move-alt",
- "prefix": "/cms/actions/shared/movecopy.html"
- },
- "delete": {
- "jcr:primaryType": "nt:unstructured",
- "modal": true,
- "jcr:title": "Delete Taxonomy Item",
- "icon": "trash",
- "prefix": "/cms/actions/shared/delete.html"
- }
+ "sling:resourceType": "sling-cms/components/cms/columns/actions"
+
}
}
}