Contract to handle staking/withdrawing of DGDs for participation in DAO
/contracts/interactive/DaoStakeLocking.sol

Digix Holdings

constructor

DaoStakeLocking

inputs0address_resolver
inputs1address_dgdToken
inputs2address_dgdBadgeToken
inputs3address_carbonVoting1
inputs4address_carbonVoting2
event

LockDGD 31234eaf

inputs0address_user
inputs1uint256_amount
inputs2uint256_currentLockedDGDStake
event

RedeemBadge 212ab1ff

inputs0address_user
event

WithdrawDGD 854445a9

inputs0address_user
inputs1uint256_amount
inputs2uint256_currentLockedDGDStake
function, constant

CONTRACT_ADDRESS db4ecbc1

function, constant

carbonVoting1 9bd71354

function, constant

carbonVoting2 fbc28462

function

confirmContinuedParticipation 74cd7f6d

Function to be called by someone who doesnt change their DGDStake for the next quarter to confirm that they're participating

This can be done in the middle of the quarter as well. If someone just lets their DGDs sit in the DAO, and don't call this function, they are not counted as a participant in the quarter.

function, constant

currentQuarterNumber 7f6a26b6

Get the current quarter index

Quarter indexes starts from 1

outputs0uint256_quarterNumber

the current quarter index

function, constant

currentTimeInQuarter 560a25ea

Get the current relative time in the quarter

For example: the currentTimeInQuarter of the first second of any quarter is 1

outputs0uint256_currentT

the current relative time in the quarter

function, constant

dgdBadgeToken 1b1e53ef

function, constant

dgdToken be6999c4

function, constant

getAddressConfig 1d8ccd04

inputs0bytes32_configKey
function, constant

getBytesConfig 93ddad08

inputs0bytes32_configKey
function, constant

getUintConfig b1e2b9dd

inputs0bytes32_configKey
function, constant

get_contract 3f83acff

Get the address of a contract

inputs0bytes32_key

the resolver key to look up

outputs0address_contract

the address of the contract

function, constant

isDaoNotReplaced d70d9358

Check if the DAO contracts have been replaced by a new set of contracts

outputs0bool_isNotReplaced

true if it is not replaced, false if it has already been replaced

function, constant

isLockingPhase 7d6fed80

Check if it is currently in the locking phase

No governance activities can happen in the locking phase. The locking phase is from t=0 to t=CONFIG_LOCKING_PHASE_DURATION-1

outputs0bool_isLockingPhase

true if it is in the locking phase

function, constant

isMainPhase 68533060

Check if it is currently in a main phase.

The main phase is where all the governance activities could take plase. If the DAO is replaced, there can never be any more main phase.

outputs0bool_isMainPhase

true if it is in a main phase

function, constant

isModerator fa6f3936

Check if a user is a moderator in the current quarter

inputs0address_user
function, constant

isParticipant 929066f5

Check if a user is a participant in the current quarter

inputs0address_user
function, constant

isProposalPaused f94f0f33

Check if a proposal is currently paused/stopped

If a proposal is paused/stopped (by the PRLs): proposer cannot call for voting, a current on-going voting round can still pass, but no funding can be withdrawn.A paused proposal can still be unpausedIf a proposal is stopped, this function also returns true

inputs0bytes32_proposalId
outputs0bool_isPausedOrStopped

true if the proposal is paused(or stopped)

function, constant

key 3943380c

function

lockDGD 14efcd3c

inputs0uint256_amount
function

redeemBadge dda249f5

Function to convert a DGD Badge to Reputation Points

The Badge holder can redeem the Badge anytime in the first quarter, or Otherwise, the participant must either lock/withdraw/continue in the current quarter first, before he can redeem a badge Only 1 DGD Badge is accepted from an address, so holders with multiple badges should either sell their other badges or redeem reputation to another address

function, constant

resolver 04f3bcec

function

withdrawDGD 963cdbfd

Function to withdraw DGD tokens from this contract (can only be withdrawn in the locking phase of quarter)

inputs0uint256_amount

Number of DGD tokens to withdraw