From ef3bf9979fc1e70911ce31285a6a0e3640731896 Mon Sep 17 00:00:00 2001 From: Maximilian Meister Date: Sun, 23 Apr 2017 19:56:27 +0200 Subject: [PATCH] add another example contract Signed-off-by: Maximilian Meister --- contracts/blockshaper.sol | 44 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 contracts/blockshaper.sol diff --git a/contracts/blockshaper.sol b/contracts/blockshaper.sol new file mode 100644 index 0000000..5749dcd --- /dev/null +++ b/contracts/blockshaper.sol @@ -0,0 +1,44 @@ +pragma solidity ^0.4.8; + +contract mortal { + address public owner; + + function mortal() { + owner = msg.sender; + } + + modifier onlyOwner { + if (msg.sender != owner) throw; + _; + } + + function kill() onlyOwner { + suicide(owner); + } +} + +contract Blockshaper is mortal { + mapping(address=>Video) public videos; + + event broadcasted(address from, string url); + + struct Video { + string name; + bool active; + uint8 length; + string webmUrl; + uint lastUpdate; + } + + function broadcast(address _userAddress, string _name, bool _active, uint8 _videoLength, string _webmUrl) { + if (_userAddress != msg.sender) throw; + videos[_userAddress] = Video({ + name: _name, + active: _active, + length: _videoLength, + webmUrl: _webmUrl, + lastUpdate: now + }); + broadcasted(_userAddress, _webmUrl); + } +}