aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/components/common/ToggleInputButton.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'web/src/js/components/common/ToggleInputButton.jsx')
-rw-r--r--web/src/js/components/common/ToggleInputButton.jsx30
1 files changed, 15 insertions, 15 deletions
diff --git a/web/src/js/components/common/ToggleInputButton.jsx b/web/src/js/components/common/ToggleInputButton.jsx
index 25d620ae..5fa24c10 100644
--- a/web/src/js/components/common/ToggleInputButton.jsx
+++ b/web/src/js/components/common/ToggleInputButton.jsx
@@ -6,17 +6,16 @@ export default class ToggleInputButton extends Component {
static propTypes = {
name: PropTypes.string.isRequired,
- txt: PropTypes.string.isRequired,
- onToggleChanged: PropTypes.func.isRequired
+ txt: PropTypes.string,
+ onToggleChanged: PropTypes.func.isRequired,
+ checked: PropTypes.bool.isRequired,
+ placeholder: PropTypes.string.isRequired,
+ inputType: PropTypes.string
}
constructor(props) {
super(props)
- this.state = { txt: props.txt }
- }
-
- onChange(e) {
- this.setState({ txt: e.target.value })
+ this.state = { txt: props.txt || '' }
}
onKeyDown(e) {
@@ -27,23 +26,24 @@ export default class ToggleInputButton extends Component {
}
render() {
+ const {checked, onToggleChanged, name, inputType, placeholder} = this.props
return (
<div className="input-group toggle-input-btn">
<span className="input-group-btn"
- onClick={() => this.props.onToggleChanged(this.state.txt)}>
- <div className={classnames('btn', this.props.checked ? 'btn-primary' : 'btn-default')}>
- <span className={classnames('fa', this.props.checked ? 'fa-check-square-o' : 'fa-square-o')}/>
+ onClick={() => onToggleChanged(this.state.txt)}>
+ <div className={classnames('btn', checked ? 'btn-primary' : 'btn-default')}>
+ <span className={classnames('fa', checked ? 'fa-check-square-o' : 'fa-square-o')}/>
&nbsp;
- {this.props.name}
+ {name}
</div>
</span>
<input
className="form-control"
- placeholder={this.props.placeholder}
- disabled={this.props.checked}
+ placeholder={placeholder}
+ disabled={checked}
value={this.state.txt}
- type={this.props.inputType}
- onChange={e => this.onChange(e)}
+ type={inputType || 'text'}
+ onChange={e => this.setState({ txt: e.target.value })}
onKeyDown={e => this.onKeyDown(e)}
/>
</div>