diff --git a/src/course-header/CourseTabsNavigation.jsx b/src/course-header/CourseTabsNavigation.jsx index e4148bcd..efa4aa83 100644 --- a/src/course-header/CourseTabsNavigation.jsx +++ b/src/course-header/CourseTabsNavigation.jsx @@ -14,7 +14,7 @@ function CourseTabsNavigation({
{tabs.map(({ url, title, slug }) => ( + {intl.formatMessage(messages.dashboard)} + + ); + if (enterpriseLearnerPortalLink && Object.keys(enterpriseLearnerPortalLink).length > 0) { + dashboardMenuItem = ( + + {enterpriseLearnerPortalLink.content} + + ); + } + + let headerLogo = ( + + ); + if (enterpriseCustomerBrandingConfig && Object.keys(enterpriseCustomerBrandingConfig).length > 0) { + headerLogo = ( + + ); + } + return (
- + {headerLogo}
{courseOrg} {courseNumber} {courseTitle} @@ -62,17 +93,25 @@ export default function Header({ - Dashboard - Profile - Account + {dashboardMenuItem} + + {intl.formatMessage(messages.profile)} + + + {intl.formatMessage(messages.account)} + {!enterpriseLearnerPortalLink && ( // Users should only see Order History if they do not have an available // learner portal, because an available learner portal currently means // that they access content via Subscriptions, in which context an "order" // is not relevant. - Order History + + {intl.formatMessage(messages.orderHistory)} + )} - Sign Out + + {intl.formatMessage(messages.signOut)} +
@@ -84,6 +123,7 @@ Header.propTypes = { courseOrg: PropTypes.string, courseNumber: PropTypes.string, courseTitle: PropTypes.string, + intl: intlShape.isRequired, }; Header.defaultProps = { @@ -91,3 +131,5 @@ Header.defaultProps = { courseNumber: null, courseTitle: null, }; + +export default injectIntl(Header); diff --git a/src/course-header/messages.js b/src/course-header/messages.js index defda275..5a74ff56 100644 --- a/src/course-header/messages.js +++ b/src/course-header/messages.js @@ -1,11 +1,36 @@ import { defineMessages } from '@edx/frontend-platform/i18n'; const messages = defineMessages({ - 'learn.navigation.course.tabs.label': { + courseMaterial: { id: 'learn.navigation.course.tabs.label', defaultMessage: 'Course Material', description: 'The accessible label for course tabs navigation', }, + dashboard: { + id: 'header.menu.dashboard.label', + defaultMessage: 'Dashboard', + description: 'The text for the user menu Dashboard navigation link.', + }, + profile: { + id: 'header.menu.profile.label', + defaultMessage: 'Profile', + description: 'The text for the user menu Profile navigation link.', + }, + account: { + id: 'header.menu.account.label', + defaultMessage: 'Account', + description: 'The text for the user menu Account navigation link.', + }, + orderHistory: { + id: 'header.menu.orderHistory.label', + defaultMessage: 'Order History', + description: 'The text for the user menu Order History navigation link.', + }, + signOut: { + id: 'header.menu.signOut.label', + defaultMessage: 'Sign Out', + description: 'The label for the user menu Sign Out action.', + }, }); export default messages;