diff --git a/lnbits/extensions/boltcards/crud.py b/lnbits/extensions/boltcards/crud.py index 2e19c079..a9156175 100644 --- a/lnbits/extensions/boltcards/crud.py +++ b/lnbits/extensions/boltcards/crud.py @@ -82,6 +82,7 @@ async def get_card(card_id: str) -> Optional[Card]: return Card.parse_obj(card) + async def get_card_by_uid(card_uid: str) -> Optional[Card]: row = await db.fetchone("SELECT * FROM boltcards.cards WHERE uid = ?", (card_uid,)) if not row: @@ -91,6 +92,7 @@ async def get_card_by_uid(card_uid: str) -> Optional[Card]: return Card.parse_obj(card) + async def get_card_by_otp(otp: str) -> Optional[Card]: row = await db.fetchone("SELECT * FROM boltcards.cards WHERE otp = ?", (otp,)) if not row: diff --git a/lnbits/extensions/boltcards/views_api.py b/lnbits/extensions/boltcards/views_api.py index 7c3a2e03..ada7c708 100644 --- a/lnbits/extensions/boltcards/views_api.py +++ b/lnbits/extensions/boltcards/views_api.py @@ -133,7 +133,7 @@ async def api_hits( # /boltcards/api/v1/scan?p=00000000000000000000000000000000&c=0000000000000000 @boltcards_ext.get("/api/v1/scan") @boltcards_ext.get("/api/v1/scan/{card_uid}") -async def api_scane(p, c, card_uid: str = None, request: Request): +async def api_scane(p, c, request: Request, card_uid: str = None): # some wallets send everything as lower case, no bueno p = p.upper() c = c.upper() @@ -146,7 +146,9 @@ async def api_scane(p, c, card_uid: str = None, request: Request): for cand in await get_all_cards(): if cand.k1: try: - card_uid, counter = decryptSUN(bytes.fromhex(p), bytes.fromhex(cand.k1)) + card_uid, counter = decryptSUN( + bytes.fromhex(p), bytes.fromhex(cand.k1) + ) if card_uid.hex().upper() == cand.uid.upper(): card = cand