@@ -7,13 +7,13 @@ router.use(bodyParser.json());
77const path = require ( 'path' )
88router . use ( express . static ( path . join ( __dirname , "../public" ) ) )
99const db = require ( path . join ( __dirname , "../db/dbConnect" ) ) ;
10- // const session = require('express-session');
10+ const session = require ( 'express-session' ) ;
1111require ( 'dotenv' ) . config ( ) ;
12- // router.use(session({
13- // secret: process.env.secret,
14- // resave: false,
15- // saveUninitialized: false
16- // }));
12+ router . use ( session ( {
13+ secret : process . env . secret ,
14+ resave : false ,
15+ saveUninitialized : false
16+ } ) ) ;
1717let transporter = nodemailer . createTransport ( {
1818 service : 'Gmail' ,
1919 auth : {
@@ -23,68 +23,110 @@ let transporter = nodemailer.createTransport({
2323} ) ;
2424
2525
26+ router . get ( '/' , ( req , res ) => {
27+ if ( ! req . session . isLoggedIn ) {
28+ res . redirect ( '/login' ) ;
29+ return ;
30+ }
31+ db . query ( 'SELECT * FROM products' , ( error , results , fields ) => {
32+ if ( error ) {
33+ console . error ( 'Error executing query: ' + error ) ;
34+ return ;
35+ }
36+ res . render ( 'products' , { products :results , isLoggedIn :req . session . isLoggedIn } ) ;
37+ } ) ;
38+ } )
39+
40+ router . post ( '/search' , ( req , res ) => {
41+ if ( req . session . isLoggedIn ) {
42+ res . redirect ( '/login' ) ;
43+ return ;
44+ }
45+ db . query ( 'SELECT * FROM products WHERE name LIKE \'\%' + req . body . name + '\%\';' , ( error , results , fields ) => {
46+ if ( error ) {
47+ console . error ( 'Error executing query: ' + error ) ;
48+ return ;
49+ }
50+ console . log ( results )
51+ res . render ( 'products' , { products :results } ) ;
52+ } ) ;
53+ } )
54+
55+
2656router . get ( '/login' , ( req , res ) => {
27- // if (req.session.isLoggedIn) {
28- // res.redirect("/")
29- // return;
30- // }
57+ if ( req . session . isLoggedIn ) {
58+ res . redirect ( "/" )
59+ return ;
60+ }
3161 res . render ( 'login' ) ;
3262} )
3363
3464router . post ( '/login' , ( req , res ) => {
35- // if (req.session.isLoggedIn) {
36- // res.redirect("/")
37- // return;
38- // }
65+ if ( req . session . isLoggedIn ) {
66+ res . redirect ( "/" )
67+ return ;
68+ }
3969 db . query ( 'SELECT * FROM users WHERE email = \'' + req . body . email + '\' AND password = \'' + req . body . password + '\'' , ( error , results , fields ) => {
4070 if ( error ) {
4171 console . error ( 'Error executing query: ' + error ) ;
4272 return ;
4373 }
4474 if ( results . length > 0 ) {
45- // req.session.isLoggedIn = true;
75+ req . session . isLoggedIn = true ;
4676 res . redirect ( '/' ) ;
4777 }
4878 else {
49- res . redirect ( '/auth/ register' ) ;
79+ res . redirect ( '/register' ) ;
5080 }
5181 } ) ;
5282} ) ;
5383
5484router . get ( '/register' , ( req , res ) => {
55- // if (req.session.isLoggedIn){
56- // res.redirect("/");
57- // return;
58- // }
85+ if ( req . session . isLoggedIn ) {
86+ res . redirect ( "/" ) ;
87+ return ;
88+ }
5989 res . render ( 'register' ) ;
6090} )
6191
6292router . post ( '/register' , ( req , res ) => {
93+ if ( req . session . isLoggedIn ) {
94+ res . redirect ( "/" ) ;
95+ return ;
96+ }
6397 db . query ( "SELECT * FROM users WHERE email = '" + req . body . email + "';" , ( error , results , fields ) => {
6498 if ( error ) {
6599 console . error ( 'Error executing query: ' + error ) ;
66100 return ;
67101 }
68102 if ( results . length > 0 ) {
69- res . redirect ( '/auth/ login' ) ;
103+ res . redirect ( '/login' ) ;
70104 }
71105 else {
72106 db . query ( "INSERT INTO users (name,email,password) VALUES ('" + req . body . fullname + "','" + req . body . email + "','" + req . body . password + "');" , ( error , results , fields ) => {
73107 if ( error ) {
74108 console . error ( 'Error executing query: ' + error ) ;
75109 return ;
76110 }
77- res . redirect ( '/auth/ login' ) ;
111+ res . redirect ( '/login' ) ;
78112 } ) ;
79113 }
80114 } ) ;
81115} ) ;
82116
83117router . get ( '/forgotPass' , ( req , res ) => {
118+ if ( req . session . isLoggedIn ) {
119+ res . redirect ( "/" ) ;
120+ return ;
121+ }
84122 res . render ( 'forgotPass' )
85123} )
86124
87125router . post ( '/forgotPass' , ( req , res ) => {
126+ if ( req . session . isLoggedIn ) {
127+ res . redirect ( "/" ) ;
128+ return ;
129+ }
88130 db . query ( 'SELECT * FROM users WHERE email = \'' + req . body . email + '\';' , ( error , results , fields ) => {
89131 if ( error ) {
90132 console . error ( 'Error executing query: ' + error ) ;
@@ -110,12 +152,16 @@ router.post('/forgotPass', (req,res) => {
110152 res . render ( 'changePass' , { email :email } )
111153 }
112154 else {
113- res . redirect ( '/auth/ register' ) ;
155+ res . redirect ( '/register' ) ;
114156 }
115157 } ) ;
116158} )
117159
118160router . post ( '/changePass' , ( req , res ) => {
161+ if ( req . session . isLoggedIn ) {
162+ res . redirect ( "/" ) ;
163+ return ;
164+ }
119165 otp = req . body . otp ;
120166 console . log ( otp ) ;
121167 console . log ( 'UPDATE users set password = \'' + req . body . newPassword + '\' WHERE otp = ' + otp + ' AND email = \'' + req . body . email + '\';' )
@@ -124,8 +170,15 @@ router.post('/changePass', (req, res) => {
124170 console . error ( 'Error executing query: ' + error ) ;
125171 return ;
126172 }
127- res . redirect ( '/auth/ login' ) ;
173+ res . redirect ( '/login' ) ;
128174 } ) ;
129175} )
130176
177+ router . post ( '/logout' , ( req , res ) => {
178+ if ( req . session . isLoggedIn ) {
179+ req . session . isLoggedIn = false ;
180+ }
181+ res . redirect ( "/login" ) ;
182+ } )
183+
131184module . exports = router ;
0 commit comments