lbry-desktop/ui/js/component/inviteNew/view.jsx

93 lines
2.1 KiB
React
Raw Normal View History

2017-08-18 05:31:44 +02:00
import React from "react";
2017-08-26 05:21:26 +02:00
import { BusyMessage, CreditAmount } from "component/common";
import { Form, FormRow, Submit } from "component/form.js";
2017-08-18 05:31:44 +02:00
class FormInviteNew extends React.PureComponent {
constructor(props) {
super(props);
this.state = {
email: "",
};
}
handleEmailChanged(event) {
this.setState({
email: event.target.value,
});
}
handleSubmit() {
const { email } = this.state;
this.props.inviteNew(email);
2017-08-18 05:31:44 +02:00
}
render() {
const { errorMessage, isPending } = this.props;
return (
<Form onSubmit={this.handleSubmit.bind(this)}>
2017-08-18 05:31:44 +02:00
<FormRow
type="text"
label="Email"
placeholder="youremail@example.org"
name="email"
value={this.state.email}
errorMessage={errorMessage}
onChange={event => {
this.handleEmailChanged(event);
}}
/>
<div className="form-row-submit">
<Submit label={__("Send Invite")} disabled={isPending} />
2017-08-18 05:31:44 +02:00
</div>
</Form>
2017-08-18 05:31:44 +02:00
);
}
}
class InviteNew extends React.PureComponent {
render() {
const {
errorMessage,
invitesRemaining,
inviteNew,
inviteStatusIsPending,
isPending,
2017-08-26 05:21:26 +02:00
rewardAmount,
2017-08-18 05:31:44 +02:00
} = this.props;
return (
<section className="card">
<div className="card__title-primary">
2017-08-26 05:21:26 +02:00
<CreditAmount amount={rewardAmount} />
2017-08-18 05:31:44 +02:00
<h3>
2017-08-26 05:21:26 +02:00
{__("Invite a Friend")}
2017-08-18 05:31:44 +02:00
</h3>
</div>
2017-08-25 21:51:54 +02:00
{/*
2017-08-18 05:31:44 +02:00
<div className="card__content">
{invitesRemaining > 0 &&
<p>{__("You have %s invites remaining.", invitesRemaining)}</p>}
{invitesRemaining <= 0 &&
2017-08-25 21:51:54 +02:00
<p className="empty">{__("You have no invites.")}</p>}
</div> */}
<div className="card__content">
2017-08-26 05:21:26 +02:00
<p>
{__(
"Or an enemy. Or your cousin Jerry, who you're kind of unsure about."
)}
</p>
2017-08-25 21:51:54 +02:00
<FormInviteNew
errorMessage={errorMessage}
inviteNew={inviteNew}
isPending={isPending}
/>
2017-08-18 05:31:44 +02:00
</div>
</section>
);
}
}
export default InviteNew;