Simplify subscribers count info on subscribers page

[MAILPOET-3143]
This commit is contained in:
Rostislav Wolny
2021-01-06 16:54:20 +01:00
committed by Veljko V
parent 86add53c30
commit 6f426d4154
4 changed files with 12 additions and 53 deletions

View File

@@ -6,62 +6,35 @@ import ReactStringReplace from 'react-string-replace';
type Props = {
subscribersInPlan: number | false;
subscribersInPlanLimit: number | false;
mailpoetSubscribers: number | false;
mailpoetSubscribersLimit: number | false;
hasPremiumSupport: boolean;
wpUsersCount: number | false;
mssActive: boolean;
};
const SubscribersInPlan = ({
subscribersInPlan,
subscribersInPlanLimit,
mailpoetSubscribers,
mailpoetSubscribersLimit,
hasPremiumSupport,
wpUsersCount,
mssActive,
}: Props) => {
const subscribersInPlanCount = (
<b key="1">
if (subscribersInPlan === false) {
return null;
}
const subscribersInPlanCount = subscribersInPlanLimit ? (
<b key="subscribers_count">
{MailPoet.I18n.t('subscribersInPlanCount')
.replace('%$1d', subscribersInPlan.toLocaleString())
.replace('%$2d', subscribersInPlanLimit.toLocaleString())}
</b>
) : (
<b key="subscribers_count">{subscribersInPlan}</b>
);
const mailpoetSubscribersCount = (
<b key="2">
{MailPoet.I18n.t('subscribersInPlanCount')
.replace('%$1d', mailpoetSubscribers.toLocaleString())
.replace('%$2d', mailpoetSubscribersLimit ? mailpoetSubscribersLimit.toLocaleString() : '∞')}
</b>
);
let mailpoetSubscribersTooltip;
if (hasPremiumSupport) {
mailpoetSubscribersTooltip = MailPoet.I18n.t('mailpoetSubscribersTooltipPremium');
} else {
mailpoetSubscribersTooltip = MailPoet.I18n.t('mailpoetSubscribersTooltipFree')
.replace('%$1d', wpUsersCount.toLocaleString());
}
return (
<div className="mailpoet-subscribers-in-plan">
{mssActive && subscribersInPlanLimit && (
<>
{ReactStringReplace(MailPoet.I18n.t('subscribersInPlan'), '%s', () => subscribersInPlanCount)}
{' '}
<HelpTooltip
tooltip={MailPoet.I18n.t('subscribersInPlanTooltip')}
place="right"
/>
<span className="mailpoet-subscribers-in-plan-spacer">{' '}</span>
</>
)}
{ReactStringReplace(MailPoet.I18n.t('mailpoetSubscribers'), '%s', () => mailpoetSubscribersCount)}
{ReactStringReplace(MailPoet.I18n.t('subscribersInPlan'), '%s', () => subscribersInPlanCount)}
{' '}
<HelpTooltip
tooltip={mailpoetSubscribersTooltip}
tooltip={MailPoet.I18n.t('subscribersInPlanTooltip')}
place="right"
/>
<span className="mailpoet-subscribers-in-plan-spacer">{' '}</span>
</div>
);
};

View File

@@ -21,11 +21,6 @@ const ListHeading = () => (
<SubscribersInPlan
subscribersInPlan={window.mailpoet_subscribers_in_plan_count}
subscribersInPlanLimit={window.mailpoet_subscribers_limit}
mailpoetSubscribers={window.mailpoet_premium_subscribers_count}
mailpoetSubscribersLimit={window.mailpoet_subscribers_limit}
hasPremiumSupport={window.mailpoet_has_premium_support}
wpUsersCount={window.mailpoet_wp_users_count}
mssActive={window.mailpoet_mss_active}
/>
</>
);

View File

@@ -428,11 +428,6 @@ const SubscriberList = ({ match }) => {
<SubscribersInPlan
subscribersInPlan={window.mailpoet_subscribers_in_plan_count}
subscribersInPlanLimit={window.mailpoet_subscribers_limit}
mailpoetSubscribers={window.mailpoet_premium_subscribers_count}
mailpoetSubscribersLimit={window.mailpoet_subscribers_limit}
hasPremiumSupport={window.mailpoet_has_premium_support}
wpUsersCount={window.mailpoet_wp_users_count}
mssActive={window.mailpoet_mss_active}
/>
<SubscribersLimitNotice />

View File

@@ -71,10 +71,6 @@
'subscribersInPlan': _x('%s subscribers in your plan', 'number of subscribers in a sending plan'),
'subscribersInPlanTooltip': __('This is the total of subscribed, unconfirmed and inactive subscribers we count when you are sending with MailPoet Sending Service. The count excludes unsubscribed and bounced (invalid) email addresses.'),
'mailpoetSubscribers': _x('%s MailPoet subscribers', 'number of subscribers in the plugin'),
'mailpoetSubscribersTooltipFree': __('This is the total of all subscribers including %$1d WordPress users. To exclude WordPress users, please purchase one of our premium plans.'),
'mailpoetSubscribersTooltipPremium': __('This is the total of all subscribers excluding all WordPress users.'),
'email': __('E-mail'),
'firstname': __('First name'),
'lastname': __('Last name'),