Advertisement
Guest User

Untitled

a guest
Apr 30th, 2016
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. contract Token {
  2.     event Transfer(address indexed from, address indexed to, uint256 value);
  3.     function transfer(address _to, uint256 _value);
  4.     function balanceOf(address) returns (uint256);
  5. }
  6.  
  7. contract owned {
  8.     address public owner;
  9.  
  10.     function owned() {
  11.         owner = msg.sender;
  12.     }
  13.  
  14.     modifier onlyOwner {
  15.         if (msg.sender != owner) throw;
  16.         _
  17.     }
  18.  
  19.     function transferOwnership(address newOwner) onlyOwner {
  20.         owner = newOwner;
  21.     }
  22. }
  23.  
  24. contract TokenSale is owned {
  25.  
  26.     address public asset;
  27.    
  28.     uint256 public price;
  29.  
  30.     function TokenSale(
  31.         address _asset,
  32.         uint256 _price)
  33.     {
  34.           asset = _asset;
  35.           price = _price;
  36.     }
  37.  
  38.  
  39.     function transfer_token(address _token, address _to, uint256 _value)
  40.     onlyOwner()
  41.     {
  42.         Token(_token).transfer(_to,_value);
  43.     }
  44.  
  45.     function transfer_eth(address _to, uint256 _value)
  46.     onlyOwner()
  47.     {
  48.         if(this.balance >= _value) {
  49.                     _to.send(_value);
  50.                 }
  51.     }
  52.  
  53.     function () {
  54.  
  55.         uint order   = msg.value / price;
  56.  
  57.         if(order == 0) throw;
  58.        
  59.         uint256 balance = Token(asset).balanceOf(address(this));
  60.  
  61.         if(balance == 0) throw;
  62.  
  63.         if(order > balance )
  64.         {
  65.             order = balance;
  66.             uint256 change = msg.value - order * price;
  67.             msg.sender.send(change);
  68.         }
  69.  
  70.         Token(asset).transfer(msg.sender,order);
  71.         }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement