Spaces:
Sleeping
Sleeping
| from pymongo import MongoClient | |
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| client = None | |
| db = None | |
| users_collection = None | |
| sessions_collection = None | |
| messages_collection = None | |
| def init_connection(): | |
| """Initialize MongoDB connection and collections.""" | |
| global client, db, users_collection, sessions_collection, messages_collection | |
| mongo_uri = os.getenv("MONGO_URI") | |
| if not mongo_uri: | |
| raise ValueError("β MONGO_URI not found in environment variables.") | |
| client = MongoClient(mongo_uri) | |
| db = client.get_database("law_cases_db") | |
| users_collection = db.get_collection("users") | |
| sessions_collection = db.get_collection("chat_sessions") | |
| messages_collection = db.get_collection("chat_messages") | |
| # β create unique index (username + normalized chat name) | |
| sessions_collection.create_index( | |
| [("username", 1), ("session_name_normalized", 1)], | |
| unique=True | |
| ) | |
| return { | |
| "client": client, | |
| "db": db, | |
| "users": users_collection, | |
| "sessions": sessions_collection, | |
| "messages": messages_collection | |
| } | |