//@TODO: Customize advice based on OS import React from 'react'; import lbry from 'lbry.js'; import Link from 'component/link'; import SubHeader from 'component/subHeader' import {BusyMessage} from 'component/common' class HelpPage extends React.Component { constructor(props) { super(props); this.state = { versionInfo: null, lbryId: null, uiVersion: null, upgradeAvailable: null }; } componentWillMount() { lbry.getAppVersionInfo().then(({remoteVersion, upgradeAvailable}) => { this.setState({ uiVersion: remoteVersion, upgradeAvailable: upgradeAvailable }); }); lbry.call('version', {}, (info) => { this.setState({ versionInfo: info }) }) lbry.getSessionInfo((info) => { this.setState({ lbryId: info.lbry_id, }); }); } render() { let ver, osName, platform, newVerLink; const { navigate } = this.props if (this.state.versionInfo) { ver = this.state.versionInfo; if (ver.os_system == 'Darwin') { osName = (parseInt(ver.os_release.match(/^\d+/)) < 16 ? 'Mac OS X' : 'Mac OS'); platform = `${osName} ${ver.os_release}` newVerLink = 'https://lbry.io/get/lbry.dmg'; } else if (ver.os_system == 'Linux') { platform = `Linux (${ver.platform})`; newVerLink = 'https://lbry.io/get/lbry.deb'; } else { platform = `Windows (${ver.platform})`; newVerLink = 'https://lbry.io/get/lbry.msi'; } } else { ver = null; } return (

{__("Read the FAQ")}

{__("Our FAQ answers many common questions.")}

{__("Get Live Help")}

{__("Live help is available most hours in the")} #help {__("channel of our Slack chat room.")}

{__("Report a Bug")}

{__("Did you find something wrong?")}

navigate('report')} label={__("Submit a Bug Report")} icon="icon-bug" button="alt" />

{__("Thanks! LBRY is made by its users.")}

{__("About")}

{ this.state.upgradeAvailable === null ? '' : ( this.state.upgradeAvailable ?

{__("A newer version of LBRY is available.")}

:

{__("Your copy of LBRY is up to date.")}

)} { this.state.uiVersion && ver ?
{__("daemon (lbrynet)")} {ver.lbrynet_version}
{__("wallet (lbryum)")} {ver.lbryum_version}
{__("interface")} {this.state.uiVersion}
{__("Platform")} {platform}
{__("Installation ID")} {this.state.lbryId}
: }
}
); } } export default HelpPage;