From: Katja Luther Date: Wed, 13 Jan 2021 11:06:04 +0000 (+0100) Subject: fix update of media details header and add published in details X-Git-Tag: 5.19.0~1^2~72 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/commitdiff_plain/527b486740f9659827f6d11edbdff7cff6ab2e38?ds=sidebyside fix update of media details header and add published in details --- diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/MediaDetailsSection.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/MediaDetailsSection.java index 8e4faf430..765b7d772 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/MediaDetailsSection.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/MediaDetailsSection.java @@ -53,6 +53,11 @@ public class MediaDetailsSection extends AbstractCdmDetailSection { layout(); } + + public void setMediaSectionTitle() { + this.setSectionTitle(); + } + /** {@inheritDoc} */ @Override public String getHeading() { diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/media/MediaDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/media/MediaDetailElement.java index 2c967a9ff..ba32bc63e 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/media/MediaDetailElement.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/media/MediaDetailElement.java @@ -44,6 +44,7 @@ import eu.etaxonomy.taxeditor.ui.element.ImageElement; import eu.etaxonomy.taxeditor.ui.element.LayoutConstants; import eu.etaxonomy.taxeditor.ui.element.UriWithLabelElement; import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement; +import eu.etaxonomy.taxeditor.ui.section.description.MediaDetailsSection; /** * @author pplitzner @@ -167,6 +168,14 @@ public class MediaDetailElement extends AbstractCdmDetailElement{ job.schedule(); } } + if (this.getParentElement() != null && this.getParentElement() instanceof MediaMetaElement){ + MediaMetaElement metaElement = (MediaMetaElement)this.getParentElement(); + if (metaElement.getParentElement() != null && metaElement.getParentElement() instanceof MediaDetailsSection){ + MediaDetailsSection sec = (MediaDetailsSection)metaElement.getParentElement(); + sec.setMediaSectionTitle(); + } + } + } } diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java index fd3309c20..8a2307d1c 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java @@ -52,6 +52,7 @@ public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement< private EntitySelectionElement selection_collection; private TextWithLabelElement text_accessionNumber; private EntitySelectionElement selection_publishedIn; + private TextWithLabelElement text_published_in_detail; private CheckboxElement checkIsPublish; private MediaDetailElement mediaDetailElement; @@ -91,14 +92,17 @@ public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement< //the first PrimaryMediaSource is used for storing the reference Reference publishedIn = null; + String publishedInDetail = null; for(IdentifiableSource source:media.getSources()){ if(source.getType()==OriginalSourceType.PrimaryMediaSource){ publishedIn = source.getCitation(); + publishedInDetail = source.getCitationMicroReference(); break; } } selection_publishedIn = formFactory.createSelectionElement(Reference.class, //getConversationHolder(), formElement, "Published in", publishedIn, EntitySelectionElement.ALL, style); + text_published_in_detail = formFactory.createTextWithLabelElement(formElement, "Detail", publishedInDetail, style); checkIsPublish = formFactory.createCheckbox(formElement, "Publish", entity.isPublish(), style); mediaDetailElement = formFactory.createMediaDetailElement(formElement); @@ -150,6 +154,21 @@ public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement< primaryMediaSource.setCitation(selection_publishedIn.getSelection()); } } + else if(eventSource==text_published_in_detail){ + IdentifiableSource primaryMediaSource = null; + for(IdentifiableSource source:media.getSources()){ + if(source.getType()==OriginalSourceType.PrimaryMediaSource){ + primaryMediaSource = source; + } + } + if(primaryMediaSource==null){ + primaryMediaSource = IdentifiableSource.NewInstance(OriginalSourceType.PrimaryMediaSource); + media.addSource(primaryMediaSource); + } + else{ + primaryMediaSource.setCitationMicroReference(text_published_in_detail.getText()); + } + } else if(eventSource==checkIsPublish){ ((MediaSpecimen)getEntity().innerDerivedUnit()).setPublish(checkIsPublish.getSelection()); }