From 24433cfd8599c71d2eb3616fc4c9d030c47f56c2 Mon Sep 17 00:00:00 2001 From: Stephen Kraffmiller Date: Fri, 19 Mar 2021 14:17:18 -0400 Subject: [PATCH 1/3] #7675 add pub reminders to save success messages --- .../edu/harvard/iq/dataverse/DatasetPage.java | 46 +++++++++++++++---- src/main/java/propertyFiles/Bundle.properties | 6 ++- 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java index 5f596d1b556..15cbbd9d7d1 100644 --- a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java @@ -1107,6 +1107,29 @@ public String getComputeUrl() throws IOException { } + + //get a string to add to save success message + //depends on dataset state and user privleges + private String getReminderString(Dataset dataset) { + + //dataset id is null before first save -- needed for create mode + if( dataset.getId() == null || !dataset.isReleased() ){ + //messages for draft state. + if (canPublishDataset()){ + return BundleUtil.getStringFromBundle("dataset.message.publish.remind.draft"); + } else { + return BundleUtil.getStringFromBundle("dataset.message.submit.remind.draft"); + } + } else{ + //messages for new version - post-publish + if (canPublishDataset()){ + return BundleUtil.getStringFromBundle("dataset.message.publish.remind.version"); + } else { + return BundleUtil.getStringFromBundle("dataset.message.submit.remind.version"); + } + } + } + //For a single file public String getComputeUrl(FileMetadata metadata) { SwiftAccessIO swiftObject = null; @@ -1280,6 +1303,11 @@ public boolean canUpdateDataset() { public boolean canPublishDataverse() { return permissionsWrapper.canIssuePublishDataverseCommand(dataset.getOwner()); } + + public boolean canPublishDataset(){ + permissionsWrapper.doesSessionUserHaveDataSetPermission(dvRequestService.getDataverseRequest(), dataset, Permission.PublishDataset); + return permissionsWrapper.canIssuePublishDatasetCommand(dataset); + } public boolean canViewUnpublishedDataset() { return permissionsWrapper.canViewUnpublishedDataset( dvRequestService.getDataverseRequest(), dataset); @@ -3347,6 +3375,8 @@ public String save() { return ""; } + + // Use the Create or Update command to save the dataset: Command cmd; Map deleteStorageLocations = null; @@ -3450,7 +3480,7 @@ public String save() { } if (addFilesSuccess && dataset.getFiles().size() > 0) { if (nNewFiles == dataset.getFiles().size()) { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.createSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.createSuccess").concat(" ").concat(getReminderString(dataset))); } else { String partialSuccessMessage = BundleUtil.getStringFromBundle("dataset.message.createSuccess.partialSuccessSavingFiles"); partialSuccessMessage = partialSuccessMessage.replace("{0}", "" + dataset.getFiles().size() + ""); @@ -3460,26 +3490,26 @@ public String save() { } else { JsfHelper.addWarningMessage(BundleUtil.getStringFromBundle("dataset.message.createSuccess.failedToSaveFiles")); } - } else { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.createSuccess")); + } else { + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.createSuccess").concat(" ").concat(getReminderString(dataset))); } } if (editMode.equals(EditMode.METADATA)) { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.metadataSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.metadataSuccess").concat(" ").concat(getReminderString(dataset))); } if (editMode.equals(EditMode.LICENSE)) { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.termsSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.termsSuccess").concat(" ").concat(getReminderString(dataset))); } if (editMode.equals(EditMode.FILE)) { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.filesSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.filesSuccess").concat(" ").concat(getReminderString(dataset))); } } else { // must have been a bulk file update or delete: if (bulkFileDeleteInProgress) { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.bulkFileDeleteSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.bulkFileDeleteSuccess").concat(" ").concat(getReminderString(dataset))); } else { - JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.bulkFileUpdateSuccess")); + JsfHelper.addSuccessMessage(BundleUtil.getStringFromBundle("dataset.message.bulkFileUpdateSuccess").concat(" ").concat(getReminderString(dataset))); } } diff --git a/src/main/java/propertyFiles/Bundle.properties b/src/main/java/propertyFiles/Bundle.properties index abcd502d638..0fd0f443794 100644 --- a/src/main/java/propertyFiles/Bundle.properties +++ b/src/main/java/propertyFiles/Bundle.properties @@ -1403,10 +1403,14 @@ dataset.message.createSuccess.failedToSaveFiles=Partial Success: The dataset has dataset.message.createSuccess.partialSuccessSavingFiles=Partial Success: The dataset has been created. But only {0} out of {1} files have been saved. Please try uploading the missing file(s) again. dataset.message.linkSuccess= {0} has been successfully linked to {1}. dataset.message.metadataSuccess=The metadata for this dataset has been updated. -dataset.message.termsSuccess=The terms for this dataset has been updated. +dataset.message.termsSuccess=The terms for this dataset have been updated. dataset.message.filesSuccess=The files for this dataset have been updated. dataset.message.addFiles.Failure=Failed to add files to the dataset. Please try uploading the file(s) again. dataset.message.addFiles.partialSuccess=Partial success: only {0} files out of {1} have been saved. Please try uploading the missing file(s) again. +dataset.message.publish.remind.draft=If it's ready for sharing, please publish it. +dataset.message.submit.remind.draft=If it's ready for sharing, please submit it for review. +dataset.message.publish.remind.version=If it\u2019s ready for sharing, please publish it so that others can see these changes. +dataset.message.submit.remind.version=If it\u2019s ready for sharing, please submit it for review so that others can see these changes. dataset.message.publishSuccess=This dataset has been published. dataset.message.only.authenticatedUsers=Only authenticated users may release Datasets. dataset.message.deleteSuccess=This dataset has been deleted. From fd3b3f153d4438236bb0c85429c2a6e2c6692cc1 Mon Sep 17 00:00:00 2001 From: Stephen Kraffmiller Date: Fri, 19 Mar 2021 15:06:23 -0400 Subject: [PATCH 2/3] #7675 remove unused code --- src/main/java/edu/harvard/iq/dataverse/DatasetPage.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java index 15cbbd9d7d1..b377c57b68b 100644 --- a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java @@ -1305,7 +1305,6 @@ public boolean canPublishDataverse() { } public boolean canPublishDataset(){ - permissionsWrapper.doesSessionUserHaveDataSetPermission(dvRequestService.getDataverseRequest(), dataset, Permission.PublishDataset); return permissionsWrapper.canIssuePublishDatasetCommand(dataset); } From 6b2a89ffcb089062fa8673c0fea0679f6f0cc5b0 Mon Sep 17 00:00:00 2001 From: Stephen Kraffmiller Date: Fri, 19 Mar 2021 15:07:33 -0400 Subject: [PATCH 3/3] #7675 get standard apostrophe --- src/main/java/propertyFiles/Bundle.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/propertyFiles/Bundle.properties b/src/main/java/propertyFiles/Bundle.properties index 0fd0f443794..46998453ae1 100644 --- a/src/main/java/propertyFiles/Bundle.properties +++ b/src/main/java/propertyFiles/Bundle.properties @@ -1409,8 +1409,8 @@ dataset.message.addFiles.Failure=Failed to add files to the dataset. Please try dataset.message.addFiles.partialSuccess=Partial success: only {0} files out of {1} have been saved. Please try uploading the missing file(s) again. dataset.message.publish.remind.draft=If it's ready for sharing, please publish it. dataset.message.submit.remind.draft=If it's ready for sharing, please submit it for review. -dataset.message.publish.remind.version=If it\u2019s ready for sharing, please publish it so that others can see these changes. -dataset.message.submit.remind.version=If it\u2019s ready for sharing, please submit it for review so that others can see these changes. +dataset.message.publish.remind.version=If it's ready for sharing, please publish it so that others can see these changes. +dataset.message.submit.remind.version=If it's ready for sharing, please submit it for review so that others can see these changes. dataset.message.publishSuccess=This dataset has been published. dataset.message.only.authenticatedUsers=Only authenticated users may release Datasets. dataset.message.deleteSuccess=This dataset has been deleted.