diff --git a/src/generic/configure-modal/ConfigureModal.jsx b/src/generic/configure-modal/ConfigureModal.jsx index 04c82200d..ead0d2458 100644 --- a/src/generic/configure-modal/ConfigureModal.jsx +++ b/src/generic/configure-modal/ConfigureModal.jsx @@ -223,6 +223,7 @@ const ConfigureModal = ({ category={category} isSubsection={isSubsection} showWarning={visibilityState === VisibilityTypes.STAFF_ONLY} + isSelfPaced={isSelfPaced} /> diff --git a/src/generic/configure-modal/VisibilityTab.jsx b/src/generic/configure-modal/VisibilityTab.jsx index c6ce99da4..600f417a6 100644 --- a/src/generic/configure-modal/VisibilityTab.jsx +++ b/src/generic/configure-modal/VisibilityTab.jsx @@ -11,6 +11,7 @@ const VisibilityTab = ({ category, showWarning, isSubsection, + isSelfPaced, }) => { const intl = useIntl(); const visibilityTitle = COURSE_BLOCK_NAMES[category]?.name; @@ -53,6 +54,13 @@ const VisibilityTab = ({ setFieldValue('showCorrectness', e.target.value); }; + const hideDueMessage = { + hideContentLabel: isSelfPaced ? messages.hideContentAfterEnd : messages.hideContentAfterDue, + hideContentDescription: ( + isSelfPaced ? messages.hideContentAfterEndDescription : messages.hideContentAfterDueDescription + ), + }; + return ( <>
@@ -72,9 +80,10 @@ const VisibilityTab = ({ - + - + + @@ -130,6 +139,11 @@ VisibilityTab.propTypes = { category: PropTypes.string.isRequired, showWarning: PropTypes.bool.isRequired, isSubsection: PropTypes.bool.isRequired, + isSelfPaced: PropTypes.bool, +}; + +VisibilityTab.defaultProps = { + isSelfPaced: false, }; export default injectIntl(VisibilityTab); diff --git a/src/generic/configure-modal/messages.js b/src/generic/configure-modal/messages.js index 41ef703bd..f8bd514ac 100644 --- a/src/generic/configure-modal/messages.js +++ b/src/generic/configure-modal/messages.js @@ -139,6 +139,14 @@ const messages = defineMessages({ id: 'course-authoring.course-outline.configure-modal.visibility-tab.hide-content-after-due-description', defaultMessage: 'After the subsection\'s due date has passed, learners can no longer access its content. The subsection is not included in grade calculations.', }, + hideContentAfterEnd: { + id: 'course-authoring.course-outline.configure-modal.visibility-tab.hide-content-after-end', + defaultMessage: 'Hide content after end date', + }, + hideContentAfterEndDescription: { + id: 'course-authoring.course-outline.configure-modal.visibility-tab.hide-content-after-end-description', + defaultMessage: 'After the course\'s end date has passed, learners can no longer access its content. The subsection is not included in grade calculations.', + }, hideEntireSubsection: { id: 'course-authoring.course-outline.configure-modal.visibility-tab.hide-entire-subsection', defaultMessage: 'Hide entire subsection',