NoLev commited on
Commit
85e1df4
·
verified ·
1 Parent(s): ee7dc99

Update server.js

Browse files
Files changed (1) hide show
  1. server.js +26 -5
server.js CHANGED
@@ -9,6 +9,8 @@ const investmentRoutes = require('./routes/investment');
9
 
10
  const app = express();
11
 
 
 
12
  // Set view engine
13
  app.set('view engine', 'ejs');
14
  app.set('views', path.join(__dirname, 'public/views'));
@@ -21,11 +23,18 @@ app.use(session({
21
  resave: false,
22
  saveUninitialized: false
23
  }));
 
24
 
25
  // Multer setup for file uploads
26
  const storage = multer.diskStorage({
27
- destination: (req, file, cb) => cb(null, 'kyc_uploads/'),
28
- filename: (req, file, cb) => cb(null, `${Date.now()}-${file.originalname}`)
 
 
 
 
 
 
29
  });
30
  const upload = multer({ storage });
31
  app.use('/user/kyc', upload.fields([
@@ -34,29 +43,41 @@ app.use('/user/kyc', upload.fields([
34
  { name: 'selfie_doc', maxCount: 1 },
35
  { name: 'ssn_doc', maxCount: 1 }
36
  ]));
 
37
 
38
  // Routes
39
  app.use('/', authRoutes);
40
  app.use('/admin', adminRoutes);
41
  app.use('/user', userRoutes);
42
  app.use('/investment', investmentRoutes);
 
43
 
44
  // Serve KYC documents (admin access only)
45
  app.get('/admin/kyc-document/:id', async (req, res) => {
46
  try {
 
47
  const [doc] = await require('./config/db').query('SELECT file_path FROM kyc_documents WHERE id = ?', [req.params.id]);
48
  if (!doc.length) return res.status(404).send('Document not found');
49
  res.sendFile(path.resolve(doc[0].file_path));
50
  } catch (error) {
 
51
  res.status(500).send('Error retrieving document');
52
  }
53
  });
54
 
 
 
 
 
 
 
55
  // Error handling
56
  app.use((err, req, res, next) => {
57
- console.error(err.stack);
58
  res.status(500).send('Something went wrong!');
59
  });
60
 
61
- const PORT = process.env.PORT || 3000;
62
- app.listen(PORT, () => console.log(`Server running on port ${PORT}`));
 
 
 
9
 
10
  const app = express();
11
 
12
+ console.log('Starting server...');
13
+
14
  // Set view engine
15
  app.set('view engine', 'ejs');
16
  app.set('views', path.join(__dirname, 'public/views'));
 
23
  resave: false,
24
  saveUninitialized: false
25
  }));
26
+ console.log('Session middleware configured');
27
 
28
  // Multer setup for file uploads
29
  const storage = multer.diskStorage({
30
+ destination: (req, file, cb) => {
31
+ console.log('Setting up multer destination');
32
+ cb(null, 'kyc_uploads/');
33
+ },
34
+ filename: (req, file, cb) => {
35
+ console.log(`Uploading file: ${file.originalname}`);
36
+ cb(null, `${Date.now()}-${file.originalname}`);
37
+ }
38
  });
39
  const upload = multer({ storage });
40
  app.use('/user/kyc', upload.fields([
 
43
  { name: 'selfie_doc', maxCount: 1 },
44
  { name: 'ssn_doc', maxCount: 1 }
45
  ]));
46
+ console.log('Multer middleware configured');
47
 
48
  // Routes
49
  app.use('/', authRoutes);
50
  app.use('/admin', adminRoutes);
51
  app.use('/user', userRoutes);
52
  app.use('/investment', investmentRoutes);
53
+ console.log('Routes configured');
54
 
55
  // Serve KYC documents (admin access only)
56
  app.get('/admin/kyc-document/:id', async (req, res) => {
57
  try {
58
+ console.log(`Serving KYC document ID: ${req.params.id}`);
59
  const [doc] = await require('./config/db').query('SELECT file_path FROM kyc_documents WHERE id = ?', [req.params.id]);
60
  if (!doc.length) return res.status(404).send('Document not found');
61
  res.sendFile(path.resolve(doc[0].file_path));
62
  } catch (error) {
63
+ console.error('Error serving KYC document:', error);
64
  res.status(500).send('Error retrieving document');
65
  }
66
  });
67
 
68
+ // Health check endpoint
69
+ app.get('/health', (req, res) => {
70
+ console.log('Health check requested');
71
+ res.status(200).send('OK');
72
+ });
73
+
74
  // Error handling
75
  app.use((err, req, res, next) => {
76
+ console.error('Server error:', err.stack);
77
  res.status(500).send('Something went wrong!');
78
  });
79
 
80
+ const PORT = process.env.PORT || 7860;
81
+ app.listen(PORT, () => {
82
+ console.log(`Server running on port ${PORT}`);
83
+ });