Add /rate. Remove vars for handlers.

This commit is contained in:
Ceda EI 2018-12-03 11:41:44 +05:30
parent 38cffcf8b7
commit cef59c494e
2 changed files with 35 additions and 22 deletions

54
bot.py
View File

@ -380,6 +380,24 @@ def help_command(bot, update, db):
reply_markup=reply_markup) reply_markup=reply_markup)
def rate_command(bot, update, db):
player = questable.player(db, update.message.chat_id)
drop_state(bot, update, player)
chat_id = update.message.chat_id
custom_keyboard = [
['❇️ Add Quest', '📯 Add Side Quest'],
['📜 List Quests', '📃 List Side Quests'],
['🏅 Player Status']
]
text = ("[Vote for us on Telegram Directory!](https://t.me/tgdrbot?"
"start=questable_bot)\n\n"
"Telegram Directory is a website that helps you discover top "
"telegram channels, bots and groups.")
reply_markup = telegram.ReplyKeyboardMarkup(custom_keyboard)
bot.send_message(chat_id=chat_id, text=text, parse_mode="Markdown",
reply_markup=reply_markup)
def message_handling(bot, update, db): def message_handling(bot, update, db):
text = update.message.text.lower() text = update.message.text.lower()
player = questable.player(db, update.message.chat_id) player = questable.player(db, update.message.chat_id)
@ -560,28 +578,20 @@ db.commit()
updater = Updater(token=config.api_key) updater = Updater(token=config.api_key)
dispatcher = updater.dispatcher dispatcher = updater.dispatcher
start_handler = CommandHandler('start', start) dispatcher.add_handler(CommandHandler('start', start))
dispatcher.add_handler(start_handler) dispatcher.add_handler(CommandHandler('me', lambda x, y: me_handler(x, y, db)))
dispatcher.add_handler(CommandHandler('rate', lambda x, y:
me = CommandHandler('me', lambda x, y: me_handler(x, y, db)) rate_command(x, y, db)))
dispatcher.add_handler(me) dispatcher.add_handler(CommandHandler('cancel', lambda x, y: me_handler(x, y,
db)))
cancel = CommandHandler('cancel', lambda x, y: me_handler(x, y, db)) dispatcher.add_handler(CommandHandler('help', lambda x, y: help_command(x, y,
dispatcher.add_handler(cancel) db)))
dispatcher.add_handler(MessageHandler(Filters.text, lambda x, y:
help_h = CommandHandler('help', lambda x, y: help_command(x, y, db)) message_handling(x, y, db)))
dispatcher.add_handler(help_h) dispatcher.add_handler(RegexHandler(r"/[Ss]?[Qq]_\d+", lambda x, y:
quest_handling(x, y, db)))
handler = MessageHandler(Filters.text, lambda x, y: message_handling(x, y, db)) dispatcher.add_handler(MessageHandler(Filters.command, lambda x, y:
dispatcher.add_handler(handler) message_handling(x, y, db)))
quest_handler = RegexHandler(r"/[Ss]?[Qq]_\d+", lambda x, y:
quest_handling(x, y, db))
dispatcher.add_handler(quest_handler)
unknown = MessageHandler(Filters.command, lambda x, y: message_handling(x, y,
db))
dispatcher.add_handler(unknown)
if config.update_method == "polling": if config.update_method == "polling":
updater.start_polling() updater.start_polling()

View File

@ -41,6 +41,9 @@ class base_quest():
cursor.execute(query, (self.CHAT_ID, self.QID)) cursor.execute(query, (self.CHAT_ID, self.QID))
self.DB.commit() self.DB.commit()
def __str__(self):
return f"{self.QID}: {self.name}"
class quest(base_quest): class quest(base_quest):
TABLE = "quests" TABLE = "quests"