import React, { PropTypes } from 'react' import { Link } from 'react-router' import linkState from 'boost/linkState' import openExternal from 'boost/openExternal' import { signup } from 'boost/api' import auth from 'boost/auth' export default class SignupContainer extends React.Component { constructor (props) { super(props) this.state = { user: {}, connectionFailed: false, emailConflicted: false, nameConflicted: false, validationFailed: false, isSending: false, error: null } this.linkState = linkState this.openExternal = openExternal } handleSubmit (e) { this.setState({ isSending: true, error: null }, function () { signup(this.state.user) .then(res => { let { user, token } = res.body auth.user(user, token) this.props.history.pushState('home') }) .catch(err => { console.error(err) if (err.code === 'ECONNREFUSED') { return this.setState({ error: { name: 'CunnectionRefused', message: 'Can\'t connect to API server.' }, isSending: false }) } else if (err.status != null) { return this.setState({ error: { name: err.response.body.name, message: err.response.body.message }, isSending: false }) } else throw err }) }) e.preventDefault() } render () { return (
会員登録することで、当サイトの利用規約及びCookieの使用を含むデータに関するポリシーに同意するものとします。