import sqlite3 from database.Subscriber import Subscriber db = sqlite3.connect("database.db") class Database: def __init__(self, filename: str) -> None: db = sqlite3.connect(filename) def add_subscriber(self, user_id=int): cursor = db.cursor() cursor.execute("SELECT user_id FROM subscribers WHERE user_id = ?", (user_id,)) result = cursor.fetchone() if result: return False else: cursor.execute( "INSERT INTO subscribers (user_id, since) VALUES (?, DATETIME('now'))", (user_id,), ) db.commit() return True def get_subscribers(self): cursor = db.cursor() cursor.execute("SELECT user_id FROM subscribers") result = cursor.fetchall() return [Subscriber(id=row[0], user_id=row[1], since=row[2]) for row in result] def remove_subscriber(self, user_id=int): cursor = db.cursor() cursor.execute("SELECT user_id FROM subscribers WHERE user_id = ?", (user_id,)) result = cursor.fetchone() if result: cursor.execute("DELETE FROM subscribers WHERE user_id = ?", (user_id,)) db.commit() return True else: return False