From 6385c53bfbafa0897b91865c44d82fae26675c7e Mon Sep 17 00:00:00 2001 From: labkey-jeckels Date: Thu, 15 May 2025 15:01:42 -0700 Subject: [PATCH 1/2] Issue 52395: NPE in.PanoramaPublicController$DeleteExperimentAnnotationsAction.validateCommand() --- .../labkey/panoramapublic/PanoramaPublicController.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java index 6e0982df..48ce12ed 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java +++ b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java @@ -6058,11 +6058,11 @@ else if(children.size() > 0) // If this experiment has been submitted show the submission requests List jsList = SubmissionManager.getAllJournalSubmissions(exptAnnotations); - if (jsList.size() > 0 && getContainer().hasPermission(getUser(), AdminPermission.class)) + if (!jsList.isEmpty() && getContainer().hasPermission(getUser(), AdminPermission.class)) { QuerySettings qSettings = new QuerySettings(getViewContext(), "Submission", "Submission"); qSettings.setBaseFilter(new SimpleFilter(new SimpleFilter.InClause(FieldKey.fromParts("JournalExperimentId"), - jsList.stream().map(js -> js.getJournalExperimentId()).collect(Collectors.toList())))); + jsList.stream().map(JournalSubmission::getJournalExperimentId).collect(Collectors.toList())))); QueryView submissionList = new QueryView(new PanoramaPublicSchema(getUser(), getContainer()), qSettings, errors); submissionList.setShowRecordSelectors(false); submissionList.setButtonBarPosition(DataRegion.ButtonBarPosition.TOP); @@ -6102,7 +6102,7 @@ public void addNavTrail(NavTree root) public static class ExperimentAnnotationsDetails { private final ExperimentAnnotations _experimentAnnotations; - private JournalSubmission _lastSubmittedRecord; + private final JournalSubmission _lastSubmittedRecord; private final boolean _fullDetails; private boolean _canPublish; private String _version; @@ -6590,7 +6590,7 @@ public void validateCommand(DeleteExperimentAnnotationsForm deleteForm, Errors e { errors.reject(ERROR_MSG, "Could not find an experiment with ID " + _experimentAnnotationsId); } - if(_expAnnotations.isJournalCopy() && _expAnnotations.isFinal()) + else if(_expAnnotations.isJournalCopy() && _expAnnotations.isFinal()) { errors.reject(ERROR_MSG, "Experiment cannot be deleted. It is public and is associated with a publication."); } From 18bf9826a91e337248a6820dbd17c0c85e105f21 Mon Sep 17 00:00:00 2001 From: labkey-jeckels Date: Thu, 15 May 2025 15:30:12 -0700 Subject: [PATCH 2/2] Widen panoramapublic.ExperimentAnnotations.LabHeadAffiliation --- .../dbscripts/postgresql/panoramapublic-25.000-25.001.sql | 1 + .../src/org/labkey/panoramapublic/PanoramaPublicModule.java | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 panoramapublic/resources/schemas/dbscripts/postgresql/panoramapublic-25.000-25.001.sql diff --git a/panoramapublic/resources/schemas/dbscripts/postgresql/panoramapublic-25.000-25.001.sql b/panoramapublic/resources/schemas/dbscripts/postgresql/panoramapublic-25.000-25.001.sql new file mode 100644 index 00000000..aa373f15 --- /dev/null +++ b/panoramapublic/resources/schemas/dbscripts/postgresql/panoramapublic-25.000-25.001.sql @@ -0,0 +1 @@ +ALTER TABLE panoramapublic.experimentannotations ALTER COLUMN LabHeadAffiliation TYPE VARCHAR(300); \ No newline at end of file diff --git a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicModule.java b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicModule.java index 0a5c28cb..06f4eae8 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicModule.java +++ b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicModule.java @@ -91,7 +91,7 @@ public String getName() @Override public @Nullable Double getSchemaVersion() { - return 23.001; + return 25.001; } @Override