2020-06-03 10:04:36 +00:00
< ? php
/**
* WooCommerce Admin : WooCommerce Subscriptions .
*
* Adds a note to learn more about WooCommerce Subscriptions .
*/
namespace Automattic\WooCommerce\Admin\Notes ;
defined ( 'ABSPATH' ) || exit ;
use \Automattic\WooCommerce\Admin\Features\Onboarding ;
/**
2020-09-28 04:35:10 +00:00
* WooCommerce_Subscriptions .
2020-06-03 10:04:36 +00:00
*/
2020-10-28 17:12:14 +00:00
class WooCommerceSubscriptions {
2020-06-03 10:04:36 +00:00
/**
* Note traits .
*/
use NoteTraits ;
/**
* Name of the note for use in the database .
*/
const NOTE_NAME = 'wc-admin-woocommerce-subscriptions' ;
/**
* Get the note .
2020-09-28 04:35:10 +00:00
*
* @ return Note | null
2020-06-03 10:04:36 +00:00
*/
public static function get_note () {
$onboarding_data = get_option ( Onboarding :: PROFILE_DATA_OPTION , array () );
if ( ! isset ( $onboarding_data [ 'product_types' ] ) || ! in_array ( 'subscriptions' , $onboarding_data [ 'product_types' ], true ) ) {
return ;
}
2021-06-24 14:32:02 +00:00
if ( ! self :: is_wc_admin_active_in_date_range ( 'week-1' , DAY_IN_SECONDS ) ) {
2020-06-03 10:04:36 +00:00
return ;
}
2020-09-28 04:35:10 +00:00
$note = new Note ();
2020-06-03 10:04:36 +00:00
$note -> set_title ( __ ( 'Do you need more info about WooCommerce Subscriptions?' , 'woocommerce-admin' ) );
$note -> set_content ( __ ( 'WooCommerce Subscriptions allows you to introduce a variety of subscriptions for physical or virtual products and services. Create product-of-the-month clubs, weekly service subscriptions or even yearly software billing packages. Add sign-up fees, offer free trials, or set expiration periods.' , 'woocommerce-admin' ) );
2020-09-28 04:35:10 +00:00
$note -> set_type ( Note :: E_WC_ADMIN_NOTE_MARKETING );
2020-06-03 10:04:36 +00:00
$note -> set_name ( self :: NOTE_NAME );
$note -> set_content_data ( ( object ) array () );
$note -> set_source ( 'woocommerce-admin' );
$note -> add_action (
'learn-more' ,
__ ( 'Learn More' , 'woocommerce-admin' ),
'https://woocommerce.com/products/woocommerce-subscriptions/?utm_source=inbox' ,
2020-09-28 04:35:10 +00:00
Note :: E_WC_ADMIN_NOTE_UNACTIONED ,
2020-06-03 10:04:36 +00:00
true
);
return $note ;
}
}