Added test and small fixes
This commit is contained in:
@@ -10,7 +10,9 @@ from fastapi.templating import Jinja2Templates
|
||||
|
||||
import config
|
||||
import db
|
||||
import sftp as sftp_module
|
||||
import sync
|
||||
import uploader
|
||||
|
||||
logging.basicConfig(level=logging.INFO, format="%(asctime)s %(levelname)s %(name)s — %(message)s")
|
||||
log = logging.getLogger(__name__)
|
||||
@@ -94,10 +96,11 @@ async def books_page(request: Request, page: int = 1):
|
||||
@app.get("/settings", response_class=HTMLResponse)
|
||||
async def settings_page(request: Request):
|
||||
s = db.get_all_settings()
|
||||
has_key = bool(s.get("sftp_key", "").strip())
|
||||
key_pem = s.get("sftp_key", "")
|
||||
return templates.TemplateResponse(request, "settings.html", {
|
||||
"s": s,
|
||||
"has_key": has_key,
|
||||
"has_key": bool(key_pem.strip()),
|
||||
"key_fingerprint": sftp_module.get_key_fingerprint(key_pem),
|
||||
})
|
||||
|
||||
|
||||
@@ -155,6 +158,22 @@ async def trigger_test_sync(background_tasks: BackgroundTasks):
|
||||
return RedirectResponse("/?test_started=1", status_code=303)
|
||||
|
||||
|
||||
# --- Connection tests ---
|
||||
|
||||
@app.get("/api/test/ssh")
|
||||
async def test_ssh():
|
||||
cfg = config.load()
|
||||
ok, message = sftp_module.test_connection(cfg.sftp)
|
||||
return {"ok": ok, "message": message}
|
||||
|
||||
|
||||
@app.get("/api/test/calibre")
|
||||
async def test_calibre():
|
||||
cfg = config.load()
|
||||
ok, message = uploader.test_connection(cfg.calibre)
|
||||
return {"ok": ok, "message": message}
|
||||
|
||||
|
||||
# --- JSON status API ---
|
||||
|
||||
@app.get("/api/status")
|
||||
|
||||
Reference in New Issue
Block a user