]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git/blame - cmd/web/js/main.jsx
Upgrade ReactJS. EC6 import modules.
[perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git] / cmd / web / js / main.jsx
CommitLineData
989fb5c7 1import SignupForm from './signup.js';
2import SigninForm from './signin.js';
3import OtpEnrollForm from './otp.js';
4import PoloniexController from './poloniex.js';
5import App from './app.js';
6import Api from './api.js';
7import cookies from './cookies.js';
8import React from 'react';
7a9e5112 9
989fb5c7 10class 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
20App.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
32App.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
44App.page('/signout', true, function(context) {
45 cookies.removeItem('jwt');
46
47 App.go('/');
48});
49
50App.page('/me', true, function(context) {
989fb5c7 51 App.mount(<div>
2f91f20a 52 <Logo />
53 <PoloniexController/>
989fb5c7 54 </div>);
7a9e5112 55});
56
57App.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
72App.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
79App.page('/', false, function(context) {
80 App.go('/me');
81});
82
83$(document).ready(function() {
84 App.start();
85});