diff --git a/extensions.py b/extensions.py
index c6ac510..1ffcc22 100644
--- a/extensions.py
+++ b/extensions.py
@@ -1,7 +1,7 @@
import re
-def humanize_tags_from_json(value: str, default: str):
+def humanize_tags_from_json(value: str, default: str) -> str:
if value != "":
output = str()
tags = value.split()
@@ -14,7 +14,7 @@ def humanize_tags_from_json(value: str, default: str):
return default
-def format_rating(value: str):
+def format_rating(value: str) -> str | None:
match value:
case "g":
# Negative Squared Latin Capital Letter G
diff --git a/inline_query.py b/inline_query.py
index d308db3..3e625a1 100644
--- a/inline_query.py
+++ b/inline_query.py
@@ -1,6 +1,5 @@
from uuid import uuid4
-import requests
from telegram import Update, InlineKeyboardButton, InlineQueryResultArticle, InputTextMessageContent, \
InlineKeyboardMarkup
from telegram.constants import ParseMode
@@ -36,6 +35,25 @@ async def answer_query(update: Update, query: str, data) -> None:
copyrights = humanize_tags_from_json(data['tag_string_copyright'], "unknown copyright")
artists = humanize_tags_from_json(data['tag_string_artist'], "unknown artist")
rating = format_rating(data['rating'])
+
+ if data['is_banned']:
+ results = [
+ InlineQueryResultArticle(
+ id=str(uuid4()),
+ title=f"ID: {query}",
+ description=f"{characters} ({copyrights}) drawn by {artists}",
+ input_message_content=InputTextMessageContent(
+ f"ID: {query}
{rating}\n"
+ f"{characters} ({copyrights}) drawn by {artists}\n"
+ f"This post has been removed because of a takedown request or rule violation.",
+ parse_mode=ParseMode.HTML
+ )
+ )
+ ]
+
+ await update.inline_query.answer(results)
+ return
+
keyboard = [
[
InlineKeyboardButton(f"Open in {app.name}",
@@ -68,9 +86,10 @@ async def invalid_query(update: Update, query: str) -> None:
InlineQueryResultArticle(
id=str(uuid4()),
title=f"ID: {query}",
- description="not found.",
+ description="Error",
input_message_content=InputTextMessageContent(
- f"ID: {query}
\nrequested post does not exist.",
+ f"ID: {query}
\n"
+ f"That record was not found.",
parse_mode=ParseMode.HTML
)
)
diff --git a/main.py b/main.py
index 4f19837..5bd891a 100644
--- a/main.py
+++ b/main.py
@@ -28,7 +28,7 @@ def main() -> None:
application.run_polling(allowed_updates=commands.Update.ALL_TYPES)
-def get_token():
+def get_token() -> None:
if os.getenv("BOT_TOKEN") is not None:
return os.getenv("BOT_TOKEN")
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..29bdc4d
Binary files /dev/null and b/requirements.txt differ