Blockwell

Digix Gold Token

ERC20

This contract is an ERC20 token.

Name Digix Gold Token
Symbol DGX
Decimals 9
Total Supply 120,400 DGX

About link

Digix Gold Token (DGX) is a cryptocurrency and operates on the Ethereum platform. Digix Gold Token has a current supply of 78,000 with 74,655.61417938 in circulation. The last known price of Digix Gold Token is 48.09749687 USD and is down -3.58 over the last 24 hours. It is currently trading on 21 active market(s) with $8,599.34 traded over the last 24 hours. More information can be found at https://digix.global/dgx.

Stats

Public Functions 16
Event Types 2
Code Size 14,974 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 Constant

string help
Digix Gold Token

symbol Constant

string help
DGX

decimals Constant

uint8 help
9

SECONDS_IN_A_DAY Constant

uint256 help
24 * 60 * 60

ASSET_EVENT_CREATED_VENDOR_ORDER Constant

uint256 help
1

ASSET_EVENT_CREATED_TRANSFER_ORDER Constant

uint256 help
2

ASSET_EVENT_CREATED_REPLACEMENT_ORDER Constant

uint256 help
3

ASSET_EVENT_FULFILLED_VENDOR_ORDER Constant

uint256 help
4

ASSET_EVENT_FULFILLED_TRANSFER_ORDER Constant

uint256 help
5

ASSET_EVENT_FULFILLED_REPLACEMENT_ORDER Constant

uint256 help
6

ASSET_EVENT_MINTED Constant

uint256 help
7

ASSET_EVENT_MINTED_REPLACEMENT Constant

uint256 help
8

ASSET_EVENT_RECASTED Constant

uint256 help
9

ASSET_EVENT_REDEEMED Constant

uint256 help
10

ASSET_EVENT_FAILED_AUDIT Constant

uint256 help
11

ASSET_EVENT_ADMIN_FAILED Constant

uint256 help
12

ASSET_EVENT_REMINTED Constant

uint256 help
13

ROLE_ZERO_ANYONE Constant

uint256 help
0

ROLE_ROOT Constant

uint256 help
1

ROLE_VENDOR Constant

uint256 help
2

ROLE_XFERAUTH Constant

uint256 help
3

ROLE_POPADMIN Constant

uint256 help
4

ROLE_CUSTODIAN Constant

uint256 help
5

ROLE_AUDITOR Constant

uint256 help
6

ROLE_MARKETPLACE_ADMIN Constant

uint256 help
7

ROLE_KYC_ADMIN Constant

uint256 help
8

ROLE_FEES_ADMIN Constant

uint256 help
9

ROLE_DOCS_UPLOADER Constant

uint256 help
10

ROLE_KYC_RECASTER Constant

uint256 help
11

ROLE_FEES_DISTRIBUTION_ADMIN Constant

uint256 help
12

STATE_ZERO_UNDEFINED Constant

uint256 help
0

STATE_CREATED Constant

uint256 help
1

STATE_VENDOR_ORDER Constant

uint256 help
2

STATE_TRANSFER Constant

uint256 help
3

STATE_CUSTODIAN_DELIVERY Constant

uint256 help
4

STATE_MINTED Constant

uint256 help
5

STATE_AUDIT_FAILURE Constant

uint256 help
6

STATE_REPLACEMENT_ORDER Constant

uint256 help
7

STATE_REPLACEMENT_DELIVERY Constant

uint256 help
8

STATE_RECASTED Constant

uint256 help
9

STATE_REDEEMED Constant

uint256 help
10

STATE_ADMIN_FAILURE Constant

uint256 help
11

CONTRACT_INTERACTIVE_ASSETS_EXPLORER Constant

bytes32 help
i:asset:explorer

CONTRACT_INTERACTIVE_DIGIX_DIRECTORY Constant

bytes32 help
i:directory

CONTRACT_INTERACTIVE_MARKETPLACE Constant

bytes32 help
i:mp

CONTRACT_INTERACTIVE_MARKETPLACE_ADMIN Constant

bytes32 help
i:mpadmin

CONTRACT_INTERACTIVE_POPADMIN Constant

bytes32 help
i:popadmin

CONTRACT_INTERACTIVE_PRODUCTS_LIST Constant

bytes32 help
i:products

CONTRACT_INTERACTIVE_TOKEN Constant

bytes32 help
i:token

CONTRACT_INTERACTIVE_BULK_WRAPPER Constant

bytes32 help
i:bulk-wrapper

CONTRACT_INTERACTIVE_TOKEN_CONFIG Constant

bytes32 help
i:token:config

CONTRACT_INTERACTIVE_TOKEN_INFORMATION Constant

bytes32 help
i:token:information

CONTRACT_INTERACTIVE_MARKETPLACE_INFORMATION Constant

bytes32 help
i:mp:information

CONTRACT_INTERACTIVE_IDENTITY Constant

bytes32 help
i:identity

CONTRACT_CONTROLLER_ASSETS Constant

bytes32 help
c:asset

CONTRACT_CONTROLLER_ASSETS_RECAST Constant

bytes32 help
c:asset:recast

CONTRACT_CONTROLLER_ASSETS_EXPLORER Constant

bytes32 help
c:explorer

CONTRACT_CONTROLLER_DIGIX_DIRECTORY Constant

bytes32 help
c:directory

CONTRACT_CONTROLLER_MARKETPLACE Constant

bytes32 help
c:mp

CONTRACT_CONTROLLER_MARKETPLACE_ADMIN Constant

bytes32 help
c:mpadmin

CONTRACT_CONTROLLER_PRODUCTS_LIST Constant

bytes32 help
c:products

CONTRACT_CONTROLLER_TOKEN_APPROVAL Constant

bytes32 help
c:token:approval

CONTRACT_CONTROLLER_TOKEN_CONFIG Constant

bytes32 help
c:token:config

CONTRACT_CONTROLLER_TOKEN_INFO Constant

bytes32 help
c:token:info

CONTRACT_CONTROLLER_TOKEN_TRANSFER Constant

bytes32 help
c:token:transfer

CONTRACT_CONTROLLER_JOB_ID Constant

bytes32 help
c:jobid

CONTRACT_CONTROLLER_IDENTITY Constant

bytes32 help
c:identity

CONTRACT_STORAGE_ASSETS Constant

bytes32 help
s:asset

CONTRACT_STORAGE_ASSET_EVENTS Constant

bytes32 help
s:asset:events

CONTRACT_STORAGE_DIGIX_DIRECTORY Constant

bytes32 help
s:directory

CONTRACT_STORAGE_MARKETPLACE Constant

bytes32 help
s:mp

CONTRACT_STORAGE_PRODUCTS_LIST Constant

bytes32 help
s:products

CONTRACT_STORAGE_GOLD_TOKEN Constant

bytes32 help
s:goldtoken

CONTRACT_STORAGE_JOB_ID Constant

bytes32 help
s:jobid

CONTRACT_STORAGE_IDENTITY Constant

bytes32 help
s:identity

CONTRACT_SERVICE_TOKEN_DEMURRAGE Constant

bytes32 help
sv:tdemurrage

CONTRACT_SERVICE_MARKETPLACE Constant

bytes32 help
sv:mp

CONTRACT_SERVICE_DIRECTORY Constant

bytes32 help
sv:directory

CONTRACT_DEMURRAGE_FEES_DISTRIBUTOR Constant

bytes32 help
fees:distributor:demurrage

CONTRACT_RECAST_FEES_DISTRIBUTOR Constant

bytes32 help
fees:distributor:recast

CONTRACT_TRANSFER_FEES_DISTRIBUTOR Constant

bytes32 help
fees:distributor:transfer

resolver Variable

address help

key Variable

bytes32 help

CONTRACT_ADDRESS Variable

address help

Functions Expand All Collapse All

destroy keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function destroy() public returns (bool _success) {
  bool _is_locked = ContractResolver(resolver).locked();
  require(!_is_locked);

  address _owner_of_contract_resolver = ContractResolver(resolver).owner();
  require(msg.sender == _owner_of_contract_resolver);

  _success = ContractResolver(resolver).unregister_contract(key);
  require(_success);

  selfdestruct(_owner_of_contract_resolver);
}

get_contract keyboard_arrow_up

Parameters help

Name Type
_key
bytes32 help

Properties

Visibility help public
Mutability help constant
Source Code
function get_contract(bytes32 _key)
  public
  constant
  returns (address _contract)
{
  _contract = ContractResolver(resolver).get_contract(_key);
}

log_mint keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_mint(address _to, uint256 _value)
  public
  if_sender_is(CONTRACT_CONTROLLER_ASSETS)
{
  Transfer(address(0x0), _to, _value);
}

log_recast_fees keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_recast_fees(
  address _from,
  address _to,
  uint256 _value
) public if_sender_is(CONTRACT_CONTROLLER_ASSETS_RECAST) {
  Transfer(_from, _to, _value);
}

log_recast keyboard_arrow_up

Parameters help

Name Type
_from
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_recast(address _from, uint256 _value)
  public
  if_sender_is(CONTRACT_CONTROLLER_ASSETS_RECAST)
{
  Transfer(_from, address(0x0), _value);
}

log_demurrage_fees keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_demurrage_fees(
  address _from,
  address _to,
  uint256 _value
) public if_sender_is(CONTRACT_SERVICE_TOKEN_DEMURRAGE) {
  Transfer(_from, _to, _value);
}

log_move_fees keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_move_fees(
  address _from,
  address _to,
  uint256 _value
) public if_sender_is(CONTRACT_CONTROLLER_TOKEN_CONFIG) {
  Transfer(_from, _to, _value);
}

log_transfer keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_transfer(
  address _from,
  address _to,
  uint256 _value
) public if_sender_is(CONTRACT_CONTROLLER_TOKEN_TRANSFER) {
  Transfer(_from, _to, _value);
}

log_approve keyboard_arrow_up

Parameters help

Name Type
_owner
address help
_spender
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function log_approve(
  address _owner,
  address _spender,
  uint256 _value
) public if_sender_is(CONTRACT_CONTROLLER_TOKEN_APPROVAL) {
  Approval(_owner, _spender, _value);
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
function totalSupply() public constant returns (uint256 _total_supply) {
  _total_supply = TokenInfoController(
    get_contract(CONTRACT_CONTROLLER_TOKEN_INFO)
  ).get_total_supply();
}

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) {
  balance = TokenInfoController(get_contract(CONTRACT_CONTROLLER_TOKEN_INFO))
  .get_balance(_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) public returns (bool success) {
  success = TokenTransferController(
    get_contract(CONTRACT_CONTROLLER_TOKEN_TRANSFER)
  ).put_transfer(msg.sender, _to, 0x0, _value, 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
) public returns (bool success) {
  success = TokenTransferController(
    get_contract(CONTRACT_CONTROLLER_TOKEN_TRANSFER)
  ).put_transfer(_from, _to, msg.sender, _value, true);
}

transferAndCall keyboard_arrow_up

Parameters help

Name Type
_receiver
address help
_amount
uint256 help
_data
bytes32 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function transferAndCall(
  address _receiver,
  uint256 _amount,
  bytes32 _data
) public returns (bool success) {
  transfer(_receiver, _amount);
  success = TokenReceiver(_receiver).tokenFallback(msg.sender, _amount, _data);
  require(success);
}

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)
{
  success = TokenApprovalController(
    get_contract(CONTRACT_CONTROLLER_TOKEN_APPROVAL)
  ).approve(msg.sender, _spender, _value);
}

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)
{
  remaining = TokenInfoController(get_contract(CONTRACT_CONTROLLER_TOKEN_INFO))
  .get_allowance(_owner, _spender);
}

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.

internal ResolverClient.init keyboard_arrow_up

Parameters help

Name Type
_key
bytes32 help
_resolver
address help

Properties

Visibility help internal
Mutability help transaction
Source Code
function init(bytes32 _key, address _resolver)
  internal
  returns (bool _success)
{
  bool _is_locked = ContractResolver(_resolver).locked();
  if (_is_locked == false) {
    CONTRACT_ADDRESS = address(this);
    resolver = _resolver;
    key = _key;
    require(
      ContractResolver(resolver).init_register_contract(key, CONTRACT_ADDRESS)
    );
    _success = true;
  } else {
    _success = false;
  }
}

internal ResolverClient.is_locked keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help private
Mutability help constant
Source Code
function is_locked() private constant returns (bool _locked) {
  _locked = ContractResolver(resolver).locked();
}