diff --git a/frontend/app/components/Client/PreferencesMenu/PreferencesMenu.js b/frontend/app/components/Client/PreferencesMenu/PreferencesMenu.js index 65e1091b3..820fe14e4 100644 --- a/frontend/app/components/Client/PreferencesMenu/PreferencesMenu.js +++ b/frontend/app/components/Client/PreferencesMenu/PreferencesMenu.js @@ -1,116 +1,118 @@ -import React from 'react' +import React from 'react'; import { connect } from 'react-redux'; import cn from 'classnames'; -import { SideMenuitem } from 'UI' +import { SideMenuitem } from 'UI'; import stl from './preferencesMenu.module.css'; import { CLIENT_TABS, client as clientRoute } from 'App/routes'; import { withRouter } from 'react-router-dom'; -function PreferencesMenu({ activeTab, history, isEnterprise }) { +function PreferencesMenu({ account, activeTab, history, isEnterprise }) { + const isAdmin = account.admin || account.superAdmin; + const setTab = (tab) => { + history.push(clientRoute(tab)); + }; - const setTab = (tab) => { - history.push(clientRoute(tab)); - } + return ( +
+
+
+ Preferences +
+
- return ( -
-
-
- Preferences +
+ setTab(CLIENT_TABS.PROFILE)} + /> +
+ +
+ setTab(CLIENT_TABS.INTEGRATIONS)} + /> +
+ +
+ setTab(CLIENT_TABS.CUSTOM_FIELDS)} + title="Metadata" + /> +
+ + { +
+ setTab(CLIENT_TABS.WEBHOOKS)} + /> +
+ } + +
+ setTab(CLIENT_TABS.SITES)} + /> +
+ + {isEnterprise && isAdmin && ( +
+ setTab(CLIENT_TABS.MANAGE_ROLES)} + /> +
+ )} + + {isEnterprise && isAdmin && ( +
+ setTab(CLIENT_TABS.AUDIT)} + /> +
+ )} + + {isAdmin && ( +
+ setTab(CLIENT_TABS.MANAGE_USERS)} + /> +
+ )} + +
+ setTab(CLIENT_TABS.NOTIFICATIONS)} + /> +
-
- -
- setTab(CLIENT_TABS.PROFILE) } - /> -
- -
- setTab(CLIENT_TABS.INTEGRATIONS) } - /> -
- -
- setTab(CLIENT_TABS.CUSTOM_FIELDS) } - title="Metadata" - /> -
- - - { -
- setTab(CLIENT_TABS.WEBHOOKS) } - /> -
- } - -
- setTab(CLIENT_TABS.SITES) } - /> -
- - { isEnterprise && ( -
- setTab(CLIENT_TABS.MANAGE_ROLES) } - /> -
- )} - - { isEnterprise && ( -
- setTab(CLIENT_TABS.AUDIT) } - /> -
- )} - -
- setTab(CLIENT_TABS.MANAGE_USERS) } - /> -
- -
- setTab(CLIENT_TABS.NOTIFICATIONS) } - /> -
-
- ) + ); } -export default connect(state => ({ - isEnterprise: state.getIn([ 'user', 'account', 'edition' ]) === 'ee', +export default connect((state) => ({ + isEnterprise: state.getIn(['user', 'account', 'edition']) === 'ee', + account: state.getIn(['user', 'account']), }))(withRouter(PreferencesMenu));