minor fixes

This commit is contained in:
nikili0n 2023-09-25 23:22:10 +03:00
parent fcc0eaa82f
commit 9f6152f327
2 changed files with 16 additions and 9 deletions

View File

@ -115,7 +115,7 @@ async def get_url_for_download_video(request: Request, data: SubmitIn = Depends(
logging.info(f" [x] Sent '{link}'")
# TODO: возможно возвращать идентификаторы задач aka куски ссылок
return JSONResponse(status_code=200, content={"result": f"Задача поставлена в работу, ссылка: {link['link']}"})
return JSONResponse(status_code=201, content={"result": f"Задача поставлена в работу, ссылка: {link['link']}"})
# TODO: если уже была попытка сделать задачу и в редисе она с ошибкой, то переташить её в очередь на
# выполнение с очисткой состояние об ошибке
@ -150,15 +150,15 @@ async def download_video(request: Request, link: str):
error_tasks = [
tasks_done.pop(tasks_done.index(error_task)) for error_task in tasks_done if error_task["status"] == "error"
]
if len(tasks) > 0:
] if tasks_done else None
if tasks and len(tasks) > 0:
task = tasks[0]
return JSONResponse(
status_code=202,
content={"result": f"Задача {task['link']} в данный момент в работе, выполняется"}
)
# TODO: если уже была попытка сделать задачу и в редисе она с ошибкой, то переташить её в очередь на выполнение с очисткой состояние об ошибке
if len(error_tasks) > 0:
if error_tasks and len(error_tasks) > 0:
error_task = error_tasks[0]
await red.del_task_from_task_done_queue(error_task)
return JSONResponse(status_code=510,
@ -172,5 +172,5 @@ async def download_video(request: Request, link: str):
except Exception as ex:
print(ex)
if __name__ == '__main__':
uvicorn.run("src.web.main:app", host="0.0.0.0", log_level="info")

View File

@ -124,12 +124,18 @@
xhr.onload = () => {
document.forms.download.querySelector('[type="submit"]').disabled = false;
document.forms.download.querySelector('.submit-spinner').classList.add('submit-spinner_hide');
if (xhr.status !== 200) {
console.log(xhr.status);
if (xhr.status !== 200 && xhr.status !== 201) {
return;
}
};
const response = xhr.response;
result.innerHTML = xhr.response.result;
result.href = xhr.response.result;
console.log(response);
if (xhr.status === 201) {
sendReq()
}
}
xhr.onerror = () => {
document.forms.download.querySelector('[type="submit"]').disabled = false;
@ -138,7 +144,8 @@
document.forms.download.querySelector('[type="submit"]').disabled = true;
document.forms.download.querySelector('.submit-spinner').classList.remove('submit-spinner_hide');
xhr.send(new FormData(document.forms.download));
sendReq()
}
// при отправке формы