Skip to content

Commit 814b411

Browse files
authored
Merge pull request #4360 from the-library-code/fix_submission_section_enabling
Fix and simplify submission section 'enabled' logic
2 parents 2fffda3 + f77dfa3 commit 814b411

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/app/submission/objects/submission-objects.effects.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -97,11 +97,13 @@ export class SubmissionObjectEffects {
9797
const sectionId = selfLink.substr(selfLink.lastIndexOf('/') + 1);
9898
const config = sectionDefinition._links.config ? (sectionDefinition._links.config.href || sectionDefinition._links.config) : '';
9999
// A section is enabled if it is mandatory or contains data in its section payload
100-
// except for detect duplicate steps which will be hidden with no data unless overridden in config, even if mandatory
101-
const enabled = (sectionDefinition.mandatory && (sectionDefinition.sectionType !== SectionsType.Duplicates))
102-
|| (isNotEmpty(action.payload.sections) && action.payload.sections.hasOwnProperty(sectionId)
103-
&& (sectionDefinition.sectionType === SectionsType.Duplicates && (alwaysDisplayDuplicates() || isNotEmpty((action.payload.sections[sectionId] as WorkspaceitemSectionDuplicatesObject).potentialDuplicates)))
104-
);
100+
let enabled = (sectionDefinition.mandatory || (isNotEmpty(action.payload.sections) && action.payload.sections.hasOwnProperty(sectionId)));
101+
102+
// Duplicates will ignore mandatory and display only when "always display" is set or there is data to show
103+
if (sectionDefinition.sectionType === SectionsType.Duplicates) {
104+
enabled = (alwaysDisplayDuplicates() || isNotEmpty((action.payload.sections[sectionId] as WorkspaceitemSectionDuplicatesObject).potentialDuplicates));
105+
}
106+
105107
let sectionData;
106108
if (sectionDefinition.sectionType !== SectionsType.SubmissionForm) {
107109
sectionData = (isNotUndefined(action.payload.sections) && isNotUndefined(action.payload.sections[sectionId])) ? action.payload.sections[sectionId] : Object.create(null);

0 commit comments

Comments
 (0)