BoardManagement
State Variables
owner
address public owner;
boardMembers
mapping(address => bool) public boardMembers;
boardMemberCount
uint256 public boardMemberCount;
boardProposalCount
uint256 public boardProposalCount;
boardProposals
mapping(uint256 => BoardProposal) public boardProposals;
Functions
onlyOwner
modifier onlyOwner();
onlyBoardMember
modifier onlyBoardMember();
constructor
constructor();
addBoardMember
function addBoardMember(address member) external onlyOwner;
removeBoardMember
function removeBoardMember(address member) external onlyOwner;
createBoardProposal
function createBoardProposal(string memory description, uint256 duration) external onlyBoardMember;
voteOnBoardProposal
function voteOnBoardProposal(uint256 proposalId, bool approve) external onlyBoardMember;
executeBoardProposal
function executeBoardProposal(uint256 proposalId) external onlyBoardMember;
Events
BoardMemberAdded
event BoardMemberAdded(address indexed member);
BoardMemberRemoved
event BoardMemberRemoved(address indexed member);
BoardProposalCreated
event BoardProposalCreated(uint256 indexed proposalId, string description, uint256 deadline);
BoardVoteCast
event BoardVoteCast(uint256 indexed proposalId, address indexed voter, bool approve);
Structs
BoardProposal
struct BoardProposal {
string description;
uint256 deadline;
uint256 approvals;
uint256 rejections;
bool executed;
mapping(address => bool) voted;
}
Last updated
Was this helpful?