const express = require('express');
const cors = require('cors');
const mongoose = require('mongoose');

require('dotenv').config();

const app = express();
const port = process.env.PORT || 5000;

app.use(cors());
app.use(express.json());

const uri = process.env.ATLAS_URI;
mongoose.connect(uri, { useNewUrlParser: true, useCreateIndex: true , useUnifiedTopology: true}
);
const connection = mongoose.connection;
connection.once('open', () => {
  console.log("MongoDB database connection established successfully");
})

const bookRouter = require('./routes/book');
const usersRouter = require('./routes/user');
const borrowerRouter = require('./routes/borrower');
const adminRouter = require('./routes/admin');

if(process.env.NODE_ENV === 'production'){
  app.use(express.static('client/build'));
}

app.use('/book', bookRouter);
app.use('/user', usersRouter);
app.use('/borrower',borrowerRouter);
app.use('/admin', adminRouter);


app.listen(port, () => {
    console.log(`Server is running on port: ${port}`);
});