// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. // See License.txt for license information. var SettingItemMin = require('./setting_item_min.jsx'); var SettingItemMax = require('./setting_item_max.jsx'); var client = require('../utils/client.jsx'); var AsyncClient = require('../utils/async_client.jsx'); module.exports = React.createClass({ displayName: 'Feature Tab', propTypes: { updateSection: React.PropTypes.func.isRequired, team: React.PropTypes.object.isRequired, activeSection: React.PropTypes.string.isRequired }, submitValetFeature: function() { var data = {}; data.allowValet = this.state.allowValet; client.updateValetFeature(data, function() { this.props.updateSection(''); AsyncClient.getMyTeam(); }.bind(this), function(err) { var state = this.getInitialState(); state.serverError = err; this.setState(state); }.bind(this) ); }, handleValetRadio: function(val) { this.setState({allowValet: val}); this.refs.wrapper.getDOMNode().focus(); }, componentWillReceiveProps: function(newProps) { var team = newProps.team; var allowValet = 'false'; if (team && team.allowValet) { allowValet = 'true'; } this.setState({allowValet: allowValet}); }, getInitialState: function() { var team = this.props.team; var allowValet = 'false'; if (team && team.allowValet) { allowValet = 'true'; } return {allowValet: allowValet}; }, onUpdateSection: function() { if (this.props.activeSection === 'valet') { self.props.updateSection('valet'); } else { self.props.updateSection(''); } }, render: function() { var clientError = null; var serverError = null; if (this.state.clientError) { clientError = this.state.clientError; } if (this.state.serverError) { serverError = this.state.serverError; } var valetSection; var self = this; if (this.props.activeSection === 'valet') { var valetActive = ['', '']; if (this.state.allowValet === 'false') { valetActive[1] = 'active'; } else { valetActive[0] = 'active'; } var inputs = []; function valetActivate() { self.handleValetRadio('true'); } function valetDeactivate() { self.handleValetRadio('false'); } inputs.push(