Sort /forcebuy pairs alphabetically, add cancel button

closes #6389
This commit is contained in:
Matthias
2022-02-11 19:37:35 +01:00
parent 6a59103869
commit c9cfc246f1
2 changed files with 12 additions and 7 deletions

View File

@@ -914,10 +914,11 @@ class Telegram(RPCHandler):
self._send_msg(str(e))
def _forcebuy_action(self, pair, price=None):
try:
self._rpc._rpc_forcebuy(pair, price)
except RPCException as e:
self._send_msg(str(e))
if pair != 'cancel':
try:
self._rpc._rpc_forcebuy(pair, price)
except RPCException as e:
self._send_msg(str(e))
def _forcebuy_inline(self, update: Update, _: CallbackContext) -> None:
if update.callback_query:
@@ -947,10 +948,13 @@ class Telegram(RPCHandler):
self._forcebuy_action(pair, price)
else:
whitelist = self._rpc._rpc_whitelist()['whitelist']
pairs = [InlineKeyboardButton(text=pair, callback_data=pair) for pair in whitelist]
pair_buttons = [
InlineKeyboardButton(text=pair, callback_data=pair) for pair in sorted(whitelist)]
buttons_aligned = self._layout_inline_keyboard(pair_buttons)
buttons_aligned.append([InlineKeyboardButton(text='Cancel', callback_data='cancel')])
self._send_msg(msg="Which pair?",
keyboard=self._layout_inline_keyboard(pairs))
keyboard=buttons_aligned)
@authorized_only
def _trades(self, update: Update, context: CallbackContext) -> None: