import React from 'react';
import AddCharacterStore from '../stores/AddCharacterStore';
import AddCharacterActions from '../actions/AddCharacterActions';
class AddCharacter extends React.Component {
constructor(props) {
super(props);
this.state = AddCharacterStore.getState();
this.onChange = this.onChange.bind(this);
}
componentDidMount() {
AddCharacterStore.listen(this.onChange);
}
componentWillUnmount() {
AddCharacterStore.unlisten(this.onChange);
}
onChange(state) {
this.setState(state);
}
handleSubmit(event) {
event.preventDefault();
var name = this.state.name.trim();
var gender = this.state.gender;
var wins = this.state.wins;
if (!name) {
AddCharacterActions.invalidName();
this.refs.nameTextField.focus();
}
if (!wins) {
AddCharacterActions.invalidWins();
}
if (!gender) {
AddCharacterActions.invalidGender();
}
if (name && gender && wins) {
AddCharacterActions.addCharacter(name, gender, wins);
}
}
render() {
return (
Character Name
onChange={AddCharacterActions.updateName} autoFocus/>
{this.state.helpBlock}
test !
Win Vote
onChange={AddCharacterActions.updateWins} />
{this.state.helpBlock}
onChange={AddCharacterActions.updateGender}/>
Female
onChange={AddCharacterActions.updateGender}/>
Male
Submit
);
}
}
export default AddCharacter;