@@ -26,18 +26,22 @@ ensureConfig([
26
26
27
27
subscribe ( APP_CONFIG_INITIALIZED , ( ) => {
28
28
mergeConfig ( {
29
+ ACCOUNT_SETTINGS_LABEL : process . env . ACCOUNT_SETTINGS_LABEL ,
29
30
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 ,
30
33
SHOW_FULLNAME : process . env . SHOW_FULLNAME ,
31
34
} , 'Header additional config' ) ;
32
35
} ) ;
33
36
34
37
const Header = ( { intl } ) => {
35
38
const { authenticatedUser, config } = useContext ( AppContext ) ;
36
39
40
+ const dashboardURL = config . DASHBOARD_URL ? config . DASHBOARD_URL : `${ config . LMS_BASE_URL } /dashboard`
37
41
const mainMenu = [
38
42
{
39
43
type : 'item' ,
40
- href : ` ${ config . LMS_BASE_URL } /dashboard` ,
44
+ href : dashboardURL ,
41
45
content : intl . formatMessage ( messages [ 'header.links.courses' ] ) ,
42
46
} ,
43
47
] ;
@@ -51,18 +55,18 @@ const Header = ({ intl }) => {
51
55
const userMenu = authenticatedUser === null ? [ ] : [
52
56
{
53
57
type : 'item' ,
54
- href : ` ${ config . LMS_BASE_URL } /dashboard` ,
58
+ href : dashboardURL ,
55
59
content : intl . formatMessage ( messages [ 'header.user.menu.dashboard' ] ) ,
56
60
} ,
57
61
{
58
62
type : 'item' ,
59
- href : `${ config . ACCOUNT_PROFILE_URL } /u/${ authenticatedUser . username } ` ,
63
+ href : config . EXTERNAL_ACCOUNT_PROFILE_URL ? config . EXTERNAL_ACCOUNT_PROFILE_URL : `${ config . ACCOUNT_PROFILE_URL } /u/${ authenticatedUser . username } ` ,
60
64
content : intl . formatMessage ( messages [ 'header.user.menu.profile' ] ) ,
61
65
} ,
62
66
{
63
67
type : 'item' ,
64
68
href : config . ACCOUNT_SETTINGS_URL ,
65
- content : intl . formatMessage ( messages [ 'header.user.menu.account.settings' ] ) ,
69
+ content : config . ACCOUNT_SETTINGS_LABEL ? config . ACCOUNT_SETTINGS_LABEL : intl . formatMessage ( messages [ 'header.user.menu.account.settings' ] ) ,
66
70
} ,
67
71
{
68
72
type : 'item' ,
@@ -89,12 +93,19 @@ const Header = ({ intl }) => {
89
93
} ,
90
94
] ;
91
95
96
+ let name = null
97
+ if ( authenticatedUser !== null && config . SHOW_FULLNAME ) {
98
+ name = authenticatedUser . name
99
+ } else if ( authenticatedUser !== null ) {
100
+ name = authenticatedUser . username
101
+ }
102
+
92
103
const props = {
93
104
logo : config . LOGO_URL ,
94
105
logoAltText : config . SITE_NAME ,
95
106
logoDestination : `${ config . LMS_BASE_URL } /dashboard` ,
96
107
loggedIn : authenticatedUser !== null ,
97
- username : authenticatedUser !== null ? authenticatedUser . username : null ,
108
+ username : name ,
98
109
avatar : authenticatedUser !== null ? authenticatedUser . avatar : null ,
99
110
mainMenu : getConfig ( ) . AUTHN_MINIMAL_HEADER ? [ ] : mainMenu ,
100
111
userMenu : getConfig ( ) . AUTHN_MINIMAL_HEADER ? [ ] : userMenu ,
0 commit comments