def get_all(): try: return SESSION.query(RSS).all() finally: SESSION.close()
def get_filter(chat_id, keyword): try: return SESSION.query(CustomFilters).get((str(chat_id), keyword)) finally: SESSION.close()
def num_chats(): try: return SESSION.query(func.count(distinct( CustomFilters.chat_id))).scalar() finally: SESSION.close()
def get_gdbye_buttons(chat_id): try: return SESSION.query(GoodbyeButtons).filter(GoodbyeButtons.chat_id == str(chat_id)).order_by( GoodbyeButtons.id).all() finally: SESSION.close()
def get_gban_list(): try: return [x.to_dict() for x in SESSION.query(GloballyBannedUsers).all()] finally: SESSION.close()
def get_restr(chat_id): try: return SESSION.query(Restrictions).get(str(chat_id)) finally: SESSION.close()
def get_chat_timeout(chat_id): return SESSION.query(WelcomeTimeout).filter(WelcomeTimeout.chat_id == str(chat_id)).all()
def get_user_num_chats(user_id): try: return SESSION.query(ChatMembers).filter( ChatMembers.user == int(user_id)).count() finally: SESSION.close()
def num_chats(): try: return SESSION.query(Chats).count() 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_all_chats(): try: return SESSION.query(Chats).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 num_logchannels(): try: return SESSION.query(func.count(distinct(GroupLogs.chat_id))).scalar() 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 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_chat_warn_filters(chat_id): try: return SESSION.query(WarnFilters).filter( WarnFilters.chat_id == str(chat_id)).all() finally: SESSION.close()
def get_all_chat_timeout(): return SESSION.query(WelcomeTimeout).all()
def num_warns(): try: return SESSION.query(func.sum(Warns.num_warns)).scalar() or 0 finally: SESSION.close()
def get_welc_buttons(chat_id): try: return SESSION.query(WelcomeButtons).filter(WelcomeButtons.chat_id == str(chat_id)).order_by( WelcomeButtons.id).all() finally: SESSION.close()
def num_warn_chats(): try: return SESSION.query(func.count(distinct(Warns.chat_id))).scalar() finally: SESSION.close()
def __load_whitelisted_chats_list(): # load shit to memory to be faster, and reduce disk access global WHITELIST try: WHITELIST = {x.chat_id for x in SESSION.query(AllowedChat).all()} finally: SESSION.close()
def num_warn_filters(): try: return SESSION.query(WarnFilters).count() finally: SESSION.close()
def get_gbanned_user(user_id): try: return SESSION.query(GloballyBannedUsers).get(user_id) finally: SESSION.close()
def num_warn_chat_filters(chat_id): try: return SESSION.query(WarnFilters.chat_id).filter( WarnFilters.chat_id == str(chat_id)).count() finally: SESSION.close()
def num_filters(): try: return SESSION.query(CustomFilters).count() finally: SESSION.close()
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_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()