Blockwell

LikeCoin

ERC20

This contract is an ERC20 token.

Name LikeCoin
Symbol LIKE
Decimals 18
Total Supply 250,074,238 LIKE

About

Stats

Public Functions 26
Event Types 5
Code Size 15,491 bytes

Library Use

Uses SafeMath for uint256.

Approval Event

Parameters help
owner
address help
spender
address help
value
uint256 help

Lock Event

Parameters help
_addr
address help
_value
uint256 help

OwnershipTransferred Event

Parameters help
previousOwner
address help
newOwner
address help

SignatureCheckerChanged Event

Parameters help
_newSignatureChecker
address help

Transfer Event

Parameters help
from
address help
to
address help
value
uint256 help

Functions Expand All Collapse All

transferOwnership keyboard_arrow_up

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction
Source Code
  function transferOwnership(address newOwner) onlyOwner public {
    pendingOwner = newOwner;
  }

claimOwnership keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
  function claimOwnership() onlyPendingOwner public {
    OwnershipTransferred(owner, pendingOwner);
    owner = pendingOwner;
    pendingOwner = address(0);
  }

setOperator keyboard_arrow_up

Parameters help

Name Type
_operator
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function setOperator(address _operator) onlyOwner public {
        operator = _operator;
    }

totalSupply keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function totalSupply() public constant returns (uint256) {
        return supply;
    }

balanceOf keyboard_arrow_up

Parameters help

Name Type
_owner
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function balanceOf(address _owner) public constant returns (uint256 balance) {
        return balances[_owner] + lockedBalances[_owner];
    }

transfer keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
    function transfer(address _to, uint256 _value) public returns (bool success) {
        return _transfer(msg.sender, _to, _value);
    }

allowance keyboard_arrow_up

Parameters help

Name Type
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }

transferFrom keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        _transfer(_from, _to, _value);
        return true;
    }

approve keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function approve(address _spender, uint256 _value) public returns (bool success) {
        require(_value == 0 || allowed[msg.sender][_spender] == 0);
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

transferAndLock keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
    function transferAndLock(address _to, uint256 _value) public returns (bool success) {
        require(msg.sender != 0x0);
        require(_to != 0x0);
        require(now < unlockTime);
        require(msg.sender == crowdsaleAddr || msg.sender == owner || msg.sender == operator);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        lockedBalances[_to] = lockedBalances[_to].add(_value);
        Transfer(msg.sender, _to, _value);
        Lock(_to, _value);
        return true;
    }

transferMultiple keyboard_arrow_up

Parameters help

Name Type
_addrs
address[] help
_values
uint256[] help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferMultiple(address[] _addrs, uint256[] _values) public returns (bool success) {
        return _transferMultiple(msg.sender, _addrs, _values);
    }

transferAndCall keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help
_data
bytes help

Properties

Visibility help public
Mutability help transaction

Requirements help

null
null
Source Code
    function transferAndCall(address _to, uint256 _value, bytes _data) public returns (bool success) {
        return _transferAndCall(msg.sender, _to, _value, _data);
    }

setSignatureChecker keyboard_arrow_up

Parameters help

Name Type
_sigCheckerAddr
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function setSignatureChecker(address _sigCheckerAddr) public {
        require(msg.sender == signatureOwner);
        require(!signatureCheckerFreezed);
        require(signatureChecker != _sigCheckerAddr);
        signatureChecker = SignatureChecker(_sigCheckerAddr);
        SignatureCheckerChanged(_sigCheckerAddr);
    }

freezeSignatureChecker keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
    function freezeSignatureChecker() public {
        require(msg.sender == signatureOwner);
        require(!signatureCheckerFreezed);
        signatureCheckerFreezed = true;
    }

transferDelegated keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help
_maxReward
uint256 help
_claimedReward
uint256 help
_nonce
uint256 help
_signature
bytes help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
    function transferDelegated(
        address _from,
        address _to,
        uint256 _value,
        uint256 _maxReward,
        uint256 _claimedReward,
        uint256 _nonce,
        bytes _signature
    ) isDelegated(_from, _maxReward, _claimedReward, _nonce) public returns (bool success) {
        require(signatureChecker.checkTransferDelegated(_from, _to, _value, _maxReward, _nonce, _signature));
        return _transfer(_from, _to, _value);
    }

transferAndCallDelegated keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help
_data
bytes help
_maxReward
uint256 help
_claimedReward
uint256 help
_nonce
uint256 help
_signature
bytes help

Properties

Visibility help public
Mutability help transaction

Requirements help

null
null
Source Code
    function transferAndCallDelegated(
        address _from,
        address _to,
        uint256 _value,
        bytes _data,
        uint256 _maxReward,
        uint256 _claimedReward,
        uint256 _nonce,
        bytes _signature
    ) isDelegated(_from, _maxReward, _claimedReward, _nonce) public returns (bool success) {
        require(signatureChecker.checkTransferAndCallDelegated(_from, _to, _value, _data, _maxReward, _nonce, _signature));
        return _transferAndCall(_from, _to, _value, _data);
    }

transferMultipleDelegated keyboard_arrow_up

Parameters help

Name Type
_from
address help
_addrs
address[] help
_values
uint256[] help
_maxReward
uint256 help
_claimedReward
uint256 help
_nonce
uint256 help
_signature
bytes help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferMultipleDelegated(
        address _from,
        address[] _addrs,
        uint256[] _values,
        uint256 _maxReward,
        uint256 _claimedReward,
        uint256 _nonce,
        bytes _signature
    ) isDelegated(_from, _maxReward, _claimedReward, _nonce) public returns (bool success) {
        require(signatureChecker.checkTransferMultipleDelegated(_from, _addrs, _values, _maxReward, _nonce, _signature));
        return _transferMultiple(_from, _addrs, _values);
    }

switchDelegate keyboard_arrow_up

Parameters help

Name Type
_allowed
bool help

Properties

Visibility help public
Mutability help transaction
Source Code
    function switchDelegate(bool _allowed) ownerOrOperator public {
        require(allowDelegate != _allowed);
        allowDelegate = _allowed;
    }

addTransferAndCallWhitelist keyboard_arrow_up

Parameters help

Name Type
_contract
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function addTransferAndCallWhitelist(address _contract) ownerOrOperator public {
        require(_isContract(_contract));
        require(!transferAndCallWhitelist[_contract]);
        transferAndCallWhitelist[_contract] = true;
    }

removeTransferAndCallWhitelist keyboard_arrow_up

Parameters help

Name Type
_contract
address help

Properties

Visibility help public
Mutability help transaction
Source Code
    function removeTransferAndCallWhitelist(address _contract) ownerOrOperator public {
        require(transferAndCallWhitelist[_contract]);
        delete transferAndCallWhitelist[_contract];
    }

burn keyboard_arrow_up

Parameters help

Name Type
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function burn(uint256 _value) public {
        balances[msg.sender] = balances[msg.sender].sub(_value);
        supply = supply.sub(_value);
        Transfer(msg.sender, 0x0, _value);
    }

registerCrowdsales keyboard_arrow_up

Parameters help

Name Type
_crowdsaleAddr
address help
_value
uint256 help
_privateFundUnlockTime
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function registerCrowdsales(address _crowdsaleAddr, uint256 _value, uint256 _privateFundUnlockTime) onlyOwner public {
        require(crowdsaleAddr == 0x0);
        require(_crowdsaleAddr != 0x0);
        require(_isContract(_crowdsaleAddr));
        require(_privateFundUnlockTime > now);
        require(_value != 0);
        unlockTime = _privateFundUnlockTime;
        crowdsaleAddr = _crowdsaleAddr;
        supply = supply.add(_value);
        balances[_crowdsaleAddr] = balances[_crowdsaleAddr].add(_value);
        Transfer(0x0, crowdsaleAddr, _value);
    }

registerContributorPool keyboard_arrow_up

Parameters help

Name Type
_contributorPoolAddr
address help
_mintLimit
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function registerContributorPool(address _contributorPoolAddr, uint256 _mintLimit) onlyOwner public {
        require(contributorPoolAddr == 0x0);
        require(_contributorPoolAddr != 0x0);
        require(_isContract(_contributorPoolAddr));
        require(_mintLimit != 0);
        contributorPoolAddr = _contributorPoolAddr;
        contributorPoolMintQuota = _mintLimit;
    }

mintForContributorPool keyboard_arrow_up

Parameters help

Name Type
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function mintForContributorPool(uint256 _value) public {
        require(msg.sender == contributorPoolAddr);
        require(_value != 0);
        contributorPoolMintQuota = contributorPoolMintQuota.sub(_value);
        supply = supply.add(_value);
        balances[msg.sender] = balances[msg.sender].add(_value);
        Transfer(0x0, msg.sender, _value);
    }

registerCreatorsPools keyboard_arrow_up

Parameters help

Name Type
_poolAddrs
address[] help
_mintLimit
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function registerCreatorsPools(address[] _poolAddrs, uint256 _mintLimit) onlyOwner public {
        require(creatorsPoolAddrs.length == 0);
        require(_poolAddrs.length > 0);
        require(_mintLimit > 0);
        for (uint i = 0; i < _poolAddrs.length; ++i) {
            require(_isContract(_poolAddrs[i]));
            creatorsPoolAddrs.push(_poolAddrs[i]);
            isCreatorsPool[_poolAddrs[i]] = true;
        }
        creatorsPoolMintQuota = _mintLimit;
    }

mintForCreatorsPool keyboard_arrow_up

Parameters help

Name Type
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
    function mintForCreatorsPool(uint256 _value) public {
        require(isCreatorsPool[msg.sender]);
        require(_value != 0);
        creatorsPoolMintQuota = creatorsPoolMintQuota.sub(_value);
        supply = supply.add(_value);
        balances[msg.sender] = balances[msg.sender].add(_value);
        Transfer(0x0, msg.sender, _value);
    }