From eeff6d40ce3fbc7f2fa580e3aa33abdf71f8b6c3 Mon Sep 17 00:00:00 2001 From: profitroll Date: Mon, 23 Jan 2023 14:39:38 +0100 Subject: [PATCH] /issue command --- config_example.json | 10 ++++++++++ holochecker.py | 1 + locale/uk.json | 5 ++++- modules/commands/issue.py | 21 +++++++++++++++++++++ 4 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 modules/commands/issue.py diff --git a/config_example.json b/config_example.json index d7ddf44..6ed09ec 100644 --- a/config_example.json +++ b/config_example.json @@ -5,6 +5,7 @@ "age_allowed": 0, "age_maximum": 70, "api": "http://example.com", + "issues": "https://github.com/example/test/issues/new", "inline_preview_count": 7, "remove_application_time": -1, "search_radius": 50, @@ -189,6 +190,15 @@ "sponsorships" ] }, + "issue": { + "permissions": [ + "users", + "admins" + ], + "modules": [ + "general" + ] + }, "application": { "permissions": [ "admins", diff --git a/holochecker.py b/holochecker.py index c816c26..be4de80 100644 --- a/holochecker.py +++ b/holochecker.py @@ -15,6 +15,7 @@ from modules.commands.application import * from modules.commands.applications import * from modules.commands.cancel import * from modules.commands.identify import * +from modules.commands.issue import * from modules.commands.label import * from modules.commands.message import * from modules.commands.nearby import * diff --git a/locale/uk.json b/locale/uk.json index 671fc7d..35e7e39 100644 --- a/locale/uk.json +++ b/locale/uk.json @@ -123,6 +123,7 @@ "spoiler_in_progress": "❌ **Дія неможлива**\nПерш ніж починати нову дію, треба завершити створення спойлера або перервати його командою /cancel.", "youtube_video": "На каналі [{0}]({1}) нове відео!\n\n**[{2}]({3})**", "not_member": "❌ **Дія неможлива**\nУ тебе немає заповненої та схваленої анкети. Заповни таку за допомогою /reapply та спробуй ще раз після її підтвердження.", + "issue": "**Допоможіть боту**\nЗнайшли баг або помилку? Маєте файну ідею для нової функції? Повідомте нас, створивши нову задачу на гіті.\n\nЗа можливості, опишіть свій запит максимально детально. Якщо є змога, також додайте скріншоти або додаткову відому інформацію.", "yes": "Так", "no": "Ні", "voice_message": [ @@ -233,7 +234,8 @@ "spoiler_view": "Переглянути", "spoiler_preview": "Попередній перегляд", "spoiler_send_chat": "Надіслати в холо-чат", - "spoiler_send_other": "Надіслати в інший чат" + "spoiler_send_other": "Надіслати в інший чат", + "issue": "🪄 Створити задачу" }, "callback": { "sub_accepted": "✅ Анкету {0} схвалено", @@ -290,6 +292,7 @@ "applications": "Отримати всі анкети як JSON", "cancel": "Відмінити актуальну дію", "identify": "Дізнатись дані про користувача за айді", + "issue": "Задачі для покращення бота", "label": "Встановити нікнейм користувачу", "message": "Надіслати користувачу повідомлення", "nearby": "Показати користувачів поблизу", diff --git a/modules/commands/issue.py b/modules/commands/issue.py new file mode 100644 index 0000000..f300455 --- /dev/null +++ b/modules/commands/issue.py @@ -0,0 +1,21 @@ +from typing import Union +from app import app +from pyrogram import filters +from pyrogram.types import InlineKeyboardMarkup, InlineKeyboardButton, User, Message +from pyrogram.client import Client +from modules.utils import configGet, locale +from modules import custom_filters +from classes.holo_user import HoloUser + + +# Issue command ================================================================================================================ +@app.on_message(custom_filters.enabled_general & ~filters.scheduled & filters.private & filters.command(["issue"], prefixes=["/"])) +async def cmd_issue(app: Client, msg: Message): + await msg.reply_text(locale("issue", "message", locale=msg.from_user), disable_web_page_preview=True, reply_markup=InlineKeyboardMarkup( + [ + [ + InlineKeyboardButton(locale("issue", "button", locale=msg.from_user), url=configGet("issues")) + ] + ] + )) +# ============================================================================================================================== \ No newline at end of file