]>
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 | |
ee902062 | 10 | class Header extends React.Component { |
11 | render = () => { | |
12 | if (this.props.displayLogout === true) { | |
13 | return <div id="header" className="row"> | |
14 | <div className="offset-4 col-4"> | |
15 | <Logo /> | |
16 | </div> | |
17 | <div className="offset-2 col-2 align-self-center h-100"> | |
18 | <a href="/signout"><u>Logout</u></a> | |
19 | </div> | |
20 | </div>; | |
21 | } | |
22 | return <div id="header" className="row"> | |
23 | <div className="offset-4 col-4"> | |
24 | <Logo /> | |
25 | </div> | |
26 | </div>; | |
27 | ||
28 | } | |
29 | } | |
30 | ||
989fb5c7 | 31 | class Logo extends React.Component { |
32 | render() { | |
a2ab2260 | 33 | return <div id="logo" className="w-100 h-100 align-self-center"> |
ee902062 | 34 | <h1><a href="/">CryptoPF</a></h1> |
35 | </div>; | |
7a9e5112 | 36 | } |
989fb5c7 | 37 | } |
7a9e5112 | 38 | |
39 | App.page('/signup', false, function(context) { | |
40 | if (App.isUserSignedIn()) { | |
41 | App.go('/me'); | |
42 | return; | |
43 | } | |
44 | ||
989fb5c7 | 45 | App.mount(<div> |
ee902062 | 46 | <Header /> |
7a9e5112 | 47 | <SignupForm onSuccess={App.onUserSignUp}/> |
989fb5c7 | 48 | </div>); |
7a9e5112 | 49 | }); |
50 | ||
51 | App.page('/signin', false, function(context) { | |
52 | if (App.isUserSignedIn()) { | |
53 | App.go('/me'); | |
54 | return; | |
55 | } | |
56 | ||
989fb5c7 | 57 | App.mount(<div> |
ee902062 | 58 | <Header /> |
7a9e5112 | 59 | <SigninForm onSuccess={App.onUserSignIn}/> |
989fb5c7 | 60 | </div>); |
7a9e5112 | 61 | }); |
62 | ||
63 | App.page('/signout', true, function(context) { | |
64 | cookies.removeItem('jwt'); | |
65 | ||
66 | App.go('/'); | |
67 | }); | |
68 | ||
69 | App.page('/me', true, function(context) { | |
989fb5c7 | 70 | App.mount(<div> |
ee902062 | 71 | <Header displayLogout={true} /> |
2f91f20a | 72 | <PoloniexController/> |
989fb5c7 | 73 | </div>); |
7a9e5112 | 74 | }); |
75 | ||
adf936f6 | 76 | App.page('/not_confirmed', true, function(context) { |
77 | App.mount(<div> | |
ee902062 | 78 | <Header displayLogout={true}/> |
adf936f6 | 79 | <div className="row"> |
80 | <div className="box offset-3 col-6 text-center"> | |
81 | <p>Please be patient, you account is being confirmed...</p> | |
82 | <p><a href="/me"><u>Refresh</u></a></p> | |
83 | </div> | |
84 | </div> | |
85 | </div>); | |
86 | }); | |
87 | ||
7a9e5112 | 88 | App.page('/otp/setup', true, function(context) { |
89 | Api.Call('OTP_ENROLL', {}, function(err, status, data) { | |
90 | if (err) { | |
91 | console.error(err, data); | |
92 | return; | |
93 | } | |
94 | ||
989fb5c7 | 95 | App.mount(<div> |
ee902062 | 96 | <Header displayLogout={true}/> |
7a9e5112 | 97 | <OtpEnrollForm onSuccess={App.onUserValidateOtp} img={'data:image/png;base64,' + data.base64img} secret={data.secret}/> |
989fb5c7 | 98 | </div>); |
7a9e5112 | 99 | |
989fb5c7 | 100 | }); |
7a9e5112 | 101 | }); |
102 | ||
103 | App.page('/otp/validate', true, function(context) { | |
989fb5c7 | 104 | App.mount(<div> |
ee902062 | 105 | <Header displayLogout={true}/> |
7a9e5112 | 106 | <OtpEnrollForm onSuccess={App.onUserValidateOtp} /> |
989fb5c7 | 107 | </div>); |
7a9e5112 | 108 | }); |
109 | ||
110 | App.page('/', false, function(context) { | |
111 | App.go('/me'); | |
112 | }); | |
113 | ||
114 | $(document).ready(function() { | |
115 | App.start(); | |
116 | }); |