def redeem_voucher_check(user: User, voucher_user: VoucherUser, sc_address) -> Optional[str]: # require(voucher[msg.sender].length > _index); - invariant # require(v.used == false); if voucher_user.usedVoucher is not False: return "already used voucher" # require(v.expires_unixtime >= block.timestamp); if not voucher_user.expires_unixtime >= datetime.now(): return "voucher is expired" if not WEB3.isAddress(sc_address): return "invalid sc_address" if user: pass return None
def voucher_constructor_check(institution_owner_address) -> Optional[str]: if not WEB3.isAddress(institution_owner_address): return "invalid public key" return None