This commit is contained in:
benarc 2022-02-10 13:54:36 +00:00 committed by Tiago vasconcelos
parent dbc47332ee
commit ec8c504f28
4 changed files with 53 additions and 23 deletions

View file

@ -1,28 +1,36 @@
import asyncio import asyncio
from fastapi import APIRouter from fastapi import APIRouter, Request
from fastapi.staticfiles import StaticFiles from fastapi.staticfiles import StaticFiles
from lnbits.db import Database from lnbits.db import Database
from lnbits.helpers import template_renderer from lnbits.helpers import template_renderer
from lnbits.tasks import catch_everything_and_restart from lnbits.tasks import catch_everything_and_restart
from starlette.exceptions import HTTPException
from starlette.responses import HTMLResponse
from http import HTTPStatus
db = Database("ext_diagonalley") from lnbits.settings import LNBITS_ADMIN_EXTENSIONS
diagonalley_ext: APIRouter = APIRouter( diagonalley_ext: APIRouter = APIRouter(
prefix="/diagonalley", tags=["diagonalley"] prefix="/diagonalley", tags=["diagonalley"]
) )
db = Database("ext_diagonalley")
if 'nostradmin' not in LNBITS_ADMIN_EXTENSIONS:
@diagonalley_ext.get("/", response_class=HTMLResponse)
async def index(request: Request):
return template_renderer().TemplateResponse(
"error.html", {"request": request, "err": "Ask system admin to enable NostrAdmin!"}
)
else:
def diagonalley_renderer():
return template_renderer(["lnbits/extensions/diagonalley/templates"])
def diagonalley_renderer(): from .tasks import wait_for_paid_invoices
return template_renderer(["lnbits/extensions/diagonalley/templates"]) from .views import * # noqa
from .views_api import * # noqa
from .tasks import wait_for_paid_invoices def diagonalley_start():
from .views import * # noqa loop = asyncio.get_event_loop()
from .views_api import * # noqa loop.create_task(catch_everything_and_restart(wait_for_paid_invoices))
def diagonalley_start():
loop = asyncio.get_event_loop()
loop.create_task(catch_everything_and_restart(wait_for_paid_invoices))

View file

@ -1,6 +1,6 @@
{ {
"name": "Diagon Alley", "name": "Diagon Alley",
"short_description": "Movable anonymous market stand", "short_description": "Nostr shop system",
"icon": "add_shopping_cart", "icon": "add_shopping_cart",
"contributors": ["benarc","DeanH"] "contributors": ["benarc"]
} }

View file

@ -1,16 +1,37 @@
from fastapi import APIRouter from fastapi import APIRouter, Request
from lnbits.db import Database from lnbits.db import Database
from lnbits.helpers import template_renderer from lnbits.helpers import template_renderer
db = Database("ext_nostradmin") from starlette.exceptions import HTTPException
from starlette.responses import HTMLResponse
from http import HTTPStatus
from lnbits.settings import LNBITS_ADMIN_EXTENSIONS
nostradmin_ext: APIRouter = APIRouter(prefix="/nostradmin", tags=["nostradmin"]) nostradmin_ext: APIRouter = APIRouter(prefix="/nostradmin", tags=["nostradmin"])
db = Database("ext_nostradmin")
if 'nostradmin' not in LNBITS_ADMIN_EXTENSIONS:
@nostradmin_ext.get("/", response_class=HTMLResponse)
async def index(request: Request):
return template_renderer().TemplateResponse(
"error.html", {"request": request, "err": "NostrAdmin must be added to LNBITS_ADMIN_EXTENSIONS in .env"}
)
else:
def nostr_renderer():
return template_renderer(["lnbits/extensions/nostradmin/templates"])
from .views import * # noqa
from .views_api import * # noqa
def nostr_renderer():
return template_renderer(["lnbits/extensions/nostradmin/templates"])
from .views import * # noqa
from .views_api import * # noqa

View file

@ -21,6 +21,7 @@ from .crud import get_nostrkeys, get_nostrrelay
templates = Jinja2Templates(directory="templates") templates = Jinja2Templates(directory="templates")
nostradmin = True
@nostradmin_ext.get("/", response_class=HTMLResponse) @nostradmin_ext.get("/", response_class=HTMLResponse)
async def index(request: Request, user: User = Depends(check_user_exists)): async def index(request: Request, user: User = Depends(check_user_exists)):