mirror of
https://github.com/abocn/TelegramBot.git
synced 2025-04-28 09:15:57 +00:00
ref: create separated verifyUserInput function again because it was not added by git before (#44)
Co-authored-by: Aidan <aidan@p0ntus.com> Co-authored-by: Lucas Gabriel <lucmsilva651@gmail.com>
This commit is contained in:
parent
d3e467b372
commit
bdb4a4f7a2
@ -3,6 +3,7 @@ const { getStrings } = require('../plugins/checklang.js');
|
|||||||
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
||||||
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
||||||
const axios = require('axios');
|
const axios = require('axios');
|
||||||
|
const { verifyInput } = require('../plugins/verifyInput.js');
|
||||||
|
|
||||||
async function getDeviceList() {
|
async function getDeviceList() {
|
||||||
try {
|
try {
|
||||||
@ -23,12 +24,10 @@ module.exports = (bot) => {
|
|||||||
bot.command(['codename', 'whatis'], spamwatchMiddleware, async (ctx) => {
|
bot.command(['codename', 'whatis'], spamwatchMiddleware, async (ctx) => {
|
||||||
const userInput = ctx.message.text.split(" ").slice(1).join(" ");
|
const userInput = ctx.message.text.split(" ").slice(1).join(" ");
|
||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
|
const { noCodename } = Strings.codenameCheck
|
||||||
if (!userInput) {
|
|
||||||
ctx.reply(Strings.codenameCheck.noCodename, {
|
if(verifyInput(ctx, userInput, noCodename)){
|
||||||
parse_mode: "Markdown",
|
return;
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const jsonRes = await getDeviceList()
|
const jsonRes = await getDeviceList()
|
||||||
|
@ -3,19 +3,18 @@ const { getStrings } = require('../plugins/checklang.js');
|
|||||||
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
||||||
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
||||||
const axios = require('axios');
|
const axios = require('axios');
|
||||||
|
const { verifyInput } = require('../plugins/verifyInput.js');
|
||||||
|
|
||||||
module.exports = (bot) => {
|
module.exports = (bot) => {
|
||||||
bot.command("http", spamwatchMiddleware, async (ctx) => {
|
bot.command("http", spamwatchMiddleware, async (ctx) => {
|
||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
const userInput = ctx.message.text.split(' ')[1];
|
const userInput = ctx.message.text.split(' ')[1];
|
||||||
const apiUrl = Resources.httpApi;
|
const apiUrl = Resources.httpApi;
|
||||||
|
const { invalidCode } = Strings.httpCodes
|
||||||
|
|
||||||
if (!userInput || isNaN(userInput)) {
|
if (verifyInput(ctx, userInput, invalidCode, true)) {
|
||||||
return ctx.reply(Strings.httpCodes.invalidCode, {
|
return;
|
||||||
parse_mode: 'Markdown',
|
}
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const response = await axios.get(apiUrl);
|
const response = await axios.get(apiUrl);
|
||||||
@ -50,12 +49,10 @@ module.exports = (bot) => {
|
|||||||
bot.command("httpcat", spamwatchMiddleware, async (ctx) => {
|
bot.command("httpcat", spamwatchMiddleware, async (ctx) => {
|
||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(/\s+/g, '');
|
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(/\s+/g, '');
|
||||||
|
const { invalidCode } = Strings.httpCodes
|
||||||
if (!userInput || isNaN(userInput)) {
|
|
||||||
return ctx.reply(Strings.httpCodes.invalidCode, {
|
if (verifyInput(ctx, userInput, invalidCode, true)) {
|
||||||
parse_mode: 'Markdown',
|
return;
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const apiUrl = `${Resources.httpCatApi}${userInput}`;
|
const apiUrl = `${Resources.httpCatApi}${userInput}`;
|
||||||
|
@ -3,6 +3,7 @@ const { getStrings } = require('../plugins/checklang.js');
|
|||||||
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
||||||
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
||||||
const axios = require("axios");
|
const axios = require("axios");
|
||||||
|
const { verifyInput } = require('../plugins/verifyInput.js');
|
||||||
|
|
||||||
function capitalizeFirstLetter(string) {
|
function capitalizeFirstLetter(string) {
|
||||||
return string.charAt(0).toUpperCase() + string.slice(1);
|
return string.charAt(0).toUpperCase() + string.slice(1);
|
||||||
@ -22,14 +23,11 @@ module.exports = (bot) => {
|
|||||||
bot.command("mlpchar", spamwatchMiddleware, async (ctx) => {
|
bot.command("mlpchar", spamwatchMiddleware, async (ctx) => {
|
||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
||||||
|
const { noCharName } = Strings.ponyApi
|
||||||
|
|
||||||
if (!userInput) {
|
if (verifyInput(ctx, userInput, noCharName)) {
|
||||||
ctx.reply(Strings.ponyApi.noCharName, {
|
|
||||||
parse_mode: 'Markdown',
|
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
return;
|
return;
|
||||||
};
|
}
|
||||||
|
|
||||||
const capitalizedInput = capitalizeFirstLetter(userInput);
|
const capitalizedInput = capitalizeFirstLetter(userInput);
|
||||||
const apiUrl = `${Resources.ponyApi}/character/${capitalizedInput}`;
|
const apiUrl = `${Resources.ponyApi}/character/${capitalizedInput}`;
|
||||||
@ -99,13 +97,11 @@ module.exports = (bot) => {
|
|||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
||||||
|
|
||||||
if (!userInput) {
|
const { noEpisodeNum } = Strings.ponyApi
|
||||||
ctx.reply(Strings.ponyApi.noEpisodeNum, {
|
|
||||||
parse_mode: 'Markdown',
|
if (verifyInput(ctx, userInput, noEpisodeNum, true)) {
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
return;
|
return;
|
||||||
};
|
}
|
||||||
|
|
||||||
const apiUrl = `${Resources.ponyApi}/episode/by-overall/${userInput}`;
|
const apiUrl = `${Resources.ponyApi}/episode/by-overall/${userInput}`;
|
||||||
|
|
||||||
@ -169,11 +165,9 @@ module.exports = (bot) => {
|
|||||||
const Strings = getStrings(ctx.from.language_code);
|
const Strings = getStrings(ctx.from.language_code);
|
||||||
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
const userInput = ctx.message.text.split(' ').slice(1).join(' ').replace(" ", "+");
|
||||||
|
|
||||||
if (!userInput) {
|
const { noComicName } = Strings.ponyApi
|
||||||
ctx.reply(Strings.ponyApi.noComicName, {
|
|
||||||
parse_mode: 'Markdown',
|
if (verifyInput(ctx, userInput, noComicName)) {
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@ const axios = require('axios');
|
|||||||
const { getStrings } = require('../plugins/checklang.js');
|
const { getStrings } = require('../plugins/checklang.js');
|
||||||
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
const { isOnSpamWatch } = require('../spamwatch/spamwatch.js');
|
||||||
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
const spamwatchMiddleware = require('../spamwatch/Middleware.js')(isOnSpamWatch);
|
||||||
|
const { verifyInput } = require('../plugins/verifyInput.js');
|
||||||
|
|
||||||
const statusEmojis = {
|
const statusEmojis = {
|
||||||
0: '⛈', 1: '⛈', 2: '⛈', 3: '⛈', 4: '⛈', 5: '🌨', 6: '🌨', 7: '🌨',
|
0: '⛈', 1: '⛈', 2: '⛈', 3: '⛈', 4: '⛈', 5: '🌨', 6: '🌨', 7: '🌨',
|
||||||
@ -35,12 +36,10 @@ module.exports = (bot) => {
|
|||||||
const userLang = ctx.from.language_code || "en-US";
|
const userLang = ctx.from.language_code || "en-US";
|
||||||
const Strings = getStrings(userLang);
|
const Strings = getStrings(userLang);
|
||||||
const userInput = ctx.message.text.split(' ').slice(1).join(' ');
|
const userInput = ctx.message.text.split(' ').slice(1).join(' ');
|
||||||
|
const { provideLocation } = Strings.weatherStatus
|
||||||
|
|
||||||
if (!userInput) {
|
if (verifyInput(ctx, userInput, provideLocation)) {
|
||||||
return ctx.reply(Strings.weatherStatus.provideLocation, {
|
return;
|
||||||
parse_mode: "Markdown",
|
|
||||||
reply_to_message_id: ctx.message.message_id
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const location = userInput;
|
const location = userInput;
|
||||||
@ -95,7 +94,7 @@ module.exports = (bot) => {
|
|||||||
.replace('{windSpeed}', windSpeed)
|
.replace('{windSpeed}', windSpeed)
|
||||||
.replace('{speedUnit}', speedUnit);
|
.replace('{speedUnit}', speedUnit);
|
||||||
|
|
||||||
ctx.reply(weatherMessage, {
|
ctx.reply(weatherMessage, {
|
||||||
parse_mode: "Markdown",
|
parse_mode: "Markdown",
|
||||||
reply_to_message_id: ctx.message.message_id
|
reply_to_message_id: ctx.message.message_id
|
||||||
});
|
});
|
||||||
|
14
src/plugins/verifyInput.js
Normal file
14
src/plugins/verifyInput.js
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
function verifyInput(ctx, userInput, message, verifyNaN = false) {
|
||||||
|
if (!userInput || (verifyNaN && isNaN(userInput))) {
|
||||||
|
ctx.reply(message, {
|
||||||
|
parse_mode: "Markdown",
|
||||||
|
reply_to_message_id: ctx.message.message_id
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
verifyInput
|
||||||
|
};
|
Loading…
x
Reference in New Issue
Block a user