/* ----------------------------------------------------------------------------    

 Question Server
 GitLab: <https://gitlab.com/YourFriendlyNeighborhoodDealer/question-node-server>

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program. If not, see <https://www.gnu.org/licenses/>.

 ------------------------------------------------------------------------- */

module.exports = {
	GetDateString: GetDateString,
	Log: Log,
	GetColor: GetColor
};

var utils = require('./utils.js');
const nlogFile = "stats/nlogs";

function GetDateString() {
	var m = new Date();
	return m.getFullYear() + "/" +
		("0" + (m.getMonth() + 1)).slice(-2) + "/" +
		("0" + m.getDate()).slice(-2) + " " +
		("0" + m.getHours()).slice(-2) + ":" +
		("0" + m.getMinutes()).slice(-2) + ":" +
		("0" + m.getSeconds()).slice(-2);
}

function Log(s, c, b) {
	if (c != undefined)
		console.log(c, GetDateString() + "> " + s);
	else
		console.log(GetDateString() + "> " + s);

	if (b)
		utils.Beep();
	utils.AppendToFile(GetDateString() + "> " + s, nlogFile);
}

function GetColor(c) {
	if (c == "redbg")
		return '\x1b[41m%s\x1b[0m';
	if (c == "bluebg")
		return '\x1b[44m%s\x1b[0m';
	if (c == "red")
		return '\x1b[31m%s\x1b[0m';
	if (c == "green")
		return '\x1b[32m%s\x1b[0m';
	if (c == "yellow")
		return '\x1b[33m%s\x1b[0m';
	if (c == "blue")
		return '\x1b[34m%s\x1b[0m';
	if (c == "cyan")
		return '\x1b[36m%s\x1b[0m';
}