The property was added so that we were able to set the main page dynamically based on the feature switch value. This is no longer needed and we can use the hardcoded constant as we did before. [MAILPOET-4831]
60 lines
2.0 KiB
PHP
60 lines
2.0 KiB
PHP
<?php declare(strict_types = 1);
|
|
|
|
namespace MailPoet\WooCommerce;
|
|
|
|
use Automattic\WooCommerce\Admin\Features\OnboardingTasks\Task;
|
|
use MailPoet\Config\Menu;
|
|
use MailPoet\DI\ContainerWrapper;
|
|
use MailPoet\Settings\SettingsController;
|
|
|
|
/**
|
|
* MailPoet task that is added to the WooCommerce homepage.
|
|
*/
|
|
class MailPoetTask extends Task {
|
|
public function get_id(): string { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
return 'mailpoet_task';
|
|
}
|
|
|
|
public function get_title(): string { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
if ($this->is_complete()) {
|
|
return esc_html__( 'MailPoet is ready to send marketing emails from your store', 'mailpoet' );
|
|
}
|
|
|
|
return esc_html__( 'Set up email marketing with MailPoet', 'mailpoet' );
|
|
}
|
|
|
|
public function get_content(): string { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
return '';
|
|
}
|
|
|
|
/**
|
|
* String that is displayed below the title of the task indicating the estimated completion time.
|
|
*/
|
|
public function get_time(): string { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
return '';
|
|
}
|
|
|
|
/**
|
|
* Link used when the user clicks on the title of the task.
|
|
*/
|
|
public function get_action_url(): string { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
if ($this->is_complete()) {
|
|
return admin_url('admin.php?page=' . Menu::MAIN_PAGE_SLUG);
|
|
}
|
|
|
|
return admin_url('admin.php?page=' . Menu::WELCOME_WIZARD_PAGE_SLUG . '&mailpoet_wizard_loaded_via_woocommerce');
|
|
}
|
|
|
|
/**
|
|
* Whether the task is completed.
|
|
* If the setting 'version' is not null it means the welcome wizard
|
|
* was already completed so we mark this task as completed as well.
|
|
*/
|
|
public function is_complete(): bool { // phpcs:ignore PSR1.Methods.CamelCapsMethodName.NotCamelCaps
|
|
$settings = ContainerWrapper::getInstance()->get(SettingsController::class);
|
|
$version = $settings->get('version');
|
|
|
|
return $version !== null;
|
|
}
|
|
}
|