Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- app.get('/authenticate', function(req, res) {
- linkedin.people.me(['id', 'first-name', 'last-name', 'email-address', 'positions', 'picture-url::(original)', 'industry', 'headline'], function(err, $in) {
- if ( err )
- return console.log(err);
- req.session.linkedinID: linkedinID;
- var linkedInUser = {
- currentPosition: $in.positions.values[0].company.name,
- linkedinID: $in.id,
- firstname: $in.firstName,
- lastname: $in.lastName,
- email: $in.emailAddress,
- pictureURL: $in.pictureUrl
- }
- // for a user with the same id as the recID
- User.findOne({ 'linkedIn.linkedinID' : linkedinID}, function(err, user) {
- if (err)
- return (err);
- // if the user is found, then log them in
- if (user) {
- req.session.user = user;
- // find recruiter with the same id
- Recruiter.findById(user._id, function(err, recruiter) {
- if (err) throw err;
- // associating reviews
- user.reviews = recruiter.reviews;
- // save the user
- user.save(function(err) {
- if (err) throw err;
- });
- });
- return res.redirect('/authenticated-profile/' + user._id); // user found, return that user
- } else {
- var recruiterID = req.session.recruiter_id;
- var ratings = [];
- // Create new user and associate with recruiter
- Recruiter.findByIdAndUpdate(
- recruiterID,
- {$push: {pictureURL: pictureURL}},
- {safe: true, upsert: true, new : true},
- function(err, recruiter) {
- if (err) throw err;
- ratings = recruiter.reviews;
- var newUser = new User();
- newUser = {
- linkedIn: {
- _id: recruiterID,
- currentPosition: linkedInUser.currentPosition,
- linkedinID: linkedInUser.linkedinID,
- linkedinToken: req.session.token,
- firstname: linkedInUser.firstname,
- lastname: linkedInUser.lastname,
- emailAddress: linkedInUser.emailAddress,
- pictureURL: linkedInUser.pictureURL,
- reviews: ratings
- }
- }
- // saving user to the database
- newUser.save(function(err) {
- if (err)
- throw err;
- req.flash('successMessage', 'authenticated');
- // if successful, return the new user
- req.session.user = newUser;
- return res.redirect('/authenticated-profile/' + newUser._id);
- });
- });
- }
- });
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement