style: apply black and isort formatting across entire codebase
- Standardize quote style (single to double quotes) - Reorder and group imports alphabetically - Fix line breaks and indentation for consistency - Apply PEP 8 formatting standards Also updated Makefile to exclude both venv and .venv from code quality checks. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -30,17 +30,15 @@ Routes:
|
||||
- GET /code-quality/violations/{violation_id} → Violation details (auth required)
|
||||
"""
|
||||
|
||||
from fastapi import APIRouter, Request, Depends, Path
|
||||
from typing import Optional
|
||||
|
||||
from fastapi import APIRouter, Depends, Path, Request
|
||||
from fastapi.responses import HTMLResponse, RedirectResponse
|
||||
from fastapi.templating import Jinja2Templates
|
||||
from sqlalchemy.orm import Session
|
||||
from typing import Optional
|
||||
|
||||
from app.api.deps import (
|
||||
get_current_admin_from_cookie_or_header,
|
||||
get_current_admin_optional,
|
||||
get_db
|
||||
)
|
||||
from app.api.deps import (get_current_admin_from_cookie_or_header,
|
||||
get_current_admin_optional, get_db)
|
||||
from models.database.user import User
|
||||
|
||||
router = APIRouter()
|
||||
@@ -51,9 +49,10 @@ templates = Jinja2Templates(directory="app/templates")
|
||||
# PUBLIC ROUTES (No Authentication Required)
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/", response_class=RedirectResponse, include_in_schema=False)
|
||||
async def admin_root(
|
||||
current_user: Optional[User] = Depends(get_current_admin_optional)
|
||||
current_user: Optional[User] = Depends(get_current_admin_optional),
|
||||
):
|
||||
"""
|
||||
Redirect /admin/ based on authentication status.
|
||||
@@ -70,8 +69,7 @@ async def admin_root(
|
||||
|
||||
@router.get("/login", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_login_page(
|
||||
request: Request,
|
||||
current_user: Optional[User] = Depends(get_current_admin_optional)
|
||||
request: Request, current_user: Optional[User] = Depends(get_current_admin_optional)
|
||||
):
|
||||
"""
|
||||
Render admin login page.
|
||||
@@ -83,21 +81,19 @@ async def admin_login_page(
|
||||
# User is already logged in as admin, redirect to dashboard
|
||||
return RedirectResponse(url="/admin/dashboard", status_code=302)
|
||||
|
||||
return templates.TemplateResponse(
|
||||
"admin/login.html",
|
||||
{"request": request}
|
||||
)
|
||||
return templates.TemplateResponse("admin/login.html", {"request": request})
|
||||
|
||||
|
||||
# ============================================================================
|
||||
# AUTHENTICATED ROUTES (Admin Only)
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/dashboard", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_dashboard_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render admin dashboard page.
|
||||
@@ -108,7 +104,7 @@ async def admin_dashboard_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -116,11 +112,12 @@ async def admin_dashboard_page(
|
||||
# VENDOR MANAGEMENT ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/vendors", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_vendors_list_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendors management page.
|
||||
@@ -131,15 +128,15 @@ async def admin_vendors_list_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/vendors/create", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_vendor_create_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendor creation form.
|
||||
@@ -149,16 +146,18 @@ async def admin_vendor_create_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/vendors/{vendor_code}", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/vendors/{vendor_code}", response_class=HTMLResponse, include_in_schema=False
|
||||
)
|
||||
async def admin_vendor_detail_page(
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendor detail page.
|
||||
@@ -170,16 +169,18 @@ async def admin_vendor_detail_page(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"vendor_code": vendor_code,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/vendors/{vendor_code}/edit", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/vendors/{vendor_code}/edit", response_class=HTMLResponse, include_in_schema=False
|
||||
)
|
||||
async def admin_vendor_edit_page(
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendor edit form.
|
||||
@@ -190,7 +191,7 @@ async def admin_vendor_edit_page(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"vendor_code": vendor_code,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -198,12 +199,17 @@ async def admin_vendor_edit_page(
|
||||
# VENDOR DOMAINS ROUTES
|
||||
# ============================================================================
|
||||
|
||||
@router.get("/vendors/{vendor_code}/domains", response_class=HTMLResponse, include_in_schema=False)
|
||||
|
||||
@router.get(
|
||||
"/vendors/{vendor_code}/domains",
|
||||
response_class=HTMLResponse,
|
||||
include_in_schema=False,
|
||||
)
|
||||
async def admin_vendor_domains_page(
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendor domains management page.
|
||||
@@ -215,7 +221,7 @@ async def admin_vendor_domains_page(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"vendor_code": vendor_code,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -223,12 +229,15 @@ async def admin_vendor_domains_page(
|
||||
# VENDOR THEMES ROUTES
|
||||
# ============================================================================
|
||||
|
||||
@router.get("/vendors/{vendor_code}/theme", response_class=HTMLResponse, include_in_schema=False)
|
||||
|
||||
@router.get(
|
||||
"/vendors/{vendor_code}/theme", response_class=HTMLResponse, include_in_schema=False
|
||||
)
|
||||
async def admin_vendor_theme_page(
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
vendor_code: str = Path(..., description="Vendor code"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendor theme customization page.
|
||||
@@ -240,7 +249,7 @@ async def admin_vendor_theme_page(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"vendor_code": vendor_code,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -248,11 +257,12 @@ async def admin_vendor_theme_page(
|
||||
# USER MANAGEMENT ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/users", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_users_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render users management page.
|
||||
@@ -263,7 +273,7 @@ async def admin_users_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -271,11 +281,12 @@ async def admin_users_page(
|
||||
# IMPORT MANAGEMENT ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/imports", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_imports_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render imports management page.
|
||||
@@ -286,7 +297,7 @@ async def admin_imports_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -294,11 +305,12 @@ async def admin_imports_page(
|
||||
# SETTINGS ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/settings", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_settings_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render admin settings page.
|
||||
@@ -309,7 +321,7 @@ async def admin_settings_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -317,11 +329,12 @@ async def admin_settings_page(
|
||||
# CONTENT MANAGEMENT SYSTEM (CMS) ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/platform-homepage", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_platform_homepage_manager(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render platform homepage manager.
|
||||
@@ -332,15 +345,15 @@ async def admin_platform_homepage_manager(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/content-pages", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_content_pages_list(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render content pages list.
|
||||
@@ -351,15 +364,17 @@ async def admin_content_pages_list(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/content-pages/create", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/content-pages/create", response_class=HTMLResponse, include_in_schema=False
|
||||
)
|
||||
async def admin_content_page_create(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render create content page form.
|
||||
@@ -371,16 +386,20 @@ async def admin_content_page_create(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"page_id": None, # Indicates this is a create operation
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/content-pages/{page_id}/edit", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/content-pages/{page_id}/edit",
|
||||
response_class=HTMLResponse,
|
||||
include_in_schema=False,
|
||||
)
|
||||
async def admin_content_page_edit(
|
||||
request: Request,
|
||||
page_id: int = Path(..., description="Content page ID"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
page_id: int = Path(..., description="Content page ID"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render edit content page form.
|
||||
@@ -392,7 +411,7 @@ async def admin_content_page_edit(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"page_id": page_id,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -400,11 +419,12 @@ async def admin_content_page_edit(
|
||||
# DEVELOPER TOOLS - COMPONENTS & TESTING
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/components", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_components_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render UI components library page.
|
||||
@@ -415,7 +435,7 @@ async def admin_components_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -423,7 +443,7 @@ async def admin_components_page(
|
||||
async def admin_icons_page(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render icons browser page.
|
||||
@@ -434,15 +454,15 @@ async def admin_icons_page(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/testing", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_testing_hub(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render testing hub page.
|
||||
@@ -453,15 +473,15 @@ async def admin_testing_hub(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/test/auth-flow", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_test_auth_flow(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render authentication flow testing page.
|
||||
@@ -472,15 +492,19 @@ async def admin_test_auth_flow(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/test/vendors-users-migration", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/test/vendors-users-migration",
|
||||
response_class=HTMLResponse,
|
||||
include_in_schema=False,
|
||||
)
|
||||
async def admin_test_vendors_users_migration(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render vendors and users migration testing page.
|
||||
@@ -491,7 +515,7 @@ async def admin_test_vendors_users_migration(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@@ -499,11 +523,12 @@ async def admin_test_vendors_users_migration(
|
||||
# CODE QUALITY & ARCHITECTURE ROUTES
|
||||
# ============================================================================
|
||||
|
||||
|
||||
@router.get("/code-quality", response_class=HTMLResponse, include_in_schema=False)
|
||||
async def admin_code_quality_dashboard(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render code quality dashboard.
|
||||
@@ -514,15 +539,17 @@ async def admin_code_quality_dashboard(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/code-quality/violations", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/code-quality/violations", response_class=HTMLResponse, include_in_schema=False
|
||||
)
|
||||
async def admin_code_quality_violations(
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render violations list page.
|
||||
@@ -533,16 +560,20 @@ async def admin_code_quality_violations(
|
||||
{
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
@router.get("/code-quality/violations/{violation_id}", response_class=HTMLResponse, include_in_schema=False)
|
||||
@router.get(
|
||||
"/code-quality/violations/{violation_id}",
|
||||
response_class=HTMLResponse,
|
||||
include_in_schema=False,
|
||||
)
|
||||
async def admin_code_quality_violation_detail(
|
||||
request: Request,
|
||||
violation_id: int = Path(..., description="Violation ID"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db)
|
||||
request: Request,
|
||||
violation_id: int = Path(..., description="Violation ID"),
|
||||
current_user: User = Depends(get_current_admin_from_cookie_or_header),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Render violation detail page.
|
||||
@@ -554,5 +585,5 @@ async def admin_code_quality_violation_detail(
|
||||
"request": request,
|
||||
"user": current_user,
|
||||
"violation_id": violation_id,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user