DelegatedShareholderAssociation
/contracts/dao/DelegatedShareholderAssociation.sol

Project Wyvern Developers

event

ChangeOfRules 68259880

inputs0uint256newMinimumQuorum
inputs1uint256newDebatingPeriodInMinutes
inputs2addressnewSharesTokenAddress
event

ProposalAdded 06d6b095

inputs0uint256proposalID
inputs1addressrecipient
inputs2uint256amount
inputs3bytesmetadataHash
event

ProposalTallied 748f0810

inputs0uint256proposalID
inputs1uint256yea
inputs2uint256nay
inputs3uint256quorum
inputs4boolactive
event

ReceivedEther a419615b

inputs0addresssender
inputs1uint256amount
event

ReceivedTokens d65b48fd

inputs0addressfrom
inputs1uint256value
inputs2addresstoken
inputs3bytesextraData
event

TokensDelegated 57593c23

inputs0addressdelegator
inputs1uint256numberOfTokens
inputs2addressdelegate
event

TokensUndelegated ccc924ef

inputs0addressdelegator
inputs1uint256numberOfTokens
inputs2addressdelegate
event

Voted 86abfce9

inputs0uint256proposalID
inputs1boolposition
inputs2addressvoter
fallback, payable

DelegatedShareholderAssociation

function

changeVotingRules 6e676b69

Change voting rules * Make so that proposals need tobe discussed for at least minutesForDebate/60 hours and all voters combined must own more than minimumSharesToPassAVote shares of token sharesAddress to be executed and a shareholder needs sharesToBeBoardMember shares to create a transaction proposal

inputs0uint256minimumSharesToPassAVote

proposal can vote only if the sum of shares held by all voters exceed this number

inputs1uint256minutesForDebate

the minimum amount of delay between when a proposal is made and when it can be executed

inputs2uint256sharesToBeBoardMember

the minimum number of shares required to create proposals

function, constant

checkProposalCode eceb2945

Check if a proposal code matches

inputs0uint256proposalNumber

ID number of the proposal to query

inputs1addressbeneficiary

who to send the ether to

inputs2uint256weiAmount

amount of ether to send

inputs3bytestransactionBytecode

bytecode of transaction

function

clearDelegateAndUnlockTokens 645bd436

Undelegate all delegated tokens Clear the delegate address for all tokens delegated by the sending address, unlocking the locked tokens.

Can only be called by a sending address currently delegating tokens, will transfer all locked tokens back to the sender

outputs0uint256lockedTokens
function, constant

countVotes 1840f0ca

Count the votes, including delegated votes, in support of, against, and in total for a particular proposal

inputs0uint256proposalNumber

proposal number

outputs0uint256yea

votes, nay votes, quorum (total votes)

outputs1uint256nay
outputs2uint256quorum
function, constant

debatingPeriodInMinutes 69bd3436

function, constant

delegatedAmountsByDelegate 3fb3ec28

inputs0address
function, constant

delegatesByDelegator 064cc7a7

inputs0address
function

executeProposal 237e9492

Finish vote * Count the votes proposal #proposalNumber and execute it if approved

inputs0uint256proposalNumber

proposal number

inputs1bytestransactionBytecode

optional: if the transaction contained a bytecode, you need to send it

function, constant

hasVoted 43859632

Return whether a particular shareholder has voted on a particular proposal (convenience function)

inputs0uint256proposalNumber

proposal number

inputs1addressshareholder

address to query

outputs0bool
function, constant

lockedDelegatingTokens 13f47f24

inputs0address
function, constant

minimumQuorum 8160f0b5

function

newProposal dbc45228

Add Proposal * Propose to send weiAmount / 1e18 ether to beneficiary for jobMetadataHash. transactionBytecode ? Contains : Does not contain code.

Submit proposal for the DAO to execute a particular transaction. Submitter should check that the beneficiary account exists, unless the intent is to burn Ether.

inputs0addressbeneficiary

who to send the ether to

inputs1uint256weiAmount

amount of ether to send, in wei

inputs2bytesjobMetadataHash

Hash of job metadata (IPFS)

inputs3bytestransactionBytecode

bytecode of transaction

function, constant

numProposals 400e3949

function, constant

proposals 013cf08b

inputs0uint256
function

receiveApproval 8f4ffcb1

Receive tokens and generate a log event

inputs0addressfrom

Address from which to transfer tokens

inputs1uint256value

Amount of tokens to transfer

inputs2addresstoken

Address of token

inputs3bytesextraData

Additional data to log

function, constant

requiredSharesToBeBoardMember b94fa03f

function

setDelegateAndLockTokens 5fa7df6b

Delegate an amount of tokens Set the delegate address for a specified number of tokens belonging to the sending address, locking the tokens.

An address holding tokens (shares) may only delegate some portion of their vote to one delegate at any one time

inputs0uint256tokensToLock

number of tokens to be locked (sending address must have at least this many tokens)

inputs1addressdelegate

the address to which votes equal to the number of tokens locked will be delegated

function, constant

sharesTokenAddress 27ebcf0e

function, constant

tokenLocker a80bf3e6

function, constant

totalLockedTokens f5c476f9

function

vote c9d27afe

Log a vote for a proposal * Vote supportsProposal? in support of : against proposal #proposalNumber

Vote in favor or against an existing proposal. Voter should check that the proposal destination account exists, unless the intent is to burn Ether.

inputs0uint256proposalNumber

number of proposal

inputs1boolsupportsProposal

either in favor or against it