import _ from 'underscore'; import React from 'react/addons'; import metrics from '../utils/MetricsUtil'; import ContainerUtil from '../utils/ContainerUtil'; import containerActions from '../actions/ContainerActions'; var ContainerSettingsAdvanced = React.createClass({ mixins: [React.addons.LinkedStateMixin], contextTypes: { router: React.PropTypes.func }, getInitialState: function () { let [tty, openStdin, privileged] = ContainerUtil.mode(this.props.container) || [true, true, false]; return { tty: tty, openStdin: openStdin, privileged: privileged }; }, handleSaveAdvancedOptions: function () { metrics.track('Saved Advanced Options'); let tty = this.state.tty; let openStdin = this.state.openStdin; let privileged = this.state.privileged; let hostConfig = _.extend(this.props.container.HostConfig, {Privileged: privileged}); containerActions.update(this.props.container.Name, {Tty: tty, OpenStdin: openStdin, HostConfig: hostConfig}); }, handleChangeTty: function () { this.setState({ tty: !this.state.tty }); }, handleChangeOpenStdin: function () { this.setState({ openStdin: !this.state.openStdin }); }, handleChangePrivileged: function () { this.setState({ privileged: !this.state.privileged }); }, render: function () { if (!this.props.container) { return false; } return (