From e29bb08b7b0e436b5b1a5a2843fc41991c715ef8 Mon Sep 17 00:00:00 2001 From: Davte Date: Thu, 20 Aug 2020 15:50:53 +0200 Subject: [PATCH] Accept language directly --- davtelepot/__init__.py | 2 +- davtelepot/utilities.py | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/davtelepot/__init__.py b/davtelepot/__init__.py index f3f4791..0d7d22b 100644 --- a/davtelepot/__init__.py +++ b/davtelepot/__init__.py @@ -11,7 +11,7 @@ __author__ = "Davide Testa" __email__ = "davide@davte.it" __credits__ = ["Marco Origlia", "Nick Lee @Nickoala"] __license__ = "GNU General Public License v3.0" -__version__ = "2.6.11" +__version__ = "2.6.12" __maintainer__ = "Davide Testa" __contact__ = "t.me/davte" diff --git a/davtelepot/utilities.py b/davtelepot/utilities.py index 74d0655..e35136b 100644 --- a/davtelepot/utilities.py +++ b/davtelepot/utilities.py @@ -1609,8 +1609,9 @@ async def dummy_coroutine(*args, **kwargs): return -async def send_csv_file(bot, chat_id, query, caption=None, - file_name='File.csv', user_record=None, update=None): +async def send_csv_file(bot, chat_id: int, query: str, caption: str = None, + file_name: str = 'File.csv', language: str = None, + user_record=None, update=None): """Run a query on `bot` database and send result as CSV file to `chat_id`. Optional parameters `caption` and `file_name` may be passed to this @@ -1618,6 +1619,9 @@ async def send_csv_file(bot, chat_id, query, caption=None, """ if update is None: update = dict() + if language is None: + language = bot.get_language(update=update, + user_record=user_record) try: with bot.db as db: record = db.query( @@ -1633,14 +1637,14 @@ async def send_csv_file(bot, chat_id, query, caption=None, except Exception as e: text = "{message}\n{e}".format( message=bot.get_message('admin', 'query_button', 'error', - user_record=user_record, update=update), + language=language), e=e ) for x, y in {'<': '<', '\n': '\r\n'}.items(): text = text.replace(x, y) if len(text) == 0: text = bot.get_message('admin', 'query_button', 'empty_file', - user_record=user_record, update=update) + language=language) with io.BytesIO(text.encode('utf-8')) as f: f.name = file_name return await bot.send_document(