diff --git a/genesis-smart-contracts/WalletAccessControl.sol b/genesis-smart-contracts/WalletAccessControl.sol new file mode 100644 index 000000000..985ecf620 --- /dev/null +++ b/genesis-smart-contracts/WalletAccessControl.sol @@ -0,0 +1,26 @@ +// genesis-smart-contracts/WalletAccessControl.sol +pragma solidity ^0.8.0; + +contract WalletAccessControl { + mapping (address => bool) public walletAccess; + + function enableWallet(address wallet) public onlyOwner { + walletAccess[wallet] = true; + } + + function disableWallet(address wallet) public onlyOwner { + walletAccess[wallet] = false; + } + + function batchEnableWallets(address[] memory wallets) public onlyOwner { + for (uint256 i = 0; i < wallets.length; i++) { + walletAccess[wallets[i]] = true; + } + } + + function batchDisableWallets(address[] memory wallets) public onlyOwner { + for (uint256 i = 0; i < wallets.length; i++) { + walletAccess[wallets[i]] = false; + } + } +}