2020-06-10 13:32:12 +00:00
< ? php
/**
* WooCommerce Admin : Starting a dropshipping business .
*
* Adds a note to ask the client if they are considering starting a dropshipping business .
*/
namespace Automattic\WooCommerce\Admin\Notes ;
defined ( 'ABSPATH' ) || exit ;
/**
2020-09-28 04:35:10 +00:00
* Start_Dropshipping_Business .
2020-06-10 13:32:12 +00:00
*/
2020-10-28 17:12:14 +00:00
class StartDropshippingBusiness {
2020-06-10 13:32:12 +00:00
/**
* Note traits .
*/
use NoteTraits ;
/**
* Name of the note for use in the database .
*/
const NOTE_NAME = 'wc-admin-start-dropshipping-business' ;
/**
* Get the note .
2020-09-28 04:35:10 +00:00
*
* @ return Note | null
2020-06-10 13:32:12 +00:00
*/
public static function get_note () {
// We want to show the note after one day.
2021-06-24 14:32:02 +00:00
if ( ! self :: is_wc_admin_active_in_date_range ( 'week-1' , DAY_IN_SECONDS ) ) {
2020-06-10 13:32:12 +00:00
return ;
}
$onboarding_profile = get_option ( 'woocommerce_onboarding_profile' , array () );
// Confirm that $onboarding_profile is set.
if ( empty ( $onboarding_profile ) ) {
return ;
}
// Make sure that the person who filled out the OBW was not setting up the store for their customer/client.
2020-07-06 17:09:54 +00:00
if (
! isset ( $onboarding_profile [ 'setup_client' ] ) ||
$onboarding_profile [ 'setup_client' ]
) {
2020-06-10 13:32:12 +00:00
return ;
}
// We need to show the notification when product number is 0 or the revenue is 'none' or 'up to 2500'.
if (
2020-07-06 17:09:54 +00:00
! isset ( $onboarding_profile [ 'product_count' ] ) ||
! isset ( $onboarding_profile [ 'revenue' ] ) ||
(
0 !== ( int ) $onboarding_profile [ 'product_count' ] &&
'none' !== $onboarding_profile [ 'revenue' ] &&
'up-to-2500' !== $onboarding_profile [ 'revenue' ]
)
2020-06-10 13:32:12 +00:00
) {
return ;
}
2020-09-28 04:35:10 +00:00
$note = new Note ();
2020-06-10 13:32:12 +00:00
$note -> set_title ( __ ( 'Are you considering starting a dropshipping business?' , 'woocommerce-admin' ) );
$note -> set_content ( __ ( 'The ability to add inventory without having to deal with production, stocking, or fulfilling orders may seem like a dream. But is dropshipping worth it? Let’ s explore some of the advantages and disadvantages to help you make the best decision for your business.' , 'woocommerce-admin' ) );
2020-09-28 04:35:10 +00:00
$note -> set_type ( Note :: E_WC_ADMIN_NOTE_INFORMATIONAL );
2020-06-10 13:32:12 +00:00
$note -> set_name ( self :: NOTE_NAME );
$note -> set_content_data ( ( object ) array () );
$note -> set_source ( 'woocommerce-admin' );
$note -> add_action (
'dropshipping-business' ,
__ ( 'Learn more' , 'woocommerce-admin' ),
'https://woocommerce.com/posts/is-dropshipping-worth-it-pros-cons/?utm_source=inbox' ,
2020-09-28 04:35:10 +00:00
Note :: E_WC_ADMIN_NOTE_ACTIONED ,
2020-06-10 13:32:12 +00:00
true
);
return $note ;
}
}