diff --git a/src/commands/animal.js b/src/commands/animal.js new file mode 100644 index 0000000..58c9779 --- /dev/null +++ b/src/commands/animal.js @@ -0,0 +1,82 @@ +const Resources = require('../props/resources.json'); +const { getStrings } = require('../plugins/checklang.js'); +const { isOnSpamWatch } = require('../plugins/lib-spamwatch/spamwatch.js'); +const spamwatchMiddleware = require('../plugins/lib-spamwatch/Middleware.js')(isOnSpamWatch); +const axios = require("axios"); + +module.exports = (bot) => { + bot.command("duck", spamwatchMiddleware, async (ctx) => { + const Strings = getStrings(ctx.from.language_code); + try { + const response = await axios(Resources.duckApi); + ctx.replyWithPhoto(response.data.url, { + caption: "🦆", + reply_to_message_id: ctx.message.message_id + }); + } catch (error) { + const message = Strings.duckApiErr.replace('{error}', error.message); + ctx.reply(message, { + parse_mode: 'Markdown', + reply_to_message_id: ctx.message.message_id + }); + return; + } + }); + + bot.command("fox", spamwatchMiddleware, async (ctx) => { + const Strings = getStrings(ctx.from.language_code); + try { + const response = await axios(Resources.foxApi); + ctx.replyWithPhoto(response.data.image, { + caption: "🦊", + reply_to_message_id: ctx.message.message_id + }); + } catch (error) { + const message = Strings.foxApiErr.replace('{error}', error.message); + ctx.reply(message, { + parse_mode: 'Markdown', + reply_to_message_id: ctx.message.message_id + }); + return; + } + }); + + bot.command("dog", spamwatchMiddleware, async (ctx) => { + const Strings = getStrings(ctx.from.language_code); + try { + const response = await axios(Resources.dogApi); + ctx.replyWithPhoto(response.data.message, { + caption: "🐶", + reply_to_message_id: ctx.message.message_id + }); + } catch (error) { + const message = Strings.foxApiErr.replace('{error}', error.message); + ctx.reply(message, { + parse_mode: 'Markdown', + reply_to_message_id: ctx.message.message_id + }); + return; + } + }); + + bot.command("cat", spamwatchMiddleware, async (ctx) => { + const Strings = getStrings(ctx.from.language_code); + const apiUrl = `${Resources.catApi}?json=true`; + const response = await axios.get(apiUrl); + const data = response.data; + const imageUrl = `${Resources.catApi}/${data._id}`; + + try { + await ctx.replyWithPhoto(imageUrl, { + caption: `🐱`, + parse_mode: 'Markdown', + reply_to_message_id: ctx.message.message_id + }); + } catch (error) { + ctx.reply(Strings.catImgErr, { + parse_mode: 'Markdown', + reply_to_message_id: ctx.message.message_id + }); + }; + }); +} \ No newline at end of file diff --git a/src/commands/cat.js b/src/commands/cat.js deleted file mode 100644 index e1b68f5..0000000 --- a/src/commands/cat.js +++ /dev/null @@ -1,68 +0,0 @@ -const Resources = require('../props/resources.json'); -const { getStrings } = require('../plugins/checklang.js'); -const { isOnSpamWatch } = require('../plugins/lib-spamwatch/spamwatch.js'); -const spamwatchMiddleware = require('../plugins/lib-spamwatch/Middleware.js')(isOnSpamWatch); -const axios = require('axios'); - -module.exports = (bot) => { - // bot.command("cat", spamwatchMiddleware, async (ctx) => { - // const Strings = getStrings(ctx.from.language_code); - // const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(/\s+/g, ''); - // let request = ""; - - // if (userInput && userInput.includes("gif")) { - // request = `/gif${userInput.replace("gif", "")}`; - // const apiUrl = `https://cataas.com/cat${request}`; - - // try { - // await ctx.replyWithAnimation(apiUrl, { - // caption: `🐱`, - // parse_mode: 'Markdown', - // reply_to_message_id: ctx.message.message_id - // }); - // } catch (error) { - // ctx.reply(Strings.catGifErr, { - // parse_mode: 'Markdown', - // reply_to_message_id: ctx.message.message_id - // }); - // }; - // } else { - // request = userInput ? `/${userInput}` : ''; - // const apiUrl = `https://cataas.com/cat${request}`; - - // try { - // await ctx.replyWithPhoto(apiUrl, { - // caption: `🐱`, - // parse_mode: 'Markdown', - // reply_to_message_id: ctx.message.message_id - // }); - // } catch (error) { - // ctx.reply(Strings.catImgErr, { - // parse_mode: 'Markdown', - // reply_to_message_id: ctx.message.message_id - // }); - // }; - // }; - // }); - - bot.command("cat", spamwatchMiddleware, async (ctx) => { - const Strings = getStrings(ctx.from.language_code); - const apiUrl = `${Resources.catApi}?json=true`; - const response = await axios.get(apiUrl); - const data = response.data; - const imageUrl = `${Resources.catApi}/${data._id}`; - - try { - await ctx.replyWithPhoto(imageUrl, { - caption: `🐱`, - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - } catch (error) { - ctx.reply(Strings.catImgErr, { - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - }; - }); -}; diff --git a/src/commands/dog.js b/src/commands/dog.js deleted file mode 100644 index 187cfb6..0000000 --- a/src/commands/dog.js +++ /dev/null @@ -1,27 +0,0 @@ -const Resources = require('../props/resources.json'); -const { getStrings } = require('../plugins/checklang.js'); -const { isOnSpamWatch } = require('../plugins/lib-spamwatch/spamwatch.js'); -const spamwatchMiddleware = require('../plugins/lib-spamwatch/Middleware.js')(isOnSpamWatch); -const axios = require('axios'); - -module.exports = (bot) => { - bot.command("dog", spamwatchMiddleware, async (ctx) => { - const Strings = getStrings(ctx.from.language_code); - const apiUrl = Resources.dogApi; - const response = await axios.get(apiUrl); - const data = response.data; - - try { - await ctx.replyWithPhoto(data.message, { - caption: `🐶`, - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - } catch (error) { - ctx.reply(Strings.dogImgErr, { - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - }; - }); -}; diff --git a/src/commands/duck.js b/src/commands/duck.js deleted file mode 100644 index 698ae04..0000000 --- a/src/commands/duck.js +++ /dev/null @@ -1,25 +0,0 @@ -const Resources = require('../props/resources.json'); -const { getStrings } = require('../plugins/checklang.js'); -const { isOnSpamWatch } = require('../plugins/lib-spamwatch/spamwatch.js'); -const spamwatchMiddleware = require('../plugins/lib-spamwatch/Middleware.js')(isOnSpamWatch); -const axios = require("axios"); - -module.exports = (bot) => { - bot.command("duck", spamwatchMiddleware, async (ctx) => { - const Strings = getStrings(ctx.from.language_code); - try { - const response = await axios(Resources.duckApi); - ctx.replyWithPhoto(response.data.url, { - caption: response.data.message, - reply_to_message_id: ctx.message.message_id - }); - } catch (error) { - const message = Strings.duckApiErr.replace('{error}', error.message); - ctx.reply(message, { - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - return; - } - }); -} \ No newline at end of file diff --git a/src/commands/fox.js b/src/commands/fox.js deleted file mode 100644 index 3bc46a5..0000000 --- a/src/commands/fox.js +++ /dev/null @@ -1,25 +0,0 @@ -const Resources = require('../props/resources.json'); -const { getStrings } = require('../plugins/checklang.js'); -const { isOnSpamWatch } = require('../plugins/lib-spamwatch/spamwatch.js'); -const spamwatchMiddleware = require('../plugins/lib-spamwatch/Middleware.js')(isOnSpamWatch); -const axios = require("axios"); - -module.exports = (bot) => { - bot.command("fox", spamwatchMiddleware, async (ctx) => { - const Strings = getStrings(ctx.from.language_code); - try { - const response = await axios(Resources.foxApi); - ctx.replyWithPhoto(response.data.image, { - caption: response.data.link, - reply_to_message_id: ctx.message.message_id - }); - } catch (error) { - const message = Strings.foxApiErr.replace('{error}', error.message); - ctx.reply(message, { - parse_mode: 'Markdown', - reply_to_message_id: ctx.message.message_id - }); - return; - } - }); -} \ No newline at end of file