Skip to content

Commit a0e19c0

Browse files
committed
add flash message using noty js
1 parent 56c4380 commit a0e19c0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+7099
-72
lines changed

config/middleware.js

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
module.exports.setFlash=function(req,res,next){
2+
3+
res.locals.flash = {
4+
5+
'success' : req.flash('success'),
6+
'error' : req.flash('error')
7+
}
8+
console.log(res.locals.flash);
9+
10+
next();
11+
12+
}
13+
14+
//run it u th

config/passport-local-strategy.js

+5-4
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,19 @@ const User = require('../models/user');
77

88
// authentication using passport
99
passport.use(new LocalStrategy({
10-
usernameField: 'email'
10+
usernameField: 'email',
11+
passReqToCallback:true
1112
},
12-
function(email, password, done){
13+
function(req,email, password, done){
1314
// find a user and establish the identity
1415
User.findOne({email: email}, function(err, user) {
1516
if (err){
16-
console.log('Error in finding user --> Passport');
17+
req.flash('error',err);
1718
return done(err);
1819
}
1920

2021
if (!user || user.password != password){
21-
console.log('Invalid Username/Password');
22+
req.flash('error','Invalid Username/Password');
2223
return done(null, false);
2324
}
2425

controllers/home_controller.js

+22-33
Original file line numberDiff line numberDiff line change
@@ -3,51 +3,40 @@ const Post = require('../models/posts');
33
const User=require('../models/user');
44

55

6-
module.exports.home = function(req, res){
6+
module.exports.home =async function(req, res){
77

8-
// Posts.find({},function(err,posts){
9-
10-
// if(err){
11-
// console.log('error in fetchhing posts')
12-
// return;
13-
// }
14-
15-
// return res.render('home',{
16-
17-
// title:"Home",
18-
// posts:posts
19-
20-
// });
21-
22-
// });
8+
9+
try{
2310

2411
// POpulate the user of each post
2512

26-
Post.find({})
13+
let posts=await Post.find({})
2714
.populate('user')
2815
.populate({
2916
path:'comments',
3017
populate:{
3118
path:'user'
3219
}
33-
})
34-
.exec(function(err,posts){
35-
36-
User.find({},function(err,users){
37-
return res.render('home',{
38-
39-
all_users:users,
40-
title:"Home",
41-
posts:posts
42-
43-
});
44-
45-
});
46-
20+
});
21+
22+
23+
let users=await User.find({});
4724

48-
})
4925

50-
}
26+
return res.render('home',{
27+
28+
all_users:users,
29+
title:"Home",
30+
posts:posts
31+
32+
});
33+
34+
}catch(err){
35+
console.log('Error',err);
36+
return;
37+
}
38+
39+
}
5140

5241

5342

controllers/posts_controller.js

+42-26
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,56 @@
11
const Post=require('../models/posts');
22
const Comment=require('../models/comment');
33

4-
module.exports.create=function(req,res){
4+
module.exports.create=async function(req,res){
5+
6+
try{
57

6-
Post.create({
8+
await Post.create({
79
content:req.body.content,
810
user:req.user._id
9-
},function(err,post){
10-
11-
if(err){console.log('error in creating a post');return}
11+
});
1212

13-
return res.redirect('back');
14-
})
13+
req.flash('success','Post published');
14+
return res.redirect('back');
15+
}
16+
catch(err){
17+
req.flash('error',err);
18+
console.log('Error',err);
19+
return res.redirect('back');
20+
}
1521

1622
}
1723

18-
module.exports.destroy =function(req,res){
24+
module.exports.destroy =async function(req,res){
1925

20-
Post.findById(req.params.id,function(err,post){
26+
try{
27+
let post= await Post.findById(req.params.id);
28+
29+
// .id means converting the objject id into the string
30+
if(post.user==req.user.id)
31+
{
32+
post.remove();
33+
34+
35+
await Comment.deleteMany({post:req.params.id});
36+
req.flash('success','Post deleted');
37+
38+
return res.redirect('back')
39+
40+
}
41+
else{
42+
req.flash('error','YOu cannot delete this post');
43+
return res.redirect('back');
44+
}
45+
46+
}catch(err){
47+
req.flash('error',err);
48+
console.log('Error',err);
49+
return res.redirect('back');
50+
}
2151

22-
// .id means converting the objject id into the string
23-
if(post.user==req.user.id)
24-
{
25-
post.remove();
52+
53+
2654

27-
Comment.deleteMany({post:req.params.id},function(err){
28-
29-
return res.redirect('back');
30-
31-
})
32-
33-
}
34-
else{
35-
return res.redirect('back');
36-
}
37-
38-
});
55+
}
3956

40-
}

controllers/users_controller.js

+11-6
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ module.exports.signUp=function(req,res){
3030

3131
if(req.isAuthenticated())
3232
{
33-
return res.redirect('/users/profile');
33+
return res.redirect('/users/sign-up');
3434
}
3535

3636
return res.render('user_sign_up',{
@@ -67,19 +67,17 @@ module.exports.create=function(req,res){
6767

6868
if(err)
6969
{
70-
console.log('error in finding user in signing up',err);
71-
return;
70+
req.flash('error', err); return
7271
}
7372

7473
if(!user)
7574
{
7675
User.create(req.body,function(err,user){
7776

7877
if(err){
79-
console.log('error in creating a user',err);
80-
return;
78+
req.flash('error', err); return
8179
}
82-
80+
req.flash('success', 'You have signed up, login to continue!');
8381
return res.redirect('/users/sign-in');
8482

8583
})
@@ -96,13 +94,20 @@ module.exports.create=function(req,res){
9694
// sign in and create a session for user
9795
module.exports.createSession=function(req,res){
9896

97+
98+
req.flash('success','Logged in Successfully');
99+
99100
return res.redirect('/');
100101

101102
}
102103

103104
module.exports.desstroySession=function(req,res){
104105

106+
107+
req.flash('success','You have logged out !');
108+
console.log(req.flash);
105109
req.logout();
106110

111+
107112
return res.redirect('/');
108113
}

index.js

+13-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ const passport = require('passport');
1010
const passportLocal = require('./config/passport-local-strategy');
1111
const MongoStore=require('connect-mongo')(session);
1212
const sassMiddleware=require('node-sass-middleware');
13+
const flash = require('connect-flash');
14+
const customMware=require('./config/middleware');
1315

1416
app.use(sassMiddleware({
1517

@@ -20,7 +22,7 @@ app.use(sassMiddleware({
2022
prefix:'/css'
2123
}));
2224

23-
25+
// escalating your doubt ok
2426
app.use(express.urlencoded());
2527

2628
app.use(cookieParser());
@@ -49,7 +51,8 @@ app.use(session({
4951
saveUninitialized: false,
5052
resave: false,
5153
cookie: {
52-
maxAge: (1000 * 60 * 100)
54+
maxAge: (1000 * 60 * 100),
55+
5356
},
5457
store:new MongoStore({
5558

@@ -67,14 +70,22 @@ app.use(passport.session());
6770

6871
app.use(passport.setAuthentictaedUser);
6972

73+
app.use(flash());
74+
app.use(customMware.setFlash);
75+
76+
77+
7078
// use express router
7179
app.use('/', require('./routes'));
7280

7381

82+
83+
7484
app.listen(port, function(err){
7585
if (err){
7686
console.log(`Error in running the server: ${err}`);
7787
}
7888

7989
console.log(`Server is running on port: ${port}`);
8090
});
91+
//k

node_modules/connect-flash/.travis.yml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

node_modules/connect-flash/LICENSE

+20
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)