Add the following features into the contract
-
Add custom referral to the contract with a maximum cap of 20% of the sale price. By default, each user will have a referral percentage of 10%, which can be customized up to 20% for different addresses by the owner.
-
Create two functions to allow the purchase of domains with or without a referral.
-
The sale price of domains should be customizable by the owner of the contract.
-
Add logic to pay referral share in the same buy domain functions.
-
Create a withdraw function to allow the withdrawal of ETH from the contract.
-
Create additional withdrawERC20 function to enable the withdrawal of unwanted ERC20 tokens from the contract.
Optional tasks :
-
Restricting the referral system to only registered domain holders, allowing only existing dotshm domain holders to refer new users.
-
Transfer of domain sale price directly to the Owner in the buy domain function.
-
Create a onlyOwner function that reserves domains free of cost.
Helping Material :
- Interface of minting contract is attached in the repository
How to submit task
-
Fork this repository(Keep it private)
-
Push task to the forked repository
-
Add @dotshm as a contributor to review the task.