Skip to main content

Rewarding contract

Methods​

addCompetition​

function addCompetition(uint256[] avgDESCWinnerRewards, uint256[] sumDESCWinnerRewards, uint256[] sumASCWinnerRewards, uint256 startTimestamp, uint256 endTimestamp) external nonpayable

Parameters​

NameTypeDescription
avgDESCWinnerRewardsuint256[]undefined
sumDESCWinnerRewardsuint256[]undefined
sumASCWinnerRewardsuint256[]undefined
startTimestampuint256undefined
endTimestampuint256undefined

allCompetitions​

function allCompetitions(uint256) external view returns (struct Competitions.WinnersInfo winnersInfo, uint256 startTimestamp, uint256 endTimestamp, uint256 openPredictionsCount, uint256 closedPredictionsCount, uint256 competitorsCount)

Parameters​

NameTypeDescription
_0uint256undefined

Returns​

NameTypeDescription
winnersInfoCompetitions.WinnersInfoundefined
startTimestampuint256undefined
endTimestampuint256undefined
openPredictionsCountuint256undefined
closedPredictionsCountuint256undefined
competitorsCountuint256undefined

approvePredictionsAddress​

function approvePredictionsAddress(address contractAddress, bool approved) external nonpayable

Parameters​

NameTypeDescription
contractAddressaddressundefined
approvedboolundefined

attemptsToFindAvgDESCWinners​

function attemptsToFindAvgDESCWinners(address, uint256) external view returns (uint256 sortedCompetitorsCount)

Parameters​

NameTypeDescription
_0addressundefined
_1uint256undefined

Returns​

NameTypeDescription
sortedCompetitorsCountuint256undefined

attemptsToFindSumASCWinners​

function attemptsToFindSumASCWinners(address, uint256) external view returns (uint256 sortedCompetitorsCount)

Parameters​

NameTypeDescription
_0addressundefined
_1uint256undefined

Returns​

NameTypeDescription
sortedCompetitorsCountuint256undefined

attemptsToFindSumDESCWinners​

function attemptsToFindSumDESCWinners(address, uint256) external view returns (uint256 sortedCompetitorsCount)

Parameters​

NameTypeDescription
_0addressundefined
_1uint256undefined

Returns​

NameTypeDescription
sortedCompetitorsCountuint256undefined

avgDESCWinners​

function avgDESCWinners(uint256 competitionID, uint256 winnerIndex) external view returns (address winner)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
winneraddressundefined

changeDurationToClosePredictions​

function changeDurationToClosePredictions(uint256 newDurationToClosePredictions) external nonpayable

Parameters​

NameTypeDescription
newDurationToClosePredictionsuint256undefined

closePredictionInCompetition​

function closePredictionInCompetition(address competitor, uint256 predictionID, int256 predictionPerformance) external nonpayable

Parameters​

NameTypeDescription
competitoraddressundefined
predictionIDuint256undefined
predictionPerformanceint256undefined

competitionByPrediction​

function competitionByPrediction(address, uint256) external view returns (uint256)

Parameters​

NameTypeDescription
_0addressundefined
_1uint256undefined

Returns​

NameTypeDescription
_0uint256undefined

competitionsBalance​

function competitionsBalance() external view returns (uint256)

Returns​

NameTypeDescription
_0uint256undefined

competitionsCount​

function competitionsCount() external view returns (uint256)

Returns​

NameTypeDescription
_0uint256undefined

competitorAvgPerformance​

function competitorAvgPerformance(uint256 competitionID, address competitor) external view returns (int256)

Parameters​

NameTypeDescription
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
_0int256undefined

competitorClosedPredictionsCount​

function competitorClosedPredictionsCount(uint256 competitionID, address competitor) external view returns (uint256)

Parameters​

NameTypeDescription
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
_0uint256undefined

competitorOpenPredictionsCount​

function competitorOpenPredictionsCount(uint256 competitionID, address competitor) external view returns (uint256)

Parameters​

NameTypeDescription
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
_0uint256undefined

competitorPredictions​

function competitorPredictions(uint256 competitionID, address competitor, uint256 competitorPredictionIndex) external view returns (uint256 predictionID)

Parameters​

NameTypeDescription
competitionIDuint256undefined
competitoraddressundefined
competitorPredictionIndexuint256undefined

Returns​

NameTypeDescription
predictionIDuint256undefined

competitorSumPerformance​

function competitorSumPerformance(uint256 competitionID, address competitor) external view returns (int256)

Parameters​

NameTypeDescription
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
_0int256undefined

currentCompetition​

function currentCompetition() external view returns (uint256)

Returns​

NameTypeDescription
_0uint256undefined

durationToClosePredictions​

function durationToClosePredictions() external view returns (uint256)

Returns​

NameTypeDescription
_0uint256undefined

findAvgDESCWinners​

function findAvgDESCWinners(uint256 competitionID, address[] partOfSortedCompetitors) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
partOfSortedCompetitorsaddress[]undefined

findSumASCWinners​

function findSumASCWinners(uint256 competitionID, address[] partOfSortedCompetitors) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
partOfSortedCompetitorsaddress[]undefined

findSumDESCWinners​

function findSumDESCWinners(uint256 competitionID, address[] partOfSortedCompetitors) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
partOfSortedCompetitorsaddress[]undefined

getSumOfRewards​

function getSumOfRewards(uint256 competitionID) external view returns (uint256)

Parameters​

NameTypeDescription
competitionIDuint256undefined

Returns​

NameTypeDescription
_0uint256undefined

getTrustedForwarder​

function getTrustedForwarder() external view returns (address)

⚠️ Warning ⚠️ The Forwarder can have a full control over your Recipient. Only trust verified Forwarder.Method is not a required method to allow Recipients to trust multiple Forwarders. Not recommended yet.

Returns​

NameTypeDescription
_0addressThe address of the Forwarder contract that is being used.

isAvgDESCWinnerRewardAlreadySend​

function isAvgDESCWinnerRewardAlreadySend(uint256 competitionID, uint256 winnerIndex) external view returns (bool isWinnerRewardAlreadySend)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
isWinnerRewardAlreadySendboolundefined

isCompetitionEnded​

function isCompetitionEnded(uint256 competitionID) external view returns (bool)

Parameters​

NameTypeDescription
competitionIDuint256undefined

Returns​

NameTypeDescription
_0boolundefined

isCompetitionNeverStarted​

function isCompetitionNeverStarted(uint256 competitionID) external view returns (bool)

Parameters​

NameTypeDescription
competitionIDuint256undefined

Returns​

NameTypeDescription
_0boolundefined

isCompetitionReadyToReward​

function isCompetitionReadyToReward(uint256 competitionID) external view returns (bool)

Parameters​

NameTypeDescription
competitionIDuint256undefined

Returns​

NameTypeDescription
_0boolundefined

isCompetitorAlreadyAvgDESCSorted​

function isCompetitorAlreadyAvgDESCSorted(address finder, uint256 competitionID, address competitor) external view returns (bool isCompetitorAlreadySorted)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
isCompetitorAlreadySortedboolundefined

isCompetitorAlreadySumASCSorted​

function isCompetitorAlreadySumASCSorted(address finder, uint256 competitionID, address competitor) external view returns (bool isCompetitorAlreadySorted)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
isCompetitorAlreadySortedboolundefined

isCompetitorAlreadySumDESCSorted​

function isCompetitorAlreadySumDESCSorted(address finder, uint256 competitionID, address competitor) external view returns (bool isCompetitorAlreadySorted)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitoraddressundefined

Returns​

NameTypeDescription
isCompetitorAlreadySortedboolundefined

isPredictionsAddressApproved​

function isPredictionsAddressApproved(address) external view returns (bool)

Parameters​

NameTypeDescription
_0addressundefined

Returns​

NameTypeDescription
_0boolundefined

isSumASCWinnerRewardAlreadySend​

function isSumASCWinnerRewardAlreadySend(uint256 competitionID, uint256 winnerIndex) external view returns (bool isWinnerRewardAlreadySend)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
isWinnerRewardAlreadySendboolundefined

isSumDESCWinnerRewardAlreadySend​

function isSumDESCWinnerRewardAlreadySend(uint256 competitionID, uint256 winnerIndex) external view returns (bool isWinnerRewardAlreadySend)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
isWinnerRewardAlreadySendboolundefined

isTrustedForwarder​

function isTrustedForwarder(address forwarder) external view returns (bool)

⚠️ Warning ⚠️ The Forwarder can have a full control over your Recipient. Only trust verified Forwarder.

Parameters​

NameTypeDescription
forwarderaddressThe address of the Forwarder contract that is being used.

Returns​

NameTypeDescription
_0boolisTrustedForwarder true if the Forwarder is trusted to forward relayed transactions by this Recipient.

l2ERC20SanToken​

function l2ERC20SanToken() external view returns (contract IERC20)

Returns​

NameTypeDescription
_0contract IERC20undefined

openPredictionInCompetition​

function openPredictionInCompetition(address competitor, uint256 predictionID) external nonpayable

Parameters​

NameTypeDescription
competitoraddressundefined
predictionIDuint256undefined

owner​

function owner() external view returns (address)

Returns the address of the current owner.

Returns​

NameTypeDescription
_0addressundefined

previousCompetition​

function previousCompetition() external view returns (uint256)

Returns​

NameTypeDescription
_0uint256undefined

renounceOwnership​

function renounceOwnership() external nonpayable

Leaves the contract without owner. It will not be possible to call onlyOwner functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.

sendAvgDESCRewards​

function sendAvgDESCRewards(uint256 competitionID, uint256 fromIndex, uint256 toIndex) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
fromIndexuint256undefined
toIndexuint256undefined

sendSumASCRewards​

function sendSumASCRewards(uint256 competitionID, uint256 fromIndex, uint256 toIndex) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
fromIndexuint256undefined
toIndexuint256undefined

sendSumDESCRewards​

function sendSumDESCRewards(uint256 competitionID, uint256 fromIndex, uint256 toIndex) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined
fromIndexuint256undefined
toIndexuint256undefined

setAvgDESCWinners​

function setAvgDESCWinners(uint256 competitionID) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined

setCurrentCompetition​

function setCurrentCompetition(uint256 newCurrentCompetition) external nonpayable

Parameters​

NameTypeDescription
newCurrentCompetitionuint256undefined

setSumASCWinners​

function setSumASCWinners(uint256 competitionID) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined

setSumDESCWinners​

function setSumDESCWinners(uint256 competitionID) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined

setTrustedForwarder​

function setTrustedForwarder(address forwarder) external nonpayable

Parameters​

NameTypeDescription
forwarderaddressundefined

sortedAvgDESCCompetitors​

function sortedAvgDESCCompetitors(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (address sortedCompetitor)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedCompetitoraddressundefined

sortedAvgDESCPerformances​

function sortedAvgDESCPerformances(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (int256 sortedPerformance)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedPerformanceint256undefined

sortedSumASCCompetitors​

function sortedSumASCCompetitors(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (address sortedCompetitor)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedCompetitoraddressundefined

sortedSumASCPerformances​

function sortedSumASCPerformances(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (int256 sortedPerformance)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedPerformanceint256undefined

sortedSumDESCCompetitors​

function sortedSumDESCCompetitors(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (address sortedCompetitor)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedCompetitoraddressundefined

sortedSumDESCPerformances​

function sortedSumDESCPerformances(address finder, uint256 competitionID, uint256 competitorsIndex) external view returns (int256 sortedPerformance)

Parameters​

NameTypeDescription
finderaddressundefined
competitionIDuint256undefined
competitorsIndexuint256undefined

Returns​

NameTypeDescription
sortedPerformanceint256undefined

sumASCWinners​

function sumASCWinners(uint256 competitionID, uint256 winnerIndex) external view returns (address winner)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
winneraddressundefined

sumDESCWinners​

function sumDESCWinners(uint256 competitionID, uint256 winnerIndex) external view returns (address winner)

Parameters​

NameTypeDescription
competitionIDuint256undefined
winnerIndexuint256undefined

Returns​

NameTypeDescription
winneraddressundefined

transferOwnership​

function transferOwnership(address newOwner) external nonpayable

Transfers ownership of the contract to a new account (newOwner). Can only be called by the current owner.

Parameters​

NameTypeDescription
newOwneraddressundefined

withdrawCompetitionBalance​

function withdrawCompetitionBalance(uint256 competitionID) external nonpayable

Parameters​

NameTypeDescription
competitionIDuint256undefined

Events​

CompetitionBalanceWithdrawn​

event CompetitionBalanceWithdrawn(uint256 indexed competitionID, uint256 indexed sumOfRewards, address indexed owner)

Parameters​

NameTypeDescription
competitionID indexeduint256undefined
sumOfRewards indexeduint256undefined
owner indexedaddressundefined

NewCompetitor​

event NewCompetitor(uint256 indexed competitionID, uint256 predictionID, address indexed competitor)

Parameters​

NameTypeDescription
competitionID indexeduint256undefined
predictionIDuint256undefined
competitor indexedaddressundefined

OwnershipTransferred​

event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

Parameters​

NameTypeDescription
previousOwner indexedaddressundefined
newOwner indexedaddressundefined

PredictionsAddressApproved​

event PredictionsAddressApproved(address indexed contractAddress, bool approved)

Parameters​

NameTypeDescription
contractAddress indexedaddressundefined
approvedboolundefined

Errors​

OwnableInvalidOwner​

error OwnableInvalidOwner(address owner)

The owner is not a valid owner account. (eg. address(0))

Parameters​

NameTypeDescription
owneraddressundefined

OwnableUnauthorizedAccount​

error OwnableUnauthorizedAccount(address account)

The caller account is not authorized to perform an operation.

Parameters​

NameTypeDescription
accountaddressundefined