From 67b45efd4a881c561db8f2494786cf65c614abc3 Mon Sep 17 00:00:00 2001 From: keerthilochankumar Date: Sun, 26 May 2024 00:47:35 +0530 Subject: [PATCH] python-challenge-3 solved --- .../challenge/smart_contracts/asa_vault/contract.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/projects/challenge/smart_contracts/asa_vault/contract.py b/projects/challenge/smart_contracts/asa_vault/contract.py index 9ff62c4..ffa64d8 100644 --- a/projects/challenge/smart_contracts/asa_vault/contract.py +++ b/projects/challenge/smart_contracts/asa_vault/contract.py @@ -18,10 +18,17 @@ def authorize_creator(self) -> None: def opt_in_to_asset(self, mbr_pay: gtxn.PaymentTransaction) -> None: self.authorize_creator() assert not Global.current_application_address.is_opted_in(Asset(self.asset_id)) + itxn.AssetTransfer( + xfer_asset=self.asset_id, + asset_receiver=Global.current_application_address, + sender=Global.current_application_address, + asset_amount=0, + fee=0, + ).submit() assert mbr_pay.receiver == Global.current_application_address assert mbr_pay.amount == Global.min_balance + Global.asset_opt_in_min_balance - + @arc4.abimethod def deposit_asa(self, deposit_txn: gtxn.AssetTransferTransaction)-> None: self.authorize_creator() @@ -47,4 +54,3 @@ def withdraw_asa(self, asset: Asset) -> None: @arc4.abimethod(readonly=True) def get_asa_balance(self) -> UInt64: return self.asa_balance - \ No newline at end of file