Several small things for the related info step.
parent
9a9e5dc767
commit
d58fa954b9
|
|
@ -86,7 +86,7 @@ public class BinaryAsset extends Asset implements Serializable {
|
|||
@Column(name = "ASSET_DATA")
|
||||
@Lob
|
||||
@Basic(fetch = FetchType.LAZY)
|
||||
// @NotAudited
|
||||
@NotAudited // Workaround until bug in Hibernate is resolved: https://hibernate.atlassian.net/browse/HHH-14725
|
||||
private Blob data;
|
||||
|
||||
@Column(name = "DATA_SIZE")
|
||||
|
|
|
|||
|
|
@ -45,10 +45,15 @@ public class ItemAttachmentDto {
|
|||
private long sortKey;
|
||||
|
||||
/**
|
||||
* The type of the asset of the attachment.
|
||||
* The name of the asset type.
|
||||
*/
|
||||
private String assetType;
|
||||
|
||||
/**
|
||||
* Label for the type of the asset of the attachment.
|
||||
*/
|
||||
private String assetTypeLabel;
|
||||
|
||||
/**
|
||||
* The UUID of the attachment asset.
|
||||
*/
|
||||
|
|
@ -91,12 +96,12 @@ public class ItemAttachmentDto {
|
|||
this.sortKey = sortKey;
|
||||
}
|
||||
|
||||
public String getAssetType() {
|
||||
return assetType;
|
||||
public String getAssetTypeLabel() {
|
||||
return assetTypeLabel;
|
||||
}
|
||||
|
||||
public void setAssetType(final String assetType) {
|
||||
this.assetType = assetType;
|
||||
public void setAssetTypeLabel(final String assetTypeLabel) {
|
||||
this.assetTypeLabel = assetTypeLabel;
|
||||
}
|
||||
|
||||
public String getTitle() {
|
||||
|
|
@ -123,4 +128,12 @@ public class ItemAttachmentDto {
|
|||
this.assetUuid = assetUuid;
|
||||
}
|
||||
|
||||
public String getAssetType() {
|
||||
return assetType;
|
||||
}
|
||||
|
||||
public void setAssetType(final String assetType) {
|
||||
this.assetType = assetType;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@ import org.libreccm.security.PermissionChecker;
|
|||
import org.libreccm.ui.BaseUrl;
|
||||
import org.librecms.assets.AssetTypesManager;
|
||||
import org.librecms.assets.Bookmark;
|
||||
import org.librecms.assets.FileAsset;
|
||||
import org.librecms.assets.RelatedLink;
|
||||
import org.librecms.contentsection.Asset;
|
||||
import org.librecms.contentsection.AssetManager;
|
||||
|
|
@ -138,9 +137,6 @@ public class RelatedInfoStep extends AbstractMvcAuthoringStep {
|
|||
@Inject
|
||||
private AttachmentListRepository listRepo;
|
||||
|
||||
@Inject
|
||||
private BaseUrl baseUrl;
|
||||
|
||||
@Inject
|
||||
private DocumentUi documentUi;
|
||||
|
||||
|
|
@ -895,7 +891,8 @@ public class RelatedInfoStep extends AbstractMvcAuthoringStep {
|
|||
* @param documentPath
|
||||
* @param listIdentifierParam The identifier of the list to which the
|
||||
* attachment is added.
|
||||
* @param assetUuid The asset to use for the attachment.
|
||||
* @param assetIdentifier The identifier of the asset to use for the
|
||||
* attachment.
|
||||
*
|
||||
* @return A redirect to the list of attachment lists and attachments.
|
||||
*/
|
||||
|
|
@ -909,8 +906,8 @@ public class RelatedInfoStep extends AbstractMvcAuthoringStep {
|
|||
final String documentPath,
|
||||
@PathParam("attachmentListIdentifier")
|
||||
final String listIdentifierParam,
|
||||
@FormParam("assetUuid")
|
||||
final String assetUuid
|
||||
@FormParam("assetIdentifier")
|
||||
final String assetIdentifierParam
|
||||
) {
|
||||
try {
|
||||
init();
|
||||
|
|
@ -931,11 +928,35 @@ public class RelatedInfoStep extends AbstractMvcAuthoringStep {
|
|||
}
|
||||
final AttachmentList list = listResult.get();
|
||||
|
||||
final Optional<Asset> assetResult = assetRepo.findByUuid(assetUuid);
|
||||
final Optional<Asset> assetResult;
|
||||
final Identifier assetIdentifier = identifierParser.parseIdentifier(
|
||||
assetIdentifierParam
|
||||
);
|
||||
switch (assetIdentifier.getType()) {
|
||||
case ID:
|
||||
assetResult = assetRepo.findById(
|
||||
Long.parseLong(
|
||||
assetIdentifier.getIdentifier()
|
||||
)
|
||||
);
|
||||
break;
|
||||
case UUID:
|
||||
assetResult = assetRepo.findByUuid(
|
||||
assetIdentifier.getIdentifier()
|
||||
);
|
||||
break;
|
||||
default:
|
||||
assetResult = assetRepo.findByPath(
|
||||
getContentSection(),
|
||||
assetIdentifier.getIdentifier()
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
if (!assetResult.isPresent()) {
|
||||
models
|
||||
.put("section", getContentSection().getLabel());
|
||||
models.put("assetUuid", assetUuid);
|
||||
models.put("assetUuid", assetIdentifierParam);
|
||||
return "org/librecms/ui/contentsection/documents/asset-not-found.xhtml";
|
||||
}
|
||||
|
||||
|
|
@ -2148,6 +2169,14 @@ public class RelatedInfoStep extends AbstractMvcAuthoringStep {
|
|||
) {
|
||||
final ItemAttachmentDto dto = new ItemAttachmentDto();
|
||||
dto.setAssetType(
|
||||
Optional
|
||||
.ofNullable(itemAttachment.getAsset())
|
||||
.map(Asset::getClass)
|
||||
.map(clazz -> assetTypesManager.getAssetTypeInfo(clazz))
|
||||
.map(info -> info.getAssetClass().getName())
|
||||
.orElse("")
|
||||
);
|
||||
dto.setAssetTypeLabel(
|
||||
Optional
|
||||
.ofNullable(itemAttachment.getAsset())
|
||||
.map(Asset::getClass)
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
package org.librecms.ui.contentsections.documents.relatedinfo;
|
||||
|
||||
import org.librecms.assets.FileAsset;
|
||||
import org.librecms.assets.RelatedLink;
|
||||
import org.librecms.contentsection.AttachmentList;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -87,4 +88,8 @@ public class RelatedInfoStepModel {
|
|||
this.sectionName = sectionName;
|
||||
}
|
||||
|
||||
public String getRelatedLinkType() {
|
||||
return RelatedLink.class.getName();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<ui:define name="breadcrumb">
|
||||
<ui:include src="document-breadcrumbs.xhtml" />
|
||||
<li aria-current="page" class="breadcrumb-item">
|
||||
#{CmsAdminMessages['contentsection.document.relatedinfo.breadcrumb']}
|
||||
#{CmsDefaultStepsMessageBundle['contentsection.document.relatedinfo.breadcrumb']}
|
||||
</li>
|
||||
</ui:define>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
<!DOCTYPE html [<!ENTITY times '×'>]>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:bootstrap="http://xmlns.jcp.org/jsf/composite/components/bootstrap"
|
||||
xmlns:libreccm="http://xmlns.jcp.org/jsf/composite/components/libreccm"
|
||||
xmlns:librecms="http://xmlns.jcp.org/jsf/composite/components/librecms"
|
||||
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
|
||||
xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
|
||||
|
|
@ -83,271 +84,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div>
|
||||
<button class="btn btn-secondary save-order-button"
|
||||
disabled="disabled"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="save" />
|
||||
<span>#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.order.save']}</span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="messages"></div>
|
||||
<ul class="cms-attachment-lists list-group mt-3"
|
||||
data-baseUrl="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo-service/save-order">
|
||||
<li class="cms-attachment-list mb-3 list-group-item list-group-item-primary"
|
||||
data-id="34aba2e6-a9b2-4b82-9889-c7ea591b6faf">
|
||||
<div class="d-flex justify-content-between">
|
||||
<div class="cms-attachment-list-name">List 1</div>
|
||||
<div class="cms-attachmentlist-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="cms-attachments mt-3 list-group"
|
||||
data-list-uuid="34aba2e6-a9b2-4b82-9889-c7ea591b6faf">
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="a871c22b-f533-49eb-be3e-3600f4e83180">
|
||||
<div class="cms-attachment-label">Attachment 1a</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="6ab14e1e-dc9a-4a39-9514-9bea68bcd357">
|
||||
<div class="cms-attachment-label">Attachment 1b</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="f3a1d656-fb4e-4ba8-9f5c-e605700e7c5f">
|
||||
<div class="cms-attachment-label">Attachment 1c</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="cms-attachment-list mb-3 list-group-item list-group-item-primary"
|
||||
data-id="b962a838-e25e-4987-8058-6205692d2d92">
|
||||
<div class="d-flex justify-content-between">
|
||||
<div class="cms-attachment-list-name">List 2</div>
|
||||
<div class="cms-attachmentlist-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="cms-attachments mt-3 list-group"
|
||||
data-list-uuid="b962a838-e25e-4987-8058-6205692d2d92">
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="296495bd-fbf6-4956-a047-5fa3400df367">
|
||||
<div class="cms-attachment-label">Attachment 2a</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="89d89ffd-a322-43a2-81b9-d127503bf52b">
|
||||
<div class="cms-attachment-label">Attachment 2b</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="f85193f2-38fc-4f34-b6fa-4ed6f4e30f69">
|
||||
<div class="cms-attachment-label">Attachment 2c</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="a063c64d-3da6-4948-837c-137bf3511579">
|
||||
<div class="cms-attachment-label">Attachment 2d</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
</button>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div>
|
||||
<button class="btn btn-secondary save-order-button"
|
||||
disabled="disabled"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="save" />
|
||||
<span>#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.order.save']}</span>
|
||||
</button>
|
||||
</div>-->
|
||||
|
||||
<div>
|
||||
<button class="btn btn-secondary save-order-button"
|
||||
disabled="disabled"
|
||||
|
|
@ -365,13 +101,13 @@
|
|||
data-id="#{list.uuid}">
|
||||
<div class="d-flex justify-content-between">
|
||||
<div>#{list.name}</div>
|
||||
<div class="cms-attachmentlist-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
<div class="cms-attachmentlist-buttons d-flex">
|
||||
<button class="btn btn-secondary cms-sort-handle mr-2"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
<button class="btn btn-secondary mx-2"
|
||||
data-toggle="modal"
|
||||
data-target="#attachment-list-#{list.name}-info"
|
||||
type="button">
|
||||
|
|
@ -416,42 +152,46 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a class="btn btn-primary"
|
||||
<a class="btn btn-primary mx-2"
|
||||
href="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/@details">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.edit.button']}"</span>
|
||||
</a>
|
||||
<librecms:assetPickerButton
|
||||
assetPickerId="attach-file-picker"
|
||||
assetPickerId="attach-file-picker-#{list.uuid}"
|
||||
buttonIcon="file-earmark-plus"
|
||||
buttonText="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.add.label']}"
|
||||
/>
|
||||
<librecms:assetPicker
|
||||
actionUrl="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/attachments/@create"
|
||||
assetType="#{CmsRelatedInfoStep.fileAssetType}"
|
||||
assetPickerId="attach-file-picker"
|
||||
baseUrl="#{CmsRelatedInfoStep.fileAssetPickerBaseUrl}"
|
||||
contentSection="#{CmsRelatedInfoStep.sectionName}"
|
||||
formParamName="assetUuid"
|
||||
/>
|
||||
<!-- <button class="btn btn-primary"
|
||||
data-target="#attachmentlist-#{list.name}-add-attachment-dialog"
|
||||
data-toggle="modal"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="file-earmark-plus" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.add.label']}</span>
|
||||
</button>-->
|
||||
<a class="btn btn-primary"
|
||||
<a class="btn btn-primary mx-2"
|
||||
href="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/links/@create"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="bookmark-plus" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.link.add.label']}</span>
|
||||
</a>
|
||||
<button class="btn btn-danger"
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/@remove"
|
||||
buttonLabelClass="sr-only"
|
||||
buttonText="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.remove.label']}"
|
||||
buttonTextClass="ml-2"
|
||||
cancelLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.remove.cancel']}"
|
||||
confirmLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.remove.confirm']}"
|
||||
dialogId="attachmentlist-delete-#{list.uuid}"
|
||||
dialogTitle="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.remove.title']}"
|
||||
message="#{CmsDefaultStepsMessageBundle.getMessage('relatedinfo.attachmentlists.remove.message', [list.name])}"
|
||||
/>
|
||||
<!-- <button class="btn btn-danger"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="x-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.remove.label']}</span>
|
||||
</button>
|
||||
</button>-->
|
||||
<librecms:assetPicker
|
||||
actionUrl="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/attachments/@create"
|
||||
assetType="#{CmsRelatedInfoStep.fileAssetType}"
|
||||
assetPickerId="attach-file-picker-#{list.uuid}"
|
||||
baseUrl="#{CmsRelatedInfoStep.fileAssetPickerBaseUrl}"
|
||||
contentSection="#{CmsRelatedInfoStep.sectionName}"
|
||||
formParamName="assetIdentifier"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="cms-attachments mt-3 list-group"
|
||||
|
|
@ -460,25 +200,40 @@
|
|||
var="attachment">
|
||||
<li class="cms-attachment list-group-item mb-3 d-flex justify-content-between"
|
||||
data-id="#{attachment.uuid}">
|
||||
<div class="cms-attachment-label">#{attachment.title}</div>
|
||||
<div>
|
||||
<c:choose>
|
||||
<c:when test="#{attachment.assetType.equals(CmsRelatedInfoStep.relatedLinkType)}">
|
||||
<bootstrap:svgIcon icon="bookmark" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.attachment.type.link']}</span>
|
||||
|
||||
</c:when>
|
||||
<c:when test="#{attachment.assetType.equals(CmsRelatedInfoStep.fileAssetType)}">
|
||||
<bootstrap:svgIcon icon="file-earmark" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.attachment.type.file']}</span>
|
||||
</c:when>
|
||||
</c:choose>
|
||||
<span class="cms-attachment-label">#{attachment.title}</span>
|
||||
</div>
|
||||
<div class="cms-attachment-buttons">
|
||||
<button class="btn btn-secondary cms-sort-handle"
|
||||
<button class="btn btn-secondary cms-sort-handle mr-2"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="arrows-move" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.move.button']}"</span>
|
||||
</button>
|
||||
<button class="btn btn-secondary"
|
||||
<button class="btn btn-secondary mx-2"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.info.button']}"</span>
|
||||
</button>
|
||||
<a class="btn btn-primary"
|
||||
<c:if test="#{attachment.assetType.equals(CmsRelatedInfoStep.relatedLinkType)}">
|
||||
<a class="btn btn-primary mx-2"
|
||||
href="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@relatedinfo/attachmentlists/#{list.name}/links/#{attachment.assetUuid}/@details"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.edit.button']}"</span>
|
||||
</a>
|
||||
<button class="btn btn-danger"
|
||||
</c:if>
|
||||
<button class="btn btn-danger ml-2"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="x-circle" />
|
||||
<span class="sr-only">#{CmsDefaultStepsMessageBundle['relatedinfo.attachments.delete.button']}"</span>
|
||||
|
|
@ -490,200 +245,7 @@
|
|||
</li>
|
||||
</c:forEach>
|
||||
</ul>
|
||||
<!-- <div aria-hidden="true"
|
||||
aria-labelledby="attachmentlist-#{list.name}-add-attachment-dialog-title"
|
||||
class="modal fade"
|
||||
id="attachmentlist-#{list.name}-add-attachment-dialog"
|
||||
tabindex="-1">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h3 class="modal-title"
|
||||
id="attachmentlist-#{list.name}-add-attachment-dialog-title">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.add.dialog.title']}
|
||||
</h3>
|
||||
<button aria-label="#{CmsDefaultStepsMessageBundle['relatedinfo.attachment.add.dialog.close']}"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="x-circle" />
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="alert alert-info" role="alert">
|
||||
Not implemented yet
|
||||
Requires JavaScript to search for assets
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>-->
|
||||
|
||||
<!-- <div aria-hidden="true"
|
||||
aria-labelledby="attachmentlist-#{list.name}-add-internallink-dialog-title"
|
||||
class="modal fade"
|
||||
id="attachmentlist-#{list.name}-add-internallink-dialog"
|
||||
tabindex="-1">
|
||||
<div class="modal-dialog">
|
||||
<form class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h3 class="modal-title">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.internallink.add.dialog.title']}
|
||||
</h3>
|
||||
<button aria-label="#{CmsDefaultStepsMessageBundle['relatedinfo.internallink.add.dialog.close']}"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="x-circle" />
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="alert alert-info" role="alert">
|
||||
Not implemented yet, requires JavaScript for good user experience.
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-warning"
|
||||
data-dismiss="modal"
|
||||
type="button">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.internallink.add.dialog.close']}
|
||||
</button>
|
||||
<button class="btn btn-success">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.internallink.add.dialog.save']}
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>-->
|
||||
|
||||
<!-- <span>#{list.name}</span>
|
||||
<button class="btn btn-info"
|
||||
data-target="#attachmentlist-#{list.name}-info"
|
||||
data-toggle="modal"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="info-circle" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.info_button.label']}"
|
||||
</span>
|
||||
</button>
|
||||
<div aria-hidden="true"
|
||||
aria-labelledby="attachment-list-#{list.name}-info-title"
|
||||
class="modal fade"
|
||||
id="attachmentlist-#{list.name}-info"
|
||||
tabindex="-1">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h3 class="model-title"
|
||||
id="attachment-list-#{list.name}-info-title">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.info_dialog.title']}"
|
||||
</h3>
|
||||
<button aria-label="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.info_dialog.close']}"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
type="button">
|
||||
<bootstrap:svgIcon icon="x-circle" />
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
#{list.description}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary"
|
||||
data-dismiss="modal"
|
||||
type="button">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.info_dialog.close']}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a class="btn btn-primary"
|
||||
href="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/@details">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.edit.label']}
|
||||
</span>
|
||||
</a>
|
||||
<form action="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/@moveDown"
|
||||
method="post">
|
||||
<button class="btn btn-secondary"
|
||||
type="submit">
|
||||
<bootstrap:svgIcon icon="caret-down-fill" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.move_down.label']}
|
||||
</span>
|
||||
</button>
|
||||
</form>
|
||||
<form action="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/@moveUp"
|
||||
method="post">
|
||||
<button class="btn btn-secondary"
|
||||
type="submit">
|
||||
<bootstrap:svgIcon icon="caret-up-fill" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.move_up.label']}
|
||||
</span>
|
||||
</button>
|
||||
</form>
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/@remove"
|
||||
buttonText="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.remove.label']}"
|
||||
cancelLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.remove.cancel']}"
|
||||
confirmLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.remove.confirm']}"
|
||||
dialogId="attachmentlist-#{list.name}-remove-dialog"
|
||||
dialogTitle="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.remove.title']}"
|
||||
message="#{CmsDefaultStepsMessageBundle.getMessage('relatedinfo.attachmentlists.row.remove.message', [list.name])}"
|
||||
/>
|
||||
</div>
|
||||
<ul>
|
||||
<c:forEach items="#{list.attachments}"
|
||||
var="attachment">
|
||||
<li class="d-flex">
|
||||
<span>#{attachment.title}</span>
|
||||
<c:if test="#{attachment.internalLink}">
|
||||
<a class="btn btn-secondary"
|
||||
href="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/internal-links/#{attachment.uuid}/@details">
|
||||
<bootstrap:svgIcon icon="pen" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.internal_link.edit.label']}
|
||||
</span>
|
||||
</a>
|
||||
</c:if>
|
||||
<form action="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo//attachments/#{attachment.uuid}/@moveDown"
|
||||
method="post">
|
||||
<button class="btn btn-secondary"
|
||||
type="submit">
|
||||
<bootstrap:svgIcon icon="caret-down-fill" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.row.attachment.move_down.label']}
|
||||
</span>
|
||||
</button>
|
||||
</form>
|
||||
<form action="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/attachments/#{attachment.uuid}/@moveUp"
|
||||
method="post">
|
||||
<button class="btn btn-secondary"
|
||||
type="submit">
|
||||
<bootstrap:svgIcon icon="caret-up-fill" />
|
||||
<span class="sr-only">
|
||||
#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.row.move_up.label']}
|
||||
</span>
|
||||
</button>
|
||||
</form>
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@authoringSteps/relatedinfo/attachmentlists/#{list.name}/attachments/#{attachment.uuid}/@remove"
|
||||
buttonText="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.remove.label']}"
|
||||
cancelLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.remove.cancel']}"
|
||||
confirmLabel="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.remove.confirm']}"
|
||||
dialogId="remove-attachment-#{attachment.uuid}"
|
||||
dialogTitle="#{CmsDefaultStepsMessageBundle['relatedinfo.attachmentlists.attachment.remove.title']}"
|
||||
message="#{CmsDefaultStepsMessageBundle.getMessage('relatedinfo.attachmentlists.attachment.remove.message', [attachment.title])}"
|
||||
/>
|
||||
</li>
|
||||
</c:forEach>
|
||||
</ul>
|
||||
</li>
|
||||
</c:forEach>
|
||||
</ul>-->
|
||||
<div>
|
||||
<button class="btn btn-secondary save-order-button"
|
||||
disabled="disabled"
|
||||
|
|
|
|||
|
|
@ -221,3 +221,10 @@ relatedinfo.link.details.target.bookmark_name=Bookmark
|
|||
relatedinfo.target_bookmark.not_found.title=Bookmark not found
|
||||
relatedinfo.target_bookmark.not_found.message=The bookmark {0} selected as target was not found.
|
||||
contentsection.document.relatedlinfo.breadcrumb=Related Information
|
||||
relatedinfo.attachments.attachment.type.link=Related link
|
||||
relatedinfo.attachments.attachment.type.file=Attached file
|
||||
relatedinfo.attachmentlists.remove.label=Remove attachment list
|
||||
relatedinfo.attachmentlists.remove.cancel=Cancel
|
||||
relatedinfo.attachmentlists.remove.confirm=Remove
|
||||
relatedinfo.attachmentlists.remove.title=Confirm attachment list removal
|
||||
relatedinfo.attachmentlists.remove.message=Are you sure to remove the attachmentlist {0} and all attachments in the list?
|
||||
|
|
|
|||
|
|
@ -221,3 +221,10 @@ relatedinfo.link.details.target.bookmark_name=Lesezeichen
|
|||
relatedinfo.target_bookmark.not_found.title=Lesezeichen nicht gefunden
|
||||
relatedinfo.target_bookmark.not_found.message=Das als Ziel ausgew\u00e4hlte Lesezeichen {0} ist nicht verf\u00fcgbar.
|
||||
contentsection.document.relatedlinfo.breadcrumb=Weiterf\u00fchrende Information
|
||||
relatedinfo.attachments.attachment.type.link=Weiterf\u00fchrender Link
|
||||
relatedinfo.attachments.attachment.type.file=Angeh\u00e4ngte Datei
|
||||
relatedinfo.attachmentlists.remove.label=Anhangliste entfernen
|
||||
relatedinfo.attachmentlists.remove.cancel=Abbrechen
|
||||
relatedinfo.attachmentlists.remove.confirm=Entfernen
|
||||
relatedinfo.attachmentlists.remove.title=Entfernen der Anhangliste best\u00e4tigen
|
||||
relatedinfo.attachmentlists.remove.message=Sind Sie sicher, dass die die Anhangliste {0} und alle Anh\u00e4nge in dieser Liste entfernen wollen?
|
||||
|
|
|
|||
Loading…
Reference in New Issue