]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git/blame - cmd/web/js/main.jsx
initial commit
[perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git] / cmd / web / js / main.jsx
CommitLineData
7a9e5112 1var SignupForm = require('./signup.js').SignupForm;
2var SigninForm = require('./signin.js').SigninForm;
3var OtpEnrollForm = require('./otp.js').OtpEnrollForm;
4var PoloniexForm = require('./poloniex.js').PoloniexForm;
5var App = require('./app.js');
6var Api = require('./api.js').Api;
7var cookies = require('./cookies.js');
8
9var Logo = React.createClass({
10 render: function() {
11 return (<div id='logo'>
12 <a href='/'>Cryptoportfolio</a>
13 </div>);
14 }
15});
16
17App.page('/signup', false, function(context) {
18 if (App.isUserSignedIn()) {
19 App.go('/me');
20 return;
21 }
22
23 App.mount(
24 <div>
25 <Logo />
26 <SignupForm onSuccess={App.onUserSignUp}/>
27 </div>
28 );
29});
30
31App.page('/signin', false, function(context) {
32 if (App.isUserSignedIn()) {
33 App.go('/me');
34 return;
35 }
36
37 App.mount(
38 <div>
39 <Logo />
40 <SigninForm onSuccess={App.onUserSignIn}/>
41 </div>
42 );
43});
44
45App.page('/signout', true, function(context) {
46 cookies.removeItem('jwt');
47
48 App.go('/');
49});
50
51App.page('/me', true, function(context) {
52 Api.Call('MARKET', {'name': 'poloniex'}, function(err, status, data) {
53 if (err) {
54 console.error(err, data);
55 return;
56 }
57
58 App.mount(
59 <div>
60 <Logo />
61 <p>Poloniex</p>
62 <PoloniexForm apiKey={data.key} apiSecret={data.secret}/>
63 </div>
64 );
65
66 }.bind(this));
67});
68
69App.page('/otp/setup', true, function(context) {
70 Api.Call('OTP_ENROLL', {}, function(err, status, data) {
71 if (err) {
72 console.error(err, data);
73 return;
74 }
75
76 App.mount(
77 <div>
78 <Logo />
79 <OtpEnrollForm onSuccess={App.onUserValidateOtp} img={'data:image/png;base64,' + data.base64img} secret={data.secret}/>
80 </div>
81 );
82
83 }.bind(this));
84});
85
86App.page('/otp/validate', true, function(context) {
87 App.mount(
88 <div>
89 <Logo />
90 <OtpEnrollForm onSuccess={App.onUserValidateOtp} />
91 </div>
92 );
93});
94
95App.page('/', false, function(context) {
96 App.go('/me');
97});
98
99$(document).ready(function() {
100 App.start();
101});