-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmyapp.js
More file actions
80 lines (70 loc) · 2.44 KB
/
myapp.js
File metadata and controls
80 lines (70 loc) · 2.44 KB
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
var session=require("cookie-session");
var exps=require("express");
// var exp=exps();
var requ=require("request");
var bodyparser= require("body-parser");
var mongoose=require("mongoose");
var User=require("./models/user");
var flash=require("connect-flash");
var passport=require("passport");
var passportlocal=require("passport-local");
var passportlocalmongoose=require("passport-local-mongoose");
var seedDB=require("./seed");
var methodoverride=require("method-override");
var Campground=require("./models/campground.js");
var Comment=require("./models/Comment.js");
var campgroundRouter=require("./routes/campground");
var commentRouter=require("./routes/comment");
var authRouter=require("./routes/authenticate");
var exp=exps();
console.log(process.env.DATABASEURL);
mongoose.Promise = global.Promise;
// const url=process.env.DATABASEURL || "mongodb://localhost/yelp_basic_v6";
// mongoose.connect("mongodb://localhost/yelp_basic_v6",{ useMongoClient: true });
mongoose.connect("mongodb://ibia:ibia@ds111882.mlab.com:11882/yelp_camp",{ useMongoClient: true })
// mongoose.connect(url,{useMongoClient:true})
// .then(() => console.log(`Database connected!`))
// .catch(err => console.log(`Database connection error: ${err.message}`));
mongoose.Promise = global.Promise;
exp.use(exps.static(__dirname+"/public"));
exp.use(flash());
// seedDB();
exp.use(bodyparser.urlencoded({extended:true}));
exp.use(methodoverride("_method"))
exp.set("view engine","ejs");
// exp.use(require("express-session")(
// {
// secret:"what the hell is your problem",
// resave:false,
// saveUninitialized:false
// }))
var expiryDate = new Date(Date.now() + 60 * 60 * 1000) // 1 hour
exp.use(session({
name: 'session',
keys: ['key1', 'key2'],
cookie: {
secure: true,
// httpOnly: true,
expires: expiryDate
}
}))
exp.use(passport.initialize());
exp.use(passport.session());
//==============
//Our middleware
//==============
exp.use(function(req,res,next)
{
res.locals.currentUser=req.user;
res.locals.error=req.flash("error");
res.locals.success=req.flash("success")
next();
})
passport.use(new passportlocal(User.authenticate()))
passport.serializeUser(User.serializeUser())
passport.deserializeUser(User.deserializeUser())
//routes
exp.use("/campground",campgroundRouter)
exp.use("/campground/:id/comments",commentRouter)
exp.use(authRouter)
exp.listen(process.env.PORT,process.env.IP);