Beispiel #1
0
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()
Beispiel #2
0
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()
Beispiel #3
0
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()
Beispiel #4
0
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
Beispiel #6
0
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()