Skip to content

Commit

Permalink
Merge pull request #6 from Adham-Elias-Botours/test-adham
Browse files Browse the repository at this point in the history
Test adham
  • Loading branch information
NoerGitKat authored Nov 25, 2019
2 parents 6b1df56 + 4868548 commit 60be72e
Show file tree
Hide file tree
Showing 3 changed files with 108 additions and 104 deletions.
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
node_modules/
config/production.json
client/node_modules/
config/production.json
client/debug.log
config/default.json
package-lock.json

204 changes: 101 additions & 103 deletions client/src/components/profile-forms/CreateProfile.js
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
import React, { useEffect, useState, Fragment } from "react";
import { Link, withRouter, Redirect } from "react-router-dom";
import PropTypes from "prop-types";
import { connect } from "react-redux";
import { createProfile, getCurrentProfile } from "../../actions/profile";
import React, { useEffect, useState, Fragment } from 'react';
import { Link, withRouter, Redirect } from 'react-router-dom';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import { createProfile, getCurrentProfile } from '../../actions/profile';

const Createprofile = ({
const CreateProfile = ({
createProfile,
getCurrentProfile,
profile: { profile, loading },
history,
history
}) => {
const [formData, setFormData] = useState({
company: "",
website: "",
location: "",
status: "",
skills: "",
githubusername: "",
bio: "",
twitter: "",
facebook: "",
linkedin: "",
youtube: "",
instagram: "",
company: '',
website: '',
location: '',
status: '',
skills: '',
githubusername: '',
bio: '',
twitter: '',
facebook: '',
linkedin: '',
youtube: '',
instagram: ''
});
const [displaySocialInputs, toggleSocialInputs] = useState(false);
const {
Expand All @@ -37,7 +37,7 @@ const Createprofile = ({
facebook,
linkedin,
youtube,
instagram,
instagram
} = formData;
const onChange = e =>
setFormData({ ...formData, [e.target.name]: e.target.value });
Expand All @@ -50,174 +50,173 @@ const Createprofile = ({
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [getCurrentProfile]);
return loading && profile === null ? (
<Redirect to='/dashboard' />
<Redirect to="/dashboard" />
) : (
<Fragment>
<h1 className='large text-primary'>Create Your Profile</h1>
<p className='lead'>
<i className='fas fa-user' /> Let's get some information to make your
<h1 className="large text-primary">Create Your Profile</h1>
<p className="lead">
<i className="fas fa-user" /> Let's get some information to make your
profile stand out
</p>
<small>* = required field</small>
<form className='form' onSubmit={e => onSubmit(e)}>
<div className='form-group'>
<select name='status' value={status} onChange={e => onChange(e)}>
<option value='0'>* Select Professional Status</option>
<option value='Developer'>Developer</option>
<option value='Junior Developer'>Junior Developer</option>
<option value='Senior Developer'>Senior Developer</option>
<option value='Manager'>Manager</option>
<option value='Student or Learning'>Student or Learning</option>
<option value='Instructor'>Instructor or Teacher</option>
<option value='Intern'>Intern</option>
<option value='Other'>Other</option>
<form className="form" onSubmit={e => onSubmit(e)}>
<div className="form-group">
<select name="status" value={status} onChange={e => onChange(e)}>
<option value="0">* Select Professional Status</option>
<option value="Developer">Developer</option>
<option value="Junior Developer">Junior Developer</option>
<option value="Senior Developer">Senior Developer</option>
<option value="Manager">Manager</option>
<option value="Student or Learning">Student or Learning</option>
<option value="Instructor">Instructor or Teacher</option>
<option value="Intern">Intern</option>
<option value="Other">Other</option>
</select>
<small className='form-text'>
<small className="form-text">
Give us an idea of where you are at in your career
</small>
</div>
<div className='form-group'>
<div className="form-group">
<input
type='text'
placeholder='Company'
name='company'
type="text"
placeholder="Company"
name="company"
value={company}
onChange={e => onChange(e)}
/>
<small className='form-text'>
<small className="form-text">
Could be your own company or one you work for
</small>
</div>
<div className='form-group'>
<div className="form-group">
<input
type='text'
placeholder='Website'
name='website'
type="text"
placeholder="Website"
name="website"
value={website}
onChange={e => onChange(e)}
/>
<small className='form-text'>
<small className="form-text">
Could be your own or a company website
</small>
</div>
<div className='form-group'>
<div className="form-group">
<input
type='text'
placeholder='Location'
name='location'
type="text"
placeholder="Location"
name="location"
value={location}
onChange={e => onChange(e)}
/>
<small className='form-text'>
<small className="form-text">
City & state suggested (eg. Boston, MA)
</small>
</div>
<div className='form-group'>
<div className="form-group">
<input
type='text'
placeholder='* Skills'
name='skills'
type="text"
placeholder="* Skills"
name="skills"
value={skills}
onChange={e => onChange(e)}
/>
<small className='form-text'>
<small className="form-text">
Please use comma separated values (eg. HTML,CSS,JavaScript,PHP)
</small>
</div>
<div className='form-group'>
<div className="form-group">
<input
type='text'
placeholder='Github Username'
name='githubusername'
type="text"
placeholder="Github Username"
name="githubusername"
value={githubusername}
onChange={e => onChange(e)}
/>
<small className='form-text'>
<small className="form-text">
If you want your latest repos and a Github link, include your
username
</small>
</div>
<div className='form-group'>
<div className="form-group">
<textarea
placeholder='A short bio of yourself'
name='bio'
placeholder="A short bio of yourself"
name="bio"
value={bio}
onChange={e => onChange(e)}
/>
<small className='form-text'>Tell us a little about yourself</small>
<small className="form-text">Tell us a little about yourself</small>
</div>

<div className='my-2'>
<div className="my-2">
<button
onClick={() => toggleSocialInputs(!displaySocialInputs)}
type='button'
className='btn btn-light'
>
type="button"
className="btn btn-light">
Add Social Network Links
</button>
<span>Optional</span>
</div>
{displaySocialInputs && (
<Fragment>
<div className='form-group social-input'>
<i className='fab fa-twitter fa-2x' />
<div className="form-group social-input">
<i className="fab fa-twitter fa-2x" />
<input
type='text'
placeholder='Twitter URL'
name='twitter'
type="text"
placeholder="Twitter URL"
name="twitter"
value={twitter}
onChange={e => onChange(e)}
/>
</div>

<div className='form-group social-input'>
<i className='fab fa-facebook fa-2x' />
<div className="form-group social-input">
<i className="fab fa-facebook fa-2x" />
<input
type='text'
placeholder='Facebook URL'
name='facebook'
type="text"
placeholder="Facebook URL"
name="facebook"
value={facebook}
onChange={e => onChange(e)}
/>
</div>

<div className='form-group social-input'>
<i className='fab fa-youtube fa-2x' />
<div className="form-group social-input">
<i className="fab fa-youtube fa-2x" />
<input
type='text'
placeholder='YouTube URL'
name='youtube'
type="text"
placeholder="YouTube URL"
name="youtube"
value={youtube}
onChange={e => onChange(e)}
/>
</div>

<div className='form-group social-input'>
<i className='fab fa-linkedin fa-2x' />
<div className="form-group social-input">
<i className="fab fa-linkedin fa-2x" />
<input
type='text'
placeholder='Linkedin URL'
name='linkedin'
type="text"
placeholder="Linkedin URL"
name="linkedin"
value={linkedin}
onChange={e => onChange(e)}
/>
</div>

<div className='form-group social-input'>
<i className='fab fa-instagram fa-2x' />
<div className="form-group social-input">
<i className="fab fa-instagram fa-2x" />
<input
type='text'
placeholder='Instagram URL'
name='instagram'
type="text"
placeholder="Instagram URL"
name="instagram"
value={instagram}
onChange={e => onChange(e)}
/>
</div>
</Fragment>
)}

<input type='submit' className='btn btn-primary my-1' />
<Link className='btn btn-light my-1' to='/dashboard'>
<input type="submit" className="btn btn-primary my-1" />
<Link className="btn btn-light my-1" to="/dashboard">
Go Back
</Link>
</form>
Expand All @@ -228,12 +227,11 @@ const Createprofile = ({
CreateProfile.propTypes = {
createProfile: PropTypes.func.isRequired,
getCurrentProfile: PropTypes.func.isRequired,
profile: PropTypes.object.isRequired,
profile: PropTypes.object.isRequired
};
const mapStateToProps = state => ({
profile: state.profile,
profile: state.profile
});
export default connect(
mapStateToProps,
{ createProfile, getCurrentProfile },
)(withRouter(CreateProfile));
export default connect(mapStateToProps, { createProfile, getCurrentProfile })(
withRouter(CreateProfile)
);
1 change: 1 addition & 0 deletions config/db.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ const connectDB = async () => {
try {
await mongoose.connect(db, {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
useFindAndModify: false
});
Expand Down

0 comments on commit 60be72e

Please sign in to comment.