Bugfixes for authoring steps of Proceedings and InProceedings
parent
c620cba76e
commit
eb9cd0b4ea
|
|
@ -45,28 +45,32 @@ public class ProceedingsManager {
|
|||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public void removeArticleFromProceedings(
|
||||
final InProceedings paper,
|
||||
final Proceedings collectedVolume
|
||||
final Proceedings proceedings
|
||||
) {
|
||||
Objects.requireNonNull(paper);
|
||||
Objects.requireNonNull(collectedVolume);
|
||||
Objects.requireNonNull(proceedings);
|
||||
|
||||
if (!collectedVolume.equals(paper.getProceedings())
|
||||
|| !collectedVolume.getPapers().contains(paper)) {
|
||||
if (paper.getProceedings() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!proceedings.getUuid().equals(paper.getProceedings().getUuid())
|
||||
|| !proceedings.getPapers().contains(paper)) {
|
||||
throw new IllegalArgumentException(
|
||||
String.format(
|
||||
"The provided paper %s is not a paper of the "
|
||||
+ "provided proceedings %s.",
|
||||
paper.getUuid(),
|
||||
collectedVolume.getUuid()
|
||||
proceedings.getUuid()
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
paper.setProceedings(null);
|
||||
collectedVolume.removePaper(paper);
|
||||
proceedings.removePaper(paper);
|
||||
|
||||
publicationRepository.save(paper);
|
||||
publicationRepository.save(collectedVolume);
|
||||
publicationRepository.save(proceedings);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ import javax.ws.rs.PathParam;
|
|||
bundle = SciPublicationsUiConstants.BUNDLE,
|
||||
descriptionKey = "authoringsteps.extendedproperties.description",
|
||||
labelKey = "authoringsteps.extendedproperties.label",
|
||||
supportedDocumentType = MonographItem.class
|
||||
supportedDocumentType = InProceedingsItem.class
|
||||
)
|
||||
public class InProceedingsExtendedPropertiesStep
|
||||
extends AbstractPublicationExtendedPropertiesStep<InProceedingsItem, InProceedings> {
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ import javax.ws.rs.PathParam;
|
|||
bundle = SciPublicationsUiConstants.BUNDLE,
|
||||
descriptionKey = "authoringsteps.basicproperties.description",
|
||||
labelKey = "authoringsteps.basicproperties.label",
|
||||
supportedDocumentType = ArticleInCollectedVolumeItem.class
|
||||
supportedDocumentType = InProceedingsItem.class
|
||||
)
|
||||
public class InProceedingsPropertiesStep
|
||||
extends AbstractPublicationPropertiesStep<InProceedingsItem, InProceedings> {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ import javax.ws.rs.PathParam;
|
|||
bundle = SciPublicationsUiConstants.BUNDLE,
|
||||
descriptionKey = "authoringsteps.extendedproperties.description",
|
||||
labelKey = "authoringsteps.extendedproperties.label",
|
||||
supportedDocumentType = CollectedVolumeItem.class
|
||||
supportedDocumentType = ProceedingsItem.class
|
||||
)
|
||||
public class ProceedingsExtendedPropertiesStep extends AbstractPublicationWithPublisherExtendedPropertiesStep<ProceedingsItem, Proceedings> {
|
||||
|
||||
|
|
|
|||
|
|
@ -423,7 +423,7 @@ public class ProceedingsPropertiesStep
|
|||
final String placeOfConference,
|
||||
@FormParam("startDate")
|
||||
final String startDateParam,
|
||||
@FormParam("endDateParam")
|
||||
@FormParam("endDate")
|
||||
final String endDateParam
|
||||
) {
|
||||
super.updateProperties(
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
xmlns:libreccm="http://xmlns.jcp.org/jsf/composite/components/libreccm"
|
||||
xmlns:librecms="http://xmlns.jcp.org/jsf/composite/components/librecms"
|
||||
xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
|
||||
<ui:composition template="/WEB-INF/views/org/scientificcms/contenttypes/ui/edit-publication-extented-properties.xhtml">
|
||||
<ui:composition template="/WEB-INF/views/org/scientificcms/contenttypes/ui/edit-publication-extended-properties.xhtml">
|
||||
|
||||
<ui:param name="authoringStep"
|
||||
value="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@inproceedings-extendedproperties" />
|
||||
|
|
|
|||
|
|
@ -78,18 +78,18 @@
|
|||
#{SciCmsInProceedingsPropertiesStepModel.proceedingsTitle}
|
||||
</p>
|
||||
</c:otherwise>
|
||||
<c:if test="#{CmsSelectedDocumentModel.canEdit and SciCmsInProceedingsPropertiesStepModel.proceedingsTitle == null}">
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@inproceedings-basicproperties/proceedings/remove"
|
||||
buttonText="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove']}"
|
||||
cancelLabel="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.cancel']}"
|
||||
confirmLabel="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.confirm']}"
|
||||
dialogId="remove-proceedings-dialog"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.title']}"
|
||||
message="#{SciPublicationsUiMessageBundle.getMessage('inproceedings.basicproperties.proceedings.remove.message', [CmsSelectedDocumentModel.name, SciCmsInProceedingsPropertiesStepModel.proceedingsTitle])}"
|
||||
/>
|
||||
</c:if>
|
||||
</c:choose>
|
||||
<c:if test="#{CmsSelectedDocumentModel.canEdit and SciCmsInProceedingsPropertiesStepModel.proceedingsTitle != null}">
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@inproceedings-basicproperties/proceedings/remove"
|
||||
buttonText="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove']}"
|
||||
cancelLabel="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.cancel']}"
|
||||
confirmLabel="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.confirm']}"
|
||||
dialogId="remove-proceedings-dialog"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['inproceedings.basicproperties.proceedings.remove.title']}"
|
||||
message="#{SciPublicationsUiMessageBundle.getMessage('inproceedings.basicproperties.proceedings.remove.message', [CmsSelectedDocumentModel.itemName, SciCmsInProceedingsPropertiesStepModel.proceedingsTitle])}"
|
||||
/>
|
||||
</c:if>
|
||||
|
||||
</ui:define>
|
||||
|
||||
|
|
|
|||
|
|
@ -79,37 +79,7 @@
|
|||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
<h3 class="mt-5">#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.header']}</h3>
|
||||
|
||||
<bootstrap:formGroupText
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.name.help']}"
|
||||
inputId="name-of-conference"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.name.label']}"
|
||||
name="nameOfConference"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupText
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.place.help']}"
|
||||
inputId="place-of-conference"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.place.label']}"
|
||||
name="placeOfConference"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupDate
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.startdate.help']}"
|
||||
inputId="startdate"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.startdate.label']}"
|
||||
name="startDate"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupDate
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.enddate.help']}"
|
||||
inputId="end"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.enddate.label']}"
|
||||
name="endDate"
|
||||
/>
|
||||
|
||||
<h4 class="mt-5">#{SciPublicationsUiMessageBundle['proceedings.basicproperties.organizer.header']}</h3>
|
||||
<h4 class="mt-5">#{SciPublicationsUiMessageBundle['proceedings.basicproperties.organizer.header']}</h4>
|
||||
<div class="mb-2">
|
||||
<div class="text-right">
|
||||
<librecms:assetPickerButton
|
||||
|
|
@ -120,31 +90,86 @@
|
|||
</div>
|
||||
</div>
|
||||
<librecms:assetPicker
|
||||
actionUrl="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@proceedings-basicproperties/organizer"
|
||||
assetType="#{SciCmsProceedingsPropertiesStepModel.organizerType}"
|
||||
assetPickerId="organizer-picker"
|
||||
baseUrl="#{SciCmsPublicationPropertiesStepModel.baseUrl}"
|
||||
contentSection="#{ContentSectionModel.sectionName}"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.select.dialog.title']}"
|
||||
formParamName="organizerIdentifier"
|
||||
actionUrl="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@proceedings-basicproperties/organizer"
|
||||
assetType="#{SciCmsProceedingsPropertiesStepModel.organizerType}"
|
||||
assetPickerId="organizer-picker"
|
||||
baseUrl="#{SciCmsPublicationPropertiesStepModel.baseUrl}"
|
||||
contentSection="#{ContentSectionModel.sectionName}"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.select.dialog.title']}"
|
||||
formParamName="organizerIdentifier"
|
||||
/>
|
||||
<p>
|
||||
#{SciCmsProceedingsPropertiesStepModel.organizer}
|
||||
</p>
|
||||
<c:if test="#{SciCmsProceedingsPropertiesStepModel.organizerUuid != null}">
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@proceedings-basicproperties/organizer/@remove"
|
||||
buttonText="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.remove.label']}"
|
||||
cancelLabel="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.cancel']}"
|
||||
confirmLabel="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.confirm']}"
|
||||
dialogId="organizer-remove"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.title']}"
|
||||
message="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.message']}"
|
||||
/>
|
||||
<p>
|
||||
#{SciCmsProceedingsPropertiesStepModel.organizer}
|
||||
</p>
|
||||
<c:if test="#{SciCmsProceedingsPropertiesStepModel.organzierUuid != null}">
|
||||
<libreccm:deleteDialog
|
||||
actionTarget="#{mvc.basePath}/#{ContentSectionModel.sectionName}/documents/#{CmsSelectedDocumentModel.itemPath}/@proceedings-basicproperties/organizer/@remove"
|
||||
buttonText="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.remove.label']}"
|
||||
cancelLabel="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.cancel']}"
|
||||
confirmLabel="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.confirm']}"
|
||||
dialogId="organizer-remove"
|
||||
dialogTitle="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.title']}"
|
||||
message="#{SciPublicationsUiMessageBundle['proceedings.editstep.organizer.message']}"
|
||||
/>
|
||||
</c:if>
|
||||
</c:if>
|
||||
|
||||
</ui:define>
|
||||
|
||||
|
||||
<ui:define name="publicationBasicPropertiesForm">
|
||||
<bootstrap:formGroupText
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.name.help']}"
|
||||
inputId="name-of-conference"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.name.label']}"
|
||||
name="nameOfConference"
|
||||
value="#{SciCmsProceedingsPropertiesStepModel.nameOfConference}"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupText
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.place.help']}"
|
||||
inputId="place-of-conference"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.place.label']}"
|
||||
name="placeOfConference"
|
||||
value="#{SciCmsProceedingsPropertiesStepModel.placeOfConference}"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupDate
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.startdate.help']}"
|
||||
inputId="startdate"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.startdate.label']}"
|
||||
name="startDate"
|
||||
value="#{SciCmsProceedingsPropertiesStepModel.startDate}"
|
||||
/>
|
||||
|
||||
<bootstrap:formGroupDate
|
||||
help="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.enddate.help']}"
|
||||
inputId="enddate"
|
||||
label="#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.enddate.label']}"
|
||||
name="endDate"
|
||||
value="#{SciCmsProceedingsPropertiesStepModel.endDate}"
|
||||
/>
|
||||
|
||||
</ui:define>
|
||||
|
||||
<ui:define name="publicationBasicPropertiesDl">
|
||||
<div>
|
||||
<dt>#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.name.label']}</dt>
|
||||
<dd>#{SciCmsProceedingsPropertiesStepModel.nameOfConference}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.place.label']}</dt>
|
||||
<dd>#{SciCmsProceedingsPropertiesStepModel.placeOfConference}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.startdate.label']}</dt>
|
||||
<dd>#{SciCmsProceedingsPropertiesStepModel.startDate}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>#{SciPublicationsUiMessageBundle['proceedings.basicproperties.conference.enddate.label']}</dt>
|
||||
<dd>#{SciCmsProceedingsPropertiesStepModel.endDate}</dd>
|
||||
</div>
|
||||
</ui:define>
|
||||
|
||||
<ui:define name="publicationScripts">
|
||||
<script src="#{request.contextPath}/assets/@scipublications/publication-picker.js" />
|
||||
</ui:define>
|
||||
|
|
|
|||
|
|
@ -526,3 +526,4 @@ inproceedings.basicproperties.proceedings.remove.confirm=Remove
|
|||
inproceedings.basicproperties.proceedings.remove.title=Remove paper from Proceedings
|
||||
inproceedings.basicproperties.proceedings.remove.message=Are you sure to remove the paper {0} from the Proceedings {1}?
|
||||
inproceedings.extendedproperties.header=Edit extended properties of Inproceedings {0}
|
||||
proceedings.extendedproperties.header=Extended Properties of Proceedings {0}
|
||||
|
|
|
|||
|
|
@ -526,3 +526,4 @@ inproceedings.basicproperties.proceedings.remove.confirm=Entfernen
|
|||
inproceedings.basicproperties.proceedings.remove.title=Beitrag aus Tagungsband entfernen
|
||||
inproceedings.basicproperties.proceedings.remove.message=Sind Sie sicher, dass Sie den Beitrag {0} aus dem Tagungsband {1} entfernen wollen?
|
||||
inproceedings.extendedproperties.header=Tagungsbandbeitrag {0} bearbeiten
|
||||
proceedings.extendedproperties.header=Erweiterte Eigenschaften des Tagungsbandes {0}
|
||||
|
|
|
|||
Loading…
Reference in New Issue