Merge pull request #794 from lbryio/insufficient-funds-create-channel

Check the users balance before trying to publish/create a channel
This commit is contained in:
Sean Yesmunt 2017-11-29 15:42:49 -05:00 committed by GitHub
commit 776aadc369
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 30 additions and 2 deletions

View file

@ -66,6 +66,9 @@
"perMachine": true
}
},
"scripts": {
"start": "./node_modules/.bin/electron src/main"
},
"devDependencies": {
"devtron": "^1.4.0",
"electron": "^1.7.9",

View file

@ -1,5 +1,10 @@
import React from "react";
import { connect } from "react-redux";
import PublishForm from "./view";
import { selectBalance } from "redux/selectors/wallet";
export default connect(null, null)(PublishForm);
const select = state => ({
balance: selectBalance(state),
});
export default connect(select, null)(PublishForm);

View file

@ -48,11 +48,22 @@ class ChannelSection extends React.PureComponent {
handleNewChannelBidChange(event) {
this.setState({
newChannelBid: event.target.value,
newChannelBid: parseFloat(event.target.value),
});
}
handleCreateChannelClick(event) {
const { balance } = this.props;
const { newChannelBid } = this.state;
if (newChannelBid > balance) {
this.refs.newChannelName.showError(
__("Unable to create channel due to insufficient funds.")
);
return;
}
this.setState({
creatingChannel: true,
});

View file

@ -61,6 +61,15 @@ class PublishForm extends React.PureComponent {
}
handleSubmit() {
const { balance } = this.props;
const { bid } = this.state;
if (bid > balance) {
this.handlePublishError({ message: "insufficient funds" });
return;
}
this.setState({
submitting: true,
});