SampleCrowdsale.sol 814 B

123456789101112131415161718192021222324252627
  1. pragma solidity ^0.4.11;
  2. import "../../crowdsale/CappedCrowdsale.sol";
  3. import "../../crowdsale/RefundableCrowdsale.sol";
  4. import "./SampleCrowdsaleToken.sol";
  5. /**
  6. * @title SampleCrowdsale
  7. * @dev This is an example of a fully fledged crowdsale that incorporates
  8. * ability to finalize sale and checks for both cap and goal.
  9. */
  10. contract SampleCrowdsale is CappedCrowdsale, RefundableCrowdsale {
  11. function SampleCrowdsale(uint256 _startBlock, uint256 _endBlock, uint256 _rate, uint256 _goal, uint256 _cap, address _wallet)
  12. CappedCrowdsale(_cap)
  13. FinalizableCrowdsale()
  14. RefundableCrowdsale(_goal)
  15. Crowdsale(_startBlock, _endBlock, _rate, _wallet)
  16. {
  17. require(_goal <= _cap);
  18. }
  19. function createTokenContract() internal returns (MintableToken) {
  20. return new SampleCrowdsaleToken();
  21. }
  22. }