diff --git a/client/modules/App/App.jsx b/client/modules/App/App.jsx
index 3b74e1fc..089d80f7 100644
--- a/client/modules/App/App.jsx
+++ b/client/modules/App/App.jsx
@@ -41,7 +41,7 @@ class App extends React.Component {
render() {
return (
- {this.state.isMounted && !window.devToolsExtension && getConfig('NODE_ENV') === 'development' && }
+ {false && this.state.isMounted && !window.devToolsExtension && getConfig('NODE_ENV') === 'development' && }
{this.props.children}
);
diff --git a/client/modules/User/components/ResponsiveForm.jsx b/client/modules/User/components/ResponsiveForm.jsx
new file mode 100644
index 00000000..f0fd0ba7
--- /dev/null
+++ b/client/modules/User/components/ResponsiveForm.jsx
@@ -0,0 +1,59 @@
+import React from 'react';
+import styled from 'styled-components';
+import PropTypes from 'prop-types';
+import { remSize } from '../../../theme';
+
+
+const ResponsiveFormWrapper = styled.div`
+ .form-container__content {
+ width: unset !important;
+ padding-top: ${remSize(16)};
+ padding-bottom: ${remSize(64)};
+ }
+
+ .form__input {
+ min-width: unset;
+ padding: 0px ${remSize(12)};
+ height: ${remSize(28)};
+ }
+ .form-container__title { margin-bottom: ${remSize(14)}}
+ p.form__field { margin-top: 0px !important; }
+ label.form__label { margin-top: ${remSize(8)} !important; }
+
+ .form-error { width: 100% }
+
+ .nav__items-right:last-child { display: none }
+
+ .form-container {
+ height: 100%
+ }
+
+ .form-container__stack {
+ svg {
+ width: ${remSize(12)};
+ height: ${remSize(12)}
+ }
+ a { padding: 0px }
+ }
+`;
+
+const ResponsiveForm = props =>
+ (props.mobile === true
+ ? (
+
+ {props.children}
+
+
+ )
+ : props.children);
+
+ResponsiveForm.propTypes = {
+ mobile: PropTypes.bool,
+ children: PropTypes.oneOfType([PropTypes.node, PropTypes.array]),
+};
+ResponsiveForm.defaultProps = {
+ mobile: false,
+ children: []
+};
+
+export default ResponsiveForm;
diff --git a/client/modules/User/pages/LoginView.jsx b/client/modules/User/pages/LoginView.jsx
index 20b48b17..cdd2b97f 100644
--- a/client/modules/User/pages/LoginView.jsx
+++ b/client/modules/User/pages/LoginView.jsx
@@ -10,6 +10,7 @@ import LoginForm from '../components/LoginForm';
import { validateLogin } from '../../../utils/reduxFormUtils';
import SocialAuthButton from '../components/SocialAuthButton';
import Nav from '../../../components/Nav';
+import ResponsiveForm from '../components/ResponsiveForm';
class LoginView extends React.Component {
constructor(props) {
@@ -27,36 +28,40 @@ class LoginView extends React.Component {
}
render() {
+ const isMobile = () => (window.innerWidth < 770);
if (this.props.user.authenticated) {
this.gotoHomePage();
return null;
}
+ // TODO: mobile currently forced to true
return (
-
-
-
-
- {this.props.t('LoginView.Title')}
-
-
-
{this.props.t('LoginView.Login')}
-
-
{this.props.t('LoginView.LoginOr')}
-
-
-
+
+
+
+
+
+ {this.props.t('LoginView.Title')}
+
+
+
{this.props.t('LoginView.Login')}
+
+
{this.props.t('LoginView.LoginOr')}
+
+
+
+
+
+ {this.props.t('LoginView.DontHaveAccount')}
+ {this.props.t('LoginView.SignUp')}
+
+
+ {this.props.t('LoginView.ForgotPassword')}
+ {this.props.t('LoginView.ResetPassword')}
+
-
- {this.props.t('LoginView.DontHaveAccount')}
- {this.props.t('LoginView.SignUp')}
-
-
- {this.props.t('LoginView.ForgotPassword')}
- {this.props.t('LoginView.ResetPassword')}
-
-
-
-
+
+
+
);
}
}
@@ -79,13 +84,15 @@ LoginView.propTypes = {
user: PropTypes.shape({
authenticated: PropTypes.bool
}),
- t: PropTypes.func.isRequired
+ t: PropTypes.func.isRequired,
+ mobile: PropTypes.bool
};
LoginView.defaultProps = {
user: {
authenticated: false
- }
+ },
+ mobile: false
};
export default withTranslation()(reduxForm({
diff --git a/client/modules/User/pages/SignupView.jsx b/client/modules/User/pages/SignupView.jsx
index b646a405..4cebe88c 100644
--- a/client/modules/User/pages/SignupView.jsx
+++ b/client/modules/User/pages/SignupView.jsx
@@ -11,6 +11,9 @@ import apiClient from '../../../utils/apiClient';
import { validateSignup } from '../../../utils/reduxFormUtils';
import SocialAuthButton from '../components/SocialAuthButton';
import Nav from '../../../components/Nav';
+import ResponsiveForm from '../components/ResponsiveForm';
+
+const isMobile = () => (window.innerWidth < 770);
class SignupView extends React.Component {
gotoHomePage = () => {
@@ -23,27 +26,29 @@ class SignupView extends React.Component {
return null;
}
return (
-
-
-
-
- {this.props.t('SignupView.Title')}
-
-
-
{this.props.t('SignupView.Description')}
-
-
{this.props.t('SignupView.Or')}
-
-
-
+
+
+
+
+
+ {this.props.t('SignupView.Title')}
+
+
+
{this.props.t('SignupView.Description')}
+
+
{this.props.t('SignupView.Or')}
+
+
+
+
+
+ {this.props.t('SignupView.AlreadyHave')}
+ {this.props.t('SignupView.Login')}
+
-
- {this.props.t('SignupView.AlreadyHave')}
- {this.props.t('SignupView.Login')}
-
-
-
-
+
+
+
);
}
}
@@ -110,13 +115,15 @@ SignupView.propTypes = {
user: PropTypes.shape({
authenticated: PropTypes.bool
}),
- t: PropTypes.func.isRequired
+ t: PropTypes.func.isRequired,
+ mobile: PropTypes.bool
};
SignupView.defaultProps = {
user: {
authenticated: false
- }
+ },
+ mobile: false
};
export default withTranslation()(reduxForm({