From 61e9ef8ed01f752c7d976f442abfdf7344a440f0 Mon Sep 17 00:00:00 2001 From: baka Date: Wed, 17 May 2017 12:02:50 +0000 Subject: [PATCH] Ticket #2683 & #2682 - Fixes minor stuff git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4738 8810af33-2d31-482b-a856-94f89814c4df Former-commit-id: 6a2e34fae84a64623f01e32c031652ae75dacc1e --- .../assets/forms/ExternalAudioAssetForm.java | 12 ++++----- .../cms/ui/assets/forms/ImageForm.java | 26 +++++++++++++++++-- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ExternalAudioAssetForm.java b/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ExternalAudioAssetForm.java index 4d07dca79..45542527b 100644 --- a/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ExternalAudioAssetForm.java +++ b/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ExternalAudioAssetForm.java @@ -87,15 +87,15 @@ public class ExternalAudioAssetForm extends BookmarkForm { final PageState state = event.getPageState(); - final ExternalAudioAsset ExternalAudioAsset = new ExternalAudioAsset(); + final ExternalAudioAsset externalAudioAsset = new ExternalAudioAsset(); - updateData((Bookmark) ExternalAudioAsset, state); - updateData(ExternalAudioAsset, state); + updateData((Bookmark) externalAudioAsset, state); + updateData(externalAudioAsset, state); - return ExternalAudioAsset; + return externalAudioAsset; } - protected void updateData(final ExternalAudioAsset ExternalAudioAsset, + protected void updateData(final ExternalAudioAsset externalAudioAsset, final PageState state) { final Long legalMetadataId = (Long) assetSearchWidget.getValue(state); @@ -109,7 +109,7 @@ public class ExternalAudioAssetForm extends BookmarkForm { "No LegalMetadata asset with ID %d in the database.", legalMetadataId))); - ExternalAudioAsset.setLegalMetadata(legalMetadata); + externalAudioAsset.setLegalMetadata(legalMetadata); } } diff --git a/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ImageForm.java b/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ImageForm.java index 8f713b6d5..bc88aff2c 100644 --- a/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ImageForm.java +++ b/ccm-cms/src/main/java/com/arsdigita/cms/ui/assets/forms/ImageForm.java @@ -26,11 +26,14 @@ import com.arsdigita.bebop.form.TextField; import com.arsdigita.cms.ui.assets.AssetPane; import com.arsdigita.cms.ui.assets.AssetSearchWidget; import com.arsdigita.globalization.GlobalizedMessage; +import org.libreccm.cdi.utils.CdiUtil; import org.librecms.CmsConstants; import org.librecms.assets.BinaryAsset; +import org.librecms.assets.ExternalAudioAsset; import org.librecms.assets.Image; import org.librecms.assets.LegalMetadata; import org.librecms.contentsection.Asset; +import org.librecms.contentsection.AssetRepository; import java.util.Optional; @@ -105,7 +108,7 @@ public class ImageForm extends BinaryAssetForm { image.setHeight(Long.parseLong((String) height.getValue(state))); image.setWidth(Long.parseLong((String) width.getValue(state))); - image.setLegalMetadata((LegalMetadata) assetSearchWidget.getValue(state)); + updateData(image, state); return image; } @@ -123,7 +126,26 @@ public class ImageForm extends BinaryAssetForm { image.setHeight(Long.parseLong((String) height.getValue(state))); image.setWidth(Long.parseLong((String) width.getValue(state))); - image.setLegalMetadata((LegalMetadata) assetSearchWidget.getValue(state)); + + updateData(image, state); + } + + protected void updateData(final Image image, + final PageState state) { + + final Long legalMetadataId = (Long) assetSearchWidget.getValue(state); + if (legalMetadataId != null) { + final CdiUtil cdiUtil = CdiUtil.createCdiUtil(); + final AssetRepository assetRepo = cdiUtil.findBean( + AssetRepository.class); + final LegalMetadata legalMetadata = (LegalMetadata) assetRepo + .findById(legalMetadataId) + .orElseThrow(() -> new IllegalArgumentException(String.format( + "No LegalMetadata asset with ID %d in the database.", + legalMetadataId))); + + image.setLegalMetadata(legalMetadata); + } } @Override