mirror of
https://github.com/LBRYFoundation/lbry-desktop.git
synced 2025-09-01 17:55:11 +00:00
invites for all
This commit is contained in:
parent
b07682ef9d
commit
2fb0bf4a14
6 changed files with 30 additions and 19 deletions
|
@ -187,7 +187,9 @@ export function doFetchInviteStatus() {
|
||||||
dispatch({
|
dispatch({
|
||||||
type: types.USER_INVITE_STATUS_FETCH_SUCCESS,
|
type: types.USER_INVITE_STATUS_FETCH_SUCCESS,
|
||||||
data: {
|
data: {
|
||||||
invitesRemaining: status.invites_remaining,
|
invitesRemaining: status.invites_remaining
|
||||||
|
? status.invites_remaining
|
||||||
|
: 0,
|
||||||
invitees: status.invitees,
|
invitees: status.invitees,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { Icon } from "component/common";
|
import { Icon } from "component/common";
|
||||||
|
import RewardLink from "component/rewardLink";
|
||||||
|
import rewards from "rewards.js";
|
||||||
|
|
||||||
class InviteList extends React.PureComponent {
|
class InviteList extends React.PureComponent {
|
||||||
render() {
|
render() {
|
||||||
|
@ -38,11 +40,18 @@ class InviteList extends React.PureComponent {
|
||||||
<tr key={index}>
|
<tr key={index}>
|
||||||
<td>{invitee.email}</td>
|
<td>{invitee.email}</td>
|
||||||
<td className="text-center">
|
<td className="text-center">
|
||||||
{invitee.invite_accepted && <Icon icon="icon-check" />}
|
{invitee.invite_accepted
|
||||||
|
? <Icon icon="icon-check" />
|
||||||
|
: <span className="empty">{__("unused")}</span>}
|
||||||
</td>
|
</td>
|
||||||
<td className="text-center">
|
<td className="text-center">
|
||||||
{invitee.invite_reward_claimed &&
|
{invitee.invite_reward_claimed
|
||||||
<Icon icon="icon-check" />}
|
? <Icon icon="icon-check" />
|
||||||
|
: <RewardLink
|
||||||
|
label={__("Claim")}
|
||||||
|
button="text"
|
||||||
|
reward_type={rewards.TYPE_FIRST_PUBLISH}
|
||||||
|
/>}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
);
|
);
|
||||||
|
|
|
@ -73,25 +73,20 @@ class InviteNew extends React.PureComponent {
|
||||||
)}
|
)}
|
||||||
</h3>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
|
{/*
|
||||||
<div className="card__content">
|
<div className="card__content">
|
||||||
{invitesRemaining > 0 &&
|
{invitesRemaining > 0 &&
|
||||||
<p>{__("You have %s invites remaining.", invitesRemaining)}</p>}
|
<p>{__("You have %s invites remaining.", invitesRemaining)}</p>}
|
||||||
{invitesRemaining <= 0 &&
|
{invitesRemaining <= 0 &&
|
||||||
<p>
|
<p className="empty">{__("You have no invites.")}</p>}
|
||||||
<span className="empty">
|
</div> */}
|
||||||
{__("You have no invites.", invitesRemaining)}
|
|
||||||
</span>
|
|
||||||
</p>}
|
|
||||||
</div>
|
|
||||||
{!inviteStatusIsPending &&
|
|
||||||
invitesRemaining > 0 &&
|
|
||||||
<div className="card__content">
|
<div className="card__content">
|
||||||
<FormInviteNew
|
<FormInviteNew
|
||||||
errorMessage={errorMessage}
|
errorMessage={errorMessage}
|
||||||
inviteNew={inviteNew}
|
inviteNew={inviteNew}
|
||||||
isPending={isPending}
|
isPending={isPending}
|
||||||
/>
|
/>
|
||||||
</div>}
|
</div>
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ const RewardLink = props => {
|
||||||
claimReward,
|
claimReward,
|
||||||
clearError,
|
clearError,
|
||||||
errorMessage,
|
errorMessage,
|
||||||
|
label,
|
||||||
isPending,
|
isPending,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
|
@ -17,7 +18,9 @@ const RewardLink = props => {
|
||||||
<Link
|
<Link
|
||||||
button={button ? button : "alt"}
|
button={button ? button : "alt"}
|
||||||
disabled={isPending}
|
disabled={isPending}
|
||||||
label={isPending ? __("Claiming...") : __("Claim Reward")}
|
label={
|
||||||
|
isPending ? __("Claiming...") : label ? label : __("Claim Reward")
|
||||||
|
}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
claimReward(reward);
|
claimReward(reward);
|
||||||
}}
|
}}
|
||||||
|
|
|
@ -95,6 +95,7 @@ rewards.TYPE_FIRST_STREAM = "first_stream";
|
||||||
rewards.TYPE_MANY_DOWNLOADS = "many_downloads";
|
rewards.TYPE_MANY_DOWNLOADS = "many_downloads";
|
||||||
rewards.TYPE_FIRST_PUBLISH = "first_publish";
|
rewards.TYPE_FIRST_PUBLISH = "first_publish";
|
||||||
rewards.TYPE_FEATURED_DOWNLOAD = "featured_download";
|
rewards.TYPE_FEATURED_DOWNLOAD = "featured_download";
|
||||||
|
rewards.TYPE_REFERRAL = "referral";
|
||||||
|
|
||||||
rewards.claimReward = function(type) {
|
rewards.claimReward = function(type) {
|
||||||
function requestReward(resolve, reject, params) {
|
function requestReward(resolve, reject, params) {
|
||||||
|
|
|
@ -61,6 +61,7 @@ export const selectWunderBarIcon = createSelector(selectCurrentPage, page => {
|
||||||
case "invite":
|
case "invite":
|
||||||
return "icon-envelope-open";
|
return "icon-envelope-open";
|
||||||
case "address":
|
case "address":
|
||||||
|
case "receive":
|
||||||
return "icon-address-book";
|
return "icon-address-book";
|
||||||
case "wallet":
|
case "wallet":
|
||||||
case "backup":
|
case "backup":
|
||||||
|
|
Loading…
Add table
Reference in a new issue