Dagora Payment Splitter NFT factory
DagoraFactory__TokenCreationPaused
error DagoraFactory__TokenCreationPaused()
DagoraFactory__InvalidTier
error DagoraFactory__InvalidTier(uint8 tier, uint8 neededTier)
DagoraFactory__NotDAgoraMembershipsOwnerOrDelegate
error DagoraFactory__NotDAgoraMembershipsOwnerOrDelegate()
DagoraFactory__ExpiredMembership
error DagoraFactory__ExpiredMembership()
DagoraFactory__FailedToCreateContract
error DagoraFactory__FailedToCreateContract()
DagoraPaymentSplitterFactory
NFTParams
struct NFTParams {
string name;
string symbol;
address[] payees;
uint256[] shares;
uint256 mintPrice;
uint256 maxSupply;
uint16 bulkBuyLimit;
string baseURI;
string baseExtension;
address newOwner;
}
isPaused
bool isPaused
Boolean to determine if the contract is paused.
default value is false, contract is not paused on deployment.
dAgoraMembershipsAddress
address dAgoraMembershipsAddress
The address of the dAgoraMemberships contract.
minTier
uint8 minTier
The minimum tier required to create a NFTAPlus contract.
contractsDeployed
uint256 contractsDeployed
the count of all the contracts deployed by the factory
PaymentSplitterCreated
event PaymentSplitterCreated(address newContractAddress, address ownerOf)
userContracts
mapping(address => address[]) userContracts
initialize
function initialize(address _dAgoraMembershipsAddress) public
isNotPaused
modifier isNotPaused()
Modifier to check if the contract is paused.
Reverts if the contract is paused.
canCreate
modifier canCreate(uint256 tokenId, uint8 neededTier)
Modifier to check if the user can create a contract.
Reverts if the user membership tier is not high enough, if the membership is expired, and if the user is not owner of tokenId.
Parameters
tokenId
uint256
The id of the users membership tokenId.
neededTier
uint8
The tier required to create the Contract.
createNFT
function createNFT(struct DagoraPaymentSplitterFactory.NFTParams params, uint256 id) public returns (address)
getUserContracts
function getUserContracts(address _user) external view returns (address[])
Function that returns the deployed contracts by a user.
togglePaused
function togglePaused() external
onlyOwner function to set the paused state of the contract.
setMinTier
function setMinTier(uint8 _minTier) external
onlyOwner function to set the minimum tier required to create a contract.
paymentSharesTotal
function paymentSharesTotal(uint256[] shares_) internal pure returns (uint256)
createNFTImpl
function createNFTImpl(struct DagoraPaymentSplitterFactory.NFTParams params, bytes32 salt) internal returns (address)
_canCreate
function _canCreate(uint256 _id, uint8 _neededTier) internal view returns (bool)
Internal function that checks if a address owns or is a delegate of a membership, and if the membership is valid, and if the membership tier is high enough.
Parameters
_id
uint256
The id of the users membership tokenId.
_neededTier
uint8
The minimum membership tier required to create a contract.
Return Values
[0]
bool
bool True or False.
Last updated
Was this helpful?