diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2016-05-17 07:21:39 -0400 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-05-17 07:21:39 -0400 |
commit | fd53e3b7868234af328cd73150318fc8e7a26b89 (patch) | |
tree | 48c49af0d6b25bf978430efc61aa5b3b63b3414a /webapp/components/admin_console/dropdown_setting.jsx | |
parent | 5f5f813387a914d6e34945490c438755adfa8505 (diff) | |
download | chat-fd53e3b7868234af328cd73150318fc8e7a26b89.tar.gz chat-fd53e3b7868234af328cd73150318fc8e7a26b89.tar.bz2 chat-fd53e3b7868234af328cd73150318fc8e7a26b89.zip |
PLT-2257 Reorganized System Console (#3003)
* Reorganized system console
* Fixed the names of some components
* Fixed timestamp for BrandImageSetting
* Fixed merge issues
* Updated push notification settings to match master branch
* Removed top level setting pages and moved enable Gitlab/LDAP settings onto their respective pages
* Re-added restrictDirectMessage setting to system console
* Re-added email connection test and fixed some margins
* Fixed ESLint errors
* Renamed Authentication > Onboarding to Authentication > Email in the system console
* Renamed Customization > Whitelabeling to Customization > Custom Branding in System Console
* Re-added EnableOpenServer to system console
Diffstat (limited to 'webapp/components/admin_console/dropdown_setting.jsx')
-rw-r--r-- | webapp/components/admin_console/dropdown_setting.jsx | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/webapp/components/admin_console/dropdown_setting.jsx b/webapp/components/admin_console/dropdown_setting.jsx index fca8dd170..cf733ec90 100644 --- a/webapp/components/admin_console/dropdown_setting.jsx +++ b/webapp/components/admin_console/dropdown_setting.jsx @@ -6,6 +6,16 @@ import React from 'react'; import Setting from './setting.jsx'; export default class DropdownSetting extends React.Component { + constructor(props) { + super(props); + + this.handleChange = this.handleChange.bind(this); + } + + handleChange(e) { + this.props.onChange(this.props.id, e.target.value); + } + render() { const options = []; for (const {value, text} of this.props.values) { @@ -22,30 +32,33 @@ export default class DropdownSetting extends React.Component { return ( <Setting label={this.props.label} - margin={this.props.margin} + inputId={this.props.id} + helpText={this.props.helpText} > <select className='form-control' - value={this.props.currentValue} - onChange={this.props.handleChange} - disabled={this.props.isDisabled} + id={this.props.id} + value={this.props.value} + onChange={this.handleChange} + disabled={this.props.disabled} > {options} </select> - {this.props.helpText} </Setting> ); } } + DropdownSetting.defaultProps = { + isDisabled: false }; DropdownSetting.propTypes = { + id: React.PropTypes.string.isRequired, values: React.PropTypes.array.isRequired, label: React.PropTypes.node.isRequired, - currentValue: React.PropTypes.string.isRequired, - handleChange: React.PropTypes.func.isRequired, - isDisabled: React.PropTypes.bool.isRequired, - helpText: React.PropTypes.node.isRequired, - margin: React.PropTypes.oneOf(['', 'small']) + value: React.PropTypes.string.isRequired, + onChange: React.PropTypes.func.isRequired, + disabled: React.PropTypes.bool, + helpText: React.PropTypes.node }; |