]>
Commit | Line | Data |
---|---|---|
989fb5c7 | 1 | import SignupForm from './signup.js'; |
2 | import SigninForm from './signin.js'; | |
3 | import OtpEnrollForm from './otp.js'; | |
4 | import PoloniexController from './poloniex.js'; | |
5 | import App from './app.js'; | |
6 | import Api from './api.js'; | |
7 | import cookies from './cookies.js'; | |
8 | import React from 'react'; | |
7a9e5112 | 9 | |
989fb5c7 | 10 | class Logo extends React.Component { |
11 | render() { | |
12 | return <div className="row"> | |
13 | <div id="logo" className="offset-4 col-4"> | |
14 | <a href="/">Cryptoportfolio</a> | |
2f91f20a | 15 | </div> |
989fb5c7 | 16 | </div>; |
7a9e5112 | 17 | } |
989fb5c7 | 18 | } |
7a9e5112 | 19 | |
20 | App.page('/signup', false, function(context) { | |
21 | if (App.isUserSignedIn()) { | |
22 | App.go('/me'); | |
23 | return; | |
24 | } | |
25 | ||
989fb5c7 | 26 | App.mount(<div> |
7a9e5112 | 27 | <Logo /> |
28 | <SignupForm onSuccess={App.onUserSignUp}/> | |
989fb5c7 | 29 | </div>); |
7a9e5112 | 30 | }); |
31 | ||
32 | App.page('/signin', false, function(context) { | |
33 | if (App.isUserSignedIn()) { | |
34 | App.go('/me'); | |
35 | return; | |
36 | } | |
37 | ||
989fb5c7 | 38 | App.mount(<div> |
7a9e5112 | 39 | <Logo /> |
40 | <SigninForm onSuccess={App.onUserSignIn}/> | |
989fb5c7 | 41 | </div>); |
7a9e5112 | 42 | }); |
43 | ||
44 | App.page('/signout', true, function(context) { | |
45 | cookies.removeItem('jwt'); | |
46 | ||
47 | App.go('/'); | |
48 | }); | |
49 | ||
50 | App.page('/me', true, function(context) { | |
989fb5c7 | 51 | App.mount(<div> |
2f91f20a | 52 | <Logo /> |
53 | <PoloniexController/> | |
989fb5c7 | 54 | </div>); |
7a9e5112 | 55 | }); |
56 | ||
57 | App.page('/otp/setup', true, function(context) { | |
58 | Api.Call('OTP_ENROLL', {}, function(err, status, data) { | |
59 | if (err) { | |
60 | console.error(err, data); | |
61 | return; | |
62 | } | |
63 | ||
989fb5c7 | 64 | App.mount(<div> |
7a9e5112 | 65 | <Logo /> |
66 | <OtpEnrollForm onSuccess={App.onUserValidateOtp} img={'data:image/png;base64,' + data.base64img} secret={data.secret}/> | |
989fb5c7 | 67 | </div>); |
7a9e5112 | 68 | |
989fb5c7 | 69 | }); |
7a9e5112 | 70 | }); |
71 | ||
72 | App.page('/otp/validate', true, function(context) { | |
989fb5c7 | 73 | App.mount(<div> |
7a9e5112 | 74 | <Logo /> |
75 | <OtpEnrollForm onSuccess={App.onUserValidateOtp} /> | |
989fb5c7 | 76 | </div>); |
7a9e5112 | 77 | }); |
78 | ||
79 | App.page('/', false, function(context) { | |
80 | App.go('/me'); | |
81 | }); | |
82 | ||
83 | $(document).ready(function() { | |
84 | App.start(); | |
85 | }); |