If user_record is passed to get_message
, extract language from it.
This commit is contained in:
parent
1a784b2b08
commit
f38a6e7e10
@ -467,22 +467,29 @@ class Bot(telepot.aio.Bot, Gettable):
|
|||||||
self.last_sending_time['absolute'] = datetime.datetime.now()
|
self.last_sending_time['absolute'] = datetime.datetime.now()
|
||||||
return
|
return
|
||||||
|
|
||||||
def get_message(self, *fields, update=None, language=None,
|
def get_message(self, *fields, update=None, user_record=None,
|
||||||
**format_kwargs):
|
language=None, **format_kwargs):
|
||||||
"""Given a list of strings (`fields`), return proper message.
|
"""Given a list of strings (`fields`), return proper message.
|
||||||
|
|
||||||
If `language` is not passed, it is extracted from `update`.
|
If `language` is not passed, it is extracted from `update`.
|
||||||
|
If `update` is not passed either, `language` is extracted from
|
||||||
|
`user_record`.
|
||||||
Fall back to English message if language is not available.
|
Fall back to English message if language is not available.
|
||||||
Pass `format_kwargs` to format function.
|
Pass `format_kwargs` to format function.
|
||||||
"""
|
"""
|
||||||
if (
|
if (
|
||||||
language is None
|
language is None
|
||||||
and update is not None
|
|
||||||
and type(update) is dict
|
and type(update) is dict
|
||||||
and 'from' in update
|
and 'from' in update
|
||||||
and 'language_code' in update['from']
|
and 'language_code' in update['from']
|
||||||
):
|
):
|
||||||
language = update['from']['language_code']
|
language = update['from']['language_code']
|
||||||
|
if (
|
||||||
|
language is None
|
||||||
|
and type(user_record) is dict
|
||||||
|
and 'language_code' in user_record
|
||||||
|
):
|
||||||
|
language = user_record['language_code']
|
||||||
if language is None:
|
if language is None:
|
||||||
language = 'en'
|
language = 'en'
|
||||||
result = self.messages
|
result = self.messages
|
||||||
|
Loading…
x
Reference in New Issue
Block a user