From 48e00bd32fe534bbca93da0c4559dfe0adf1ff8e Mon Sep 17 00:00:00 2001 From: Guillaume Lauzier <55703540+guillaumelauzier@users.noreply.github.com> Date: Mon, 20 Feb 2023 09:19:33 +0100 Subject: [PATCH] Update src.js --- .../Dispute Resolution/src.js | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/Contractual obligations/Dispute Resolution/src.js b/Contractual obligations/Dispute Resolution/src.js index e69de29..0f3fa99 100644 --- a/Contractual obligations/Dispute Resolution/src.js +++ b/Contractual obligations/Dispute Resolution/src.js @@ -0,0 +1,32 @@ +pragma solidity ^0.8.0; + +contract SimpleSmartContract { + address public buyer; + address public seller; + address public arbiter; + uint256 public price; + bool public dispute; + bool public settled; + + constructor(address _buyer, address _seller, address _arbiter, uint256 _price) { + buyer = _buyer; + seller = _seller; + arbiter = _arbiter; + price = _price; + dispute = false; + settled = false; + } + + function initiateDispute() public { + require(msg.sender == buyer || msg.sender == seller, "Only the buyer or seller can initiate a dispute"); + + dispute = true; + } + + function settleDispute(address payable recipient) public { + require(msg.sender == arbiter, "Only the arbiter can settle a dispute"); + + settled = true; + recipient.transfer(price); + } +}