diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItem.java b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItem.java index fdaa56d7c..00e664e18 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItem.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItem.java @@ -244,7 +244,7 @@ import javax.xml.bind.annotation.XmlElementWrapper; + ")") , @NamedQuery( - name = "ContentItem.findNameAndContentSectionAndVersion", + name = "ContentItem.findByNameAndContentSectionAndVersion", query = "SELECT DISTINCT i " + "FROM ContentItem i " + "JOIN i.contentType t " @@ -310,7 +310,9 @@ import javax.xml.bind.annotation.XmlElementWrapper; + " )" + " )" + " OR true = :isSystemUser OR true = :isAdmin" - + ")") + + ")" + ) + , @NamedQuery( name = "ContentItem.findByNameAndTypeAndContentSection", diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java index 787bcca34..df48552f7 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java @@ -339,7 +339,7 @@ public class ContentItemRepository final TypedQuery query = getEntityManager() .createNamedQuery( - "ContentItem.findByNameAndContentSectionAndVersion", + "ContentItem.findByTypeAndContentSectionAndVersion", ContentItem.class); query.setParameter("section", section); query.setParameter("type", type); @@ -357,7 +357,7 @@ public class ContentItemRepository final ContentSection section) { final TypedQuery query = getEntityManager() - .createNamedQuery("ContentItem.findByNameAndContentSection", + .createNamedQuery("ContentItem.findByNameAndTypeAndContentSection", ContentItem.class); query.setParameter("section", section); query.setParameter("name", name); diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/rs/ContentItems.java b/ccm-cms/src/main/java/org/librecms/contentsection/rs/ContentItems.java index fa92f7c04..8b0189488 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/rs/ContentItems.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/rs/ContentItems.java @@ -96,7 +96,7 @@ public class ContentItems { if (ContentItem.class.isAssignableFrom(clazz)) { @SuppressWarnings("unchecked") final Class typeClass - = (Class) clazz; + = (Class) clazz; return typeClass; } else { throw new IllegalArgumentException(String.format( @@ -177,7 +177,7 @@ public class ContentItems { } else { itemVersion = ContentItemVersion.LIVE; } - + final List items; if ((query == null || query.trim().isEmpty()) && (type == null || type.trim().isEmpty())) { @@ -187,25 +187,30 @@ public class ContentItems { } else if ((query != null && !query.trim().isEmpty()) && (type == null || type.trim().isEmpty())) { - items = itemRepo.findByNameAndContentSection(query, - contentSection, - itemVersion); + items = itemRepo.findByNameAndContentSection( + query, + contentSection, + itemVersion + ); } else if ((query == null || query.trim().isEmpty()) && (type != null && !type.trim().isEmpty())) { final Class itemType - = toContentItemTypeClass(type); - items = itemRepo.findByTypeAndContentSection(itemType, - contentSection, - itemVersion); + = toContentItemTypeClass(type); + items = itemRepo.findByTypeAndContentSection( + itemType, + contentSection, + itemVersion + ); } else { final Class itemType - = toContentItemTypeClass(type); + = toContentItemTypeClass(type); items = itemRepo.findByNameAndTypeAndContentSection( query, itemType, contentSection, - itemVersion); + itemVersion + ); } return items @@ -279,11 +284,11 @@ public class ContentItems { } else if ((query == null || query.trim().isEmpty()) && (type != null && type.trim().isEmpty())) { final Class itemType - = toContentItemTypeClass(type); + = toContentItemTypeClass(type); items = itemRepo.filterByFolderAndType(folder, itemType); } else { final Class itemType - = toContentItemTypeClass(type); + = toContentItemTypeClass(type); items = itemRepo.filterByFolderAndTypeAndName(folder, itemType, query); diff --git a/ccm-cms/src/main/java/org/librecms/ui/contentsections/documents/relatedinfo/LinkDetailsModel.java b/ccm-cms/src/main/java/org/librecms/ui/contentsections/documents/relatedinfo/LinkDetailsModel.java index 82703dd8e..b0041e47f 100644 --- a/ccm-cms/src/main/java/org/librecms/ui/contentsections/documents/relatedinfo/LinkDetailsModel.java +++ b/ccm-cms/src/main/java/org/librecms/ui/contentsections/documents/relatedinfo/LinkDetailsModel.java @@ -187,43 +187,10 @@ public class LinkDetailsModel { return Bookmark.class.getName(); } -// /** -// * Sets the properties of this model based on the properties on the provided -// * link. -// * -// * @param link The link to use. -// */ -// protected void setInternalLink(final RelatedLink link) { -// Objects.requireNonNull(link); -// -// uuid = link.getUuid(); -// label = globalizationHelper.getValueFromLocalizedString( -// link.getTitle() -// ); -// title = link -// .getTitle() -// .getValues() -// .entrySet() -// .stream() -// .collect( -// Collectors.toMap( -// entry -> entry.getKey().toString(), -// entry -> entry.getValue() -// ) -// ); -// final Set titleLocales = link.getTitle().getAvailableLocales(); -// unusedTitleLocales = globalizationHelper -// .getAvailableLocales() -// .stream() -// .filter(locale -> !titleLocales.contains(locale)) -// .map(Locale::toString) -// .collect(Collectors.toList()); -// targetItemUuid = link.getTargetItem().getItemUuid(); -// targetItemName = link.getTargetItem().getDisplayName(); -// targetItemTitle = globalizationHelper.getValueFromLocalizedString( -// link.getTargetItem().getTitle() -// ); -// } + public boolean isTargetSet() { + return bookmarkUuid != null || targetItemUuid != null; + } + public void setTargetItemTitle(String targetItemTitle) { this.targetItemTitle = targetItemTitle; } diff --git a/ccm-cms/src/main/resources/META-INF/resources/components/librecms/assetPicker.xhtml b/ccm-cms/src/main/resources/META-INF/resources/components/librecms/assetPicker.xhtml index d4af66905..3a6da339f 100644 --- a/ccm-cms/src/main/resources/META-INF/resources/components/librecms/assetPicker.xhtml +++ b/ccm-cms/src/main/resources/META-INF/resources/components/librecms/assetPicker.xhtml @@ -53,7 +53,7 @@ class="modal fade" id="#{cc.attrs.assetPickerId}-dialog" tabindex="-1"> -