diff --git a/utils/stat.js b/utils/stat.js index 96bc53c..3d2d91c 100644 --- a/utils/stat.js +++ b/utils/stat.js @@ -1,4 +1,4 @@ -/* ---------------------------------------------------------------------------- +/* ---------------------------------------------------------------------------- Question Server GitLab: @@ -19,94 +19,78 @@ ------------------------------------------------------------------------- */ module.exports = { - LogStat: LogStat, - Load: Load -}; - -var utils = require('./utils.js'); -var logger = require('./logger.js'); - -const statFile = "stats/stats"; -const vStatFile = "stats/vstats"; -const writeInterval = 10; - -var data = {}; -var vData = {}; -var writes = 0; - -function Load() { - try { - var prevData = utils.ReadFile(statFile); - data = JSON.parse(prevData); - } catch (e) { - logger.Log("Error at loading logs! (@ first run its normal)", logger.GetColor("redbg")); - console.log(e); - } - - try { - var prevVData = utils.ReadFile(vStatFile); - vData = JSON.parse(prevVData); - } catch (e) { - logger.Log("Error at loading visit logs! (@ first run its normal)", logger.GetColor("redbg")); - console.log(e); - } + LogStat: LogStat, + Load: Load } -function LogStat(url) { - Inc(url); - AddVisitStat(url); - Save(); +var utils = require('../utils/utils.js') +var logger = require('../utils/logger.js') + +const statFile = '../stats/stats' +const vStatFile = '../stats/vstats' +const writeInterval = 10 + +var data = {} +var vData = {} +var writes = 0 + +function Load () { + try { + var prevData = utils.ReadFile(statFile) + data = JSON.parse(prevData) + } catch (e) { + logger.Log('Error at loading logs! (@ first run its normal)', logger.GetColor('redbg')) + console.log(e) + } + + try { + var prevVData = utils.ReadFile(vStatFile) + vData = JSON.parse(prevVData) + } catch (e) { + logger.Log('Error at loading visit logs! (@ first run its normal)', logger.GetColor('redbg')) + console.log(e) + } } -function Inc(value) { - if (value.startsWith("/?")) - value = "/"; - if (data[value] == undefined) - data[value] = 0; - data[value]++; +function LogStat (url) { + Inc(url) + AddVisitStat(url) + Save() } -function AddVisitStat(name) { - var m = new Date(); - const now = m.getFullYear() + "/" + - ("0" + (m.getMonth() + 1)).slice(-2) + "/" + - ("0" + m.getDate()).slice(-2); - if (vData[now] == undefined) - vData[now] = {}; - if (vData[now][name] == undefined) - vData[now][name] = 0; - vData[now][name]++; +function Inc (value) { + if (value.startsWith('/?')) { value = '/' } + if (data[value] == undefined) { data[value] = 0 } + data[value]++ } -function AddVisitStat(name) { - var m = new Date(); - const now = m.getFullYear() + "/" + - ("0" + (m.getMonth() + 1)).slice(-2) + "/" + - ("0" + m.getDate()).slice(-2); - if (vData[now] == undefined) - vData[now] = {}; - if (vData[now][name] == undefined) - vData[now][name] = 0; - vData[now][name]++; +function AddVisitStat (name) { + var m = new Date() + const now = m.getFullYear() + '/' + + ('0' + (m.getMonth() + 1)).slice(-2) + '/' + + ('0' + m.getDate()).slice(-2) + if (vData[now] == undefined) { vData[now] = {} } + if (vData[now][name] == undefined) { vData[now][name] = 0 } + vData[now][name]++ } -function Save() { - writes++; - if (writes == writeInterval) { - try { - utils.WriteFile(JSON.stringify(data), statFile); - // logger.Log("Stats wrote."); - } catch (e) { - logger.Log("Error at writing logs!", logger.GetColor("redbg")); - console.log(e); - } - try { - utils.WriteFile(JSON.stringify(vData), vStatFile); - // logger.Log("Stats wrote."); - } catch (e) { - logger.Log("Error at writing visit logs!", logger.GetColor("redbg")); - console.log(e); - } - writes = 0; - } +function Save () { + writes++ + if (writes == writeInterval) { + try { + utils.WriteFile(JSON.stringify(data), statFile) + // logger.Log("Stats wrote."); + } catch (e) { + logger.Log('Error at writing logs!', logger.GetColor('redbg')) + console.log(e) + } + try { + utils.WriteFile(JSON.stringify(vData), vStatFile) + // logger.Log("Stats wrote."); + } catch (e) { + logger.Log('Error at writing visit logs!', logger.GetColor('redbg')) + console.log(e) + } + writes = 0 + } }