2020-05-04 11:33:11 +00:00
< ? php
/**
* WooCommerce Admin : Payments reminder note .
*
* Adds a notes to complete the payment methods .
*/
namespace Automattic\WooCommerce\Admin\Notes ;
defined ( 'ABSPATH' ) || exit ;
/**
2020-09-28 04:35:10 +00:00
* Onboarding_Payments .
2020-05-04 11:33:11 +00:00
*/
2020-09-28 04:35:10 +00:00
class Onboarding_Payments {
2020-05-22 13:48:40 +00:00
/**
* Note traits .
*/
use NoteTraits ;
/**
* Name of the note for use in the database .
*/
2020-05-04 11:33:11 +00:00
const NOTE_NAME = 'wc-admin-onboarding-payments-reminder' ;
/**
2020-05-22 13:48:40 +00:00
* Get the note .
2020-09-28 04:35:10 +00:00
*
* @ return Note
2020-05-04 11:33:11 +00:00
*/
2020-05-22 13:48:40 +00:00
public static function get_note () {
2020-07-14 21:21:43 +00:00
// We want to show the note after five days.
if ( ! self :: wc_admin_active_for ( 5 * DAY_IN_SECONDS ) ) {
2020-05-04 11:33:11 +00:00
return ;
}
// Check to see if any gateways have been added.
$gateways = WC () -> payment_gateways -> get_available_payment_gateways ();
$enabled_gateways = array_filter (
$gateways ,
function ( $gateway ) {
return 'yes' === $gateway -> enabled ;
}
);
if ( ! empty ( $enabled_gateways ) ) {
return ;
}
2020-09-28 04:35:10 +00:00
$note = new Note ();
2020-05-04 11:33:11 +00:00
$note -> set_title ( __ ( 'Start accepting payments on your store!' , 'woocommerce-admin' ) );
$note -> set_content ( __ ( 'Take payments with the provider that’ s right for you - choose from 100+ payment gateways for WooCommerce.' , 'woocommerce-admin' ) );
2020-09-28 04:35:10 +00:00
$note -> set_type ( Note :: E_WC_ADMIN_NOTE_INFORMATIONAL );
2020-05-04 11:33:11 +00:00
$note -> set_name ( self :: NOTE_NAME );
$note -> set_content_data ( ( object ) array () );
$note -> set_source ( 'woocommerce-admin' );
$note -> add_action (
'view-payment-gateways' ,
__ ( 'Learn more' , 'woocommerce-admin' ),
'https://woocommerce.com/product-category/woocommerce-extensions/payment-gateways/' ,
2020-09-28 04:35:10 +00:00
Note :: E_WC_ADMIN_NOTE_ACTIONED ,
2020-05-04 11:33:11 +00:00
true
);
2020-05-22 13:48:40 +00:00
return $note ;
2020-05-04 11:33:11 +00:00
}
}