diff --git a/contentcuration/contentcuration/frontend/administration/components/CommunityLibraryStatusButton.vue b/contentcuration/contentcuration/frontend/administration/components/CommunityLibraryStatusButton.vue index 20a59d5350..46006c211b 100644 --- a/contentcuration/contentcuration/frontend/administration/components/CommunityLibraryStatusButton.vue +++ b/contentcuration/contentcuration/frontend/administration/components/CommunityLibraryStatusButton.vue @@ -48,8 +48,8 @@ icon: 'circleCheckmark', }, [CommunityLibraryStatus.REJECTED]: { - text: 'Flagged', - tooltip: 'Review flagged submission', + text: 'Needs changes', + tooltip: 'Submission requires changes before approval', color: theme.red.v_100, darkColor: theme.red.v_200, labelColor: theme.red.v_600, diff --git a/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/PublishSidePanel.vue b/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/PublishSidePanel.vue index 92c0ffaa39..9f39d34309 100644 --- a/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/PublishSidePanel.vue +++ b/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/PublishSidePanel.vue @@ -16,10 +16,10 @@ @@ -53,7 +53,7 @@ showInvalidText :label="versionDescriptionLabel$()" :invalid="isVersionNotesBlurred && !isVersionNotesValid" - :invalidText="versionNotesRequiredMessage$()" + :invalidText="fieldRequired$()" textArea :maxlength="250" :appearanceOverrides="{ maxWidth: 'none' }" @@ -70,7 +70,7 @@ v-model="newChannelLanguage" :label="languageLabel$()" :invalid="isLanguageSelectBlurred && !isNewLanguageValid" - :invalidText="languageRequiredMessage$()" + :invalidText="fieldRequired$()" :options="languageOptions" @blur="isLanguageSelectBlurred = true" /> @@ -112,15 +112,6 @@ > {{ incompleteResourcesDescription1$() }} -
- {{ incompleteResourcesDescription2$() }} -
@@ -128,10 +119,10 @@
@@ -166,6 +157,7 @@ import { Channel, CommunityLibrarySubmission } from 'shared/data/resources'; import { forceServerSync } from 'shared/data/serverSync'; import { communityChannelsStrings } from 'shared/strings/communityChannelsStrings'; + import commonStrings from 'shared/translator'; import { LanguagesList } from 'shared/leUtils/Languages'; import logging from 'shared/logging'; import { FeatureFlagKeys } from 'shared/constants'; @@ -205,23 +197,22 @@ publishChannel$, publishAction$, saveDraft$, - modeLive$, - modeDraft$, + publishChannelMode$, + publishDraftMode$, versionNotesLabel$, - modeLiveDescription$, - modeDraftDescription$, + publishChannelDescription$, + publishDraftDescription$, publishingInfo$, versionDescriptionLabel$, incompleteResourcesWarning$, incompleteResourcesDescription1$, - incompleteResourcesDescription2$, cancelAction$, languageLabel$, - languageRequiredMessage$, draftBeingPublishedNotice$, - versionNotesRequiredMessage$, } = communityChannelsStrings; + const { fieldRequired$ } = commonStrings; + const currentChannel = computed(() => store.getters['currentChannel/currentChannel']); const getContentNode = computed(() => store.getters['contentNode/getContentNode']); const areAllChangesSaved = computed(() => store.getters['areAllChangesSaved']); @@ -416,21 +407,19 @@ isVersionNotesValid, submitText, - modeLive$, - modeDraft$, + publishChannelMode$, + publishDraftMode$, publishChannel$, versionNotesLabel$, - modeLiveDescription$, - modeDraftDescription$, + publishChannelDescription$, + publishDraftDescription$, publishingInfo$, versionDescriptionLabel$, incompleteResourcesWarning$, incompleteResourcesDescription1$, - incompleteResourcesDescription2$, cancelAction$, languageLabel$, - languageRequiredMessage$, - versionNotesRequiredMessage$, + fieldRequired$, onClose, submit, diff --git a/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/SubmitToCommunityLibrarySidePanel/__tests__/SubmitToCommunityLibrarySidePanel.spec.js b/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/SubmitToCommunityLibrarySidePanel/__tests__/SubmitToCommunityLibrarySidePanel.spec.js index 558ce38c94..9650910905 100644 --- a/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/SubmitToCommunityLibrarySidePanel/__tests__/SubmitToCommunityLibrarySidePanel.spec.js +++ b/contentcuration/contentcuration/frontend/channelEdit/components/sidePanels/SubmitToCommunityLibrarySidePanel/__tests__/SubmitToCommunityLibrarySidePanel.spec.js @@ -30,7 +30,7 @@ jest.mock('shared/data/resources', () => ({ const store = factory(); -const { nonePrimaryInfo$, flaggedPrimaryInfo$, approvedPrimaryInfo$, submittedPrimaryInfo$ } = +const { nonePrimaryInfo$, needsChangesPrimaryInfo$, approvedPrimaryInfo$ } = communityChannelsStrings; async function makeWrapper({ channel, publishedData, latestSubmission }) { @@ -195,7 +195,7 @@ describe('SubmitToCommunityLibrarySidePanel', () => { const infoSection = wrapper.find('.info-section'); expect(infoSection.exists()).toBe(true); - expect(infoSection.text()).toContain(flaggedPrimaryInfo$()); + expect(infoSection.text()).toContain(needsChangesPrimaryInfo$()); }); it('when the previous submission was approved', async () => { @@ -219,7 +219,13 @@ describe('SubmitToCommunityLibrarySidePanel', () => { const infoSection = wrapper.find('.info-section'); expect(infoSection.exists()).toBe(true); - expect(infoSection.text()).toContain(submittedPrimaryInfo$()); + // PENDING status shows no primary info text — only the status chip + const infoText = wrapper.find('.info-text'); + expect(infoText.text()).toBe(''); + // Chip uses