Select Git revision
IntlFormatter.php
app.js 2.21 KiB
const express = require('express');
const bodyParser = require('body-parser');
const session = require('express-session');
const flash = require('connect-flash');
global.loggedIn = null
const app = express();
app.use(express.static('public'));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(bodyParser.urlencoded({ extended: true }));
app.use(session({
secret: 'secretkey',
resave: true,
saveUninitialized: true
}));
app.use(flash());
app.set('view engine', 'ejs');
app.use('*', (req, res, next) => {
loggedIn = req.session.userId
next()
});
const indexController = require('./controllers/indexController');
const loginController = require('./controllers/loginController');
const registerController = require('./controllers/registerController');
const logoutController = require('./controllers/logoutController');
const productController = require('./controllers/productController');
const cartController = require('./controllers/cartController');
app.get('/', indexController.getProducts);
app.get('/login', loginController.showLoginPage);
app.post('/user/login', loginController.loginUser);
app.get('/register', registerController.showRegisterPage);
app.post('/user/register', registerController.registerUser);
app.post('/user/register', registerController.registerUser);
app.get('/logout', logoutController);
app.get('/product/:id', indexController.getProductDetail);
app.get('/addProduct', productController.showAddProductForm);
app.post('/addProduct', productController.createProduct);
app.post('/delete_product/:id', productController.deleteProduct);
app.get('/products/:id/edit', productController.showUpdateProductForm);
app.post('/products/:id/update', productController.updateProduct);
app.get('/search', productController.searchProducts);
app.post('/cart/add', cartController.addToCart);
app.get('/cart', cartController.viewCart);
app.post('/cart/remove/:id', cartController.removeFromCart);
app.post('/checkout', cartController.checkout);
app.get('/orderConfirmation', (req,res) => {
res.render('orderConfirmation');
});
app.get('/orderHistory', productController.orderHistory);
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});