From 6070c6aae1df189eaa6ff8dffe2af75d0d328e39 Mon Sep 17 00:00:00 2001 From: Jens Pelzetter Date: Mon, 22 Mar 2021 20:35:29 +0100 Subject: [PATCH] Authoring Step for text body --- .../contenttypes/MvcArticleTextBodyStep.java | 19 +++++++++++-- .../article/article-basic-properties.xhtml | 3 +++ .../contenttypes/article/article-text.xhtml | 27 +++++++++++++++++++ 3 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-text.xhtml diff --git a/ccm-cms/src/main/java/org/librecms/ui/contenttypes/MvcArticleTextBodyStep.java b/ccm-cms/src/main/java/org/librecms/ui/contenttypes/MvcArticleTextBodyStep.java index f0500e06e..99c965a70 100644 --- a/ccm-cms/src/main/java/org/librecms/ui/contenttypes/MvcArticleTextBodyStep.java +++ b/ccm-cms/src/main/java/org/librecms/ui/contenttypes/MvcArticleTextBodyStep.java @@ -21,16 +21,18 @@ import javax.ws.rs.Path; import org.librecms.ui.contentsections.documents.MvcAuthoringStep; +import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; import javax.inject.Inject; +import javax.inject.Named; import javax.ws.rs.FormParam; import javax.ws.rs.POST; import javax.ws.rs.PathParam; -import static org.librecms.ui.contenttypes.MvcArticlePropertiesStep.PATH_FRAGMENT; /** * @@ -40,9 +42,10 @@ import static org.librecms.ui.contenttypes.MvcArticlePropertiesStep.PATH_FRAGMEN @Controller @Path("/") @AuthoringStepPathFragment(MvcArticleTextBodyStep.PATH_FRAGMENT) +@Named("CmsArticleTextBodyStep") public class MvcArticleTextBodyStep implements MvcAuthoringStep { - static final String PATH_FRAGMENT = "basicproperties"; + static final String PATH_FRAGMENT = "text"; @Inject private ContentItemRepository itemRepo; @@ -147,6 +150,18 @@ public class MvcArticleTextBodyStep implements MvcAuthoringStep { ) ); } + + public List getUnusedLocales() { + final Set locales = document + .getText() + .getAvailableLocales(); + return globalizationHelper + .getAvailableLocales() + .stream() + .filter(locale -> !locales.contains(locale)) + .map(Locale::toString) + .collect(Collectors.toList()); + } @POST @Path("/@add") diff --git a/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-basic-properties.xhtml b/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-basic-properties.xhtml index 98cfd1d88..fe04b242c 100644 --- a/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-basic-properties.xhtml +++ b/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-basic-properties.xhtml @@ -41,6 +41,7 @@ editMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringsteps/basicproperties/title/@edit" editorId="title-editor" hasUnusedLocales="#{!CmsArticlePropertiesStep.unusedTitleLocales.isEmpty()}" + headingLevel="3" objectIdentifier="#{CmsSelectedDocumentModel.itemPath}" removeMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringsteps/basicproperties/title/@remove" title="#{CmsArticleMessageBundle['basicproperties.title.header']}" @@ -53,11 +54,13 @@ editMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringsteps/basicproperties/description/@edit" editorId="description-editor" hasUnusedLocales="#{!CmsArticlePropertiesStep.unusedTitleLocales.isEmpty()}" + headingLevel="3" objectIdentifier="#{CmsSelectedDocumentModel.itemPath}" removeMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringsteps/basicproperties/description/@remove" title="#{CmsArticleMessageBundle['basicproperties.description.header']}" unusedLocales="#{CmsArticlePropertiesStep.unusedTitleLocales}" values="#{CmsArticlePropertiesStep.descriptionValues}" + useTextarea="true" /> diff --git a/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-text.xhtml b/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-text.xhtml new file mode 100644 index 000000000..cc1128124 --- /dev/null +++ b/ccm-cms/src/main/resources/WEB-INF/views/org/librecms/ui/contenttypes/article/article-text.xhtml @@ -0,0 +1,27 @@ +]> + + + +

#{CmsArticleMessageBundle['textstep.header']}

+ + + +
+ +