diff --git a/components/helpers.js b/components/helpers.js index 1da5443..5c3f705 100644 --- a/components/helpers.js +++ b/components/helpers.js @@ -1,37 +1,34 @@ const EResult = require('../resources/EResult.js'); exports.isSteamID = function(input) { - var keys = Object.keys(input); + let keys = Object.keys(input); if (keys.length != 4) { return false; } // Make sure it has the keys we expect - keys = keys.filter(function(item) { - return ['universe', 'type', 'instance', 'accountid'].indexOf(item) != -1; - }); - - return keys.length == 4; + keys.sort(); + return keys.join(',') == 'accountid,instance,type,universe'; }; exports.decodeSteamTime = function(time) { - var date = new Date(); + let date = new Date(); - if (time.includes("@")) { - var parts = time.split('@'); - if (!parts[0].includes(",")) { + if (time.includes('@')) { + let parts = time.split('@'); + if (!parts[0].includes(',')) { // no year, assume current year - parts[0] += ", " + date.getFullYear(); + parts[0] += ', ' + date.getFullYear(); } - date = new Date(parts.join('@').replace(/(am|pm)/, ' $1') + " UTC"); // add a space so JS can decode it + date = new Date(parts.join('@').replace(/(am|pm)/, ' $1') + ' UTC'); // add a space so JS can decode it } else { // Relative date - var amount = time.replace(/(\d) (minutes|hour|hours) ago/, "$1"); + let amount = time.replace(/(\d) (minutes|hour|hours) ago/, '$1'); - if(time.includes("minutes")) { + if (time.includes('minutes')) { date.setMinutes(date.getMinutes() - amount); - } else if(time.match(/hour|hours/)) { + } else if (time.match(/hour|hours/)) { date.setHours(date.getHours() - amount); } } @@ -50,7 +47,7 @@ exports.eresultError = function(eresult) { return null; } - var err = new Error(EResult[eresult] || ("Error " + eresult)); + let err = new Error(EResult[eresult] || ("Error " + eresult)); err.eresult = eresult; return err; };