print("mongodb.py loaded")

import motor.motor_asyncio
from config import DB_URI, DB_NAME


class MongoDB:
    def __init__(self):
        self.client = None
        self.db = None

    # =========================
    # CONNECT
    # =========================
    async def connect(self):
        if self.client:
            return

        self.client = motor.motor_asyncio.AsyncIOMotorClient(DB_URI)
        self.db = self.client[DB_NAME]

        print("MongoDB Connected")

    # =========================
    # GET COLLECTION
    # =========================
    def col(self, name: str):
        return self.db[name]


# =========================
# INSTANCE
# =========================
mongo = MongoDB()