Skip to content

Instantly share code, notes, and snippets.

@AntonVoronezh
Created September 11, 2024 16:25
Show Gist options
  • Save AntonVoronezh/c3c4c622c9e5493516b1ffeb051605cf to your computer and use it in GitHub Desktop.
Save AntonVoronezh/c3c4c622c9e5493516b1ffeb051605cf to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.22+commit.4fc1097e.js&optimize=false&runs=200&gist=
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract RegisterDomainName{
struct DomainName {
address itemAddress;
uint itemDate;
uint itemPrice;
}
mapping(string => DomainName) public registeredDomains;
function buyDomainName(string memory _domainName) public payable {
DomainName memory item = DomainName({
itemAddress: msg.sender,
itemDate: block.timestamp,
itemPrice: msg.value
});
registeredDomains[_domainName] = item;
}
function getAddressByDomainName(string memory _domainName) public view returns(address) {
return registeredDomains[_domainName].itemAddress;
}
function withdrawMoney() public {
address payable receiver = payable(msg.sender);
uint balance = address(this).balance;
receiver.transfer(balance);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment