@@ -28,6 +28,10 @@ ensureConfig([
2828subscribe ( APP_CONFIG_INITIALIZED , ( ) => {
2929 mergeConfig ( {
3030 AUTHN_MINIMAL_HEADER : ! ! process . env . AUTHN_MINIMAL_HEADER ,
31+ DASHBOARD_URL : process . env . DASHBOARD_URL ,
32+ EXTERNAL_ACCOUNT_PROFILE_URL : process . env . EXTERNAL_ACCOUNT_PROFILE_URL ,
33+ SHOW_FULLNAME : process . env . SHOW_FULLNAME ,
34+ SHOW_SETTINGS_LABEL : process . env . SHOW_SETTINGS_LABEL ,
3135 } , 'Header additional config' ) ;
3236} ) ;
3337
@@ -50,11 +54,11 @@ const Header = ({
5054 intl, mainMenuItems, secondaryMenuItems, userMenuItems,
5155} ) => {
5256 const { authenticatedUser, config } = useContext ( AppContext ) ;
53-
57+ const dashboardURL = config . DASHBOARD_URL ? config . DASHBOARD_URL : ` ${ config . LMS_BASE_URL } /dashboard` ;
5458 const defaultMainMenu = [
5559 {
5660 type : 'item' ,
57- href : ` ${ config . LMS_BASE_URL } /dashboard` ,
61+ href : dashboardURL ,
5862 content : intl . formatMessage ( messages [ 'header.links.courses' ] ) ,
5963 } ,
6064 ] ;
@@ -63,18 +67,18 @@ const Header = ({
6367 items : [
6468 {
6569 type : 'item' ,
66- href : ` ${ config . LMS_BASE_URL } /dashboard` ,
70+ href : dashboardURL ,
6771 content : intl . formatMessage ( messages [ 'header.user.menu.dashboard' ] ) ,
6872 } ,
6973 {
7074 type : 'item' ,
71- href : `${ config . ACCOUNT_PROFILE_URL } /u/${ authenticatedUser . username } ` ,
75+ href : config . EXTERNAL_ACCOUNT_PROFILE_URL ? config . EXTERNAL_ACCOUNT_PROFILE_URL : `${ config . ACCOUNT_PROFILE_URL } /u/${ authenticatedUser . username } ` ,
7276 content : intl . formatMessage ( messages [ 'header.user.menu.profile' ] ) ,
7377 } ,
7478 {
7579 type : 'item' ,
7680 href : config . ACCOUNT_SETTINGS_URL ,
77- content : intl . formatMessage ( messages [ 'header.user.menu.account. settings' ] ) ,
81+ content : config . SHOW_SETTINGS_LABEL === 'true' ? intl . formatMessage ( messages [ 'header.user.menu.settings' ] ) : intl . formatMessage ( messages [ 'header.user.menu.account '] ) ,
7882 } ,
7983 // Users should only see Order History if have a ORDER_HISTORY_URL define in the environment.
8084 ...( config . ORDER_HISTORY_URL ? [ {
@@ -107,12 +111,19 @@ const Header = ({
107111 } ,
108112 ] ;
109113
114+ let name = null ;
115+ if ( authenticatedUser !== null && config . SHOW_FULLNAME === 'true' ) {
116+ name = authenticatedUser . name ;
117+ } else if ( authenticatedUser !== null ) {
118+ name = authenticatedUser . username ;
119+ }
120+
110121 const props = {
111122 logo : config . LOGO_URL ,
112123 logoAltText : config . SITE_NAME ,
113- logoDestination : `${ config . LMS_BASE_URL } /dashboard` ,
124+ logoDestination : config . DASHBOARD_URL ? config . DASHBOARD_URL : `${ config . LMS_BASE_URL } /dashboard` ,
114125 loggedIn : authenticatedUser !== null ,
115- username : authenticatedUser !== null ? authenticatedUser . username : null ,
126+ username : name ,
116127 avatar : authenticatedUser !== null ? authenticatedUser . avatar : null ,
117128 mainMenu : getConfig ( ) . AUTHN_MINIMAL_HEADER ? [ ] : mainMenu ,
118129 secondaryMenu : getConfig ( ) . AUTHN_MINIMAL_HEADER ? [ ] : secondaryMenu ,
0 commit comments