visual-identity/contracts/common/Controlled.sol

23 lines
605 B
Solidity
Raw Normal View History

2018-04-23 05:04:49 +00:00
pragma solidity ^0.4.23;
2018-04-23 04:58:58 +00:00
contract Controlled {
/// @notice The address of the controller is the only address that can call
/// a function with this modifier
modifier onlyController {
require(msg.sender == controller);
_;
}
address public controller;
2018-04-23 05:04:49 +00:00
constructor() public {
2018-04-23 04:58:58 +00:00
controller = msg.sender;
}
/// @notice Changes the controller of the contract
/// @param _newController The new controller of the contract
function changeController(address _newController) public onlyController {
controller = _newController;
}
}