12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- pragma solidity ^0.4.11;
- import './Claimable.sol';
- /**
- * @title DelayedClaimable
- * @dev Extension for the Claimable contract, where the ownership needs to be claimed before/after
- * a certain block number.
- */
- contract DelayedClaimable is Claimable {
- uint256 public end;
- uint256 public start;
- /**
- * @dev Used to specify the time period during which a pending
- * owner can claim ownership.
- * @param _start The earliest time ownership can be claimed.
- * @param _end The latest time ownership can be claimed.
- */
- function setLimits(uint256 _start, uint256 _end) onlyOwner {
- if (_start > _end)
- throw;
- end = _end;
- start = _start;
- }
- /**
- * @dev Allows the pendingOwner address to finalize the transfer, as long as it is called within
- * the specified start and end time.
- */
- function claimOwnership() onlyPendingOwner {
- if ((block.number > end) || (block.number < start))
- throw;
- owner = pendingOwner;
- pendingOwner = 0x0;
- end = 0;
- }
- }
|