UNPKG

@gooddollar/goodprotocol

Version:
292 lines (291 loc) 18.6 kB
{ "_format": "hh-sol-artifact-1", "contractName": "OneTimeReward", "sourceName": "contracts/invite/OneTimeReward.sol", "abi": [ { "inputs": [ { "internalType": "uint256", "name": "_rewardAmount", "type": "uint256" }, { "internalType": "contract INameService", "name": "_nameService", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "RewardClaimed", "type": "event" }, { "inputs": [], "name": "avatar", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "checkActiveAndBalance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "checkCanClaimReward", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "claimReward", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "claimed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dao", "outputs": [ { "internalType": "contract Controller", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getIdentity", "outputs": [ { "internalType": "contract IIdentityV2", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nameService", "outputs": [ { "internalType": "contract INameService", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nativeToken", "outputs": [ { "internalType": "contract IGoodDollar", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "updateAvatar", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_isActive", "type": "bool" }, { "internalType": "uint256", "name": "_rewardAmount", "type": "uint256" } ], "name": "updateSettings", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "withdrawAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x60806040523480156200001157600080fd5b5060405162000d9a38038062000d9a83398101604081905262000034916200021f565b6200003f3362000064565b60378290556036805460ff191660011790556200005c81620000b4565b505062000279565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600380546001600160a01b0319166001600160a01b038316179055620000d9620000dc565b50565b60035460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac190606401602060405180830381865afa15801562000140573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000166919062000252565b600180546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de6916004808201926020929091908290030181865afa158015620001c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e7919062000252565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0381168114620000d957600080fd5b600080604083850312156200023357600080fd5b825191506020830151620002478162000209565b809150509250929050565b6000602082840312156200026557600080fd5b8151620002728162000209565b9392505050565b610b1180620002896000396000f3fe608060405234801561001057600080fd5b50600436106100db5760003560e01c80631b3c90a8146100e057806322f3e2d4146100ea578063247fcf041461010c57806336afc6fa1461011f5780633e6326fc146101345780634162169f1461014757806353fadcfe1461015a5780635aef7de61461016d578063715018a6146101805780638da5cb5b14610188578063bc06847f14610190578063c884ef8314610198578063d279c191146101bb578063e1758bd8146101ce578063f2fde38b146101d6578063f7b2a7be146101e9578063fa09e63014610200575b600080fd5b6100e8610213565b005b6036546100f79060ff1681565b60405190151581526020015b60405180910390f35b6100e861011a3660046109fd565b61033a565b610127610359565b6040516101039190610a29565b600354610127906001600160a01b031681565b600154610127906001600160a01b031681565b6100f7610168366004610a52565b6103e5565b600254610127906001600160a01b031681565b6100e861046e565b610127610482565b6100f7610491565b6100f76101a6366004610a52565b60386020526000908152604090205460ff1681565b6100e86101c9366004610a52565b61052d565b6101276106e1565b6100e86101e4366004610a52565b61072d565b6101f260375481565b604051908152602001610103565b6100e861020e366004610a52565b6107a6565b60035460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac190606401602060405180830381865afa158015610276573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029a9190610a6f565b600180546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de6916004808201926020929091908290030181865afa1580156102f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103189190610a6f565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6103426108de565b6036805460ff191692151592909217909155603755565b60035460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526000916001600160a01b03169063bf40fac1906064015b602060405180830381865afa1580156103bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e09190610a6f565b905090565b6000806103f0610359565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b815260040161041b9190610a29565b602060405180830381865afa158015610438573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045c9190610a6f565b90506104678161093d565b9392505050565b6104766108de565b610480600061099f565b565b6000546001600160a01b031690565b60365460009060ff166104a45750600090565b6037546104af6106e1565b6001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016104da9190610a29565b602060405180830381865afa1580156104f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061051b9190610a8c565b10156105275750600090565b50600190565b6000610537610359565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b81526004016105629190610a29565b602060405180830381865afa15801561057f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a39190610a6f565b90506105ae8161093d565b6105fa5760405162461bcd60e51b8152602060048201526018602482015277155cd95c8818d85b9b9bdd0818db185a5b481c995dd85c9960421b60448201526064015b60405180910390fd5b6001600160a01b0381166000908152603860205260409020805460ff191660011790556106256106e1565b6001600160a01b031663a9059cbb836037546040518363ffffffff1660e01b8152600401610654929190610aa5565b6020604051808303816000875af1158015610673573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106979190610abe565b50816001600160a01b03167f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72416037546040516106d591815260200190565b60405180910390a25050565b60035460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640161039f565b6107356108de565b6001600160a01b03811661079a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105f1565b6107a38161099f565b50565b6107ae6108de565b6040516370a0823160e01b81526000906001600160a01b038316906370a08231906107dd903090600401610a29565b602060405180830381865afa1580156107fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081e9190610a8c565b9050600081116108685760405162461bcd60e51b81526020600482015260156024820152744e6f20746f6b656e7320746f20776974686472617760581b60448201526064016105f1565b60405163a9059cbb60e01b81526001600160a01b0383169063a9059cbb906108969033908590600401610aa5565b6020604051808303816000875af11580156108b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d99190610abe565b505050565b336108e7610482565b6001600160a01b0316146104805760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105f1565b6000610947610491565b151560000361095857506000919050565b6001600160a01b03821661096e57506000919050565b6001600160a01b03821660009081526038602052604090205460ff161561099757506000919050565b506001919050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80151581146107a357600080fd5b60008060408385031215610a1057600080fd5b8235610a1b816109ef565b946020939093013593505050565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146107a357600080fd5b600060208284031215610a6457600080fd5b813561046781610a3d565b600060208284031215610a8157600080fd5b815161046781610a3d565b600060208284031215610a9e57600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b600060208284031215610ad057600080fd5b8151610467816109ef56fea26469706673582212205bebf76c1ebbadd7212bad41aae9ce97f0a80c6d8c71c5d8218653f0e08c925f64736f6c63430008130033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100db5760003560e01c80631b3c90a8146100e057806322f3e2d4146100ea578063247fcf041461010c57806336afc6fa1461011f5780633e6326fc146101345780634162169f1461014757806353fadcfe1461015a5780635aef7de61461016d578063715018a6146101805780638da5cb5b14610188578063bc06847f14610190578063c884ef8314610198578063d279c191146101bb578063e1758bd8146101ce578063f2fde38b146101d6578063f7b2a7be146101e9578063fa09e63014610200575b600080fd5b6100e8610213565b005b6036546100f79060ff1681565b60405190151581526020015b60405180910390f35b6100e861011a3660046109fd565b61033a565b610127610359565b6040516101039190610a29565b600354610127906001600160a01b031681565b600154610127906001600160a01b031681565b6100f7610168366004610a52565b6103e5565b600254610127906001600160a01b031681565b6100e861046e565b610127610482565b6100f7610491565b6100f76101a6366004610a52565b60386020526000908152604090205460ff1681565b6100e86101c9366004610a52565b61052d565b6101276106e1565b6100e86101e4366004610a52565b61072d565b6101f260375481565b604051908152602001610103565b6100e861020e366004610a52565b6107a6565b60035460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac190606401602060405180830381865afa158015610276573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029a9190610a6f565b600180546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de6916004808201926020929091908290030181865afa1580156102f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103189190610a6f565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6103426108de565b6036805460ff191692151592909217909155603755565b60035460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526000916001600160a01b03169063bf40fac1906064015b602060405180830381865afa1580156103bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e09190610a6f565b905090565b6000806103f0610359565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b815260040161041b9190610a29565b602060405180830381865afa158015610438573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045c9190610a6f565b90506104678161093d565b9392505050565b6104766108de565b610480600061099f565b565b6000546001600160a01b031690565b60365460009060ff166104a45750600090565b6037546104af6106e1565b6001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016104da9190610a29565b602060405180830381865afa1580156104f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061051b9190610a8c565b10156105275750600090565b50600190565b6000610537610359565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b81526004016105629190610a29565b602060405180830381865afa15801561057f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a39190610a6f565b90506105ae8161093d565b6105fa5760405162461bcd60e51b8152602060048201526018602482015277155cd95c8818d85b9b9bdd0818db185a5b481c995dd85c9960421b60448201526064015b60405180910390fd5b6001600160a01b0381166000908152603860205260409020805460ff191660011790556106256106e1565b6001600160a01b031663a9059cbb836037546040518363ffffffff1660e01b8152600401610654929190610aa5565b6020604051808303816000875af1158015610673573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106979190610abe565b50816001600160a01b03167f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72416037546040516106d591815260200190565b60405180910390a25050565b60035460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640161039f565b6107356108de565b6001600160a01b03811661079a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105f1565b6107a38161099f565b50565b6107ae6108de565b6040516370a0823160e01b81526000906001600160a01b038316906370a08231906107dd903090600401610a29565b602060405180830381865afa1580156107fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081e9190610a8c565b9050600081116108685760405162461bcd60e51b81526020600482015260156024820152744e6f20746f6b656e7320746f20776974686472617760581b60448201526064016105f1565b60405163a9059cbb60e01b81526001600160a01b0383169063a9059cbb906108969033908590600401610aa5565b6020604051808303816000875af11580156108b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d99190610abe565b505050565b336108e7610482565b6001600160a01b0316146104805760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105f1565b6000610947610491565b151560000361095857506000919050565b6001600160a01b03821661096e57506000919050565b6001600160a01b03821660009081526038602052604090205460ff161561099757506000919050565b506001919050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80151581146107a357600080fd5b60008060408385031215610a1057600080fd5b8235610a1b816109ef565b946020939093013593505050565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146107a357600080fd5b600060208284031215610a6457600080fd5b813561046781610a3d565b600060208284031215610a8157600080fd5b815161046781610a3d565b600060208284031215610a9e57600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b600060208284031215610ad057600080fd5b8151610467816109ef56fea26469706673582212205bebf76c1ebbadd7212bad41aae9ce97f0a80c6d8c71c5d8218653f0e08c925f64736f6c63430008130033", "linkReferences": {}, "deployedLinkReferences": {} }