Fetch task list status only when task list is displayed
[MAILPOET-4827]
This commit is contained in:
committed by
Aschepikov
parent
ce8191ad6c
commit
f50dcd3bd1
2
mailpoet/assets/js/src/global.d.ts
vendored
2
mailpoet/assets/js/src/global.d.ts
vendored
@ -179,7 +179,7 @@ interface Window {
|
||||
mssConnected: boolean;
|
||||
subscribersAdded: boolean;
|
||||
wooSubscribersImported: boolean;
|
||||
};
|
||||
} | null;
|
||||
woo_customers_count: number;
|
||||
subscribers_count: number;
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
export type TaskListState = {
|
||||
isTaskListHidden: boolean;
|
||||
tasksStatus: TaskListTasksStatus;
|
||||
tasksStatus: TaskListTasksStatus | null;
|
||||
canImportWooCommerceSubscribers: boolean;
|
||||
hasImportedSubscribers: boolean;
|
||||
};
|
||||
|
@ -36,10 +36,11 @@ class HomepageDataController {
|
||||
public function getPageData(): array {
|
||||
$subscribersCount = $this->subscribersRepository->getTotalSubscribers();
|
||||
$formsCount = $this->formsRepository->count();
|
||||
$showTaskList = !$this->settingsController->get('homepage.task_list_dismissed', false);
|
||||
return [
|
||||
'task_list_dismissed' => (bool)$this->settingsController->get('homepage.task_list_dismissed', false),
|
||||
'task_list_dismissed' => !$showTaskList,
|
||||
'product_discovery_dismissed' => (bool)$this->settingsController->get('homepage.product_discovery_dismissed', false),
|
||||
'task_list_status' => $this->getTaskListStatus($subscribersCount, $formsCount),
|
||||
'task_list_status' => $showTaskList ? $this->getTaskListStatus($subscribersCount, $formsCount) : null,
|
||||
'woo_customers_count' => $this->wooCommerceHelper->getCustomersCount(),
|
||||
'subscribers_count' => $subscribersCount,
|
||||
];
|
||||
|
@ -5,6 +5,7 @@ namespace MailPoet\Homepage;
|
||||
use MailPoet\Entities\FormEntity;
|
||||
use MailPoet\Entities\SettingEntity;
|
||||
use MailPoet\Entities\SubscriberEntity;
|
||||
use MailPoet\Settings\SettingsController;
|
||||
use MailPoet\Test\DataFactories\Form;
|
||||
use MailPoet\Test\DataFactories\Subscriber;
|
||||
|
||||
@ -30,7 +31,7 @@ class HomepageDataControllerTest extends \MailPoetTest {
|
||||
}
|
||||
|
||||
public function testItFetchesSenderTaskListStatus(): void {
|
||||
$settings = $this->diContainer->get(\MailPoet\Settings\SettingsController::class);
|
||||
$settings = $this->diContainer->get(SettingsController::class);
|
||||
|
||||
$settings->set('sender', null);
|
||||
$data = $this->homepageDataController->getPageData();
|
||||
@ -48,6 +49,13 @@ class HomepageDataControllerTest extends \MailPoetTest {
|
||||
expect($taskListStatus['senderSet'])->true();
|
||||
}
|
||||
|
||||
public function testItDoesntFetchTaskListStatusWhenTaskListDismissed(): void {
|
||||
$settings = $this->diContainer->get(SettingsController::class);
|
||||
$settings->set('homepage.task_list_dismissed', true);
|
||||
$data = $this->homepageDataController->getPageData();
|
||||
expect($data['task_list_status'])->null();
|
||||
}
|
||||
|
||||
public function testItFetchesSubscribersAddedTaskListStatus(): void {
|
||||
$data = $this->homepageDataController->getPageData();
|
||||
$taskListStatus = $data['task_list_status'];
|
||||
|
Reference in New Issue
Block a user