diff --git a/crud.py b/crud.py index 0a678e7..c2c99c1 100644 --- a/crud.py +++ b/crud.py @@ -20,6 +20,7 @@ async def create_card(data: CreateCardData, wallet_id: str) -> Card: external_id, wallet, card_name, + message, counter, tx_limit, daily_limit, @@ -29,7 +30,7 @@ async def create_card(data: CreateCardData, wallet_id: str) -> Card: k2, otp ) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) """, ( card_id, @@ -37,6 +38,7 @@ async def create_card(data: CreateCardData, wallet_id: str) -> Card: extenal_id, wallet_id, data.card_name, + data.message, data.counter, data.tx_limit, data.daily_limit, diff --git a/lnurl.py b/lnurl.py index e3ac7f1..73320a3 100644 --- a/lnurl.py +++ b/lnurl.py @@ -82,7 +82,7 @@ async def api_scan(p, c, request: Request, external_id: str): "k1": hit.id, "minWithdrawable": 1 * 1000, "maxWithdrawable": card.tx_limit * 1000, - "defaultDescription": f"Boltcard (refund address lnurl://{lnurlpay})", + "defaultDescription": card.message or f"Boltcard (refund address lnurl://{lnurlpay})", } diff --git a/migrations.py b/migrations.py index 43d5bb0..f82a4b2 100644 --- a/migrations.py +++ b/migrations.py @@ -55,3 +55,12 @@ async def m001_initial(db): ); """ ) + + +async def m002_add_custom_message(db): + """ + Adds column for custom message to be shown on scan. + """ + await db.execute( + "ALTER TABLE boltcards.cards ADD COLUMN message TEXT" + ) diff --git a/models.py b/models.py index 5ea4be1..234c948 100644 --- a/models.py +++ b/models.py @@ -14,6 +14,7 @@ class Card(BaseModel): id: str wallet: str card_name: str + message: str uid: str external_id: str counter: int @@ -43,6 +44,7 @@ async def lnurlpay_metadata(self) -> LnurlPayMetadata: class CreateCardData(BaseModel): card_name: str = Query(...) + message: str = Query(...) uid: str = Query(...) counter: int = Query(0) tx_limit: int = Query(0) diff --git a/templates/boltcards/index.html b/templates/boltcards/index.html index 136b8fd..8da9ce4 100644 --- a/templates/boltcards/index.html +++ b/templates/boltcards/index.html @@ -265,6 +265,16 @@
type="text" label="Card name " > + + Message to be shown on scan +