[CST-4878] Remove start and end date when embargo policy is changed to 'open access'

This commit is contained in:
Davide Negretti
2021-11-19 16:22:52 +01:00
parent 8ce6a043bb
commit df957fc31b

View File

@@ -262,17 +262,24 @@ export class SubmissionSectionUploadFileComponent implements OnChanges, OnInit {
.forEach((element) => accessConditionOpt = element); .forEach((element) => accessConditionOpt = element);
if (accessConditionOpt) { if (accessConditionOpt) {
accessConditionOpt = Object.assign({}, accessCondition); const currentAccessCondition = Object.assign({}, accessCondition);
accessConditionOpt.name = this.retrieveValueFromField(accessCondition.name); currentAccessCondition.name = this.retrieveValueFromField(accessCondition.name);
if (accessCondition.startDate) {
const startDate = this.retrieveValueFromField(accessCondition.startDate); /* When start and end date fields are deactivated, their values may be still present in formData,
accessConditionOpt.startDate = dateToISOFormat(startDate); therefore it is necessary to delete them if they're not allowed by the current access condition option. */
} if (!accessConditionOpt.hasStartDate) {
if (accessCondition.endDate) { delete currentAccessCondition.startDate;
const endDate = this.retrieveValueFromField(accessCondition.endDate); } else if (accessCondition.startDate) {
accessConditionOpt.endDate = dateToISOFormat(endDate); const startDate = this.retrieveValueFromField(accessCondition.startDate);
} currentAccessCondition.startDate = dateToISOFormat(startDate);
accessConditionsToSave.push(accessConditionOpt); }
if (!accessConditionOpt.hasEndDate) {
delete currentAccessCondition.endDate;
} else if (accessCondition.endDate) {
const endDate = this.retrieveValueFromField(accessCondition.endDate);
currentAccessCondition.endDate = dateToISOFormat(endDate);
}
accessConditionsToSave.push(currentAccessCondition);
} }
}); });