Bugfixes for editing the extended properties of a publication.
parent
4344e3406b
commit
10789bc7a5
|
|
@ -320,7 +320,7 @@ public class PublicationManager {
|
|||
public void addSeries(
|
||||
final Series series,
|
||||
final Publication publication,
|
||||
final String volumeInSeries
|
||||
final String volumeOfSeries
|
||||
) {
|
||||
Objects.requireNonNull(series);
|
||||
Objects.requireNonNull(publication);
|
||||
|
|
@ -342,11 +342,13 @@ public class PublicationManager {
|
|||
}
|
||||
|
||||
final VolumeInSeries volume = new VolumeInSeries();
|
||||
volume.setUuid(UUID.randomUUID().toString());
|
||||
volume.setPublication(publication);
|
||||
volume.setSeries(series);
|
||||
volume.setVolumeOfSeries(volumeInSeries);
|
||||
volume.setVolumeOfSeries(volumeOfSeries);
|
||||
publication.addSeries(volume);
|
||||
series.addVolume(volume);
|
||||
entityManager.persist(volume);
|
||||
seriesRepository.save(series);
|
||||
publicationRepository.save(publication);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ import java.util.stream.Collectors;
|
|||
|
||||
import javax.inject.Inject;
|
||||
import javax.mvc.Models;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.transaction.Transactional;
|
||||
import javax.ws.rs.FormParam;
|
||||
|
|
@ -58,6 +59,9 @@ public abstract class AbstractPublicationExtendedPropertiesStep<T extends Public
|
|||
@Inject
|
||||
private DocumentUi documentUi;
|
||||
|
||||
@Inject
|
||||
private EntityManager entityManager;
|
||||
|
||||
@Inject
|
||||
private GlobalizationHelper globalizationHelper;
|
||||
|
||||
|
|
@ -163,6 +167,10 @@ public abstract class AbstractPublicationExtendedPropertiesStep<T extends Public
|
|||
propertiesStepModel.setLanguages(
|
||||
Arrays
|
||||
.stream(Locale.getAvailableLocales())
|
||||
.filter(
|
||||
locale -> locale.getCountry() == null
|
||||
|| locale.getCountry().isEmpty()
|
||||
)
|
||||
.sorted(
|
||||
Comparator
|
||||
.comparing(this::toLocalizedDisplayName)
|
||||
|
|
@ -185,6 +193,7 @@ public abstract class AbstractPublicationExtendedPropertiesStep<T extends Public
|
|||
// )
|
||||
)
|
||||
);
|
||||
|
||||
propertiesStepModel.setEditStepUrlFragment(getEditStepUrlFragment());
|
||||
|
||||
propertiesStepModel.setBaseUrl(baseUrl.getBaseUrl(request));
|
||||
|
|
@ -357,8 +366,8 @@ public abstract class AbstractPublicationExtendedPropertiesStep<T extends Public
|
|||
final String documentPath,
|
||||
@PathParam("volumeInSeriesUuid")
|
||||
final String volumeInSeriesUuid,
|
||||
@FormParam("volumeInSeries")
|
||||
final String volumeInSeriesValue
|
||||
@FormParam("volumeOfSeries")
|
||||
final String volumeOfSeries
|
||||
) {
|
||||
try {
|
||||
init();
|
||||
|
|
@ -390,7 +399,8 @@ public abstract class AbstractPublicationExtendedPropertiesStep<T extends Public
|
|||
}
|
||||
|
||||
final VolumeInSeries volumeInSeries = volumeInSeriesResult.get();
|
||||
volumeInSeries.setVolumeOfSeries(volumeInSeriesValue);
|
||||
volumeInSeries.setVolumeOfSeries(volumeOfSeries);
|
||||
entityManager.merge(volumeInSeries);
|
||||
|
||||
publicationRepo.save(getPublication());
|
||||
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ public abstract class AbstractPublicationWithPublisherExtendedPropertiesStep<T e
|
|||
publication.getNumberOfVolumes()
|
||||
);
|
||||
propertiesStepModel.setVolume(publication.getVolume());
|
||||
|
||||
|
||||
propertiesStepModel.setEditionValues(
|
||||
publication
|
||||
.getEdition()
|
||||
|
|
|
|||
|
|
@ -194,19 +194,19 @@ public class MonographExtendedPropertiesStep extends AbstractPublicationWithPubl
|
|||
final String documentPath,
|
||||
@PathParam("volumeInSeriesUuid")
|
||||
final String volumeInSeriesUuid,
|
||||
@FormParam("volumeInSeries")
|
||||
final String volumeInSeriesValue
|
||||
@FormParam("volumeOfSeries")
|
||||
final String volumeOfSeries
|
||||
) {
|
||||
return super.editVolumeInSeries(
|
||||
sectionIdentifier,
|
||||
documentPath,
|
||||
volumeInSeriesUuid,
|
||||
volumeInSeriesValue
|
||||
volumeOfSeries
|
||||
);
|
||||
}
|
||||
|
||||
@POST
|
||||
@Path("/series/{seriesUuid}/remove")
|
||||
@Path("/series/{volumeInSeriesUuid}/remove")
|
||||
@AuthorizationRequired
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -65,15 +65,8 @@
|
|||
label="#{SciPublicationsUiMessageBundle['extendedproperties.languageofpublication.label']}"
|
||||
name="languageOfPublication"
|
||||
options="#{SciCmsPublicationExtendedPropertiesStepModel.languages}"
|
||||
selectedOptions="#{List.of(SciCmsPublicationExtendedPropertiesStepModel.languageOfPublicationSelectedOptions)}"
|
||||
selectedOptions="#{SciCmsPublicationExtendedPropertiesStepModel.languageOfPublicationSelectedOptions}"
|
||||
/>
|
||||
|
||||
<pre>
|
||||
<c:forEach items="#{SciCmsPublicationExtendedPropertiesStepModel.languageOfPublicationSelectedOptions}"
|
||||
var="lang">
|
||||
#{lang},
|
||||
</c:forEach>
|
||||
</pre>
|
||||
|
||||
<ui:insert name="publicationExtendedPropertiesFormElements" />
|
||||
</div>
|
||||
|
|
@ -104,7 +97,7 @@
|
|||
#{SciPublicationsUiMessageBundle['extendedproperties.peerreviewed.no']}
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
</dd>
|
||||
</div>
|
||||
<div>
|
||||
|
|
@ -120,7 +113,7 @@
|
|||
</dl>
|
||||
|
||||
<c:if test="#{CmsSelectedDocumentModel.canEdit}">
|
||||
<h3>#{SciPublicationsUiMessageBundle['extendedproeprties.volumeinseries.header']}</h3>
|
||||
<h3>#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.header']}</h3>
|
||||
<div class="mb-2">
|
||||
<div class="text-right">
|
||||
<librecms:assetPickerButton
|
||||
|
|
@ -141,9 +134,9 @@
|
|||
>
|
||||
<bootstrap:formGroupText
|
||||
help="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.volumeinseries.help']}"
|
||||
inputId="volume-in-series"
|
||||
inputId="volume-of-series"
|
||||
label="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.volumeinseries.label']}"
|
||||
name="volumeInSeries"
|
||||
name="volumeOfSeries"
|
||||
/>
|
||||
</librecms:assetPicker>
|
||||
</c:if>
|
||||
|
|
@ -202,7 +195,7 @@
|
|||
help="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.volumeinseries.help']}"
|
||||
inputId="#{volume.volumeInSeriesUuid}-volumeinseries"
|
||||
label="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.volumeinseries.label']}"
|
||||
name="volumeInSeries"
|
||||
name="volumeOfSeries"
|
||||
value="#{volume.volumeInSeries}"
|
||||
/>
|
||||
</div>
|
||||
|
|
@ -223,7 +216,7 @@
|
|||
</td>
|
||||
<td>
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@#{SciCmsPublicationExtendedPropertiesStepModel.editStepUrlFragment}/#{volume.volumeInSeriesUuid}/remove"
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@#{SciCmsPublicationExtendedPropertiesStepModel.editStepUrlFragment}/series/#{volume.volumeInSeriesUuid}/remove"
|
||||
buttonText="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.remove.label']}"
|
||||
cancelLabel="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.remove.cancel']}"
|
||||
confirmLabel="#{SciPublicationsUiMessageBundle['extendedproperties.volumeinseries.remove.confirm']}"
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@
|
|||
/>
|
||||
|
||||
<bootstrap:formGroupNumber
|
||||
help="#{SciPublicationsUiMessageBundle['extendedproeprties.numberofvolumes.help']}"
|
||||
help="#{SciPublicationsUiMessageBundle['extendedproperties.numberofvolumes.help']}"
|
||||
inputId="number-of-volumes"
|
||||
label="#{SciPublicationsUiMessageBundle['extendedproperties.numberofvolumes.label']}"
|
||||
name="numberOfVolumes"
|
||||
|
|
@ -87,9 +87,10 @@
|
|||
|
||||
<libreccm:localizedStringEditor
|
||||
addMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@#{SciCmsPublicationExtendedPropertiesStepModel.editStepUrlFragment}/edition/@add"
|
||||
readOnly="#{!CmsSelectedDocumentModel.canEdit}"
|
||||
editMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@#{SciCmsPublicationExtendedPropertiesStepModel.editStepUrlFragment}/edition/@edit"
|
||||
editorId="edition-editor"
|
||||
hasUnusedLocales="#{SciCmsPublicationWithPublisherExtendedPropertiesStep.unusedEditionLocales.isEmpty()}"
|
||||
hasUnusedLocales="#{!SciCmsPublicationWithPublisherExtendedPropertiesStep.unusedEditionLocales.isEmpty()}"
|
||||
objectIdentifier="#{CmsSelectedDocumentModel.itemPath}"
|
||||
removeMethod="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@#{SciCmsPublicationExtendedPropertiesStepModel.editStepUrlFragment}/edition/@remove"
|
||||
title="#{SciPublicationsUiMessageBundle['extendedproperties.edition.editdialog.title']}"
|
||||
|
|
|
|||
|
|
@ -420,3 +420,4 @@ extendedproperties.edition.editdialog.title=Edition
|
|||
monograph.extendedproperties.header=Extended properties of monograph {0}
|
||||
extendedproperties.peerreviewed.yes=Yes
|
||||
extendedproperties.peerreviewed.no=No
|
||||
extendedproperties.volumeinseries.volumeinseries.label=Volume
|
||||
|
|
|
|||
|
|
@ -420,3 +420,4 @@ extendedproperties.edition.editdialog.title=Ausgabe
|
|||
monograph.extendedproperties.header=Erweiterte Eigenschaften der Monographie {0}
|
||||
extendedproperties.peerreviewed.yes=Ja
|
||||
extendedproperties.peerreviewed.no=Nein
|
||||
extendedproperties.volumeinseries.volumeinseries.label=Band
|
||||
|
|
|
|||
Loading…
Reference in New Issue