keycard-redeem/contracts/NFTBucketFactory.sol
2020-04-24 18:59:08 +02:00

21 lines
682 B
Solidity

pragma solidity ^0.6.1;
import "./NFTBucket.sol";
import "./Proxy.sol";
contract NFTBucketFactory {
NFTBucket public NFTBucketImplementation;
event BucketCreated(address indexed gifter, address indexed bucket);
constructor() public {
NFTBucketImplementation = new NFTBucket(address(0), 0, block.timestamp + 1);
}
function create(address _tokenAddress, uint256 _startTime, uint256 _expirationTime) public returns (address) {
address p = address(new Proxy(abi.encodeWithSelector(0x4e9464ed, "KeycardNFTGift", _tokenAddress, _startTime, _expirationTime, msg.sender), address(NFTBucketImplementation)));
emit BucketCreated(msg.sender, p);
return p;
}
}