2017-08-25 04:49:24 +02:00
|
|
|
import React, { Component } from 'react';
|
|
|
|
import { connect } from 'react-redux';
|
2017-09-08 09:47:09 +02:00
|
|
|
import moment from 'moment';
|
2017-08-25 04:49:24 +02:00
|
|
|
import { formatBitrate } from '../bitrate';
|
2017-09-08 07:07:31 +02:00
|
|
|
import { ws_disconnect } from '../socket';
|
2017-09-08 09:47:09 +02:00
|
|
|
import date from '../date';
|
2017-08-25 04:49:24 +02:00
|
|
|
|
2017-09-08 07:07:31 +02:00
|
|
|
const throttle = _ => _ === null ? "Unlimited" : formatBitrate(_);
|
2017-09-08 06:57:21 +02:00
|
|
|
|
2017-08-25 04:49:24 +02:00
|
|
|
function Server({ server }) {
|
|
|
|
if (!server.id) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
return (
|
|
|
|
<div>
|
2017-09-08 07:07:31 +02:00
|
|
|
<h3>
|
|
|
|
Server
|
|
|
|
<button
|
|
|
|
className="btn btn-sm btn-outline-danger pull-right"
|
|
|
|
onClick={() => {
|
|
|
|
localStorage.removeItem("autoconnect");
|
|
|
|
ws_disconnect();
|
|
|
|
}}
|
|
|
|
>Disconnect</button>
|
|
|
|
</h3>
|
2017-08-25 04:49:24 +02:00
|
|
|
<dl>
|
|
|
|
<dt>Running since</dt>
|
2017-09-08 09:47:09 +02:00
|
|
|
<dd>{date(moment(server.started))}</dd>
|
2017-08-25 04:49:24 +02:00
|
|
|
<dt>Rate up</dt>
|
|
|
|
<dd>{formatBitrate(server.rate_up)}</dd>
|
|
|
|
<dt>Rate down</dt>
|
|
|
|
<dd>{formatBitrate(server.rate_down)}</dd>
|
|
|
|
{/* TODO: Editable */}
|
|
|
|
<dt>Throttle up</dt>
|
2017-09-08 06:57:21 +02:00
|
|
|
<dd>{throttle(server.throttle_up)}</dd>
|
2017-08-25 04:49:24 +02:00
|
|
|
<dt>Throttle down</dt>
|
2017-09-08 06:57:21 +02:00
|
|
|
<dd>{throttle(server.throttle_down)}</dd>
|
2017-08-25 04:49:24 +02:00
|
|
|
</dl>
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export default connect(state => ({ server: state.server }))(Server);
|