TimeHolder
/contracts/timeholder/TimeHolder.sol

constructor

TimeHolder

inputs0address_store
inputs1bytes32_crate
event

Deposit 5548c837

inputs0addresstoken
inputs1addresswho
inputs2uint256amount
event

Error 9cf38cf2

inputs0addressself
inputs1uint256errorCode
event

FeatureFeeTaken 2943030e

inputs0addressself
inputs1addressfrom
inputs2addressto
inputs3uint256amount
event

ListenerAdded f8748b04

inputs0addresslistener
inputs1addresstoken
event

ListenerRemoved ec2210f0

inputs0addresslistener
inputs1addresstoken
event

SharesWhiteListAdded 0c5b936f

inputs0addresstoken
event

SharesWhiteListChanged 360225f7

inputs0addresstoken
inputs1uint256limit
inputs2boolisAdded
event

WithdrawShares 144845ee

inputs0addresstoken
inputs1addresswho
inputs2uint256amount
inputs3addressreceiver
function

addListener 024c4199

Adds provided listener to observe changes of passed symbol when some amount will be deposited/withdrawn. Checks passed listener for HolderListenerInterface compatibility.

Allowed only for CBEs

inputs0address_token

token symbol to watch deposits and withdrawals

inputs1address_listener

address of a listener to add

function

allowShares 5882a548

Adds ERC20-compatible token symbols and put them in the whitelist to be used then as shares for other contracts and allow users to deposit for this share.

Allowed only for CBEs

inputs0address[]_whitelist

list of token addresses that will be allowed to be deposited in TimeHolder

inputs1uint256[]_limits

list of limits

function

changeContractOwnership 557f4bc9

Prepares ownership pass. * Can only be called by current owner.

inputs0address_to

address of the next owner. 0x0 is not allowed.

outputs0bool
function

claimContractOwnership 4592cd1d

Finalize ownership pass. * Can only be called by pending owner.

outputs0bool
function, constant

contractOwner ce606ee0

function, constant

contractsManager 53253d31

function, constant

defaultShareholdersCount 3253fcc8

Number of shareholders

outputs0uint256
function

denyShares 5d1be4ac

Removes ERC20-compatible token symbols from TimeHolder so they will be removed from the whitelist and will not be accessible to be used as shares. All deposited amounts still will be available to withdraw.

Allowed only for CBEs

inputs0address[]_blacklist

list of token addresses that will be removed from TimeHolder

function

deposit 47e7ef24

Deposits shares with provided symbol and prove possesion. Amount should be less than or equal to current allowance value. /// Proof should be repeated for each active period. To prove possesion without depositing more shares, specify 0 amount.

inputs0address_token

token address for shares

inputs1uint256_amount

amount of shares to deposit, or 0 to just prove.

outputs0uint256
function, constant

depositBalance 956501bb

Gets shares amount deposited by a particular shareholder.

inputs0address_depositor

shareholder address.

outputs0uint256
function

depositFor b3db428b

Deposit own shares and prove possession for arbitrary shareholder. Amount should be less than or equal to caller current allowance value. /// Proof should be repeated for each active period. To prove possesion without depositing more shares, specify 0 amount. /// This function meant to be used by some backend application to prove shares possesion of arbitrary shareholders.

inputs0address_token

token address for shares

inputs1address_target

to deposit and prove for.

inputs2uint256_amount

amount of shares to deposit, or 0 to just prove.

outputs0uint256
function

destroy 83197ef0

function

emitDeposit 8b7711b4

inputs0addresstoken
inputs1addresswho
inputs2uint256amount
function

emitError df26ca08

inputs0uint256error
function

emitFeatureFeeTaken 9826ad69

inputs0address_from
inputs1address_to
inputs2uint256_amount
function

emitListenerAdded 544a6487

inputs0addresslistener
inputs1addresstoken
function

emitListenerRemoved a191d167

inputs0addresslistener
inputs1addresstoken
function

emitSharesWhiteListChanged e9112e9a

inputs0addresstoken
inputs1uint256limit
inputs2boolisAdded
function

emitWithdrawShares 728994e7

inputs0addresstoken
inputs1addresswho
inputs2uint256amount
inputs3addressreceiver
function, constant

feeWallet f25f4b56

Gets an associated fee wallet for the time holder

function

forceWithdrawShares b59d9f16

Force Withdraw Shares Only CBE members are permited to call this function. Multisig concensus is required to withdraw shares from shareholder "_from" and send it to "_to".

inputs0address_from
inputs1address_token
inputs2uint256_amount
function, constant

getDefaultShares a4d4f0d2

Gets shares contract that is set up as default (usually TIMEs)

function, constant

getDepositBalance 0ae112a4

Gets balance of tokens deposited to TimeHolder

inputs0address_token

token to check

inputs1address_depositor

shareholder address

outputs0uint256_balance

shares amount.

function, constant

getEventsHistory fff10aba

function, constant

getLimitForToken 6680d8c1

Returns deposit/withdraw limit for shares with provided symbol

inputs0address_token

token address to get limit

outputs0uint256
function

init 359ef75b

Init TimeHolder contract.

inputs0address_contractsManager

address.

inputs1address_defaultToken
inputs2address_wallet
inputs3address_feeWallet
inputs4address_erc20DepositStorage
outputs0uint256
function, constant

isAuthorized fe9fbb80

inputs0addresskey
function, constant

isListener aaf38b5a

inputs0address_token
inputs1address_listener
function, constant

lookupManager 4fe59012

Will crash if no manager in the system with given identifier.

Returns manager's address by its identifier (type).

inputs0bytes32_identifier

is a manager's identifier. 0x0 is not allowed.

function, constant

pendingContractOwner 5aa77d3c

function

removeListener 2aa852b3

Removes provided listener from observing changes of passed symbol.

Allowed only for CBEs

inputs0address_token

token symbol to stop watching by a listener

inputs1address_listener

address of a listener to remove

function

setContractsManager 71d3b573

Setter for ContractsManager. Force overrides currect manager.

inputs0address_contractsManager

contracts manager. 0x0 is not allowed.

function

setEventsHistory 6521afd7

inputs0address_eventsHistory
function

setFeeWallet 90d49b9d

Sets fee wallet address.

inputs0address_feeWallet
function, constant

shareholdersCount 6ab3c700

Number of shareholders

inputs0address_token
outputs0uint256
function

takeFeatureFee eca87918

Provides a way to support getting additional fee for using features of the system.

inputs0address_account

holder of deposits, will pay for using a features

inputs1uint256_amount

size of a fee

outputs0uint256resultCode

result code of the operation

function, constant

totalShares bf6b874e

Total amount of shares for provided symbol

inputs0address_token

token address to check total shares amout

outputs0uint256
function

transferContractOwnership a843c51f

Direct ownership pass without change/claim pattern. Can be invoked only by current contract owner

inputs0address_to

the next contract owner

outputs0bool
function, constant

wallet 521eb273

Gets an associated wallet for the time holder

function

withdrawShares a92ec968

Withdraw shares from the contract, updating the possesion proof in active period.

inputs0address_token

token symbol to withdraw from.

inputs1uint256_amount

amount of shares to withdraw.

outputs0uint256resultCode

result code of an operation.

function

withdrawnTokens d8f9659b

inputs0address[]tokens
inputs1address_to