Professional Documents
Culture Documents
DhgqYR-Lxvg 3e270b
DhgqYR-Lxvg 3e270b
0;
contract Auction {
// Data
//Structure to hold details of the item
struct Item {
uint itemId; // id of the item
uint[] itemTokens; //tokens bid in favor of the item
uint bidderCount=0;//counter
//functions
bidders[bidderCount].personId = bidderCount;
/*
Part 1 Task 4. Implement the three conditions below.
4.1 If the number of tokens remaining with the bidder is < count of
tokens bidded, revert.
4.2 If there are no tokens remaining with the bidder, revert.
4.3 If the id of the item for which bid is placed, is greater than 2,
revert.
tokenDetails[msg.sender].remainingTokens=balance;
bidders[tokenDetails[msg.sender].personId].remainingTokens=balance;//
updating the same balance in bidders map.
// Part 2 Task 1. Create a modifier named "onlyOwner" to ensure that only owner
is allowed to reveal winners
//Hint : Use require to validate if "msg.sender" is equal to the "beneficiary".
modifier onlyOwner {
// ** Start code here. 2 lines approximately. **
require(msg.sender == beneficiary);
_;
//** End code here. **
}
/*
Iterate over all the items present in the auction.
If at least on person has placed a bid, randomly select the
winner */
}
}
}
//Miscellaneous methods: Below methods are used to assist Grading. Please DONOT
CHANGE THEM.
function getPersonDetails(uint id) public constant returns(uint,uint,address){
return (bidders[id].remainingTokens,bidders[id].personId,bidders[id].addr);
}