Merge pull request #209 from grant-project/fix-edit-profile

Fix Edit Profile Save Button Always disabled
This commit is contained in:
Daniel Ternyak 2019-02-17 16:04:16 -06:00 committed by GitHub
commit b83e1f21ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 18 deletions

View File

@ -12,7 +12,7 @@ import { Input, Form, Col, Row, Button, Alert, Icon } from 'antd';
import { SOCIAL_INFO } from 'utils/social';
import { SOCIAL_SERVICE, User } from 'types';
import { UserState } from 'modules/users/reducers';
import { getCreateTeamMemberError } from 'modules/create/utils';
import { validateUserProfile } from 'modules/create/utils';
import AvatarEdit from './AvatarEdit';
import './ProfileEdit.less';
@ -85,8 +85,8 @@ class ProfileEdit extends React.PureComponent<Props, State> {
socialVerificationError,
activeSocialService,
} = this.state;
const error = getCreateTeamMemberError(fields);
const isMissingField = !fields.displayName || !fields.title || !fields.emailAddress;
const error = validateUserProfile(fields);
const isMissingField = !fields.displayName || !fields.title;
const isDisabled =
!!error ||
isMissingField ||
@ -132,18 +132,6 @@ class ProfileEdit extends React.PureComponent<Props, State> {
/>
</Form.Item>
<Form.Item>
<Input
name="emailAddress"
disabled={true}
placeholder="Email address (Required)"
type="email"
autoComplete="email"
value={fields.emailAddress}
onChange={this.handleChangeField}
/>
</Form.Item>
<Row gutter={12}>
{Object.values(SOCIAL_INFO).map(s => {
const field = fields.socialMedias.find(sm => sm.service === s.service);

View File

@ -127,13 +127,11 @@ export function getCreateErrors(
return errors;
}
export function getCreateTeamMemberError(user: User) {
export function validateUserProfile(user: User) {
if (user.displayName.length > 30) {
return 'Display name can only be 30 characters maximum';
} else if (user.title.length > 30) {
return 'Title can only be 30 characters maximum';
} else if (!user.emailAddress || !/.+\@.+\..+/.test(user.emailAddress)) {
return 'That doesnt look like a valid email address';
}
return '';