const express= require("express");
const mongoose = require("mongoose");

////cookies and session------
// const session = require("express-session");
// const passport = require("passport");

///----Variables-------------------
const app = express();
const env = require('./config/env')
const {url, secret, uri} = env;
const {
    updateCampaigne,
    updateCompletedTasks
} = require('./features/dailyUpdate');
const { sleep } = require('./features/functions');

const {
    updateProfit,
    updateToLaunch,
    updateForceToStop
} = require('./features/monthlyUpdate');

// ///--SETUP BASE---------------------------------
// app.set("view engine", "ejs");
// app.set("views", "./views");
// // mongoose.set('useCreateIndex', true);
// app.use(bodyParser.urlencoded({extended: false}));
// app.use(express.static(__dirname + "/public"));

//--Setup Passport------------------------------
// app.use(session({
//     secret: secret,
//     resave: false,
//     saveUninitialized: false
//   }));
// app.use(passport.initialize());
// app.use(passport.session());

///--Connect to MongoAtlat--------------------
mongoose.connect(uri, {
    useNewUrlParser: true,
    useUnifiedTopology: true,
});
const db=mongoose.connection;
db.once("open", () => {
    console.log("connected to database");
});

async function Run() {
    await updateForceToStop();
    await sleep(3600000);
    await updateCampaigne();
    await sleep(3600000);
    await updateCompletedTasks();
    await sleep(3600000);
    await updateToLaunch();
    await sleep(3600000);
    await updateProfit();
    await sleep(72000000);

    await setInterval(updateCampaigne, 86400000);
    await sleep(3600000);
    await setInterval(updateForceToStop, 86400000);
    await sleep(3600000);
    await setInterval(updateCompletedTasks, 86400000);
    await sleep(3600000);
    await setInterval(updateToLaunch, 86400000);
    await sleep(3600000);
    await setInterval(updateProfit, 86400000);
}

Run();