β˜•Admin Functions

Function controlled by ZURF admins

  1. whitelistCurrency()

function whitelistCurrency(
    address _currency, 
    bool isSuperCurrency
  ) external onlyOwner {
Parameter
Type
Description

currency

address

The EVM compatible address of an ERC20 token to be used in the protocol

isSuperCurrency

bool

If used true, the token is whitelisted as a super currency, and promotions using it won't pay any fees. It used false, the token is whitelisted as a normal currency and has to pay fees when promoting posts.

Admins call this function to whitelist currencies into wav3s protocol, so users can fund their posts with these currencies and reward their fans with it.

  1. unlistCurrency()

function unlistCurrency(
    address _currency
   ) external onlyOwner {
Parameter
Type
Description

currency

address

The EVM compatible address of an ERC20 token to be unlisted from the protocol.

Either the currency was whitelisted as a normal or superCurrency, calling unlistCurrency() will prevent users from funding promoted posts with it.

  1. whitelistWav3sTrigger()

function whitelistWav3sTrigger(
    address wav3sTrigger
    ) external onlyOwner {
Parameter
Type
Description

wav3sTrigger

address

The address used by ZURF admins to process actions.

  1. setMultisig()

Parameter
Type
Description

multisig

address

The address of a SAFE multisig account used to store fees of the protocol.

  1. setFees()

Parameter
Type
Description

protocolFee

uint256

The fee expressed in percentage that the protocol will charge from the total budget deposited.

baseFee

uint256

The base fee in native currency the protocol will charge for each funding action.

  1. circuitBreaker()

This function prevents the execution of functions related to users funds, like:

fundWallet, fundAction, processAction, executeRaffle, withdrawActionBudget, withdrawInternalWalletBudget.

It also allow the execution of backdoorCurrency and backdoorNative, emergency functions to withdraw all the funds of the contract in case of extreme circunstances.

  1. withdrawProtocolFees()

This functions withdraws the protocol fees of ERC20 tokens to ZURFs SAFE account.

  1. withdrawProtocolNativeFees()

This functions withdraws the native currency fees to ZURFs SAFE account.

  1. backdoorNative()

Withdraws all the native currency funds from the contract to the SAFE account in extreme cases of emergency.

  1. backdoorCurrency()

Withdraws all the ERC20 token of the input currency from the contract to the SAFE account in extreme cases of emergency.

Last updated