🇺🇸
Protocol
HubSoTWTutorialPartners
ENG
ENG
  • Otherworld's Protocol
  • Smart Contracts
    • Providing Contract
    • Currency Contract
    • Milestone Contract
    • NFT(ERC-721) Contract
    • Minting Contract
    • Offering Contract
    • OD Contract
    • ERD Contract
    • Market Contract
    • oKLAY(ERC-20) Contract
    • Governance Power Contract
    • Proxy Contract
  • PROVIDING - DIMENSION
    • Providing
      • Project
      • Universe
      • Collection
      • Item
      • Milestone
      • Milestone-Comment
    • R&R
      • Player
      • Provider
      • Operator
      • Associator
      • Creator
    • DAO Fund
    • Currency
      • Service Currency
      • Project Currency
    • Launchpad
      • Offering
      • Round
      • Whitelist
      • Minting
    • Marketplace
      • Exchange
      • List
      • Offer
      • Effect of Proposal
      • Market Fee
      • Royalty
    • Governance
      • Governance Power
      • Governance Standard
    • License
      • License A : Full Access
      • License Standard
  • SOCIAL-DIMENSION
    • Other Wallet
    • Other Board
    • Other Channel
    • Other Messenger
    • Gamification
  • DAO-TOOL AS A SERVICE
    • Open Governance
    • Open Launchpad
    • Open Marketplace
    • Open Providing
Powered by GitBook
On this page
  • Address
  • Summary
  • Data
  • Base
  • Offering
  • Timestamp
  • Whitelist MerkleRoot
  • Minting Count
  • Interface
  1. Smart Contracts

Offering Contract

Address

Address : (not yet deployed)

on Klaytn Blockchain Main-net

Summary

The Offering Contract defines the ruless of the offering for minting in the Otherworld Collection.

  • Defines the 'offering' details.

    • Offerings are included in one collection.

    • Defines the currency applied to the offering.

    • Defines the supply.

    • Defines prices.

    • Defines the maximum amount of supply that can be purchased in an account.

    • Defines the Provider supply.

    • Defines the Operator supply.

    • Defines the Associator supply.

    • Defines the Creator Supply.

    • Defines the DAO supply.

    • Defines the whitelist supply.

    • Defines the public supply.

  • Defines the 'timestamp' details of the offering.

    • Defines the start time of the offering.

    • Defines the whitelist end time.

    • Defines the end time of the offering.

  • Defines the 'whitelist' details of the offering.

    • Defines the root value of the Merkle tree to validate the whitelist.

  • Defines the 'Minting Count' details of the offering.

    • Defines the total amount of minting.

    • Defines the Provider minting amount.

    • Defines the Operator minting amount.

    • Defines the Associator minting amount.

    • Defines the Creator minting amount.

    • Defines the DAO minting amount.

    • Defines the whitelist minting amount.

    • Defines the public minting amount.

    • Defines the remaining minting amount

Data

Base

Name
Type

Created Timestamp

Uint

Offering

Name
Type

ID

Uint

Collection ID

Uint

Currency ID

Uint

Supply

Uint

Price

Uint

Account Max Supply

Uint

Supply to Provider

Uint

Supply to Operator

Uint

Supply to Associator

Uint

Supply to Creator

Uint

Supply to DAO

Uint

Supply to Whitelist

Uint

Supply to Public

Uint

Timestamp

Name
Type

Offering ID

Uint

Start Timestamp

Uint

Whitelist Expiration Timestamp

Uint

End Timestamp

Uint

Whitelist MerkleRoot

Name
Type

Offering ID

Uint

Merkle Root

Bytes

Minting Count

Name
Type

Offering ID

Uint

Total Minting

Uint

By Provider

Uint

By Operator

Uint

By Associator

Uint

By Creator

Uint

By DAO

Uint

By Whitelist

Uint

By Public

Uint

Remaining

Uint

Interface

interface IOWOffering {
    function addOffering(
        uint256 _collectionId,
        uint256 _currencyId,
        uint256 _supply,
        uint256 _price,
        uint256[6] calldata _supplyTo,
        uint256 _accountMaxSupply,
        uint256 _startTimestamp,
        uint256 _whitelistExpirationTimestamp,
        uint256 _endTimestamp
    ) external;

    function setOfferingCurrency(uint256 _offeringId, uint256 _currencyId)
        external;

    function setOfferingSupply(
        uint256 _offeringId,
        uint256 _supply,
        uint256[6] calldata _supplyTo
    ) external;

    function setOfferingAccountMaxSupply(
        uint256 _offeringId,
        uint256 _accountMaxSupply
    ) external;

    function setOfferingPrice(uint256 _offeringId, uint256 _price) external;

    function setOfferingTimestamp(
        uint256 _offeringId,
        uint256 _startTimestamp,
        uint256 _whitelistExpirationTimestamp,
        uint256 _endTimestamp
    ) external;

    function removeOffering(uint256 _offeringId) external;

    function isExistOfferingById(uint256 _offeringId)
        external
        view
        returns (bool);

    function getOfferingIdOfCollection(uint256 _collectionId)
        external
        view
        returns (uint256[] memory);

    function getOfferingOfCollection(uint256 _collectionId)
        external
        view
        returns (OfferingBase.Offering[] memory);

    function getOfferingById(uint256 _offeringId)
        external
        view
        returns (OfferingBase.Offering memory, OfferingBase.Timestamp memory);

    function getMintingCountByOfferingId(uint256 _offeringId)
        external
        view
        returns (OfferingBase.MintingCount memory);

    function getMintingCountByMintingType(
        uint256 _offeringId,
        OfferingBase.MintingType _type
    ) external view returns (uint256);

    function getAccountMintingCount(uint256 _offeringId, address _account)
        external
        view
        returns (uint256);

    function setMintingCount(
        uint256 _offeringId,
        uint256 _amount,
        OfferingBase.MintingType _type
    ) external;

    function setAccountMintingCount(
        uint256 _offeringId,
        uint256 _amount,
        address _account
    ) external;

    function setWhitelistMerkleRoot(uint256 _offeringId, bytes32 _merkleRoot)
        external;

    function getWhitelistMerkleRoot(uint256 _offeringId)
        external
        view
        returns (bytes32);

    function isWhitelist(
        uint256 _offeringId,
        address _account,
        bytes32[] calldata _merkleProof
    ) external view returns (bool);
}
PreviousMinting ContractNextOD Contract

Last updated 2 years ago