This commit is contained in:
lda committed 2025-12-17 13:24:46 +07:00
1 parent 3773ae736e
commit d73f01c5f5
2 files changed
+14 -11

No files matched your search

+2 -2
View File
@@ -7,13 +7,13 @@
</head> </head>
<body> <body>
<form method="POST" action="/queuein"> <form method="POST" action="/queuein">
<label for="l">in:</label> <label for="lines">in:</label>
<textarea <textarea
id="l" id="l"
rows="20" rows="20"
cols="100" cols="100"
style="min-width: 20%; min-height: 20dvh" style="min-width: 20%; min-height: 20dvh"
name="l" name="lines"
></textarea> ></textarea>
<input type="submit" value="ahh" /> <input type="submit" value="ahh" />
</form> </form>
+12 -9
View File
@@ -9,7 +9,7 @@ from fastapi.templating import Jinja2Templates
app = FastAPI() app = FastAPI()
templates = Jinja2Templates(directory="templates") templates = Jinja2Templates(directory="templates")
queue: deque[str] = deque() queue: deque[str] = deque() # lifo ahh
def link_extract_from_onetab(line): def link_extract_from_onetab(line):
@@ -22,7 +22,7 @@ def link_extract_from_onetab(line):
async def no(request: Request): async def no(request: Request):
current_link = queue[0] if queue else None current_link = queue[0] if queue else None
return templates.TemplateResponse( return templates.TemplateResponse(
"index.html", {"request": request, "current_link": current_link} request, "index.html", {"current_link": current_link}
) )
@@ -31,6 +31,8 @@ async def redir(request: Request):
if queue: if queue:
q = queue.popleft() q = queue.popleft()
return RedirectResponse(url=q) return RedirectResponse(url=q)
return templates.TemplateResponse(request, "index.html", {"current_link": None})
return templates.TemplateResponse( return templates.TemplateResponse(
"index.html", {"request": request, "current_link": None} "index.html", {"request": request, "current_link": None}
) )
@@ -39,18 +41,19 @@ async def redir(request: Request):
@app.get("/queuein", response_class=HTMLResponse) @app.get("/queuein", response_class=HTMLResponse)
async def cuh_get(request: Request): async def cuh_get(request: Request):
return templates.TemplateResponse( return templates.TemplateResponse(
"queue.html", {"request": request, "queue_items": list(queue)} request, "queue.html", {"queue_items": list(queue)}
) )
@app.post("/queuein") @app.post("/queuein")
async def cuh_post(l: str = Form("")): async def cuh_post(lines: str = Form("")):
for line in l.splitlines(): """var name == form ele name (name="lines")"""
if line.strip(): queue.extend(
queue.append(link_extract_from_onetab(line)) link_extract_from_onetab(line) for line in lines.splitlines() if line.strip()
)
return RedirectResponse(url="/queuein", status_code=303) return RedirectResponse(url="/queuein", status_code=303)
if __name__ == "__main__": if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=2222) uvicorn.run("uhhhhup:app", host="0.0.0.0", port=2222, reload=True)
# uvicorn --host "0.0.0.0" --port 2222 uhhhh_fastapi:app # uvicorn --host "0.0.0.0" --port 2222 --reload uhhhhup:app