fix lnaddress

This commit is contained in:
Tiago vasconcelos 2021-11-25 16:24:11 +00:00
parent 3b80ff5171
commit 1b29eb9f75
6 changed files with 20 additions and 20 deletions

View file

@ -1,5 +1,8 @@
import json
import httpx
from lnbits.extensions.lnaddress.models import Domains
import httpx, json
async def cloudflare_create_record(

View file

@ -125,10 +125,9 @@ async def get_addresses(wallet_ids: Union[str, List[str]]) -> List[Addresses]:
return [Addresses(**row) for row in rows]
async def set_address_paid(payment_hash: str) -> Addresses:
_address = await get_address(payment_hash)
address = _address._asdict()
address = await get_address(payment_hash)
if address["paid"] == False:
if address.paid == False:
await db.execute(
"""
UPDATE lnaddress.address
@ -143,10 +142,9 @@ async def set_address_paid(payment_hash: str) -> Addresses:
return new_address
async def set_address_renewed(address_id: str, duration: int):
_address = await get_address(address_id)
address = _address._asdict()
address = await get_address(address_id)
extend_duration = int(address["duration"]) + duration
extend_duration = int(address.duration) + duration
await db.execute(
"""
UPDATE lnaddress.address

View file

@ -20,7 +20,7 @@ class Domains(BaseModel):
domain: str
cf_token: str
cf_zone_id: str
webhook: str
webhook: Optional[str]
cost: int
time: int
@ -37,7 +37,7 @@ class Addresses(BaseModel):
id: str
wallet: str
domain: str
email: str
email: Optional[str]
username: str
wallet_key: str
wallet_endpoint: str

View file

@ -20,7 +20,7 @@ templates = Jinja2Templates(directory="templates")
async def index(request: Request, user: User = Depends(check_user_exists)):
return lnaddress_renderer().TemplateResponse("lnaddress/index.html", {"request": request, "user": user.dict()})
@lnaddress_ext.get("/{domain_id}")
@lnaddress_ext.get("/{domain_id}", response_class=HTMLResponse)
async def display(domain_id, request: Request):
domain = await get_domain(domain_id)
if not domain:
@ -28,7 +28,7 @@ async def display(domain_id, request: Request):
status_code=HTTPStatus.NOT_FOUND, detail="Domain does not exist."
)
await purge_addresses(domain_id, response_class=HTMLResponse)
await purge_addresses(domain_id)
wallet = await get_wallet(domain.wallet)

View file

@ -63,8 +63,7 @@ async def api_domain_create(request: Request,data: CreateDomain, domain_id=None,
else:
domain = await create_domain(data=data)
root_url = urlparse(request.url.path).netloc
#root_url = request.url_root
root_url = urlparse(str(request.url)).netloc
cf_response = await cloudflare_create_record(
domain=domain,
@ -113,6 +112,12 @@ async def api_addresses(
return [address.dict() for address in await get_addresses(wallet_ids)]
@lnaddress_ext.get("/api/v1/address/availabity/{domain_id}/{username}")
async def api_check_available_username(domain_id, username):
used_username = await check_address_available(username, domain_id)
return used_username
@lnaddress_ext.get("/api/v1/address/{domain}/{username}/{wallet_key}")
async def api_get_user_info(username, wallet_key, domain):
address = await get_address_by_username(username, domain)
@ -131,12 +136,6 @@ async def api_get_user_info(username, wallet_key, domain):
return address.dict()
@lnaddress_ext.get("/api/v1/address/availabity/{domain_id}/{username}")
async def api_check_available_username(domain_id, username):
used_username = await check_address_available(username, domain_id)
return used_username
@lnaddress_ext.post("/api/v1/address/{domain_id}")
@lnaddress_ext.put("/api/v1/address/{domain_id}/{user}/{wallet_key}")
async def api_lnaddress_make_address(domain_id, data: CreateAddress, user=None, wallet_key=None):
@ -149,7 +148,7 @@ async def api_lnaddress_make_address(domain_id, data: CreateAddress, user=None,
detail="The domain does not exist.",
)
domain_cost = domain[6]
domain_cost = domain.cost
sats = data.sats
## FAILSAFE FOR CREATING ADDRESSES BY API