37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
|
import asyncio
|
||
|
from flask_restful import Resource
|
||
|
from flask import current_app as app
|
||
|
from ..downloader import manual
|
||
|
|
||
|
class KF3_Update(Resource):
|
||
|
def post(self):
|
||
|
from ..database import Database
|
||
|
db : Database = app.databases["KF3"]
|
||
|
|
||
|
if db.update_in_progress:
|
||
|
response = app.response_class(
|
||
|
response="update in progress",
|
||
|
status=200,
|
||
|
mimetype='text/plain'
|
||
|
)
|
||
|
else:
|
||
|
self.perform_update()
|
||
|
response = app.response_class(
|
||
|
response="update started, reload the site in a while",
|
||
|
status=200,
|
||
|
mimetype='text/plain'
|
||
|
)
|
||
|
|
||
|
response.headers.add("Access-Control-Allow-Origin", "*")
|
||
|
return response
|
||
|
|
||
|
def get(self):
|
||
|
return self.post()
|
||
|
|
||
|
def perform_update(self):
|
||
|
from ..database import Database
|
||
|
db : Database = app.databases["KF3"]
|
||
|
print("Update")
|
||
|
#await manual()
|
||
|
db.reload_data()
|