Blockwell

Omnitude Token

ERC20

This contract is an ERC20 token.

Name Omnitude Token
Symbol ECOM
Decimals 18
Total Supply 74,413,301 ECOM

About link

Omnitude (ECOM) is a cryptocurrency token and operates on the Ethereum platform. Omnitude has a current supply of 74,413,301.337 with 64,813,301.337 in circulation. The last known price of Omnitude is $0.002856 USD and is down -4.20% over the last 24 hours. It is currently trading on 2 active market(s) with $464,483.236 traded over the last 24 hours. More information can be found at https://omnitude.tech/.

Stats

Public Functions 9
Event Types 3
Code Size 14,865 bytes

Approval Event

Parameters help
owner
address help
spender
address help
value
uint256 help

Burn Event

Parameters help
burner
address help
value
uint256 help

Transfer Event

Parameters help
from
address help
to
address help
value
uint256 help

Functions Expand All Collapse All

balanceOf keyboard_arrow_up

Parameters help

Name Type
_owner
address help

Properties

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

transfer keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transfer(address _to, uint256 _value) public returns (bool) {
        if(msg.sender != owner && !tokenSaleClosed) return false;
        return super.transfer(_to, _value);
    }

allowance keyboard_arrow_up

Parameters help

Name Type
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help view
Source Code
    function allowance(address _owner, address _spender) public view 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) {
        if(msg.sender != owner && !tokenSaleClosed) return false;
        return super.transferFrom(_from, _to, _value);
    }

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) {
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

increaseApproval keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_addedValue
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function increaseApproval (address _spender, uint _addedValue) public returns (bool success) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
        Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

decreaseApproval keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_subtractedValue
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function decreaseApproval (address _spender, uint _subtractedValue) public returns (bool success) {
        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

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 {
        require(_value > 0);
        require(_value <= balances[msg.sender]);
        // no need to require value <= totalSupply, since that would imply the
        // sender's balance is greater than the totalSupply, which *should* be an assertion failure

        address burner = msg.sender;
        balances[burner] = balances[burner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        Burn(burner, _value);
    }

close keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
    function close() public onlyOwner beforeEnd {
        /// burn everything unsold
        uint256 saleTokensToBurn = balances[owner];
        balances[owner] = 0;
        totalSupply = totalSupply.sub(saleTokensToBurn);
        Burn(owner, saleTokensToBurn);

        /// Foundation tokens - 33M
        uint256 foundationTokens = 33000000 * 10**uint256(decimals);
        totalSupply = totalSupply.add(foundationTokens);
        balances[foundationAddress] = foundationTokens;

        /// Lock team tokens - 12M
        uint256 teamTokens = 12000000 * 10**uint256(decimals);
        totalSupply = totalSupply.add(teamTokens);

        /// YEAR 1 - 2.4M
        uint256 teamTokensY1 = 2400000 * 10**uint256(decimals);
        /// team tokens are locked until this date (01.01.2019)
        TokenTimelock year1Lock = new TokenTimelock(this, omniTeamAddress, date01Jan2019);
        year1LockAddress = address(year1Lock);
        balances[year1LockAddress] = teamTokensY1;

        /// YEAR 2 - 2.4M
        uint256 teamTokensY2 = 2400000 * 10**uint256(decimals);
        /// team tokens are locked until this date (01.01.2020)
        TokenTimelock year2Lock = new TokenTimelock(this, omniTeamAddress, date01Jan2020);
        year2LockAddress = address(year2Lock);
        balances[year2LockAddress] = teamTokensY2;

        /// YEAR 3 - 2.4M
        uint256 teamTokensY3 = 2400000 * 10**uint256(decimals);
        /// team tokens are locked until this date (01.01.2021)
        TokenTimelock year3Lock = new TokenTimelock(this, omniTeamAddress, date01Jan2021);
        year3LockAddress = address(year3Lock);
        balances[year3LockAddress] = teamTokensY3;

        /// YEAR 4 - 2.4M
        uint256 teamTokensY4 = 2400000 * 10**uint256(decimals);
        /// team tokens are locked until this date (01.01.2022)
        TokenTimelock year4Lock = new TokenTimelock(this, omniTeamAddress, date01Jan2022);
        year4LockAddress = address(year4Lock);
        balances[year4LockAddress] = teamTokensY4;

        /// YEAR 5 - 2.4M
        uint256 teamTokensY5 = 2400000 * 10**uint256(decimals);
        /// team tokens are locked until this date (01.01.2023)
        TokenTimelock year5Lock = new TokenTimelock(this, omniTeamAddress, date01Jan2023);
        year5LockAddress = address(year5Lock);
        balances[year5LockAddress] = teamTokensY5;

        tokenSaleClosed = true;
    }