Commit 4f182463 authored by Ryan Wang's avatar Ryan Wang Committed by Joram Wilander
Browse files

[PLT-5440] Add Options to System Console Dropdown Menu (#5939)

* Add options to system console dropdown menu

* Updating modal css
parent 381e40dc
......@@ -6,6 +6,7 @@ import ReactDOM from 'react-dom';
import TeamStore from 'stores/team_store.jsx';
import Constants from 'utils/constants.jsx';
import AboutBuildModal from 'components/about_build_modal.jsx';
import {sortTeamsByDisplayName} from 'utils/team_utils.jsx';
import * as GlobalActions from 'actions/global_actions.jsx';
......@@ -22,10 +23,13 @@ export default class AdminNavbarDropdown extends React.Component {
super(props);
this.blockToggle = false;
this.onTeamChange = this.onTeamChange.bind(this);
this.handleAboutModal = this.handleAboutModal.bind(this);
this.aboutModalDismissed = this.aboutModalDismissed.bind(this);
this.state = {
teams: TeamStore.getAll(),
teamMembers: TeamStore.getMyTeamMembers()
teamMembers: TeamStore.getMyTeamMembers(),
showAboutModal: false
};
}
......@@ -45,6 +49,16 @@ export default class AdminNavbarDropdown extends React.Component {
TeamStore.removeChangeListener(this.onTeamChange);
}
handleAboutModal(e) {
e.preventDefault();
this.setState({showAboutModal: true});
}
aboutModalDismissed() {
this.setState({showAboutModal: false});
}
onTeamChange() {
this.setState({
teams: TeamStore.getAll(),
......@@ -53,6 +67,7 @@ export default class AdminNavbarDropdown extends React.Component {
}
render() {
const config = global.window.mm_config;
var teamsArray = []; // Array of team objects
var teams = []; // Array of team components
let switchTeams;
......@@ -137,6 +152,54 @@ export default class AdminNavbarDropdown extends React.Component {
key='teamDiv'
className='divider'
/>
<li>
<Link
to={config.AdministratorsGuideLink}
rel='noopener noreferrer'
target='_blank'
>
<FormattedMessage
id='admin.nav.administratorsGuide'
defaultMessage='Administrator Guide'
/>
</Link>
</li>
<li>
<Link
to={config.TroubleshootingForumLink}
rel='noopener noreferrer'
target='_blank'
>
<FormattedMessage
id='admin.nav.troubleshootingForum'
defaultMessage='Troubleshooting Forum'
/>
</Link>
</li>
<li>
<Link
to={config.CommercialSupportLink}
rel='noopener noreferrer'
target='_blank'
>
<FormattedMessage
id='admin.nav.commercialSupport'
defaultMessage='Commercial Support'
/>
</Link>
</li>
<li>
<a
href='#'
onClick={this.handleAboutModal}
>
<FormattedMessage
id='navbar_dropdown.about'
defaultMessage='About Mattermost'
/>
</a>
</li>
<li className='divider'/>
<li>
<a
href='#'
......@@ -149,6 +212,10 @@ export default class AdminNavbarDropdown extends React.Component {
/>
</a>
</li>
<AboutBuildModal
show={this.state.showAboutModal}
onModalDismissed={this.aboutModalDismissed}
/>
</ul>
</li>
</ul>
......
......@@ -545,10 +545,13 @@
"admin.mfa.bannerDesc": "<a href='https://docs.mattermost.com/deployment/auth.html' target='_blank'>Multi-factor authentication</a> is available for accounts with AD/LDAP or email login. If other login methods are used, MFA should be configured with the authentication provider.",
"admin.mfa.cluster": "High",
"admin.mfa.title": "Multi-factor Authentication",
"admin.nav.administratorsGuide": "Administrator's Guide",
"admin.nav.commercialSupport": "Commercial Support",
"admin.nav.help": "Help",
"admin.nav.logout": "Logout",
"admin.nav.report": "Report a Problem",
"admin.nav.switch": "Team Selection",
"admin.nav.troubleshootingForum": "Troubleshooting Forum",
"admin.notifications.email": "Email",
"admin.notifications.push": "Mobile Push",
"admin.notifications.title": "Notification Settings",
......
@charset 'UTF-8';
.app__body {
.modal {
.modal-content {
@include box-shadow(0 0 10px rgba($black, .5));
border-radius: $border-rad;
}
.modal {
.about-modal {
.about-modal {
.modal-content {
.modal-header {
background: transparent;
border: none;
......@@ -25,69 +29,68 @@
margin: 0 4px 0 8px;
}
}
}
.modal-body {
padding: 20px 25px 5px;
}
.modal-body {
padding: 20px 25px 10px;
}
&.large {
.modal-body {
padding-bottom: 20px;
}
&.large {
.modal-body {
padding-bottom: 20px;
}
}
.about-modal__content {
@include clearfix;
@include display-flex;
@include flex-direction(row);
padding: 1em 0 3em;
}
.about-modal__content {
@include clearfix;
@include display-flex;
@include flex-direction(row);
padding: 1em 0 3em;
}
.about-modal__copyright {
@include opacity(.6);
margin-top: .5em;
}
.about-modal__copyright {
@include opacity(.6);
margin-top: .5em;
}
.about-modal__footer {
font-size: 13.5px;
}
.about-modal__footer {
font-size: 13.5px;
}
.about-modal__title {
line-height: 1.5;
margin: 0 0 10px;
}
.about-modal__title {
line-height: 1.5;
margin: 0 0 10px;
}
.about-modal__subtitle {
@include opacity(.6);
}
.about-modal__subtitle {
@include opacity(.6);
}
.about-modal__hash {
@include opacity(.4);
font-size: .75em;
text-align: right;
.about-modal__hash {
@include opacity(.4);
font-size: .75em;
text-align: right;
p {
&:first-child {
float: left;
text-align: left;
}
p {
&:first-child {
float: left;
text-align: left;
}
}
}
.about-modal__logo {
@include opacity(.9);
padding: 0 40px 0 20px;
.about-modal__logo {
@include opacity(.9);
padding: 0 40px 0 20px;
svg {
height: 125px;
width: 125px;
}
svg {
height: 125px;
width: 125px;
}
path {
fill: inherit;
}
path {
fill: inherit;
}
}
}
}
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment