Files
MercuryCloud_Dashboard/api/server.js
2022-06-26 18:36:36 +02:00

84 lines
4.5 KiB
JavaScript

const https = require('https');
const express = require('express');
var getIP = require('ipware')().get_ip;
const fs = require('fs')
var crypto = require("crypto");
const uuid = require('uuid');
const fetch = require('cross-fetch');
const request = require('request');
const req = require('express/lib/request');
const bodyParser = require('body-parser')
const bcrypt = require('bcrypt')
const app = express();
function logger(msg) {
let date_ob = new Date();;
let date = ("0" + date_ob.getDate()).slice(-2);
let month = ("0" + (date_ob.getMonth() + 1)).slice(-2);
let year = date_ob.getFullYear();
let hours = date_ob.getHours();
let minutes = date_ob.getMinutes();
let seconds = date_ob.getSeconds();
if (seconds < 10) {seconds = "0" + seconds}
if (hours < 10) {hours = "0" + hours}
if (minutes < 10) {minutes = "0" + minutes}
console.log('[' + year + "-" + month + "-" + date + " " + hours + ":" + minutes + ":" + seconds + '] ' + msg)
fs.appendFileSync('latest.log', '[' + year + "-" + month + "-" + date + " " + hours + ":" + minutes + ":" + seconds + '] ' + msg + '\n')
}
const PORT = 400
var ipInfo = ""
const pterodactyl_api_key = "ptla_28BCpHTsEFDr80yyNU4WLsdkSbGwxnT5kqFuzEHjx81"
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '192.168.20.22',
user : 'mercurycloud_api',
password : 'r6z14kKL2tFDaU6G',
database : 'mercurycloud_api'
});
logger(`
███╗ ███╗███████╗██████╗ ██████╗██╗ ██╗██████╗ ██╗ ██╗ ██████╗██╗ ██████╗ ██╗ ██╗██████╗ █████╗ ██████╗ ██╗
████╗ ████║██╔════╝██╔══██╗██╔════╝██║ ██║██╔══██╗╚██╗ ██╔╝ ██╔════╝██║ ██╔═══██╗██║ ██║██╔══██╗ ██╔══██╗██╔══██╗██║
██╔████╔██║█████╗ ██████╔╝██║ ██║ ██║██████╔╝ ╚████╔╝ ██║ ██║ ██║ ██║██║ ██║██║ ██║ ███████║██████╔╝██║
██║╚██╔╝██║██╔══╝ ██╔══██╗██║ ██║ ██║██╔══██╗ ╚██╔╝ ██║ ██║ ██║ ██║██║ ██║██║ ██║ ██╔══██║██╔═══╝ ██║
██║ ╚═╝ ██║███████╗██║ ██║╚██████╗╚██████╔╝██║ ██║ ██║ ╚██████╗███████╗╚██████╔╝╚██████╔╝██████╔╝ ██║ ██║██║ ██║
╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝`);
connection.connect(function(err) {
if (err) {
logger(` [ERROR] Database error !\n ${err.stack}`);
return;
}
logger(` [INFO] Database succefull connected ! (${connection.threadId})`);
app.use((req, res, next) => {
res.append('Access-Control-Allow-Origin', ['*']);
res.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.append('Access-Control-Allow-Headers', 'Content-Type');
next();
bodyParser.json();
});
app.use('/api/mc-products', require('./routes/mc-products.js'));
app.use('/', require('./routes/index.js'));
app.use('/api/order-form', require('./routes/order-form.js'));
app.use('/api/create-user', require('./routes/create-user.js'));
app.use('/api/login-user', require('./routes/login-user.js'));
app.use('/api/create-product', require('./routes/create-product.js'));
app.use('/api/delete-product', require('./routes/delete-product.js'));
app.listen(PORT, () =>
logger(` [INFO] MercuryCloud API listening on https://api.mercurycloud.fr/ !`)
);
});
exports.crypto = crypto
exports.parser = bodyParser
exports.logger = logger
exports.con = connection
exports.ip = getIP