Contract to claim voting results
/contracts/interactive/DaoVotingClaims.sol

Digix Holdings

constructor

DaoVotingClaims

inputs0address_resolver
function, constant

CONTRACT_ADDRESS db4ecbc1

function

claimDraftVotingResult 90e353df

Function to claim the draft voting result (can only be called by the proposal proposer)

The founder/or anyone is supposed to call this function after the claiming deadline has passed, to clean it up and close this proposal. If this voting fails, the collateral will be refunded

inputs0bytes32_proposalId

ID of the proposal

inputs1uint256_operations

Number of operations to do in this call

outputs0bool_passed

Boolean, true if the draft voting has passed, false if the claiming deadline has passed or the voting has failed

outputs1bool_done

Boolean, true if the calculation has finished

function

claimProposalVotingResult 3d554f39

Function to claim the voting round results

This function has two major steps: - Counting the votes + There is no need for this step if there are some conditions that makes the proposal auto failed + The number of operations needed for this step is the number of participants in the quarter - Calculating the bonus for the voters in the preceding round + We can skip this step if this is the Voting round 0 (there is no preceding voting round to calculate bonus) + The number of operations needed for this step is the number of participants who voted "correctly" in the preceding voting round Step 1 will have to finish first before step 2. The proposer is supposed to call this function repeatedly, until _done is true If the voting round fails, the collateral will be returned back to the proposer

inputs0bytes32_proposalId

ID of the proposal

inputs1uint256_index

Index of the voting round

inputs2uint256_operations

Number of operations to do in this call

outputs0bool_passed

Boolean, true if the voting round passed, false if failed

outputs1bool_done
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

getAddressConfig 1d8ccd04

inputs0bytes32_configKey
function, constant

getBytesConfig 93ddad08

inputs0bytes32_configKey
function, constant

getInterResultKeyForBonusCalculation c66c9efd

inputs0bytes32_proposalId
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, constant

resolver 04f3bcec