diff --git a/client/modules/User/components/SignupForm.jsx b/client/modules/User/components/SignupForm.jsx
index 7d18062bc4..24202d740a 100644
--- a/client/modules/User/components/SignupForm.jsx
+++ b/client/modules/User/components/SignupForm.jsx
@@ -1,5 +1,6 @@
import PropTypes from 'prop-types';
import React from 'react';
+import { withTranslation } from 'react-i18next';
import { domOnlyProps } from '../../../utils/reduxFormUtils';
import Button from '../../../common/Button';
@@ -13,10 +14,10 @@ function SignupForm(props) {
return (
);
@@ -81,7 +82,8 @@ SignupForm.propTypes = {
submitting: PropTypes.bool,
invalid: PropTypes.bool,
pristine: PropTypes.bool,
- previousPath: PropTypes.string.isRequired
+ previousPath: PropTypes.string.isRequired,
+ t: PropTypes.func.isRequired
};
SignupForm.defaultProps = {
@@ -90,4 +92,4 @@ SignupForm.defaultProps = {
invalid: false
};
-export default SignupForm;
+export default withTranslation()(SignupForm);
diff --git a/client/modules/User/pages/SignupView.jsx b/client/modules/User/pages/SignupView.jsx
index 225bb8e404..b646a40584 100644
--- a/client/modules/User/pages/SignupView.jsx
+++ b/client/modules/User/pages/SignupView.jsx
@@ -4,6 +4,7 @@ import { bindActionCreators } from 'redux';
import { Link, browserHistory } from 'react-router';
import { Helmet } from 'react-helmet';
import { reduxForm } from 'redux-form';
+import { withTranslation } from 'react-i18next';
import * as UserActions from '../actions';
import SignupForm from '../components/SignupForm';
import apiClient from '../../../utils/apiClient';
@@ -26,19 +27,19 @@ class SignupView extends React.Component {
- p5.js Web Editor | Signup
+ {this.props.t('SignupView.Title')}
-
Sign Up
+
{this.props.t('SignupView.Description')}
-
Or
+
{this.props.t('SignupView.Or')}
- Already have an account?
- Log In
+ {this.props.t('SignupView.AlreadyHave')}
+ {this.props.t('SignupView.Login')}
@@ -108,7 +109,8 @@ SignupView.propTypes = {
previousPath: PropTypes.string.isRequired,
user: PropTypes.shape({
authenticated: PropTypes.bool
- })
+ }),
+ t: PropTypes.func.isRequired
};
SignupView.defaultProps = {
@@ -117,11 +119,11 @@ SignupView.defaultProps = {
}
};
-export default reduxForm({
+export default withTranslation()(reduxForm({
form: 'signup',
fields: ['username', 'email', 'password', 'confirmPassword'],
onSubmitFail,
validate: validateSignup,
asyncValidate,
asyncBlurFields: ['username', 'email']
-}, mapStateToProps, mapDispatchToProps)(SignupView);
+}, mapStateToProps, mapDispatchToProps)(SignupView));
diff --git a/translations/locales/en-US/translations.json b/translations/locales/en-US/translations.json
index c12d097c38..44be5d87f1 100644
--- a/translations/locales/en-US/translations.json
+++ b/translations/locales/en-US/translations.json
@@ -289,5 +289,23 @@
"ConfirmPassword": "Confirm Password",
"ConfirmPasswordARIA": "Confirm Password",
"SubmitSetNewPassword": "Set New Password"
+ },
+ "SignupForm": {
+ "Title": "User Name",
+ "TitleARIA": "username",
+ "Email": "Email",
+ "EmailARIA": "email",
+ "Password": "Password",
+ "PasswordARIA": "password",
+ "ConfirmPassword": "Confirm Password",
+ "ConfirmPasswordARIA": "Confirm password",
+ "SubmitSignup": "Sign Up"
+ },
+ "SignupView": {
+ "Title": "p5.js Web Editor | Signup",
+ "Description": "Sign Up",
+ "Or": "Or",
+ "AlreadyHave": "Already have an account?",
+ "Login": "Log In"
}
}
diff --git a/translations/locales/es-419/translations.json b/translations/locales/es-419/translations.json
index 0104b7188b..2072032ac6 100644
--- a/translations/locales/es-419/translations.json
+++ b/translations/locales/es-419/translations.json
@@ -289,5 +289,23 @@
"ConfirmPassword": "Confirmar Contraseña",
"ConfirmPasswordARIA": "Confirmar contraseña",
"SubmitSetNewPassword": "Crear Nueva Contraseña"
+ },
+ "SignupForm": {
+ "Title": "Identificación",
+ "TitleARIA": "Identificación",
+ "Email": "Correo electrónico",
+ "EmailARIA": "correo electrónico",
+ "Password": "Contraseña",
+ "PasswordARIA": "contraseña",
+ "ConfirmPassword": "Confirma tu contraseña",
+ "ConfirmPasswordARIA": "Confirma tu contraseña",
+ "SubmitSignup": "Registráte"
+ },
+ "SignupView": {
+ "Title": " Editor Web p5.js | Registráte",
+ "Description": "Registráte",
+ "Or": "o",
+ "AlreadyHave": "¿Ya tienes cuenta? ",
+ "Login": "Ingresa"
}
}