Blockwell

I9Coin

ERC20

This contract is an ERC20 token.

Name I9Coin
Symbol I9C
Decimals 8
Total Supply 210,000,000 I9C

About link

i9 Coin (I9C) is a cryptocurrency and operates on the Ethereum platform. i9 Coin has a current supply of 0. The last known price of i9 Coin is 0.00064061 USD and is down -32.04 over the last 24 hours. It is currently trading on 1 active market(s) with $43.66 traded over the last 24 hours. More information can be found at http://i9coin.org.

Stats

Public Functions 8
Event Types 2
Code Size 7,510 bytes

Events (2) keyboard_arrow_up

Approval Event

Parameters help
_owner
address help
_spender
address help
_value
uint256 help

Transfer Event

Parameters help
_from
address help
_to
address help
_value
uint256 help

name Variable

string help

decimals Variable

uint8 help

symbol Variable

string help

version Variable

string help

unitsOneEthCanBuy Variable

uint256 help

totalEthInWei Variable

uint256 help

fundsWallet Variable

address help

totalSupply Variable

uint256 help

balances Variable

mapping(address => uint256) help
Internal Variable

allowed Variable

mapping(address => mapping(address => uint256)) help
Internal Variable

Functions Expand All Collapse All

Parameters help

This function has no parameters.

Properties

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

Parameters help

Name Type
_owner
address help

Properties

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

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) returns (bool success) {
  //Default assumes totalSupply can't be over max (2^256 - 1).
  //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap.
  //Replace the if with this one instead.
  //if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
  if (balances[msg.sender] >= _value && _value > 0) {
    balances[msg.sender] -= _value;
    balances[_to] += _value;
    Transfer(msg.sender, _to, _value);
    return true;
  } else {
    return false;
  }
}

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function transferFrom(
  address _from,
  address _to,
  uint256 _value
) returns (bool success) {
  //same as above. Replace this line with the following if you want to protect against wrapping uints.
  //if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
  if (
    balances[_from] >= _value &&
    allowed[_from][msg.sender] >= _value &&
    _value > 0
  ) {
    balances[_to] += _value;
    balances[_from] -= _value;
    allowed[_from][msg.sender] -= _value;
    Transfer(_from, _to, _value);
    return true;
  } else {
    return false;
  }
}

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

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)
  constant
  returns (uint256 remaining)
{
  return allowed[_owner][_spender];
}

constructor keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help payable
Source Code
function() payable {
  totalEthInWei = totalEthInWei + msg.value;
  uint256 amount = msg.value * unitsOneEthCanBuy;
  require(balances[fundsWallet] >= amount);

  balances[fundsWallet] = balances[fundsWallet] - amount;
  balances[msg.sender] = balances[msg.sender] + amount;

  Transfer(fundsWallet, msg.sender, amount); // Broadcast a message to the blockchain

  //Transfer ether to fundsWallet
  fundsWallet.transfer(msg.value);
}

approveAndCall keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_value
uint256 help
_extraData
bytes help

Properties

Visibility help public
Mutability help transaction
Source Code
function approveAndCall(
  address _spender,
  uint256 _value,
  bytes _extraData
) returns (bool success) {
  allowed[msg.sender][_spender] = _value;
  Approval(msg.sender, _spender, _value);

  //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this.
  //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData)
  //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead.
  if (
    !_spender.call(
      bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))),
      msg.sender,
      _value,
      this,
      _extraData
    )
  ) {
    throw;
  }
  return true;
}

Internal Functions Expand All Collapse All

Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.