def __load_cleaner_list(): global GLOBAL_IGNORE_COMMANDS global CLEANER_CHATS try: GLOBAL_IGNORE_COMMANDS = { int(x.command) for x in SESSION.query(CleanerBlueTextGlobal).all() } finally: SESSION.close() try: for x in SESSION.query(CleanerBlueTextChatSettings).all(): CLEANER_CHATS.setdefault(x.chat_id, {"setting": False, "commands": set()}) CLEANER_CHATS[x.chat_id]["setting"] = x.is_enable finally: SESSION.close() try: for x in SESSION.query(CleanerBlueTextChat).all(): CLEANER_CHATS.setdefault(x.chat_id, {"setting": False, "commands": set()}) CLEANER_CHATS[x.chat_id]["commands"].add(x.command) finally: SESSION.close()
def num_logchannels(): try: return SESSION.query(func.count(distinct(GroupLogs.chat_id))).scalar() finally: SESSION.close()
def is_approved(chat_id, user_id): try: return SESSION.query(Approvals).get((str(chat_id), user_id)) finally: SESSION.close()
def num_notes(): try: return SESSION.query(Notes).count() finally: SESSION.close()
def curr_connection(chat_id): try: return SESSION.query(Connection).get((str(chat_id))) finally: SESSION.close()
def num_filters(): try: return SESSION.query(CustomFilters).count() finally: SESSION.close()
def get_all_filters(): try: return SESSION.query(CustomFilters).all() finally: SESSION.close()
def get_urls(tg_chat_id): try: return SESSION.query(RSS).filter(RSS.chat_id == tg_chat_id).all() finally: SESSION.close()
def get_all_users(): try: return SESSION.query(Users).all() finally: SESSION.close()
def get_all_chats(): try: return SESSION.query(Chats).all() finally: SESSION.close()
def get_chat_members(chat_id): try: return SESSION.query(ChatMembers).filter( ChatMembers.chat == str(chat_id)).all() finally: SESSION.close()
def get_name_by_userid(user_id): try: return SESSION.query(Users).get(Users.user_id == int(user_id)).first() finally: SESSION.close()
def get_userid_by_name(username): try: return (SESSION.query(Users).filter( func.lower(Users.username) == username.lower()).all()) finally: SESSION.close()
def get_user_bio(user_id): userbio = SESSION.query(UserBio).get(user_id) SESSION.close() if userbio: return userbio.bio return None
def get_user_me_info(user_id): userinfo = SESSION.query(UserInfo).get(user_id) SESSION.close() if userinfo: return userinfo.info return None
def get_gban_list(): try: return [x.to_dict() for x in SESSION.query(GloballyBannedUsers).all()] finally: SESSION.close()
def check_url_availability(tg_chat_id, tg_feed_link): try: return (SESSION.query(RSS).filter(RSS.feed_link == tg_feed_link, RSS.chat_id == tg_chat_id).all()) finally: SESSION.close()
def get_user_num_chats(user_id): try: return (SESSION.query(ChatMembers).filter( ChatMembers.user == int(user_id)).count()) finally: SESSION.close()
def get_all(): try: return SESSION.query(RSS).all() finally: SESSION.close()
def num_chats(): try: return SESSION.query(Chats).count() finally: SESSION.close()
def get_filter(chat_id, keyword): try: return SESSION.query(CustomFilters).get((str(chat_id), keyword)) finally: SESSION.close()
def num_users(): try: return SESSION.query(Users).count() finally: SESSION.close()
def get_locks(chat_id): try: return SESSION.query(Permissions).get(str(chat_id)) finally: SESSION.close()
def get_restr(chat_id): try: return SESSION.query(Restrictions).get(str(chat_id)) finally: SESSION.close()
def get_connected_chat(user_id): try: return SESSION.query(Connection).get((int(user_id))) finally: SESSION.close()
def __load_gbanned_userid_list(): global GBANNED_LIST try: GBANNED_LIST = {x.user_id for x in SESSION.query(GloballyBannedUsers).all()} finally: SESSION.close()
def check_afk_status(user_id): try: return SESSION.query(AFK).get(user_id) finally: SESSION.close()
def get_gbanned_user(user_id): try: return SESSION.query(GloballyBannedUsers).get(user_id) finally: SESSION.close()
def num_chats(): try: return SESSION.query(func.count(distinct(Rules.chat_id))).scalar() finally: SESSION.close()
def num_warn_filter_chats(): try: return SESSION.query(func.count(distinct(WarnFilters.chat_id))).scalar() finally: SESSION.close()