91 lines
2.8 KiB
JavaScript
91 lines
2.8 KiB
JavaScript
|
const express = require('express');
|
||
|
const mongoose = require('mongoose');
|
||
|
const serverConfig = require('./configs/server.config');
|
||
|
const dbConfig = require('./configs/db.config');
|
||
|
const multer = require('multer');
|
||
|
const cors = require('cors');
|
||
|
const path = require('path');
|
||
|
|
||
|
const app = express();
|
||
|
|
||
|
app.use(cors());
|
||
|
|
||
|
// Middleware to parse JSON bodies
|
||
|
app.use(express.json());
|
||
|
|
||
|
// Middleware to set the base URL
|
||
|
app.use((req, res, next) => {
|
||
|
const baseUrl = `${req.protocol}://${req.get('host')}`;
|
||
|
req.baseUrl = baseUrl;
|
||
|
next();
|
||
|
});
|
||
|
const connectDb = async (req, res) => {
|
||
|
try {
|
||
|
await mongoose.connect(dbConfig.URI);
|
||
|
console.log('MongoDB is connected');
|
||
|
} catch (err) {
|
||
|
console.error('Error inside db connection:', err.message);
|
||
|
}
|
||
|
};
|
||
|
|
||
|
connectDb();
|
||
|
|
||
|
app.listen(serverConfig.PORT, "192.168.0.239", () => {
|
||
|
console.log(`Application started on port number: ${serverConfig.PORT}`);
|
||
|
});
|
||
|
|
||
|
|
||
|
// Configure Multer for handling file uploads
|
||
|
|
||
|
// const storage = multer.diskStorage({
|
||
|
// destination: (req, file, cb) => {
|
||
|
// cb(null, "uploads/");
|
||
|
// },
|
||
|
// filename: (req, file, cb) => {
|
||
|
// const uniqueSuffix = Date.now() + "-" + Math.round(Math.random() * 1e9);
|
||
|
// const extension = file.originalname.split(".").pop();
|
||
|
// cb(null, file.fieldname + "-" + uniqueSuffix + "." + extension);
|
||
|
// },
|
||
|
// });
|
||
|
|
||
|
// const upload = multer({ storage: storage });
|
||
|
app.use('/uploads', express.static(path.join(__dirname, 'uploads')));
|
||
|
var filestorageEngine = multer.diskStorage({
|
||
|
destination: (req, file, cb) => {
|
||
|
cb(null, './uploads');
|
||
|
},
|
||
|
filename: (req, file, cb) => {
|
||
|
const uniqueSuffix = Date.now() + "-" + Math.round(Math.random() * 1e9);
|
||
|
const extension = file.originalname.split(".").pop();
|
||
|
cb(null, file.fieldname + "-" + uniqueSuffix + "." + extension);
|
||
|
},
|
||
|
});
|
||
|
|
||
|
var upload = multer({
|
||
|
storage: filestorageEngine
|
||
|
});
|
||
|
|
||
|
// Require routes
|
||
|
require('./routes/auth.route')(app);
|
||
|
require('./routes/user.route')(app);
|
||
|
require('./routes/admin.route')(app);
|
||
|
require('./routes/subscription.route')(app);
|
||
|
require('./routes/ads.route')(app);
|
||
|
require('./routes/adsSetting.route')(app);
|
||
|
require('./routes/review.route')(app);
|
||
|
require('./routes/payment.route')(app);
|
||
|
require('./routes/form.route')(app);
|
||
|
require('./routes/notification.route')(app);
|
||
|
require('./routes/privacy.route')(app);
|
||
|
require('./routes/TermsandCondition.route')(app);
|
||
|
require('./routes/song.route')(app);
|
||
|
require('./routes/artist.route')(app);
|
||
|
require('./routes/album.route')(app);
|
||
|
require('./routes/playlist.route')(app);
|
||
|
require('./routes/reward.route')(app);
|
||
|
require('./routes/language.route')(app);
|
||
|
require('./routes/categories.route')(app);
|
||
|
require('./routes/subcategories.route')(app);
|
||
|
require('./routes/importsong.route')(app);
|
||
|
|