Update app.py
Browse files
app.py
CHANGED
|
@@ -264,6 +264,24 @@ def run_image_generation(
|
|
| 264 |
|
| 265 |
|
| 266 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 267 |
|
| 268 |
# ---------------------------------------------------------------------
|
| 269 |
# Endpoints
|
|
@@ -294,6 +312,7 @@ async def generate(
|
|
| 294 |
image2: Optional[UploadFile] = File(None),
|
| 295 |
user_id: Optional[str] = Form(None),
|
| 296 |
category_id: Optional[str] = Form(None),
|
|
|
|
| 297 |
user=Depends(verify_firebase_token)
|
| 298 |
):
|
| 299 |
start_time = time.time()
|
|
@@ -337,9 +356,10 @@ async def generate(
|
|
| 337 |
try:
|
| 338 |
admin_client = MongoClient(os.getenv("ADMIN_MONGODB_URI"))
|
| 339 |
admin_db = admin_client["adminPanel"]
|
| 340 |
-
|
| 341 |
-
categories_col =
|
| 342 |
-
|
|
|
|
| 343 |
|
| 344 |
# Validate user_oid & category_oid
|
| 345 |
user_oid = ObjectId(user_id)
|
|
@@ -496,7 +516,8 @@ async def generate(
|
|
| 496 |
"prompt": prompt,
|
| 497 |
"user_email": user.get("email"),
|
| 498 |
"error": str(e),
|
| 499 |
-
"response_time_ms": response_time_ms
|
|
|
|
| 500 |
})
|
| 501 |
raise HTTPException(500, f"Inference failed: {e}")
|
| 502 |
|
|
@@ -553,7 +574,8 @@ async def generate(
|
|
| 553 |
"output_id": str(out_id),
|
| 554 |
"prompt": prompt,
|
| 555 |
"user_email": user.get("email"),
|
| 556 |
-
"response_time_ms": response_time_ms
|
|
|
|
| 557 |
})
|
| 558 |
|
| 559 |
return JSONResponse({
|
|
|
|
| 264 |
|
| 265 |
|
| 266 |
|
| 267 |
+
def get_admin_db(appname: Optional[str]):
|
| 268 |
+
"""
|
| 269 |
+
Returns (categories_collection, media_clicks_collection)
|
| 270 |
+
based on appname
|
| 271 |
+
"""
|
| 272 |
+
if appname == "collage-maker":
|
| 273 |
+
collage_uri = os.getenv("COLLAGE_MAKER_DB_URL")
|
| 274 |
+
if not collage_uri:
|
| 275 |
+
raise RuntimeError("COLLAGE_MAKER_DB_URL not set")
|
| 276 |
+
|
| 277 |
+
client = MongoClient(collage_uri)
|
| 278 |
+
db = client["adminPanel"]
|
| 279 |
+
return db.categories, db.media_clicks
|
| 280 |
+
|
| 281 |
+
# DEFAULT (existing behavior)
|
| 282 |
+
admin_client = MongoClient(os.getenv("ADMIN_MONGODB_URI"))
|
| 283 |
+
db = admin_client["adminPanel"]
|
| 284 |
+
return db.categories, db.media_clicks
|
| 285 |
|
| 286 |
# ---------------------------------------------------------------------
|
| 287 |
# Endpoints
|
|
|
|
| 312 |
image2: Optional[UploadFile] = File(None),
|
| 313 |
user_id: Optional[str] = Form(None),
|
| 314 |
category_id: Optional[str] = Form(None),
|
| 315 |
+
appname: Optional[str] = Form(None),
|
| 316 |
user=Depends(verify_firebase_token)
|
| 317 |
):
|
| 318 |
start_time = time.time()
|
|
|
|
| 356 |
try:
|
| 357 |
admin_client = MongoClient(os.getenv("ADMIN_MONGODB_URI"))
|
| 358 |
admin_db = admin_client["adminPanel"]
|
| 359 |
+
|
| 360 |
+
categories_col, media_clicks_col = get_admin_db(appname)
|
| 361 |
+
# categories_col = admin_db.categories
|
| 362 |
+
# media_clicks_col = admin_db.media_clicks
|
| 363 |
|
| 364 |
# Validate user_oid & category_oid
|
| 365 |
user_oid = ObjectId(user_id)
|
|
|
|
| 516 |
"prompt": prompt,
|
| 517 |
"user_email": user.get("email"),
|
| 518 |
"error": str(e),
|
| 519 |
+
"response_time_ms": response_time_ms,
|
| 520 |
+
"appname": appname
|
| 521 |
})
|
| 522 |
raise HTTPException(500, f"Inference failed: {e}")
|
| 523 |
|
|
|
|
| 574 |
"output_id": str(out_id),
|
| 575 |
"prompt": prompt,
|
| 576 |
"user_email": user.get("email"),
|
| 577 |
+
"response_time_ms": response_time_ms,
|
| 578 |
+
"appname": appname
|
| 579 |
})
|
| 580 |
|
| 581 |
return JSONResponse({
|