Check for invalid timezones in time

This commit is contained in:
Daniel Odendahl Jr
2018-09-20 16:54:46 +00:00
parent 457498eb4d
commit 2fcb14888a
2 changed files with 10 additions and 11 deletions
+9 -10
View File
@@ -25,20 +25,19 @@ module.exports = class TimeCommand extends Command {
run(msg, { timeZone }) {
let neopia = false;
if (timeZone === 'neopia/standard' || timeZone === 'neopia') {
if (timeZone === 'neopia') {
timeZone = 'america/vancouver';
neopia = true;
}
try {
const time = moment().tz(timeZone).format('hh:mm:ss A');
const location = neopia ? ['neopia'] : timeZone.split('/');
const main = firstUpperCase(location[0], /[_ ]/);
const sub = location[1] ? firstUpperCase(location[1], /[_ ]/) : null;
const subMain = location[2] ? firstUpperCase(location[2], /[_ ]/) : null;
const parens = sub ? ` (${subMain ? `${sub}, ` : ''}${main})` : '';
return msg.say(`The current time in ${subMain || sub || main}${parens} is ${time}.`);
} catch (err) {
if (!moment.tz.zone(timeZone)) {
return msg.reply('Invalid time zone. Refer to <https://en.wikipedia.org/wiki/List_of_tz_database_time_zones>.');
}
const time = moment().tz(timeZone).format('hh:mm:ss A');
const location = neopia ? ['neopia'] : timeZone.split('/');
const main = firstUpperCase(location[0], /[_ ]/);
const sub = location[1] ? firstUpperCase(location[1], /[_ ]/) : null;
const subMain = location[2] ? firstUpperCase(location[2], /[_ ]/) : null;
const parens = sub ? ` (${subMain ? `${sub}, ` : ''}${main})` : '';
return msg.say(`The current time in ${subMain || sub || main}${parens} is ${time}.`);
}
};
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "xiao",
"version": "91.8.4",
"version": "91.8.5",
"description": "Your personal server companion.",
"main": "Xiao.js",
"scripts": {