pushing exception handling

This commit is contained in:
John Facey
2022-06-21 22:02:36 -05:00
parent 24b3700775
commit 462dca403f
7 changed files with 143 additions and 122 deletions

View File

@@ -1,27 +1,29 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'add',
description: 'Add RSS Source',
execute(message,args) {
if (args.length < 3) {
message.reply(`Please use in !add [title] [https://domain.com/feed.xml] [category] format`);
return;
}
var title = args[0];
var link = args[1];
var category = args[2];
name: 'add',
description: 'Add RSS Source',
execute(message, args) {
try {
if (args.length < 3) {
message.reply(`Please use in !add [title] [https://domain.com/feed.xml] [category] format`);
return;
}
var title = args[0];
var link = args[1];
var category = args[2];
var result = libFlayer.addSource(title,link,category);
if (result) {
message.reply(`Adding ${title} to the list of RSS sources`);
} else {
message.reply(`${title} already exists in the list of RSS sources`);
}
var sources = libFlayer.getSources();
libFlayer.loadFeeds();
var result = libFlayer.addSource(title, link, category);
if (result) {
message.reply(`Adding ${title} to the list of RSS sources`);
} else {
message.reply(`${title} already exists in the list of RSS sources`);
}
}
var sources = libFlayer.getSources();
libFlayer.loadFeeds();
} catch (err) {
message.reply(err.toString());
}
}
};

View File

@@ -1,17 +1,20 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'answer',
description: 'Answer',
async execute(message,args) {
if (args.length < 1) {
message.reply(`Please use in !answer [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
name: 'answer',
description: 'Answer',
async execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Please use in !answer [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
var answerData = await libFlayer.getAnswer(question);
message.reply(`**Question**: ${question} \n\n**Answer**: ${answerData.text}\n\n **Source**: ${answerData.source}`);
}
var answerData = await libFlayer.getAnswer(question);
message.reply(`**Question**: ${question} \n\n**Answer**: ${answerData.text}\n\n **Source**: ${answerData.source}`);
} catch (err) {
message.reply(err.toString());
}
}
};

View File

@@ -4,15 +4,19 @@ module.exports = {
name: 'get',
description: 'Get RSS Source Link',
execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Use !get [number] Ex: !get 25`);
return;
if (args.length < 1) {
message.reply(`Use !get [number] Ex: !get 25`);
return;
}
var search = args[0];
var catName = "All";
var feedArray = libFlayer.getFeeds();
message.reply(`**Retrieving**: [${catName}] (${feedArray[search].link})`);
} catch (err) {
message.reply(err.toString());
}
var search = args[0];
var catName = "All";
var feedArray = libFlayer.getFeeds();
message.reply(`**Retrieving**: [${catName}] (${feedArray[search].link})`);
}
};

View File

@@ -1,13 +1,15 @@
var libFlayer = require("../libFlayer.js");
const quote_url = "https://zenquotes.io/api/quotes/";
module.exports = {
name: 'quote',
description: 'Quote!',
async execute(message) {
var quotes = await libFlayer.getQuotes(quote_url);
var selectedQuote = Math.floor(Math.random() * quotes.length);
message.reply(quotes[selectedQuote].q + " - " + quotes[selectedQuote].a);
try {
var quotes = await libFlayer.getQuotes(quote_url);
var selectedQuote = Math.floor(Math.random() * quotes.length);
message.reply(quotes[selectedQuote].q + " - " + quotes[selectedQuote].a);
} catch (e) {
message.reply(e.toString());
}
}
};

View File

@@ -1,21 +1,23 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'random',
description: 'Random',
execute(message, args) {
var category = "";
var catName = "All";
if (args.length == 1) {
category = args[0];
catName = category;
}
var feedArray = libFlayer.getFeeds(category);
var i = Math.floor(Math.random() * (feedArray.length - 0) + 0 );
message.reply(`**Retrieving**: [${catName}](${feedArray[i].link})`);
}
};
name: 'random',
description: 'Random',
execute(message, args) {
try {
var category = "";
var catName = "All";
if (args.length == 1) {
category = args[0];
catName = category;
}
var feedArray = libFlayer.getFeeds(category);
var i = Math.floor(Math.random() * (feedArray.length - 0) + 0);
message.reply(`**Retrieving**: [${catName}](${feedArray[i].link})`);
} catch (err) {
message.reply(err.toString());
}
}
};

View File

@@ -4,56 +4,60 @@ module.exports = {
name: 'search',
description: 'Search RSS Sources',
execute(message, args) {
if (args.length < 1) {
message.reply(`Missing arguments`);
return;
}
var search = args.join(" ");
var found = false;
let i = 0;
let iSave = 0
let count = 0;
var feedArray = libFlayer.getFeeds();
var searchString = "";
var foundError = false;
feedArray.forEach(linkFlay => {
try {
if (linkFlay.title.toLowerCase().indexOf(search.toLowerCase()) > -1) {
iSave = i;
found = true;
console.log(linkFlay.title);
searchString += `Use !get ${i} to view: ${linkFlay.title} \n`;
count++;
if (count > 5) {
message.reply(searchString);
searchString = "";
}
}
i++;
} catch (error) {
foundError = true;
console.log(error);
try {
if (args.length < 1) {
message.reply(`Missing arguments`);
return;
}
});
if (foundError) {
message.reply("Error in search");
return;
} else {
message.reply(searchString);
}
if (count == 1) {
//message.channel.send('Displaying 1 result');
//message.channel.send('!get '+iSave);
}
var search = args.join(" ");
var found = false;
if (!found) {
message.reply(`No results found for: ${search}`);
let i = 0;
let iSave = 0
let count = 0;
var feedArray = libFlayer.getFeeds();
var searchString = "";
var foundError = false;
feedArray.forEach(linkFlay => {
try {
if (linkFlay.title.toLowerCase().indexOf(search.toLowerCase()) > -1) {
iSave = i;
found = true;
console.log(linkFlay.title);
searchString += `Use !get ${i} to view: ${linkFlay.title} \n`;
count++;
if (count > 5) {
message.reply(searchString);
searchString = "";
}
}
i++;
} catch (error) {
foundError = true;
console.log(error);
}
});
if (foundError) {
message.reply("Error in search");
return;
} else {
message.reply(searchString);
}
if (count == 1) {
//message.channel.send('Displaying 1 result');
//message.channel.send('!get '+iSave);
}
if (!found) {
message.reply(`No results found for: ${search}`);
}
} catch (error) {
message.reply(error.toString());
}
}

View File

@@ -1,17 +1,21 @@
var libFlayer = require("../libFlayer.js");
module.exports = {
name: 'slang',
description: 'Slang',
async execute(message,args) {
if (args.length < 1) {
message.reply(`Please use in !slang [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
name: 'slang',
description: 'Slang',
async execute(message, args) {
try {
if (args.length < 1) {
message.reply(`Please use in !slang [question] format`);
return;
}
var question = encodeURIComponent(args.join(" "));
var slangData = await libFlayer.getSlang(question);
message.reply(`**Term**: ${question}\n\n **Answer**: ${slangData.definition}\n\n**Example**: ${slangData.example}`);
}
var slangData = await libFlayer.getSlang(question);
message.reply(`**Term**: ${question}\n\n **Answer**: ${slangData.definition}\n\n**Example**: ${slangData.example}`);
} catch (e) {
message.reply(e.toString());
}
}
};