Strawberry-Pizza / ICO2.0

This repository has moved to https://github.com/decipherhub/ICO2.0
GNU General Public License v3.0
3 stars 3 forks source link

how to use the ownership contract #1

Closed jw-pyo closed 6 years ago

jw-pyo commented 6 years ago

In our current code work, we use the ownership contract(Ownable.sol) as follows.

 contract A is Ownable {
   }

  contract B is Ownable {
   }

However, I think we would fix this structure in our ICO2.0 system, using global ownership, not inheritance because of following reasons:

}



Is there any reasonable answer? I think there are three possible ways: 

1. erase the fund_address in Ownable.sol and keep the origin way
2. make a global-ownable
3. keep the origin way, and set the fund_address in each contract

Which way is the best solution?
JhChoy commented 6 years ago

I think 2 is the most convenient way. However, we just have few deploying contracts which need ownership and they need different ownership. So, we should divide them strictly. IncentivePool : just controlled by address of Fund.sol ( X need Ownable, just local modifier) Tokens : doesn't need CrowdSale : developers Fund : developers VotingFactory : developers Votings : I think they don't need. Just make local modifier which controlled by Factory.

So, we just need one Ownable contract which controlled by on owner and developers. Perhaps, this contract would be created with their team wallet which could be multi-sig contract wallet.

JhChoy commented 6 years ago

Done new Members.sol : control dev members and owner Ownable.sol : just modifier, import Members members