Revolution/modules/consoleHelper.js
tgpethan f0e3120b83 Sort out consoleHelper's Config formatting
The consoleHelper has some pretty ugly formatting on the config, this fixes that.
2020-03-26 16:25:25 +00:00

81 lines
No EOL
2.8 KiB
JavaScript

const chalk = require("chalk"),
fs = require("fs");
// Defines the function of this module
const MODULE_FUNCTION = "handle_console",
// Base path for module folder creation and navigation
BASE_PATH = "/consoleHelper";
// Only ran on startup so using sync functions is fine
// Makes the folders for files of the module
if (!fs.existsSync(__dirname + BASE_PATH)) {
fs.mkdirSync(__dirname + BASE_PATH);
console.log(`[consoleHelper] Made consoleHelper module folder`);
}
// Creates the consoleHelper config file
if (!fs.existsSync(__dirname + BASE_PATH + "/config.json")) {
fs.writeFileSync(__dirname + BASE_PATH + "/config.json", `{\n\t"24hour":true\n}`);
console.log(`[consoleHelper] Made consoleHelper config file`);
}
// Load in config
const config = require(__dirname + BASE_PATH + "/config.json");
module.exports = {
// Prints a bit of information to the console
printInfo:function(emoji, s) {
console.log(chalk.green(`[${this.getTime24()}] `)+chalk.bgGreen(chalk.black(" INFO "))+` ${emoji} ${s}`);
},
// Prints a warning to the console
printWarn:function(emoji, s) {
console.warn(chalk.green(`[${this.getTime24()}] `)+chalk.bgYellow(chalk.black(" WARN "))+` ${emoji} ${s}`);
},
// Prints an error to the console
printError:function(emoji, s) {
console.error(chalk.green(`[${this.getTime24()}] `)+chalk.bgRed(chalk.black(" ERROR "))+` ${emoji} ${s}`);
},
getTime24:function() {
const time = new Date();
// Check if the user wants 24 hour or 12 hour time
if (config["24hour"]) {
// User wants 24 hour time, leave it as it is.
return `${correctValue(time.getHours())}:${correctValue(time.getMinutes())}:${correctValue(time.getSeconds())}`;
} else {
// User wants 12 hour time, process it for that.
return this.t2412(`${correctValue(time.getHours())}:${correctValue(time.getMinutes())}:${correctValue(time.getSeconds())}`);
}
},
// Function for converting 24 hour to 12 hour time
t2412:function(inp) {
// Check what time it is, AM or PM.
if (parseInt(inp.split(":")[0]) > 11) {
// It's over 11 so it's PM
const i = inp.split(":");
let i1 = parseInt(i[0]) - 12;
if (i1 == 0) i1 = 12;
return i1 + ":" + i[1] + " PM";
} else {
// It's lower than 12 so it's AM
const i = inp.split(":");
let i1 = parseInt(i[0]);
if (i1 == 0) i1 = 12;
return i1 + ":" + i[1] + " AM";
}
}
}
module.exports.MOD_FUNC = MODULE_FUNCTION;
// Date returns numbers without a 0 in front of them of course so this adds them.
function correctValue(i) {
if (i < 10) {
return "0"+i;
} else {
return i;
}
}