diff options
Diffstat (limited to 'web/react/components')
-rw-r--r-- | web/react/components/team_feature_tab.jsx | 24 | ||||
-rw-r--r-- | web/react/components/user_settings_notifications.jsx | 2 | ||||
-rw-r--r-- | web/react/components/user_settings_security.jsx | 10 |
3 files changed, 23 insertions, 13 deletions
diff --git a/web/react/components/team_feature_tab.jsx b/web/react/components/team_feature_tab.jsx index e5398332e..3251746b8 100644 --- a/web/react/components/team_feature_tab.jsx +++ b/web/react/components/team_feature_tab.jsx @@ -14,15 +14,9 @@ export default class FeatureTab extends React.Component { this.submitValetFeature = this.submitValetFeature.bind(this); this.handleValetRadio = this.handleValetRadio.bind(this); this.onUpdateSection = this.onUpdateSection.bind(this); + this.setupInitialState = this.setupInitialState.bind(this); - this.state = {}; - var team = this.props.team; - - if (team && team.allow_valet) { - this.state.allowValet = 'true'; - } else { - this.state.allowValet = 'false'; - } + this.state = this.setupInitialState(); } componentWillReceiveProps(newProps) { var team = newProps.team; @@ -44,7 +38,7 @@ export default class FeatureTab extends React.Component { AsyncClient.getMyTeam(); }.bind(this), function fail(err) { - var state = this.getInitialState(); + var state = this.setupInitialState(); state.serverError = err; this.setState(state); }.bind(this) @@ -62,6 +56,18 @@ export default class FeatureTab extends React.Component { this.props.updateSection('valet'); } } + setupInitialState() { + var allowValet; + var team = this.props.team; + + if (team && team.allow_valet) { + allowValet = 'true'; + } else { + allowValet = 'false'; + } + + return {allowValet: allowValet}; + } render() { var clientError = null; var serverError = null; diff --git a/web/react/components/user_settings_notifications.jsx b/web/react/components/user_settings_notifications.jsx index 84a7b62c7..5fe6bbb4e 100644 --- a/web/react/components/user_settings_notifications.jsx +++ b/web/react/components/user_settings_notifications.jsx @@ -142,7 +142,7 @@ export default class NotificationsTab extends React.Component { this.props.updateTab('general'); } updateSection(section) { - this.setState(this.getInitialState()); + this.setState(getNotificationsStateFromStores()); this.props.updateSection(section); } componentDidMount() { diff --git a/web/react/components/user_settings_security.jsx b/web/react/components/user_settings_security.jsx index d83151cd8..6ccd09cb1 100644 --- a/web/react/components/user_settings_security.jsx +++ b/web/react/components/user_settings_security.jsx @@ -16,8 +16,9 @@ export default class SecurityTab extends React.Component { this.updateNewPassword = this.updateNewPassword.bind(this); this.updateConfirmPassword = this.updateConfirmPassword.bind(this); this.handleClose = this.handleClose.bind(this); + this.setupInitialState = this.setupInitialState.bind(this); - this.state = {currentPassword: '', newPassword: '', confirmPassword: ''}; + this.state = this.setupInitialState(); } submitPassword(e) { e.preventDefault(); @@ -51,10 +52,10 @@ export default class SecurityTab extends React.Component { function success() { this.props.updateSection(''); AsyncClient.getMe(); - this.setState({currentPassword: '', newPassword: '', confirmPassword: ''}); + this.setState(this.setupInitialState()); }.bind(this), function fail(err) { - var state = this.getInitialState(); + var state = this.setupInitialState(); if (err.message) { state.serverError = err.message; } else { @@ -88,6 +89,9 @@ export default class SecurityTab extends React.Component { this.props.updateTab('general'); } + setupInitialState() { + return {currentPassword: '', newPassword: '', confirmPassword: ''}; + } componentDidMount() { $('#user_settings').on('hidden.bs.modal', this.handleClose); } |