diff --git a/src/bitrate.js b/src/bitrate.js new file mode 100644 index 0000000..33e750d --- /dev/null +++ b/src/bitrate.js @@ -0,0 +1,11 @@ +export function formatBitrate(bitrate) { + if (bitrate > 1000000000) { + return `${(bitrate / 1000000000).toFixed(2)} Gb/s`; + } else if (bitrate > 1000000) { + return `${(bitrate / 1000000).toFixed(2)} Mb/s`; + } else if (bitrate > 1000) { + return `${(bitrate / 1000).toFixed(2)} Kb/s`; + } else { + return `${bitrate} b/s`; + } +} diff --git a/src/reducers/index.js b/src/reducers/index.js index ba1dc2b..d22999c 100644 --- a/src/reducers/index.js +++ b/src/reducers/index.js @@ -2,12 +2,14 @@ import { combineReducers } from 'redux'; import { routerReducer } from 'react-router-redux' import subscribe from './subscribe'; import filter_subscribe from './filter_subscribe'; +import server from './server'; import torrents from './torrents'; import files from './files'; const root = combineReducers({ subscribe, filter_subscribe, + server, torrents, files, router: routerReducer diff --git a/src/reducers/server.js b/src/reducers/server.js new file mode 100644 index 0000000..25b3c91 --- /dev/null +++ b/src/reducers/server.js @@ -0,0 +1,16 @@ +import { + UPDATE_RESOURCES, + RESOURCES_REMOVED +} from '../actions/resources'; + +export default function server(state = {}, action) { + switch (action.type) { + case UPDATE_RESOURCES: + if (action.resources.length !== 1 || + action.resources[0].type !== "server") { + return state; + } + return { ...state, ...action.resources[0] }; + } + return state; +} diff --git a/src/ui/main.js b/src/ui/main.js index 9a33210..50d6dc0 100644 --- a/src/ui/main.js +++ b/src/ui/main.js @@ -1,8 +1,9 @@ import React, { Component } from 'react'; -import { Route } from 'react-router'; +import { Route, DefaultRoute } from 'react-router'; import TorrentTable from './torrent_table'; import AddTorrent from './add_torrent'; import TorrentDetails from './torrent_details'; +import Server from './server'; export default class Main extends Component { render() { @@ -14,6 +15,7 @@ export default class Main extends Component {