git ssb

0+

dangerousbeans / etherstreams



Commit 787b951e7dc923dce3d3c88e2d38cb36c75a765b

checkpoint

Joran committed on 10/13/2017, 7:04:07 AM
Parent: cc49a02ea6396b743de902607a5e5bfc516ae9cd

Files changed

README.mdchanged
build/contracts/EtherStream.jsonchanged
build/contracts/LibCLLu.jsonchanged
build/contracts/Migrations.jsonchanged
build/contracts/StreamFactory.jsonchanged
contracts/EtherStream.solchanged
src/components/EthVideo.vuechanged
src/components/Stream.vuechanged
src/components/VideoPreview.vuechanged
src/components/Webtorrent.vueadded
src/main.jschanged
src/store/videos.jschanged
src/util/getweb3.jschanged
README.mdView
@@ -3,25 +3,26 @@
33 Streaming peer to peer content for creators
44
55 ## General Idea
66
7-There's a single root "Stream" which can have content or streams added to it
8-Streams are kinda like channels of content, but can also be public (so anyone can add to them)
7 +There's a single root "Stream" which can have content or streams added to it.
98
10-Content can be added as a magnet link posted to the Ethereum contract and thrown out to the swarms, following a link to something fires up WebTorrent and injects whatever it feels is the main file into the DOM (right now only images / audio / video, but really this could also be JS)
9 +Streams are kinda like channels of content, but can also be public (so anyone can add to them). Streams can have both content and **other Streams** added to them, so the resulting data structure is a tree.
1110
11 +Content can be added as a magnet link posted to the Ethereum contract and thrown out to the swarms
12 +
13 +Clicking on some content fires up WebTorrent and injects whatever seems to be the main file into the DOM (right now only images / audio / video, but really this could also be JS)
14 +
1215 ## Build Setup
1316
1417 ``` bash
1518 # install dependencies
1619 npm install
1720
1821 # Start local ethereum node (or testrpc)
19-
2022 testrpc
2123
2224 # Deploy contracts
23-
2425 truffle compile
2526 truffle migrate
2627
2728
build/contracts/EtherStream.jsonView
@@ -232,9 +232,9 @@
232232 "name": "ContentAdded",
233233 "type": "event"
234234 }
235235 ],
236- "unlinked_binary": "0x6060604052600060085534156200001557600080fd5b60405162001c8138038062001c8183398101604052808051919060200180518201919060200180519150505b4260025560048054600160a060020a031916600160a060020a03851617905560058280516200007592916020019062000dda565b506006805460ff1916821515179055620001476040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200020b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620002cf6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620003936040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620004576040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200051b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620005df6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620006a36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620007676040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200082b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620008ef6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620009b36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000a776040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000b3b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b505b50505062001064565b600062000b5262000e60565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810162000b95838262000eb8565b916000526020600020906006020160005b50829081518190805162000bbf92916020019062000dda565b5060208201518160010190805162000bdc92916020019062000dda565b5060408201518160020190805162000bf992916020019062000dda565b50606082015181600301556080820151600482018054600160a060020a031916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101562000cbe5780820151818401525b60200162000ca3565b50505050905090810190601f16801562000cec5780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101562000d255780820151818401525b60200162000d0a565b50505050905090810190601f16801562000d535780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101562000d8c5780820151818401525b60200162000d71565b50505050905090810190601f16801562000dba5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b60c06040519081016040528062000e7662000f97565b815260200162000e8562000f97565b815260200162000e9462000f97565b8152602001600081526020016000600160a060020a03168152602001600081525090565b81548183558181151162000ee75760060281600602836000526020600020918201910162000ee7919062000fa9565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b62000f9491905b8082111562000e5c576000815560010162000f7a565b5090565b90565b60206040519081016040526000815290565b62000f9491905b8082111562000e5c57600062000fc7828262001018565b62000fd760018301600062001018565b62000fe760028301600062001018565b50600060038201819055600482018054600160a060020a0319169055600582015560060162000fb0565b5090565b90565b50805460018160011615610100020316600290046000825580601f1062001040575062001060565b601f01602090049060005260206000209081019062001060919062000f73565b5b50565b610b8d80620010746000396000f300606060405236156100ac5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630233669281146100b157806317ef338b146100d6578063325a19f1146101bd5780634a79d50c146101e25780635bc9607e1461026d57806364d60d911461027a5780638da5cb5b146102ac578063aa58c022146102db578063baa0b80614610302578063d6be24f7146104b6578063fced3051146104db575b600080fd5b34156100bc57600080fd5b6100c461050a565b60405190815260200160405180910390f35b34156100e157600080fd5b6100c460046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061051095505050505050565b60405190815260200160405180910390f35b34156101c857600080fd5b6100c461079e565b60405190815260200160405180910390f35b34156101ed57600080fd5b6101f56107a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102325780820151818401525b602001610219565b50505050905090810190601f16801561025f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610278600435610842565b005b341561028557600080fd5b6102906004356108c7565b604051600160a060020a03909116815260200160405180910390f35b34156102b757600080fd5b6102906108f9565b604051600160a060020a03909116815260200160405180910390f35b34156102e657600080fd5b6102ee610908565b604051901515815260200160405180910390f35b341561030d57600080fd5b610318600435610911565b60405160608101849052600160a060020a038316608082015260a0810182905260c080825287546002600019610100600184161502019091160490820181905281906020820190604083019060e08401908b9080156103b85780601f1061038d576101008083540402835291602001916103b8565b820191906000526020600020905b81548152906001019060200180831161039b57829003601f168201915b505084810383528954600260001961010060018416150201909116048082526020909101908a90801561042c5780601f106104015761010080835404028352916020019161042c565b820191906000526020600020905b81548152906001019060200180831161040f57829003601f168201915b50508481038252885460026000196101006001841615020190911604808252602090910190899080156104a05780601f10610475576101008083540402835291602001916104a0565b820191906000526020600020905b81548152906001019060200180831161048357829003601f168201915b5050995050505050505050505060405180910390f35b34156104c157600080fd5b6100c461095b565b60405190815260200160405180910390f35b34156104e657600080fd5b610290610961565b604051600160a060020a03909116815260200160405180910390f35b60015481565b600061051a610970565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810161055b83826109c2565b916000526020600020906006020160005b5082908151819080516105839291602001906109f4565b5060208201518160010190805161059e9291602001906109f4565b506040820151816002019080516105b99291602001906109f4565b5060608201518160030155608082015160048201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156106895780820151818401525b602001610670565b50505050905090810190601f1680156106b65780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156106ed5780820151818401525b6020016106d4565b50505050905090810190601f16801561071a5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156107515780820151818401525b602001610738565b50505050905090810190601f16801561077e5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b60025481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561083a5780601f1061080f5761010080835404028352916020019161083a565b820191906000526020600020905b81548152906001019060200180831161081d57829003601f168201915b505050505081565b3460008281548110151561085257fe5b906000526020600020906006020160005b5060030180549091019055600080548290811061087c57fe5b906000526020600020906006020160005b5060040154600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108c357600080fd5b5b50565b60078054829081106108d557fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600454600160a060020a031681565b60065460ff1681565b600080548290811061091f57fe5b906000526020600020906006020160005b506003810154600482015460058301549293506001840192600285019291600160a060020a03169086565b60085481565b600354600160a060020a031681565b60c060405190810160405280610984610a73565b8152602001610991610a73565b815260200161099e610a73565b8152602001600081526020016000600160a060020a03168152602001600081525090565b8154818355818115116109ee576006028160060283600052602060002091820191016109ee9190610a85565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610a3557805160ff1916838001178555610a62565b82800160010185558215610a62579182015b82811115610a62578251825591602001919060010190610a47565b5b50610a6f929150610af8565b5090565b60206040519081016040526000815290565b610af591905b80821115610a6f576000610a9f8282610b19565b610aad600183016000610b19565b610abb600283016000610b19565b5060006003820181905560048201805473ffffffffffffffffffffffffffffffffffffffff191690556005820155600601610a8b565b5090565b90565b610af591905b80821115610a6f5760008155600101610afe565b5090565b90565b50805460018160011615610100020316600290046000825580601f10610b3f57506108c3565b601f0160209004906000526020600020908101906108c39190610af8565b5b505600a165627a7a72305820f51ce740071075c71f6b76b0363a8bd63e55018c6e9e3fdb0144153888a8b4d600296d61676e65743a3f78743d75726e3a627469683a303861646135613761363138636364303238646539663565626462373231353361326338306265360000000033616165316530396438333164663637343864353636303935613130000000006d61676e65743a3f78743d75726e3a627469683a376632326464663766396466",
236 + "unlinked_binary": "0x6060604052600060085534156200001557600080fd5b60405162001c8138038062001c8183398101604052808051919060200180518201919060200180519150505b4260025560048054600160a060020a031916600160a060020a03851617905560058280516200007592916020019062000dda565b506006805460ff1916821515179055620001476040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200020b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620002cf6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620003936040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620004576040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200051b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620005df6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620006a36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620007676040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200082b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620008ef6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620009b36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000a776040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000b3b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b505b50505062001064565b600062000b5262000e60565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810162000b95838262000eb8565b916000526020600020906006020160005b50829081518190805162000bbf92916020019062000dda565b5060208201518160010190805162000bdc92916020019062000dda565b5060408201518160020190805162000bf992916020019062000dda565b50606082015181600301556080820151600482018054600160a060020a031916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101562000cbe5780820151818401525b60200162000ca3565b50505050905090810190601f16801562000cec5780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101562000d255780820151818401525b60200162000d0a565b50505050905090810190601f16801562000d535780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101562000d8c5780820151818401525b60200162000d71565b50505050905090810190601f16801562000dba5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b60c06040519081016040528062000e7662000f97565b815260200162000e8562000f97565b815260200162000e9462000f97565b8152602001600081526020016000600160a060020a03168152602001600081525090565b81548183558181151162000ee75760060281600602836000526020600020918201910162000ee7919062000fa9565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b62000f9491905b8082111562000e5c576000815560010162000f7a565b5090565b90565b60206040519081016040526000815290565b62000f9491905b8082111562000e5c57600062000fc7828262001018565b62000fd760018301600062001018565b62000fe760028301600062001018565b50600060038201819055600482018054600160a060020a0319169055600582015560060162000fb0565b5090565b90565b50805460018160011615610100020316600290046000825580601f1062001040575062001060565b601f01602090049060005260206000209081019062001060919062000f73565b5b50565b610b8d80620010746000396000f300606060405236156100ac5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630233669281146100b157806317ef338b146100d6578063325a19f1146101bd5780634a79d50c146101e25780635bc9607e1461026d57806364d60d911461027a5780638da5cb5b146102ac578063aa58c022146102db578063baa0b80614610302578063d6be24f7146104b6578063fced3051146104db575b600080fd5b34156100bc57600080fd5b6100c461050a565b60405190815260200160405180910390f35b34156100e157600080fd5b6100c460046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061051095505050505050565b60405190815260200160405180910390f35b34156101c857600080fd5b6100c461079e565b60405190815260200160405180910390f35b34156101ed57600080fd5b6101f56107a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102325780820151818401525b602001610219565b50505050905090810190601f16801561025f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610278600435610842565b005b341561028557600080fd5b6102906004356108c7565b604051600160a060020a03909116815260200160405180910390f35b34156102b757600080fd5b6102906108f9565b604051600160a060020a03909116815260200160405180910390f35b34156102e657600080fd5b6102ee610908565b604051901515815260200160405180910390f35b341561030d57600080fd5b610318600435610911565b60405160608101849052600160a060020a038316608082015260a0810182905260c080825287546002600019610100600184161502019091160490820181905281906020820190604083019060e08401908b9080156103b85780601f1061038d576101008083540402835291602001916103b8565b820191906000526020600020905b81548152906001019060200180831161039b57829003601f168201915b505084810383528954600260001961010060018416150201909116048082526020909101908a90801561042c5780601f106104015761010080835404028352916020019161042c565b820191906000526020600020905b81548152906001019060200180831161040f57829003601f168201915b50508481038252885460026000196101006001841615020190911604808252602090910190899080156104a05780601f10610475576101008083540402835291602001916104a0565b820191906000526020600020905b81548152906001019060200180831161048357829003601f168201915b5050995050505050505050505060405180910390f35b34156104c157600080fd5b6100c461095b565b60405190815260200160405180910390f35b34156104e657600080fd5b610290610961565b604051600160a060020a03909116815260200160405180910390f35b60015481565b600061051a610970565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810161055b83826109c2565b916000526020600020906006020160005b5082908151819080516105839291602001906109f4565b5060208201518160010190805161059e9291602001906109f4565b506040820151816002019080516105b99291602001906109f4565b5060608201518160030155608082015160048201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156106895780820151818401525b602001610670565b50505050905090810190601f1680156106b65780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156106ed5780820151818401525b6020016106d4565b50505050905090810190601f16801561071a5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156107515780820151818401525b602001610738565b50505050905090810190601f16801561077e5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b60025481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561083a5780601f1061080f5761010080835404028352916020019161083a565b820191906000526020600020905b81548152906001019060200180831161081d57829003601f168201915b505050505081565b3460008281548110151561085257fe5b906000526020600020906006020160005b5060030180549091019055600080548290811061087c57fe5b906000526020600020906006020160005b5060040154600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108c357600080fd5b5b50565b60078054829081106108d557fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600454600160a060020a031681565b60065460ff1681565b600080548290811061091f57fe5b906000526020600020906006020160005b506003810154600482015460058301549293506001840192600285019291600160a060020a03169086565b60085481565b600354600160a060020a031681565b60c060405190810160405280610984610a73565b8152602001610991610a73565b815260200161099e610a73565b8152602001600081526020016000600160a060020a03168152602001600081525090565b8154818355818115116109ee576006028160060283600052602060002091820191016109ee9190610a85565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610a3557805160ff1916838001178555610a62565b82800160010185558215610a62579182015b82811115610a62578251825591602001919060010190610a47565b5b50610a6f929150610af8565b5090565b60206040519081016040526000815290565b610af591905b80821115610a6f576000610a9f8282610b19565b610aad600183016000610b19565b610abb600283016000610b19565b5060006003820181905560048201805473ffffffffffffffffffffffffffffffffffffffff191690556005820155600601610a8b565b5090565b90565b610af591905b80821115610a6f5760008155600101610afe565b5090565b90565b50805460018160011615610100020316600290046000825580601f10610b3f57506108c3565b601f0160209004906000526020600020908101906108c39190610af8565b5b505600a165627a7a72305820b58c9dc7c991d14dcca533eb5cf6e69012f0c3523112cfc0f600aa33393a65b500296d61676e65743a3f78743d75726e3a627469683a303861646135613761363138636364303238646539663565626462373231353361326338306265360000000033616165316530396438333164663637343864353636303935613130000000006d61676e65743a3f78743d75726e3a627469683a376632326464663766396466",
237237 "networks": {
238238 "1505969715555": {
239239 "events": {},
240240 "links": {},
@@ -342,9 +342,213 @@
342342 },
343343 "links": {},
344344 "address": "0x4dac1b2cd8269570153e1f864aafcceba5fd590e",
345345 "updated_at": 1506459866904
346 + },
347 + "1506474989412": {
348 + "events": {
349 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
350 + "anonymous": false,
351 + "inputs": [
352 + {
353 + "indexed": false,
354 + "name": "content_id",
355 + "type": "uint256"
356 + },
357 + {
358 + "indexed": false,
359 + "name": "title",
360 + "type": "string"
361 + },
362 + {
363 + "indexed": false,
364 + "name": "uri",
365 + "type": "string"
366 + },
367 + {
368 + "indexed": false,
369 + "name": "preview_uri",
370 + "type": "string"
371 + }
372 + ],
373 + "name": "ContentAdded",
374 + "type": "event"
375 + }
376 + },
377 + "links": {},
378 + "address": "0x4dac1b2cd8269570153e1f864aafcceba5fd590e",
379 + "updated_at": 1506576741361
380 + },
381 + "1506576895918": {
382 + "events": {
383 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
384 + "anonymous": false,
385 + "inputs": [
386 + {
387 + "indexed": false,
388 + "name": "content_id",
389 + "type": "uint256"
390 + },
391 + {
392 + "indexed": false,
393 + "name": "title",
394 + "type": "string"
395 + },
396 + {
397 + "indexed": false,
398 + "name": "uri",
399 + "type": "string"
400 + },
401 + {
402 + "indexed": false,
403 + "name": "preview_uri",
404 + "type": "string"
405 + }
406 + ],
407 + "name": "ContentAdded",
408 + "type": "event"
409 + }
410 + },
411 + "links": {},
412 + "address": "0x4dac1b2cd8269570153e1f864aafcceba5fd590e",
413 + "updated_at": 1506576911454
414 + },
415 + "1506578367743": {
416 + "events": {
417 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
418 + "anonymous": false,
419 + "inputs": [
420 + {
421 + "indexed": false,
422 + "name": "content_id",
423 + "type": "uint256"
424 + },
425 + {
426 + "indexed": false,
427 + "name": "title",
428 + "type": "string"
429 + },
430 + {
431 + "indexed": false,
432 + "name": "uri",
433 + "type": "string"
434 + },
435 + {
436 + "indexed": false,
437 + "name": "preview_uri",
438 + "type": "string"
439 + }
440 + ],
441 + "name": "ContentAdded",
442 + "type": "event"
443 + }
444 + },
445 + "links": {},
446 + "address": "0x4dac1b2cd8269570153e1f864aafcceba5fd590e",
447 + "updated_at": 1506578392437
448 + },
449 + "1507418114613": {
450 + "events": {
451 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
452 + "anonymous": false,
453 + "inputs": [
454 + {
455 + "indexed": false,
456 + "name": "content_id",
457 + "type": "uint256"
458 + },
459 + {
460 + "indexed": false,
461 + "name": "title",
462 + "type": "string"
463 + },
464 + {
465 + "indexed": false,
466 + "name": "uri",
467 + "type": "string"
468 + },
469 + {
470 + "indexed": false,
471 + "name": "preview_uri",
472 + "type": "string"
473 + }
474 + ],
475 + "name": "ContentAdded",
476 + "type": "event"
477 + }
478 + },
479 + "links": {},
480 + "address": "0x4dac1b2cd8269570153e1f864aafcceba5fd590e",
481 + "updated_at": 1507418160753
482 + },
483 + "1507872774226": {
484 + "events": {
485 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
486 + "anonymous": false,
487 + "inputs": [
488 + {
489 + "indexed": false,
490 + "name": "content_id",
491 + "type": "uint256"
492 + },
493 + {
494 + "indexed": false,
495 + "name": "title",
496 + "type": "string"
497 + },
498 + {
499 + "indexed": false,
500 + "name": "uri",
501 + "type": "string"
502 + },
503 + {
504 + "indexed": false,
505 + "name": "preview_uri",
506 + "type": "string"
507 + }
508 + ],
509 + "name": "ContentAdded",
510 + "type": "event"
511 + }
512 + },
513 + "links": {},
514 + "address": "0xd16c175d6d4f88e060f50c6af83a024d41b4fa06",
515 + "updated_at": 1507872820644
516 + },
517 + "1507873180834": {
518 + "events": {
519 + "0xbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f04928": {
520 + "anonymous": false,
521 + "inputs": [
522 + {
523 + "indexed": false,
524 + "name": "content_id",
525 + "type": "uint256"
526 + },
527 + {
528 + "indexed": false,
529 + "name": "title",
530 + "type": "string"
531 + },
532 + {
533 + "indexed": false,
534 + "name": "uri",
535 + "type": "string"
536 + },
537 + {
538 + "indexed": false,
539 + "name": "preview_uri",
540 + "type": "string"
541 + }
542 + ],
543 + "name": "ContentAdded",
544 + "type": "event"
545 + }
546 + },
547 + "links": {},
548 + "address": "0x08cd0f3e14bf00f482605e370bf351b722f6a793",
549 + "updated_at": 1507873222584
346550 }
347551 },
348552 "schema_version": "0.0.5",
349- "updated_at": 1506480755111
553 + "updated_at": 1507873222584
350554 }
build/contracts/LibCLLu.jsonView
@@ -14,9 +14,9 @@
1414 "payable": false,
1515 "type": "function"
1616 }
1717 ],
18- "unlinked_binary": "0x6060604052341561000f57600080fd5b5b61011a8061001f6000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663ffa1ad748114603c575b600080fd5b604260b7565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015607d5780820151818401525b6020016066565b50505050905090810190601f16801560a95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60408051908101604052600d81527f4c6962434c4c7520302e342e30000000000000000000000000000000000000006020820152815600a165627a7a723058209a1b9f9ba11b42fdff90854b0534b3ab6df16356178650d8ce29c262f9f58e960029",
18 + "unlinked_binary": "0x6060604052341561000f57600080fd5b5b61011a8061001f6000396000f300606060405263ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663ffa1ad748114603c575b600080fd5b604260b7565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015607d5780820151818401525b6020016066565b50505050905090810190601f16801560a95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60408051908101604052600d81527f4c6962434c4c7520302e342e30000000000000000000000000000000000000006020820152815600a165627a7a72305820be88d5262023cec2d350f6b41eb902ba46af2d2cbe921af2486c82c6788fdd0b0029",
1919 "networks": {},
2020 "schema_version": "0.0.5",
21- "updated_at": 1506480755108
21 + "updated_at": 1507873220410
2222 }
build/contracts/Migrations.jsonView
@@ -95,9 +95,45 @@
9595 "events": {},
9696 "links": {},
9797 "address": "0x4a41c35347dfb18d835b688885f40d6f7a84b95e",
9898 "updated_at": 1506459866911
99 + },
100 + "1506474989412": {
101 + "events": {},
102 + "links": {},
103 + "address": "0x4a41c35347dfb18d835b688885f40d6f7a84b95e",
104 + "updated_at": 1506576741368
105 + },
106 + "1506576895918": {
107 + "events": {},
108 + "links": {},
109 + "address": "0x4a41c35347dfb18d835b688885f40d6f7a84b95e",
110 + "updated_at": 1506576911458
111 + },
112 + "1506578367743": {
113 + "events": {},
114 + "links": {},
115 + "address": "0x4a41c35347dfb18d835b688885f40d6f7a84b95e",
116 + "updated_at": 1506578392443
117 + },
118 + "1507418114613": {
119 + "events": {},
120 + "links": {},
121 + "address": "0x4a41c35347dfb18d835b688885f40d6f7a84b95e",
122 + "updated_at": 1507418160753
123 + },
124 + "1507872774226": {
125 + "events": {},
126 + "links": {},
127 + "address": "0xab09f355729058121fb0ebadd23a3fcf9b125f0f",
128 + "updated_at": 1507872820647
129 + },
130 + "1507873180834": {
131 + "events": {},
132 + "links": {},
133 + "address": "0x7f40d8bd9a55ce51a773a1706601a35f24c5974c",
134 + "updated_at": 1507873222583
99135 }
100136 },
101137 "schema_version": "0.0.5",
102- "updated_at": 1506459866911
138 + "updated_at": 1507873222583
103139 }
build/contracts/StreamFactory.jsonView
@@ -46,9 +46,9 @@
4646 "payable": false,
4747 "type": "constructor"
4848 }
4949 ],
50- "unlinked_binary": "0x6060604052341561000f57600080fd5b5b5b5b611ed3806100216000396000f300606060405263ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416627669cd81146200004957806364d60d9114620000ca575b600080fd5b34156200005557600080fd5b620000a160046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496505050509135151591506200010c9050565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3415620000d657600080fd5b620000a1600435620001d5565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000803384846200011c62000215565b73ffffffffffffffffffffffffffffffffffffffff84168152811515604082015260606020820181815290820184818151815260200191508051906020019080838360005b838110156200017c5780820151818401525b60200162000161565b50505050905090810190601f168015620001aa5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515620001c857600080fd5b90508091505b5092915050565b6000805482908110620001e457fe5b906000526020600020900160005b915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b604051611c8180620002278339019056006060604052600060085534156200001557600080fd5b60405162001c8138038062001c8183398101604052808051919060200180518201919060200180519150505b4260025560048054600160a060020a031916600160a060020a03851617905560058280516200007592916020019062000dda565b506006805460ff1916821515179055620001476040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200020b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620002cf6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620003936040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620004576040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200051b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620005df6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620006a36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620007676040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200082b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620008ef6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620009b36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000a776040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000b3b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b505b50505062001064565b600062000b5262000e60565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810162000b95838262000eb8565b916000526020600020906006020160005b50829081518190805162000bbf92916020019062000dda565b5060208201518160010190805162000bdc92916020019062000dda565b5060408201518160020190805162000bf992916020019062000dda565b50606082015181600301556080820151600482018054600160a060020a031916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101562000cbe5780820151818401525b60200162000ca3565b50505050905090810190601f16801562000cec5780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101562000d255780820151818401525b60200162000d0a565b50505050905090810190601f16801562000d535780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101562000d8c5780820151818401525b60200162000d71565b50505050905090810190601f16801562000dba5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b60c06040519081016040528062000e7662000f97565b815260200162000e8562000f97565b815260200162000e9462000f97565b8152602001600081526020016000600160a060020a03168152602001600081525090565b81548183558181151162000ee75760060281600602836000526020600020918201910162000ee7919062000fa9565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b62000f9491905b8082111562000e5c576000815560010162000f7a565b5090565b90565b60206040519081016040526000815290565b62000f9491905b8082111562000e5c57600062000fc7828262001018565b62000fd760018301600062001018565b62000fe760028301600062001018565b50600060038201819055600482018054600160a060020a0319169055600582015560060162000fb0565b5090565b90565b50805460018160011615610100020316600290046000825580601f1062001040575062001060565b601f01602090049060005260206000209081019062001060919062000f73565b5b50565b610b8d80620010746000396000f300606060405236156100ac5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630233669281146100b157806317ef338b146100d6578063325a19f1146101bd5780634a79d50c146101e25780635bc9607e1461026d57806364d60d911461027a5780638da5cb5b146102ac578063aa58c022146102db578063baa0b80614610302578063d6be24f7146104b6578063fced3051146104db575b600080fd5b34156100bc57600080fd5b6100c461050a565b60405190815260200160405180910390f35b34156100e157600080fd5b6100c460046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061051095505050505050565b60405190815260200160405180910390f35b34156101c857600080fd5b6100c461079e565b60405190815260200160405180910390f35b34156101ed57600080fd5b6101f56107a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102325780820151818401525b602001610219565b50505050905090810190601f16801561025f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610278600435610842565b005b341561028557600080fd5b6102906004356108c7565b604051600160a060020a03909116815260200160405180910390f35b34156102b757600080fd5b6102906108f9565b604051600160a060020a03909116815260200160405180910390f35b34156102e657600080fd5b6102ee610908565b604051901515815260200160405180910390f35b341561030d57600080fd5b610318600435610911565b60405160608101849052600160a060020a038316608082015260a0810182905260c080825287546002600019610100600184161502019091160490820181905281906020820190604083019060e08401908b9080156103b85780601f1061038d576101008083540402835291602001916103b8565b820191906000526020600020905b81548152906001019060200180831161039b57829003601f168201915b505084810383528954600260001961010060018416150201909116048082526020909101908a90801561042c5780601f106104015761010080835404028352916020019161042c565b820191906000526020600020905b81548152906001019060200180831161040f57829003601f168201915b50508481038252885460026000196101006001841615020190911604808252602090910190899080156104a05780601f10610475576101008083540402835291602001916104a0565b820191906000526020600020905b81548152906001019060200180831161048357829003601f168201915b5050995050505050505050505060405180910390f35b34156104c157600080fd5b6100c461095b565b60405190815260200160405180910390f35b34156104e657600080fd5b610290610961565b604051600160a060020a03909116815260200160405180910390f35b60015481565b600061051a610970565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810161055b83826109c2565b916000526020600020906006020160005b5082908151819080516105839291602001906109f4565b5060208201518160010190805161059e9291602001906109f4565b506040820151816002019080516105b99291602001906109f4565b5060608201518160030155608082015160048201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156106895780820151818401525b602001610670565b50505050905090810190601f1680156106b65780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156106ed5780820151818401525b6020016106d4565b50505050905090810190601f16801561071a5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156107515780820151818401525b602001610738565b50505050905090810190601f16801561077e5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b60025481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561083a5780601f1061080f5761010080835404028352916020019161083a565b820191906000526020600020905b81548152906001019060200180831161081d57829003601f168201915b505050505081565b3460008281548110151561085257fe5b906000526020600020906006020160005b5060030180549091019055600080548290811061087c57fe5b906000526020600020906006020160005b5060040154600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108c357600080fd5b5b50565b60078054829081106108d557fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600454600160a060020a031681565b60065460ff1681565b600080548290811061091f57fe5b906000526020600020906006020160005b506003810154600482015460058301549293506001840192600285019291600160a060020a03169086565b60085481565b600354600160a060020a031681565b60c060405190810160405280610984610a73565b8152602001610991610a73565b815260200161099e610a73565b8152602001600081526020016000600160a060020a03168152602001600081525090565b8154818355818115116109ee576006028160060283600052602060002091820191016109ee9190610a85565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610a3557805160ff1916838001178555610a62565b82800160010185558215610a62579182015b82811115610a62578251825591602001919060010190610a47565b5b50610a6f929150610af8565b5090565b60206040519081016040526000815290565b610af591905b80821115610a6f576000610a9f8282610b19565b610aad600183016000610b19565b610abb600283016000610b19565b5060006003820181905560048201805473ffffffffffffffffffffffffffffffffffffffff191690556005820155600601610a8b565b5090565b90565b610af591905b80821115610a6f5760008155600101610afe565b5090565b90565b50805460018160011615610100020316600290046000825580601f10610b3f57506108c3565b601f0160209004906000526020600020908101906108c39190610af8565b5b505600a165627a7a72305820f51ce740071075c71f6b76b0363a8bd63e55018c6e9e3fdb0144153888a8b4d600296d61676e65743a3f78743d75726e3a627469683a303861646135613761363138636364303238646539663565626462373231353361326338306265360000000033616165316530396438333164663637343864353636303935613130000000006d61676e65743a3f78743d75726e3a627469683a376632326464663766396466a165627a7a723058201034d7dcb06b2948e4dc4d15088f89965270d792c75eb60c8f1a727422e00b420029",
50 + "unlinked_binary": "0x6060604052341561000f57600080fd5b5b5b5b611ed3806100216000396000f300606060405263ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416627669cd81146200004957806364d60d9114620000ca575b600080fd5b34156200005557600080fd5b620000a160046024813581810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496505050509135151591506200010c9050565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3415620000d657600080fd5b620000a1600435620001d5565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6000803384846200011c62000215565b73ffffffffffffffffffffffffffffffffffffffff84168152811515604082015260606020820181815290820184818151815260200191508051906020019080838360005b838110156200017c5780820151818401525b60200162000161565b50505050905090810190601f168015620001aa5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f0801515620001c857600080fd5b90508091505b5092915050565b6000805482908110620001e457fe5b906000526020600020900160005b915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b604051611c8180620002278339019056006060604052600060085534156200001557600080fd5b60405162001c8138038062001c8183398101604052808051919060200180518201919060200180519150505b4260025560048054600160a060020a031916600160a060020a03851617905560058280516200007592916020019062000dda565b506006805460ff1916821515179055620001476040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200020b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620002cf6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620003936040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620004576040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200051b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620005df6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620006a36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620007676040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b506200082b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620008ef6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b50620009b36040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000a776040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b5062000b3b6040805190810160405280600681526020017f53696e74656c0000000000000000000000000000000000000000000000000000815250606060405190810160405280603c815260200160008051602062001c01833981519152815260200160008051602062001c4183398151915281525060606040519081016040908152603c825260008051602062001c61833981519152602083015260008051602062001c21833981519152908201526401000000006200051062000b4682021704565b505b50505062001064565b600062000b5262000e60565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810162000b95838262000eb8565b916000526020600020906006020160005b50829081518190805162000bbf92916020019062000dda565b5060208201518160010190805162000bdc92916020019062000dda565b5060408201518160020190805162000bf992916020019062000dda565b50606082015181600301556080820151600482018054600160a060020a031916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101562000cbe5780820151818401525b60200162000ca3565b50505050905090810190601f16801562000cec5780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101562000d255780820151818401525b60200162000d0a565b50505050905090810190601f16801562000d535780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101562000d8c5780820151818401525b60200162000d71565b50505050905090810190601f16801562000dba5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b60c06040519081016040528062000e7662000f97565b815260200162000e8562000f97565b815260200162000e9462000f97565b8152602001600081526020016000600160a060020a03168152602001600081525090565b81548183558181151162000ee75760060281600602836000526020600020918201910162000ee7919062000fa9565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000e1d57805160ff191683800117855562000e4d565b8280016001018555821562000e4d579182015b8281111562000e4d57825182559160200191906001019062000e30565b5b5062000e5c92915062000f73565b5090565b62000f9491905b8082111562000e5c576000815560010162000f7a565b5090565b90565b60206040519081016040526000815290565b62000f9491905b8082111562000e5c57600062000fc7828262001018565b62000fd760018301600062001018565b62000fe760028301600062001018565b50600060038201819055600482018054600160a060020a0319169055600582015560060162000fb0565b5090565b90565b50805460018160011615610100020316600290046000825580601f1062001040575062001060565b601f01602090049060005260206000209081019062001060919062000f73565b5b50565b610b8d80620010746000396000f300606060405236156100ac5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630233669281146100b157806317ef338b146100d6578063325a19f1146101bd5780634a79d50c146101e25780635bc9607e1461026d57806364d60d911461027a5780638da5cb5b146102ac578063aa58c022146102db578063baa0b80614610302578063d6be24f7146104b6578063fced3051146104db575b600080fd5b34156100bc57600080fd5b6100c461050a565b60405190815260200160405180910390f35b34156100e157600080fd5b6100c460046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f01602080910402602001604051908101604052818152929190602084018383808284375094965061051095505050505050565b60405190815260200160405180910390f35b34156101c857600080fd5b6100c461079e565b60405190815260200160405180910390f35b34156101ed57600080fd5b6101f56107a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102325780820151818401525b602001610219565b50505050905090810190601f16801561025f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610278600435610842565b005b341561028557600080fd5b6102906004356108c7565b604051600160a060020a03909116815260200160405180910390f35b34156102b757600080fd5b6102906108f9565b604051600160a060020a03909116815260200160405180910390f35b34156102e657600080fd5b6102ee610908565b604051901515815260200160405180910390f35b341561030d57600080fd5b610318600435610911565b60405160608101849052600160a060020a038316608082015260a0810182905260c080825287546002600019610100600184161502019091160490820181905281906020820190604083019060e08401908b9080156103b85780601f1061038d576101008083540402835291602001916103b8565b820191906000526020600020905b81548152906001019060200180831161039b57829003601f168201915b505084810383528954600260001961010060018416150201909116048082526020909101908a90801561042c5780601f106104015761010080835404028352916020019161042c565b820191906000526020600020905b81548152906001019060200180831161040f57829003601f168201915b50508481038252885460026000196101006001841615020190911604808252602090910190899080156104a05780601f10610475576101008083540402835291602001916104a0565b820191906000526020600020905b81548152906001019060200180831161048357829003601f168201915b5050995050505050505050505060405180910390f35b34156104c157600080fd5b6100c461095b565b60405190815260200160405180910390f35b34156104e657600080fd5b610290610961565b604051600160a060020a03909116815260200160405180910390f35b60015481565b600061051a610970565b8481526040810184905260208101839052600160608201819052600160a060020a03331660808301524260a0830152600080549091810161055b83826109c2565b916000526020600020906006020160005b5082908151819080516105839291602001906109f4565b5060208201518160010190805161059e9291602001906109f4565b506040820151816002019080516105b99291602001906109f4565b5060608201518160030155608082015160048201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560a08201516005909101555050600180548101908190557fbd39459eb5dfa9dc1565d46290988a236f92828d81660967143be77ab9f049289082518360400151846020015160405180858152602001806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156106895780820151818401525b602001610670565b50505050905090810190601f1680156106b65780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156106ed5780820151818401525b6020016106d4565b50505050905090810190601f16801561071a5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156107515780820151818401525b602001610738565b50505050905090810190601f16801561077e5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a160015491505b509392505050565b60025481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561083a5780601f1061080f5761010080835404028352916020019161083a565b820191906000526020600020905b81548152906001019060200180831161081d57829003601f168201915b505050505081565b3460008281548110151561085257fe5b906000526020600020906006020160005b5060030180549091019055600080548290811061087c57fe5b906000526020600020906006020160005b5060040154600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108c357600080fd5b5b50565b60078054829081106108d557fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600454600160a060020a031681565b60065460ff1681565b600080548290811061091f57fe5b906000526020600020906006020160005b506003810154600482015460058301549293506001840192600285019291600160a060020a03169086565b60085481565b600354600160a060020a031681565b60c060405190810160405280610984610a73565b8152602001610991610a73565b815260200161099e610a73565b8152602001600081526020016000600160a060020a03168152602001600081525090565b8154818355818115116109ee576006028160060283600052602060002091820191016109ee9190610a85565b5b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610a3557805160ff1916838001178555610a62565b82800160010185558215610a62579182015b82811115610a62578251825591602001919060010190610a47565b5b50610a6f929150610af8565b5090565b60206040519081016040526000815290565b610af591905b80821115610a6f576000610a9f8282610b19565b610aad600183016000610b19565b610abb600283016000610b19565b5060006003820181905560048201805473ffffffffffffffffffffffffffffffffffffffff191690556005820155600601610a8b565b5090565b90565b610af591905b80821115610a6f5760008155600101610afe565b5090565b90565b50805460018160011615610100020316600290046000825580601f10610b3f57506108c3565b601f0160209004906000526020600020908101906108c39190610af8565b5b505600a165627a7a72305820b58c9dc7c991d14dcca533eb5cf6e69012f0c3523112cfc0f600aa33393a65b500296d61676e65743a3f78743d75726e3a627469683a303861646135613761363138636364303238646539663565626462373231353361326338306265360000000033616165316530396438333164663637343864353636303935613130000000006d61676e65743a3f78743d75726e3a627469683a376632326464663766396466a165627a7a723058207c22bf18061814fb3a92a040917918058d18a24c71d70ccbc135d30ae35ddc3f0029",
5151 "networks": {},
5252 "schema_version": "0.0.5",
53- "updated_at": 1506480755110
53 + "updated_at": 1507872803762
5454 }
contracts/EtherStream.solView
@@ -1,9 +1,6 @@
11 pragma solidity ^0.4.10;
22
3-import './LinkedList.sol';
4-
5-
63 // Used to build new streams
74 contract StreamFactory{
85 EtherStream[] public streams;
96
@@ -24,12 +21,12 @@
2421
2522
2623 // A stream of content and other streams
2724 contract EtherStream {
28- using LibCLLu for LibCLLu.CLL;
25 + /*using LibCLLu for LibCLLu.CLL;*/
2926
3027 // The circular linked list storage structure
31- LibCLLu.CLL public list;
28 + /*LibCLLu.CLL public list;*/
3229
3330
3431 // Content in this stream
3532 Content[] public content;
@@ -94,10 +91,10 @@
9491 c.creator = msg.sender; // creator
9592
9693 c.created = block.timestamp; // Current block timestamp UTC
9794
98- /*content.push(c);
99- content_count++;*/
95 + content.push(c);
96 + content_count++;
10097
10198 ContentAdded(content_count, c.title, c.uri, c.preview_uri);
10299 return content_count;
103100 }
src/components/EthVideo.vueView
@@ -1,6 +1,6 @@
11 <template>
2- <div class=''>
2 + <div class='col-sm-12'>
33 <div class='embed-responsive'>
44 <div class='video'>
55 <MoonLoader ></MoonLoader>
66 </div>
src/components/Stream.vueView
@@ -2,9 +2,9 @@
22 <div>
33 <streams></streams>
44 <main class="col-sm-9 offset-sm-3 col-md-10 offset-md-2 pt-3 drop-here">
55 <div class="row">
6- <VideoPreview v-for="c in ContentStore.state.content" :key="c.magnet" :video="c">
6 + <VideoPreview v-for="c in ContentStore.state.content" :key="c.magnet" :video="c" :client="client">
77 </VideoPreview>
88 </div>
99 </main>
1010 </div>
@@ -50,9 +50,10 @@
5050 dragDrop('.drop-here', this.newContent)
5151 },
5252 data () {
5353 return {
54- ContentStore
54 + ContentStore,
55 + client
5556 }
5657 }
5758 }
5859 </script>
src/components/VideoPreview.vueView
@@ -1,8 +1,8 @@
11 <template>
2-
32 <div class="content-card">
43 <router-link :to="{ name: 'watch', params: { magnet: video.magnet }}">
4 + <Webtorrent :magnet="video.magnet" :client="client"></Webtorrent
55 <img class="card-img-top" src="./../assets/content_placeholder.png" alt="Card image cap">
66 </router-link>
77 <div class="">
88 <router-link :to="{ name: 'watch', params: { magnet: video.magnet }}">
@@ -11,29 +11,27 @@
1111
1212 <p class="card-text creator text-muted">
1313 {{ video.creator }}
1414 </p>
15-
1615 </div>
1716 </div>
18-
1917 </template>
2018
2119 <script>
2220
21 +import Webtorrent from './Webtorrent.vue'
22 +
23 +
2324 export default {
2425 name: "VideoPreview",
25- props: ['video'],
26 + props: ['video', 'client'],
27 + components: {
28 + 'Webtorrent': Webtorrent
29 + },
2630 data() {
27- return {
28- checked: false,
29- title: 'Check me'
30- }
31 + return {}
3132 },
3233 methods: {
33- check() {
34- this.checked = !this.checked;
35- }
3634 }
3735 }
3836
3937 </script>
src/components/Webtorrent.vueView
@@ -1,0 +1,113 @@
1 +<!-- This component renders whatever magnet link is provided into the DOM -->
2 +<template>
3 + <div class='embed-responsive'>
4 + <MoonLoader></MoonLoader>
5 + </div>
6 +</template>
7 +
8 +<script>
9 +import MoonLoader from './Loader'
10 +
11 +export default {
12 + name: "webtorrent",
13 + props: ['magnet', 'client'],
14 + components: { 'MoonLoader': MoonLoader },
15 + data () {
16 + return {
17 + loading: true,
18 + color: "black",
19 + size: "20em"
20 + }
21 + },
22 +
23 + mounted: function() {
24 + // var torrentId = this.magnet
25 + console.log("client:")
26 + console.log(this.client)
27 +
28 +
29 + var client = this.client
30 +
31 + console.log("torrent id")
32 +
33 + console.log(unescape(this.magnet))
34 +
35 + // Hack on extra trackers incase there are none
36 + var magnetURI = "magnet:?xt=urn:btih:8784ff95f26ea6b7e5347bb07c4ced42d133bcf6&dn=Screen+Shot+2017-10-13+at+7.25.09+PM.png&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com"
37 +
38 + // var magnetURI = unescape(this.magnet + '&tr=wss://tracker.openwebtorrent.com&tr=wss://tracker.btorrent.xyz&tr=wss://tracker.fastcast.nz')
39 +
40 + console.log("get magnet url")
41 + if(client.get(magnetURI))
42 + {
43 + // we already have the torrent loaded
44 + // new torrent
45 + client.get(magnetURI, this.loadCompletedTorrent)
46 + }
47 + else
48 + {
49 + // new torrent
50 + client.add(magnetURI, this.loadCompletedTorrent)
51 + }
52 +
53 + },
54 +
55 + loadCompletedTorrent: function (torrent) {
56 + // Got torrent metadata
57 + console.log('Client is downloading:', torrent.infoHash)
58 +
59 + var content_file
60 +
61 + if(torrent.files.length == 1)
62 + {
63 + content_file = torrent.files[0]
64 + }
65 + else {
66 + torrent.files.forEach(function (file) {
67 + console.log(file)
68 + var name = file.name.toLowerCase()
69 +
70 + // If this is renderable content
71 + if(/\.(mp4|m4v|webm|ogg|mp3)$/i.test(name))
72 + {
73 + // make it the file to render unless there is a bigger file
74 + if(content_file == null)
75 + {
76 + content_file = file
77 + }
78 + else if(file.length > content_file.length)
79 + {
80 + content_file = file
81 + }
82 + }
83 + })
84 + }
85 +
86 + console.log(content_file)
87 + if(content_file)
88 + {
89 + content_file.appendTo('.embed-responsive')
90 + }
91 + else
92 + {
93 + alert("Unable to render any files from torrent")
94 + }
95 +
96 + }
97 +
98 +
99 + }
100 +
101 +
102 +</script>
103 +
104 +<style scoped>
105 + .v-spinner
106 + {
107 + position: absolute;
108 + bottom: 50%;
109 + left: 50%;
110 + margin-left: -30px;
111 + margin-bottom: -30px;
112 + }
113 +</style>
src/main.jsView
@@ -27,7 +27,9 @@
2727 components: { App, MoonLoader },
2828
2929 created: function () {
3030 // Establish Ethereum connection on create
31- ContentStore.getWeb3()
31 + // console.log(ContentStore);
32 + // debugger
33 + ContentStore.establishWeb3()
3234 }
3335 })
src/store/videos.jsView
@@ -2,37 +2,45 @@
22 import getWeb3 from './../util/getweb3'
33
44 export default {
55 state: {
6- web3: null,
76 stream_contract: null,
87 stream_instance: null,
98 count: 0,
109 content: [ ]
1110 },
12- getWeb3(){
11 + establishWeb3(){
1312 console.log("getWeb3")
13 + // console.log(this)
1414 getWeb3
1515 .then(results => {
16- this.state.web3 = results.web3
16 + console.log("INSIDE")
17 + console.log(this)
18 + // debugger
19 + window.web3 = results.web3
1720 this.instantiateContract()
1821 })
1922 },
2023
24 +
2125 instantiateContract() {
2226 const contract = require('truffle-contract')
2327 const etherStreams = contract(EtherStreamContract)
24- etherStreams.setProvider(this.state.web3.currentProvider)
2528
29 + console.log("about to set provider")
30 + etherStreams.setProvider(window.web3.currentProvider)
31 +
2632 // Get accounts.
27- this.state.web3.eth.getAccounts((error, accounts) => {
33 + window.web3.eth.getAccounts((error, accounts) => {
34 + console.log("get accounts")
35 +
2836 etherStreams.deployed().then((instance) => {
2937 // debugger
3038 console.log(Object.getOwnPropertyNames(instance))
31- return this.state.stream_instance = instance
39 + return window.stream_instance = instance
3240 }).then((result) => {
3341 // Get the value from the contract to prove it worked.
34- return this.state.stream_instance.content_count.call(accounts[0])
42 + return window.stream_instance.content_count.call(accounts[0])
3543 }).then((result) => {
3644 console.log(result)
3745
3846 return this.state.count = [ result.c[0] ]
@@ -40,9 +48,9 @@
4048
4149 for(var i = 0; i < this.state.count; i++)
4250 {
4351 console.log("loading content")
44- this.state.stream_instance.content(i).then((result) => {
52 + window.stream_instance.content(i).then((result) => {
4553 console.log(result)
4654 this.addContent(
4755 {
4856 title: result[0],
@@ -60,7 +68,7 @@
6068 addContent (content) {
6169 this.state.content.push(content)
6270 },
6371 createContent (content) {
64- this.state.stream_instance.newContent(title, magnet, { from: this.state.web3.accounts[0] })
72 + window.stream_instance.newContent(title, magnet, { from: window.web3.accounts[0] })
6573 }
6674 }
src/util/getweb3.jsView
@@ -6,8 +6,9 @@
66 var results
77 var web3 = window.web3
88
99 // Checking if Web3 has been injected by the browser (Mist/MetaMask)
10 + // debugger
1011 if (typeof web3 !== 'undefined') {
1112 // Use Mist/MetaMask's provider.
1213 web3 = new Web3(web3.currentProvider)
1314

Built with git-ssb-web