/* eslint-disable jsx-a11y/control-has-associated-label */ /* eslint-disable jsx-a11y/anchor-has-content */ import PropTypes from 'prop-types'; import React, { useContext } from 'react'; import Responsive from 'react-responsive'; import { AppContext } from '@edx/frontend-platform/react'; import { ensureConfig } from '@edx/frontend-platform'; import { OverlayTrigger, Tooltip } from '@edx/paragon'; import { injectIntl, intlShape, } from '@edx/frontend-platform/i18n'; import DesktopHeader from './DesktopHeader'; import MobileHeader from './MobileHeader'; import messages from './Header.messages'; ensureConfig([ 'STUDIO_BASE_URL', 'LOGOUT_URL', 'LOGIN_URL', 'LOGO_URL', ], 'Header component'); const Header = ({ courseId, courseNumber, courseOrg, courseTitle, intl, }) => { const { authenticatedUser, config } = useContext(AppContext); const getPagePath = (isMfePageEnabled, urlParameter) => { if (isMfePageEnabled === 'true') { if (urlParameter === 'tabs') { return `/course/${courseId}/pages-and-resources`; } return `/course/${courseId}/${urlParameter}`; } return `${config.STUDIO_BASE_URL}/${urlParameter}/${courseId}`; }; const mainMenu = [ { type: 'submenu', content: intl.formatMessage(messages['header.links.content']), submenuContent: ( <>
> ), }, { type: 'submenu', content: intl.formatMessage(messages['header.links.settings']), submenuContent: ( <> > ), }, { type: 'submenu', content: intl.formatMessage(messages['header.links.tools']), submenuContent: ( <> > ), }, ]; const studioHomeItem = { type: 'item', href: config.STUDIO_BASE_URL, content: intl.formatMessage(messages['header.user.menu.studio']), }; const logoutItem = { type: 'item', href: config.LOGOUT_URL, content: intl.formatMessage(messages['header.user.menu.logout']), }; let userMenu = []; if (authenticatedUser !== null) { if (authenticatedUser.administrator) { userMenu = [ studioHomeItem, { type: 'item', href: `${config.STUDIO_BASE_URL}/maintenance`, content: intl.formatMessage(messages['header.user.menu.maintenance']), }, logoutItem, ]; } else { userMenu = [ studioHomeItem, logoutItem, ]; } } const courseLockUp = (