backend / engine.py
muhammadpriv001's picture
Deploy latest backend fixes
4d9a0f9
Raw
History Blame Contribute Delete
12.9 kB
"""
YapStation EngineWrapper - All methods in snake_case to match server.py calls
"""
import engine_user
import engine_messaging
import engine_content
import engine_station
class Engine:
def __init__(self):
pass
# ========================
# AUTH
# ========================
def register_user(self, fn, ln, gender, uname, email, pw, theme=5):
engine_user.register_user(fn, ln, gender, uname, email, pw, theme)
def login(self, username, password):
return engine_user.login(username, password)
def is_developer(self, username):
return engine_user.is_developer(username)
# ========================
# USERS
# ========================
def get_user_by_username(self, username):
return engine_user.get_user_by_username(username)
def get_all_users(self):
return engine_user.get_all_users()
def user_exists(self, username):
return engine_user.user_exists(username)
def get_all_users_detailed(self):
return engine_user.get_all_users_detailed()
def get_all_users_detailed(self):
return engine_user.get_all_users_detailed()
def get_username(self, user_input):
return engine_user.get_username(user_input)
def get_avatar(self, username):
return engine_user.get_avatar(username)
def update_avatar(self, username, avatar_base64):
engine_user.update_avatar(username, avatar_base64)
def get_hero_banner(self, username):
return engine_user.get_hero_banner(username)
def update_hero_banner(self, username, hero_banner_base64):
engine_user.update_hero_banner(username, hero_banner_base64)
def get_theme(self, username):
return engine_user.get_theme(username)
def update_theme(self, username, theme):
engine_user.update_theme(username, theme)
def update_user_basic(self, current_username, new_username, email, bio):
return engine_user.update_user_basic(current_username, new_username, email, bio)
def update_password(self, username, old_pass, new_pass):
return engine_user.update_password(username, old_pass, new_pass)
def create_password_reset_token(self, username):
return engine_user.create_password_reset_token(username)
def validate_password_reset_token(self, token_plain):
return engine_user.validate_password_reset_token(token_plain)
def get_user_public_for_reset(self, username):
return engine_user.get_user_public_for_reset(username)
def confirm_password_reset(self, token_plain, new_password):
return engine_user.confirm_password_reset(token_plain, new_password)
def delete_user(self, username):
return engine_user.delete_user(username)
def set_visibility(self, username, visibility):
return engine_user.set_visibility(username, visibility)
def follow_user(self, follower, following):
return engine_user.follow_user(follower, following)
def unfollow_user(self, follower, following):
return engine_user.unfollow_user(follower, following)
def approve_follow(self, follower, following):
return engine_user.approve_follow(follower, following)
def reject_follow(self, follower, following):
return engine_user.reject_follow(follower, following)
def get_pending_follows(self, username):
return engine_user.get_pending_follows(username)
def get_follow_status(self, follower, following):
return engine_user.get_follow_status(follower, following)
def get_followers(self, username):
return engine_user.get_followers(username)
def get_following(self, username):
return engine_user.get_following(username)
def block_user(self, blocker, blocked):
success = engine_user.block_user(blocker, blocked)
if success:
engine_station.cleanup_station_memberships_on_block(blocker, blocked)
return success
def unblock_user(self, blocker, blocked):
return engine_user.unblock_user(blocker, blocked)
def is_blocked(self, blocker, blocked):
return engine_user.is_blocked(blocker, blocked)
def is_blocked_either_way(self, user1, user2):
return engine_user.is_blocked_either_way(user1, user2)
def get_blocked_users(self, blocker):
return engine_user.get_blocked_users(blocker)
def get_blockers(self, blocked):
return engine_user.get_blockers(blocked)
# ========================
# CONVERSATIONS
# ========================
def create_conversation(self, users, is_group, name, admin_username=None):
return engine_messaging.create_conversation(users, is_group, name, admin_username)
def delete_conversation(self, conversation_id):
engine_messaging.delete_conversation(conversation_id)
def restore_conversation(self, conversation_id, username):
engine_messaging.restore_conversation(conversation_id, username)
def soft_delete_conversation(self, conversation_id, username):
engine_messaging.soft_delete_conversation(conversation_id, username)
def get_conversation_users(self, convo_id):
return engine_messaging.get_conversation_users(convo_id)
def add_user_to_conversation(self, convo_id, username):
return engine_messaging.add_user_to_conversation(convo_id, username)
def remove_user_from_conversation(self, convo_id, username):
return engine_messaging.remove_user_from_conversation(convo_id, username)
def get_conversation_details(self, convo_id):
return engine_messaging.get_conversation_details(convo_id)
def get_conversation_avatar(self, conv_id):
return engine_messaging.get_conversation_avatar(conv_id)
def update_conversation_avatar(self, conv_id, avatar):
engine_messaging.update_conversation_avatar(conv_id, avatar)
def update_conversation_name(self, conv_id, name):
engine_messaging.update_conversation_name(conv_id, name)
def get_user_conversations(self, username):
return engine_messaging.get_user_conversations(username)
def get_conversation_users(self, conversation_id):
return engine_messaging.get_conversation_users(conversation_id)
def find_conversation(self, users, name):
return engine_messaging.find_conversation(users, name)
def get_or_create_bitai_conversation(self, username):
return engine_messaging.get_or_create_bitai_conversation(username)
def get_conversations_summary(self, username):
return engine_messaging.get_conversations_summary(username)
# ========================
# MESSAGES
# ========================
def send_message(self, sender, conversation_id, content, msg_type, media_path="", reply_to=None):
return engine_messaging.send_message(sender, conversation_id, content, msg_type, media_path, reply_to)
def get_messages(self, convo_id):
return engine_messaging.get_messages(convo_id)
def get_last_message(self, convo_id):
return engine_messaging.get_last_message(convo_id)
def has_unread(self, username, convo_id):
return engine_messaging.has_unread(convo_id, username)
def mark_seen(self, username, convo_id):
engine_messaging.mark_seen(username, convo_id)
def get_last_interaction(self, username, convo_id):
return engine_messaging.get_last_interaction(convo_id, username)
# ========================
# POSTS
# ========================
def create_post(self, username, content, media_path):
return engine_content.create_post(username, content, media_path)
def delete_post(self, post_id, username):
return engine_content.delete_post(post_id, username)
def like_post(self, post_id, username):
return engine_content.like_post(post_id, username)
def unlike_post(self, post_id, username):
return engine_content.unlike_post(post_id, username)
def modify_likes(self, post_id, delta):
return engine_content.modify_likes(post_id, delta)
def get_feed(self, viewer=""):
return engine_content.get_feed(viewer)
def get_user_posts(self, username, viewer=""):
return engine_content.get_user_posts(username, viewer)
def get_post(self, post_id, viewer=""):
return engine_content.get_post(post_id, viewer)
# ========================
# COMMENTS
# ========================
def add_comment(self, post_id, username, content):
return engine_content.add_comment(post_id, username, content)
def get_comments(self, post_id, viewer=""):
return engine_content.get_comments(post_id, viewer)
# ========================
# STATIONS
# ========================
def create_station(self, station_name, admin_username, bio=""):
return engine_station.create_station(station_name, admin_username, bio)
def delete_station(self, station_name, username):
return engine_station.delete_station(station_name, username)
def force_delete_station(self, station_name):
return engine_station.force_delete_station(station_name)
def update_station_name(self, old_name, new_name):
return engine_station.update_station_name(old_name, new_name)
def add_user_to_station(self, station_name, admin_username, user_to_add):
return engine_station.add_user_to_station(station_name, admin_username, user_to_add)
def remove_user_from_station(self, station_name, admin_username, user_to_remove):
return engine_station.remove_user_from_station(station_name, admin_username, user_to_remove)
def request_to_join(self, station_name, username):
return engine_station.request_to_join(station_name, username)
def check_pending_request(self, station_name, username):
return engine_station.check_pending_request(station_name, username)
def approve_request(self, station_name, admin_username, user_to_approve):
return engine_station.approve_request(station_name, admin_username, user_to_approve)
def reject_request(self, station_name, admin_username, user_to_reject):
return engine_station.reject_request(station_name, admin_username, user_to_reject)
def get_pending_requests(self, station_name, admin_username):
return engine_station.get_pending_requests(station_name, admin_username)
def create_station_post(self, station_name, username, content, media_path):
return engine_station.create_station_post(station_name, username, content, media_path)
def delete_station_post(self, post_id, station_name, username):
return engine_station.delete_station_post(post_id, station_name, username)
def get_station_posts(self, station_name, viewer=""):
return engine_station.get_station_posts(station_name, viewer)
def get_station(self, station_name, viewer=""):
return engine_station.get_station(station_name, viewer)
def get_station_members(self, station_name, viewer=""):
return engine_station.get_station_members(station_name, viewer)
def get_all_stations(self, viewer=""):
return engine_station.get_all_stations(viewer)
def get_station_bio(self, station_name):
return engine_station.get_station_bio(station_name)
def get_station_hero_banner(self, station_name):
return engine_station.get_station_hero_banner(station_name)
def get_station_profile_pic(self, station_name):
return engine_station.get_station_profile_pic(station_name)
def get_station_admin(self, station_name):
return engine_station.get_station_admin(station_name)
def update_station_bio(self, station_name, bio):
return engine_station.update_station_bio(station_name, bio)
def update_station_hero_banner(self, station_name, hero_banner_base64):
return engine_station.update_station_hero_banner(station_name, hero_banner_base64)
def update_station_profile_pic(self, station_name, profile_pic_base64):
return engine_station.update_station_profile_pic(station_name, profile_pic_base64)
def get_bulk_station_posts(self, station_names, viewer=""):
return engine_station.get_bulk_station_posts(station_names, viewer)
def get_bulk_pending_requests(self, station_names, username):
return engine_station.get_bulk_pending_requests(station_names, username)
# ========================
# BITAI SETTINGS
# ========================
def get_bit_ai_settings(self, username):
return engine_messaging.get_bit_ai_settings(username)
def update_bit_ai_settings(self, username, ai_name=None, personality=None, is_initialized=None):
return engine_messaging.update_bit_ai_settings(username, ai_name, personality, is_initialized)
def clear_bit_ai_messages(self, username):
return engine_messaging.clear_bit_ai_messages(username)