|
@@ -18,9 +18,24 @@ class BasicInfoSettings extends React.Component {
|
|
|
constructor(appContainer) {
|
|
constructor(appContainer) {
|
|
|
super();
|
|
super();
|
|
|
|
|
|
|
|
|
|
+ this.state = {
|
|
|
|
|
+ retrieveError: null,
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
this.onClickSubmit = this.onClickSubmit.bind(this);
|
|
this.onClickSubmit = this.onClickSubmit.bind(this);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ componentDidMount() {
|
|
|
|
|
+ try {
|
|
|
|
|
+ this.props.personalContainer.retrievePersonalData();
|
|
|
|
|
+ }
|
|
|
|
|
+ catch (err) {
|
|
|
|
|
+ logger.error(err);
|
|
|
|
|
+ toastError(new Error('Failed to fetch data'));
|
|
|
|
|
+ this.setState({ retrieveError: err.message });
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
async onClickSubmit() {
|
|
async onClickSubmit() {
|
|
|
const { t, personalContainer } = this.props;
|
|
const { t, personalContainer } = this.props;
|
|
|
|
|
|
|
@@ -36,6 +51,7 @@ class BasicInfoSettings extends React.Component {
|
|
|
|
|
|
|
|
render() {
|
|
render() {
|
|
|
const { t, personalContainer } = this.props;
|
|
const { t, personalContainer } = this.props;
|
|
|
|
|
+ const { registrationWhiteList } = personalContainer.state;
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
|
<Fragment>
|
|
<Fragment>
|
|
@@ -64,14 +80,14 @@ class BasicInfoSettings extends React.Component {
|
|
|
onChange={(e) => { personalContainer.changeEmail(e.target.value) }}
|
|
onChange={(e) => { personalContainer.changeEmail(e.target.value) }}
|
|
|
/>
|
|
/>
|
|
|
</div>
|
|
</div>
|
|
|
- {personalContainer.state.registrationWhiteList.length !== 0 && (
|
|
|
|
|
|
|
+ {registrationWhiteList.length !== 0 && (
|
|
|
<div className="col-sm-offset-2 col-sm-10">
|
|
<div className="col-sm-offset-2 col-sm-10">
|
|
|
- <p className="help-block">
|
|
|
|
|
|
|
+ <div className="help-block">
|
|
|
{t('page_register.form_help.email')}
|
|
{t('page_register.form_help.email')}
|
|
|
<ul>
|
|
<ul>
|
|
|
- <li><code></code></li>
|
|
|
|
|
|
|
+ {registrationWhiteList.map(data => <li key={data}><code>{data}</code></li>)}
|
|
|
</ul>
|
|
</ul>
|
|
|
- </p>
|
|
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
)}
|
|
)}
|
|
|
</div>
|
|
</div>
|
|
@@ -110,8 +126,8 @@ class BasicInfoSettings extends React.Component {
|
|
|
type="radio"
|
|
type="radio"
|
|
|
id="radioLangEn"
|
|
id="radioLangEn"
|
|
|
name="userForm[lang]"
|
|
name="userForm[lang]"
|
|
|
- checked={personalContainer.state.lang === 'English'}
|
|
|
|
|
- onChange={() => { personalContainer.changeLang('English') }}
|
|
|
|
|
|
|
+ checked={personalContainer.state.lang === 'en-US'}
|
|
|
|
|
+ onChange={() => { personalContainer.changeLang('en-US') }}
|
|
|
/>
|
|
/>
|
|
|
<label htmlFor="radioLangEn">{t('English')}</label>
|
|
<label htmlFor="radioLangEn">{t('English')}</label>
|
|
|
</div>
|
|
</div>
|
|
@@ -120,8 +136,8 @@ class BasicInfoSettings extends React.Component {
|
|
|
type="radio"
|
|
type="radio"
|
|
|
id="radioLangJa"
|
|
id="radioLangJa"
|
|
|
name="userForm[lang]"
|
|
name="userForm[lang]"
|
|
|
- checked={personalContainer.state.lang === 'Japanese'}
|
|
|
|
|
- onChange={() => { personalContainer.changeLang('Japanese') }}
|
|
|
|
|
|
|
+ checked={personalContainer.state.lang === 'ja'}
|
|
|
|
|
+ onChange={() => { personalContainer.changeLang('ja') }}
|
|
|
/>
|
|
/>
|
|
|
<label htmlFor="radioLangJa">{t('Japanese')}</label>
|
|
<label htmlFor="radioLangJa">{t('Japanese')}</label>
|
|
|
</div>
|
|
</div>
|
|
@@ -130,7 +146,7 @@ class BasicInfoSettings extends React.Component {
|
|
|
|
|
|
|
|
<div className="row my-3">
|
|
<div className="row my-3">
|
|
|
<div className="col-xs-offset-4 col-xs-5">
|
|
<div className="col-xs-offset-4 col-xs-5">
|
|
|
- <button type="button" className="btn btn-primary" onClick={this.onClickSubmit}>{t('Update')}</button>
|
|
|
|
|
|
|
+ <button type="button" className="btn btn-primary" onClick={this.onClickSubmit} disabled={this.state.retrieveError != null}>{t('Update')}</button>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|