diff --git a/extensions.py b/extensions.py index 9b68c40..26682fe 100644 --- a/extensions.py +++ b/extensions.py @@ -12,3 +12,19 @@ def humanize_tags_from_json(value, default): return output return default + + +def format_rating(value): + match value: + case "g": + # Negative Squared Latin Capital Letter G + return "🅶" + case "s": + # Negative Squared Latin Capital Letter S + return "🆂" + case "q": + # Negative Squared Latin Capital Letter Q + return "🆀" + case "e": + # Negative Squared Latin Capital Letter E + return "🅴" diff --git a/inline_query.py b/inline_query.py index e7194aa..9e6cffc 100644 --- a/inline_query.py +++ b/inline_query.py @@ -6,7 +6,7 @@ from telegram import Update, InlineKeyboardButton, InlineQueryResultArticle, Inp from telegram.constants import ParseMode from telegram.ext import ContextTypes -from extensions import humanize_tags_from_json +from extensions import humanize_tags_from_json, format_rating # noinspection PyUnusedLocal @@ -35,6 +35,7 @@ async def answer_query(update, query, config, data): characters = humanize_tags_from_json(data['tag_string_character'], "no characters") 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']) keyboard = [ [ InlineKeyboardButton(f"Open in {config.get('Service', 'Name')}", @@ -50,7 +51,7 @@ async def answer_query(update, query, config, data): description=f"{characters} ({copyrights}) drawn by {artists}", thumbnail_url=data['preview_file_url'], input_message_content=InputTextMessageContent( - f"ID: {query}\n" + f"ID: {query} {rating}\n" f"{characters} ({copyrights}) " f"drawn by {artists}", parse_mode=ParseMode.HTML