Membership

This commit is contained in:
mingda
2020-12-09 20:07:10 +08:00
parent 95665db919
commit d55238d493
2 changed files with 54 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
/*
Copyright 2020 DODO ZOO.
SPDX-License-Identifier: Apache-2.0
*/
pragma solidity 0.6.9;
pragma experimental ABIEncoderV2;
import {Ownable} from "../../lib/Ownable.sol";
import {IPermissionManager} from "../../lib/PermissionManager.sol";
import {IMemSource} from "./MemSourceStake.sol";
contract MemPermission is Ownable {
uint256 public _MEM_LEVEL_THRESHOLD_;
address public _MEM_LEVEL_SOURCE_;
constructor(address memLevelSource, uint256 memLevelThreshold) public {
_MEM_LEVEL_THRESHOLD_ = memLevelThreshold;
_MEM_LEVEL_SOURCE_ = memLevelSource;
}
function isAllowed(address account) external returns (bool) {
return IMemSource(_MEM_LEVEL_SOURCE_).getMemLevel(account) >= _MEM_LEVEL_THRESHOLD_;
}
}

View File

@@ -0,0 +1,27 @@
/*
Copyright 2020 DODO ZOO.
SPDX-License-Identifier: Apache-2.0
*/
pragma solidity 0.6.9;
pragma experimental ABIEncoderV2;
import {Ownable} from "../../lib/Ownable.sol";
import {IMemSource} from "./MemAggregator.sol";
import {IERC20} from "../../intf/IERC20.sol";
contract MemSourceHold is Ownable, IMemSource {
address public _DODO_TOKEN_;
constructor(address dodoToken) public {
_DODO_TOKEN_ = dodoToken;
}
// ============ View Function ============
function getMemLevel(address user) external override returns (uint256) {
return IERC20(_DODO_TOKEN_).balanceOf(user);
}
}