def migrate_chat(old_chat_id, new_chat_id): with INSERTION_LOCK: old_chat = SESSION.query(Chats).get(str(old_chat_id)) if old_chat: old_chat.chat_id = str(new_chat_id) SESSION.merge(old_chat) SESSION.commit() SESSION.close()
def migrate_chat(old_chat_id, new_chat_id): with INSERTION_LOCK: chat = SESSION.query(GroupLang).get(str(old_chat_id)) if chat: chat.chat_id = str(new_chat_id) SESSION.merge(chat) SESSION.commit() SESSION.close()
def add_to_blacklist(chat_id, trigger): with INSERTION_LOCK: try: blacklist_filt = BlackListFilters(str(chat_id), trigger) SESSION.merge(blacklist_filt) SESSION.commit() CHAT_BLACKLISTS.setdefault(str(chat_id), set()).add(trigger) finally: SESSION.close()
def gban_user(user_id, name, reason=None): with GBAN_LOCK: user = SESSION.query(GloballyBannedUsers).get(user_id) try: if not user: user = GloballyBannedUsers(user_id, name, reason) else: user.reason = reason user.name = name SESSION.merge(user) SESSION.commit() finally: SESSION.close() __load_gbanned_userid_list()
def update_gban_reason(user_id, name, reason=None): with GBAN_LOCK: try: user = SESSION.query(GloballyBannedUsers).get(user_id) if not user: user = GloballyBannedUsers(user_id, name, reason) old_reason = "" else: old_reason = user.reason user.name = name user.reason = reason SESSION.merge(user) SESSION.commit() finally: SESSION.close() return old_reason
def set_lang(chat_id, chat_type, lang_code): with INSERTION_LOCK: if chat_type == "private": try: lang = SESSION.query(UserLang).get(chat_id) if not lang: lang = UserLang(chat_id, lang_code) else: lang.lang_code = lang_code SESSION.merge(lang) SESSION.commit() finally: SESSION.close() elif chat_type in group_types: try: lang = SESSION.query(GroupLang).get(str(chat_id)) if not lang: lang = GroupLang(str(chat_id), lang_code) else: lang.lang_code = lang_code SESSION.merge(lang) SESSION.commit() finally: SESSION.close()