-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathgoogle2.js
59 lines (59 loc) · 2.21 KB
/
google2.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
const passport = require("passport");
const GoogleStratergy = require("passport-google-oauth20");
//const FacebookStratergy = require("passport-facebook");
const Schema = require("./db/models/storeSchema");
passport.serializeUser((user,done)=>{
console.log("hello");
console.log(user);
console.log("this is user id",user.googleId);
done(null,user.googleId);
})
passport.deserializeUser((id,done)=>{
console.log("Now the deserialization will be done");
console.log(id);
Schema.Users.find({googleId:id}).then((user)=>{
done(null,user);
})
})
// passport.use(new FacebookStratergy({
// clientID:'2049830411806838',
// clientSecret: 'd85ab49505e3c1bee8e19f1da3b21dd6',
// callbackURL: "http://localhost:1234/callback"
// },function(accessToken, refreshToken, profile, done)
// {
// console.log(profile);
// }))
passport.use(
new GoogleStratergy({
callbackURL:"/auth/google/callback",
clientID: '698738936640-ftk2mu6fdnfsbn0tej7rod2o1saqeb0s.apps.googleusercontent.com',
clientSecret:'N0RbEmLpjP52sJnbtjKIv5eX'
},(token, refreshToken, profile, done)=>{
console.log(profile);
Schema.Users.find({googleId:profile.id},(err,doc)=>{
{
if(doc.length>0)
{
console.log("hello I am In the find");
done(null,doc[0]);
}
else
{
Schema.Users.create({email:profile._json.email,name:profile.displayName,photo:profile.photos[0].value,googleId:profile.id,typeOfUser:'Google'},(err)=>{
if(err)
{
console.log("some error is occured",err);
}
else
{
var user = {email:profile._json.email,name:profile.displayName,photo:profile.photos[0].value,googleId:profile.id,typeOfUser:'Google'}
console.log(profile._json.email)
console.log("updated the database");
done(null,user);
}
})
}
}
})
})
)