def run(bot, update, args): if utils.is_from_admin(update): if not all(map(str.isdigit, args)): update.message.reply_text( 'Specifica gli id degli item da eliminare') else: dbitems = database.items.DbItems() for itemid in args: itemid = int(itemid) dbitems.delete(itemid) update.message.reply_text('Fatto.')
def run(bot, update, args): if utils.is_from_admin(update): dbusers = database.users.DbUsers() text = ' '.join(args) users = dbusers.get_all() for user in users: try: # Necessary if the user blocked the bot bot.send_message(chat_id=user.userid, text=text, parse_mode='HTML') except telegram.TelegramError: pass
def run(bot, update, args): if utils.is_from_admin(update): dbitems = database.items.DbItems() filt = ItemFilter.from_list(args) inv = dbitems.get_multiple(filt) inv.items.sort() messages = inv.get_messages( head='Ci sono {} oggetti che corrispondono alla tua ricerca:'. format(len(inv.items)), show_id=True) for msg in messages: update.message.reply_text(msg)
def run(bot, update, args): if utils.is_from_admin(update): if len(args) != 2: update.message.reply_text('Usage: /adsetadmin username bool') else: dbusers = database.users.DbUsers() username = args[0] value = args[1] user = dbusers.get_single(UserFilter(username=username)) if user is None: update.message.reply_text( 'Utente {} non trovato!'.format(username)) else: user.admin = value.lower() in ['t', 'true', '1'] dbusers.update(user) update.message.reply_text('Fatto.')
def run(bot, update, args): if utils.is_from_admin(update): if len(args) > 2 and args[0].isdigit(): dbitems = database.items.DbItems() itemdb = dbitems.get_single_by_id(int(args[0])) if itemdb is None: update.message.reply_text('Item with id {} not found'.format( int(args[0]))) return else: try: itemuser = utils.item.Item.from_string(' '.join(args[1:])) itemuser.itemid = itemdb.itemid dbitems.update(itemuser) except Exception as ex: update.message.reply_text( 'You gave me an invalid item! :(') return else: update.message.reply_text( 'Usage: <code>/adupdate itemid item-string</code>', parse_mode='HTML') return update.message.reply_text('Updated')
def run(bot, update, args): if utils.is_from_admin(update): item = utils.item.Item.from_string(' '.join(args)) count = utils.inventory.add(utils.inventory.Inventory([item])) res = 'Fatto.' if count > 0 else 'L\'oggetto era gia\' presente' update.message.reply_text(res)
def run(bot, update): if utils.is_from_admin(update): dbusers = database.users.DbUsers() dbusers.set_all_changelog() update.message.reply_text('Fatto.')