29 lines
907 B
Python
29 lines
907 B
Python
from fastapi import APIRouter, Request, Depends
|
|
from fastapi.responses import HTMLResponse, JSONResponse
|
|
from fastapi.templating import Jinja2Templates
|
|
from app.services.tidal_wrapper import TidalWrapper
|
|
|
|
router = APIRouter(prefix="/auth", tags=["auth"])
|
|
templates = Jinja2Templates(directory="app/templates")
|
|
|
|
@router.get("/login", response_class=HTMLResponse)
|
|
async def login_page(request: Request):
|
|
return templates.TemplateResponse("login.html", {"request": request})
|
|
|
|
@router.post("/start")
|
|
async def start_login():
|
|
wrapper = TidalWrapper()
|
|
result = wrapper.start_device_login()
|
|
return JSONResponse(result)
|
|
|
|
@router.get("/status")
|
|
async def check_status():
|
|
wrapper = TidalWrapper()
|
|
return JSONResponse(wrapper.get_auth_status())
|
|
|
|
@router.post("/logout")
|
|
async def logout():
|
|
# wrapper = TidalWrapper()
|
|
# wrapper.logout()
|
|
return JSONResponse({"status": "logged_out"})
|