Display proper product discovery tasks if Woo is active
[MAILPOET-4827]
This commit is contained in:
committed by
Aschepikov
parent
18c2e53af8
commit
c1b552b5ff
@@ -10,9 +10,10 @@ type Props = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export function ProductDiscovery({ onHide }: Props): JSX.Element {
|
export function ProductDiscovery({ onHide }: Props): JSX.Element {
|
||||||
const { tasksStatus } = useSelect(
|
const { tasksStatus, isWooCommerceActive } = useSelect(
|
||||||
(select) => ({
|
(select) => ({
|
||||||
tasksStatus: select(storeName).getProductDiscoveryTasksStatus(),
|
tasksStatus: select(storeName).getProductDiscoveryTasksStatus(),
|
||||||
|
isWooCommerceActive: select(storeName).getIsWooCommerceActive(),
|
||||||
}),
|
}),
|
||||||
[],
|
[],
|
||||||
);
|
);
|
||||||
@@ -36,35 +37,41 @@ export function ProductDiscovery({ onHide }: Props): JSX.Element {
|
|||||||
isDone={tasksStatus.addSubscriptionForm}
|
isDone={tasksStatus.addSubscriptionForm}
|
||||||
doneMessage={MailPoet.I18n.t('addSubscriptionFormDone')}
|
doneMessage={MailPoet.I18n.t('addSubscriptionFormDone')}
|
||||||
/>,
|
/>,
|
||||||
<DiscoveryTask
|
|
||||||
key="sendFirstNewsletter"
|
|
||||||
title={MailPoet.I18n.t('sendFirstNewsletter')}
|
|
||||||
description={MailPoet.I18n.t('sendFirstNewsletterDesc')}
|
|
||||||
link="admin.php?page=mailpoet-newsletters#/new"
|
|
||||||
imgSrc={`${MailPoet.cdnUrl}homepage/newsletter-illustration.png`}
|
|
||||||
isDone={tasksStatus.sendFirstNewsletter}
|
|
||||||
doneMessage={MailPoet.I18n.t('sendFirstNewsletterDone')}
|
|
||||||
/>,
|
|
||||||
<DiscoveryTask
|
|
||||||
key="setUpAbandonedCartEmail"
|
|
||||||
title={MailPoet.I18n.t('setUpAbandonedCartEmail')}
|
|
||||||
description={MailPoet.I18n.t('setUpAbandonedCartEmailDesc')}
|
|
||||||
link="admin.php?page=mailpoet-newsletters#/new/woocommerce/woocommerce_abandoned_shopping_cart/conditions"
|
|
||||||
imgSrc={`${MailPoet.cdnUrl}homepage/woo-cart-email-illustration.png`}
|
|
||||||
isDone={tasksStatus.setUpAbandonedCartEmail}
|
|
||||||
doneMessage={MailPoet.I18n.t('setUpAbandonedCartEmailDone')}
|
|
||||||
/>,
|
|
||||||
<DiscoveryTask
|
|
||||||
key="brandWooEmails"
|
|
||||||
title={MailPoet.I18n.t('brandWooEmails')}
|
|
||||||
description={MailPoet.I18n.t('brandWooEmailsDesc')}
|
|
||||||
link="admin.php?page=mailpoet-settings#/woocommerce"
|
|
||||||
imgSrc={`${MailPoet.cdnUrl}homepage/woo-transactional-email-illustration.png`}
|
|
||||||
isDone={tasksStatus.brandWooEmails}
|
|
||||||
doneMessage={MailPoet.I18n.t('brandWooEmailsDone')}
|
|
||||||
/>,
|
|
||||||
);
|
);
|
||||||
|
if (!isWooCommerceActive) {
|
||||||
|
tasks.push(
|
||||||
|
<DiscoveryTask
|
||||||
|
key="sendFirstNewsletter"
|
||||||
|
title={MailPoet.I18n.t('sendFirstNewsletter')}
|
||||||
|
description={MailPoet.I18n.t('sendFirstNewsletterDesc')}
|
||||||
|
link="admin.php?page=mailpoet-newsletters#/new"
|
||||||
|
imgSrc={`${MailPoet.cdnUrl}homepage/newsletter-illustration.png`}
|
||||||
|
isDone={tasksStatus.sendFirstNewsletter}
|
||||||
|
doneMessage={MailPoet.I18n.t('sendFirstNewsletterDone')}
|
||||||
|
/>,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
tasks.push(
|
||||||
|
<DiscoveryTask
|
||||||
|
key="setUpAbandonedCartEmail"
|
||||||
|
title={MailPoet.I18n.t('setUpAbandonedCartEmail')}
|
||||||
|
description={MailPoet.I18n.t('setUpAbandonedCartEmailDesc')}
|
||||||
|
link="admin.php?page=mailpoet-newsletters#/new/woocommerce/woocommerce_abandoned_shopping_cart/conditions"
|
||||||
|
imgSrc={`${MailPoet.cdnUrl}homepage/woo-cart-email-illustration.png`}
|
||||||
|
isDone={tasksStatus.setUpAbandonedCartEmail}
|
||||||
|
doneMessage={MailPoet.I18n.t('setUpAbandonedCartEmailDone')}
|
||||||
|
/>,
|
||||||
|
<DiscoveryTask
|
||||||
|
key="brandWooEmails"
|
||||||
|
title={MailPoet.I18n.t('brandWooEmails')}
|
||||||
|
description={MailPoet.I18n.t('brandWooEmailsDesc')}
|
||||||
|
link="admin.php?page=mailpoet-settings#/woocommerce"
|
||||||
|
imgSrc={`${MailPoet.cdnUrl}homepage/woo-transactional-email-illustration.png`}
|
||||||
|
isDone={tasksStatus.brandWooEmails}
|
||||||
|
doneMessage={MailPoet.I18n.t('brandWooEmailsDone')}
|
||||||
|
/>,
|
||||||
|
);
|
||||||
|
}
|
||||||
return (
|
return (
|
||||||
<div className="mailpoet-homepage-section__container">
|
<div className="mailpoet-homepage-section__container">
|
||||||
<div className="mailpoet-homepage-section__heading">
|
<div className="mailpoet-homepage-section__heading">
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
import { MailPoet } from 'mailpoet';
|
||||||
import { State } from './types';
|
import { State } from './types';
|
||||||
|
|
||||||
export function getInitialState(): State {
|
export function getInitialState(): State {
|
||||||
@@ -14,5 +15,6 @@ export function getInitialState(): State {
|
|||||||
isHidden: window.mailpoet_homepage_data.product_discovery_dismissed,
|
isHidden: window.mailpoet_homepage_data.product_discovery_dismissed,
|
||||||
tasksStatus: window.mailpoet_homepage_data.product_discovery_status,
|
tasksStatus: window.mailpoet_homepage_data.product_discovery_status,
|
||||||
},
|
},
|
||||||
|
isWooCommerceActive: MailPoet.isWoocommerceActive,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@@ -31,6 +31,10 @@ export function getIsProductDiscoveryHidden(state: State): boolean {
|
|||||||
return state.productDiscovery.isHidden;
|
return state.productDiscovery.isHidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getIsWooCommerceActive(state: State): boolean {
|
||||||
|
return state.isWooCommerceActive;
|
||||||
|
}
|
||||||
|
|
||||||
export function getCurrentTask(state: State): TaskType | null {
|
export function getCurrentTask(state: State): TaskType | null {
|
||||||
if (!state.taskList.tasksStatus.senderSet) return 'senderSet';
|
if (!state.taskList.tasksStatus.senderSet) return 'senderSet';
|
||||||
if (!state.taskList.tasksStatus.mssConnected) return 'mssConnected';
|
if (!state.taskList.tasksStatus.mssConnected) return 'mssConnected';
|
||||||
|
@@ -30,4 +30,5 @@ export type TaskType = keyof TaskListTasksStatus;
|
|||||||
export type State = {
|
export type State = {
|
||||||
taskList: TaskListState;
|
taskList: TaskListState;
|
||||||
productDiscovery: ProductDiscoveryState;
|
productDiscovery: ProductDiscoveryState;
|
||||||
|
isWooCommerceActive: boolean;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user