2021-10-10 23:57:15 +01:00
|
|
|
import asyncio
|
2021-11-25 18:52:16 +00:00
|
|
|
|
|
|
|
from fastapi import APIRouter
|
2021-10-10 23:57:15 +01:00
|
|
|
from fastapi.staticfiles import StaticFiles
|
2021-11-25 18:52:16 +00:00
|
|
|
|
2021-10-10 16:23:39 +01:00
|
|
|
from lnbits.db import Database
|
2021-10-10 23:57:15 +01:00
|
|
|
from lnbits.helpers import template_renderer
|
|
|
|
from lnbits.tasks import catch_everything_and_restart
|
2021-10-10 16:23:39 +01:00
|
|
|
|
|
|
|
db = Database("ext_jukebox")
|
|
|
|
|
2021-10-10 23:57:15 +01:00
|
|
|
jukebox_static_files = [
|
|
|
|
{
|
|
|
|
"path": "/jukebox/static",
|
2022-07-08 09:49:38 +01:00
|
|
|
"app": StaticFiles(packages=[("lnbits", "extensions/jukebox/static")]),
|
2021-10-10 23:57:15 +01:00
|
|
|
"name": "jukebox_static",
|
|
|
|
}
|
|
|
|
]
|
|
|
|
|
|
|
|
jukebox_ext: APIRouter = APIRouter(prefix="/jukebox", tags=["jukebox"])
|
|
|
|
|
|
|
|
|
|
|
|
def jukebox_renderer():
|
2022-07-23 20:08:59 +01:00
|
|
|
return template_renderer(["lnbits/extensions/jukebox/templates"])
|
2021-10-10 23:57:15 +01:00
|
|
|
|
2021-10-10 16:23:39 +01:00
|
|
|
|
2021-10-10 23:57:15 +01:00
|
|
|
from .tasks import wait_for_paid_invoices
|
2021-11-25 18:52:16 +00:00
|
|
|
from .views import * # noqa
|
|
|
|
from .views_api import * # noqa
|
2021-10-10 16:23:39 +01:00
|
|
|
|
|
|
|
|
2021-10-10 23:57:15 +01:00
|
|
|
def jukebox_start():
|
|
|
|
loop = asyncio.get_event_loop()
|
|
|
|
loop.create_task(catch_everything_and_restart(wait_for_paid_invoices))
|