Guest User

Untitled

a guest
Jun 21st, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. // user
  2. struct User {
  3. uint UserListPointer; // needed to delete a "User"
  4. bytes32[] AccountKeys; // User has many "Account"s
  5. mapping(bytes32 => uint) AccountKeyPointers;
  6. //User properties
  7. bytes32 userName;
  8. }
  9.  
  10. mapping(address => User) private Users;
  11. address[] private UserList;
  12.  
  13. event UserRegistered_Successful(address userAddress, bytes32 userName);
  14.  
  15. /**
  16. * @dev Function to check if _userAddress exist
  17. * @param _userAddress the address to check if it exist.
  18. * @return boolean flag if _userAddress exist.
  19. */
  20. function isUser(address _userAddress) public view returns(bool isIndeed) {
  21. if(UserList.length==0) return false;
  22. return UserList[Users[_userAddress].UserListPointer]==_userAddress;
  23. }
  24.  
  25. /**
  26. * @dev Function to register User
  27. * @param _userName the bytes32 to insert userName.
  28. * @return boolean flag if register success.
  29. */
  30. function registerUser(bytes32 _userName) public returns (bool isIndeed) {
  31. if(isUser(msg.sender)) revert(); // duplicate user prohibited
  32. Users[msg.sender].ListPointer = UserList.push(msg.sender)-1;
  33. Users[msg.sender].userName = _userName;
  34.  
  35. UserRegistered_Successful(msg.sender, _userName);
  36. return true;
  37. }
Add Comment
Please, Sign In to add comment