The functions SantaList::collectPresent
and SantaList::buyPresent
should emit their own events to differentiate what operations are executed in the contract.
SantaList::collectPresent
should emit a NicePresentCollected
or a ExtraNicePresentCollected
depending of the status of the user.
SantaList::buyPresent
should emit a PresentBought
event.
According to the docs - users can have a NICE
, EXTRA_NICE
, NAUGHTY
or UNKNOWN
status but instead of the latter, the Status enum contains a NOT_CHECKED_TWICE
member.
Rename NOT_CHECKED_TWICE
member to UNKNOWN
to match the documentation.
presentReceiver
From the docs:
EXTRA_NICE users can collect their NFT and they are given SantaTokens. The SantaToken is an ERC20 that can be used to buy the NFT for their NAUGHTY or UNKNOWN friends.
But there's no check in SantasList::buyPresent
to verify the status of the receiver.
Check presentReceiver
status.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.