1 import Api from './api.js';
2 import React from 'react';
3 import {PFBalanceMinimal} from './balance.js';
4 import Panel from './panel.js';
6 class AdminDashboard extends React.Component {
9 this.state = {'portfolios': null, 'globalPerformance': null};
13 Api.Call('ADMIN_PORTFOLIOS', {}, function(err, status, data) {
15 console.error(err, data);
20 'portfolios': data.portfolios,
21 'globalPerformance': {
22 'totalBtcValue': data.totalBtcValue,
23 'totalBtcVariation': data.totalBtcVariation
29 componentDidMount = () => {
34 if (this.state.portfolios === null) {
38 var globalPerformance = <div className="row" key="global">
39 <div className="col-6"><span>Total:</span></div>
40 <div className="col-6 text-center">
41 <PFBalanceMinimal variationP={this.state.globalPerformance.totalBtcVariation} balance={this.state.globalPerformance.totalBtcValue} isPercent={false}/>
44 var portfolios = Object.keys(this.state.portfolios).map(function(email) {
45 return <div className="row" key={email}>
46 <div className="col-6"><span>{email}:</span></div>
47 <div className="col-6 text-center">
48 <PFBalanceMinimal variationP={this.state.portfolios[email].performance.variationP} balance={this.state.portfolios[email].value} isPercent={true}/>
53 portfolios.push(<hr key="hr"/>, globalPerformance);
55 return <Panel component={<div>{portfolios}</div>} title="Portfolios Overview"/>;
60 export default AdminDashboard;