diff --git a/modules/ppcp-button/src/Assets/SmartButton.php b/modules/ppcp-button/src/Assets/SmartButton.php
index bbca51965..65fb1468d 100644
--- a/modules/ppcp-button/src/Assets/SmartButton.php
+++ b/modules/ppcp-button/src/Assets/SmartButton.php
@@ -351,7 +351,7 @@ class SmartButton implements SmartButtonInterface {
* @throws NotFoundException When a setting was not found.
*/
private function render_message_wrapper_registrar(): bool {
- if ( ! $this->settings_status->pay_later_messaging_is_enabled() ) {
+ if ( ! $this->settings_status->is_pay_later_messaging_enabled() ) {
return false;
}
@@ -603,7 +603,7 @@ class SmartButton implements SmartButtonInterface {
* @throws NotFoundException When a setting was not found.
*/
private function message_values(): array {
- if ( ! $this->settings_status->pay_later_messaging_is_enabled() ) {
+ if ( ! $this->settings_status->is_pay_later_messaging_enabled() ) {
return array();
}
@@ -954,7 +954,7 @@ class SmartButton implements SmartButtonInterface {
$disable_funding = $all_sources;
}
- if ( ! $this->settings_status->pay_later_button_is_enabled_for_context( $this->context() ) ) {
+ if ( ! $this->settings_status->is_pay_later_button_enabled_for_context( $this->context() ) ) {
$disable_funding[] = 'credit';
}
@@ -963,7 +963,7 @@ class SmartButton implements SmartButtonInterface {
}
$enable_funding = array( 'venmo' );
- if ( $this->settings_status->pay_later_messaging_is_enabled() || ! in_array( 'credit', $disable_funding, true ) ) {
+ if ( $this->settings_status->is_pay_later_messaging_enabled() || ! in_array( 'credit', $disable_funding, true ) ) {
$enable_funding[] = 'paylater';
}
@@ -1061,7 +1061,7 @@ class SmartButton implements SmartButtonInterface {
$this->context() === 'product'
&& (
( $this->settings->has( 'button_product_enabled' ) && $this->settings->get( 'button_product_enabled' ) ) ||
- ( $this->settings_status->pay_later_messaging_is_enabled_for_location( 'product' ) )
+ ( $this->settings_status->is_pay_later_messaging_enabled_for_location( 'product' ) )
)
) {
$load_buttons = true;
@@ -1077,7 +1077,7 @@ class SmartButton implements SmartButtonInterface {
$this->context() === 'cart'
&& (
( $this->settings->has( 'button_cart_enabled' ) && $this->settings->get( 'button_cart_enabled' ) ) ||
- ( $this->settings_status->pay_later_messaging_is_enabled_for_location( 'cart' ) )
+ ( $this->settings_status->is_pay_later_messaging_enabled_for_location( 'cart' ) )
)
) {
$load_buttons = true;
diff --git a/modules/ppcp-wc-gateway/pay-later-tab-settings.php b/modules/ppcp-wc-gateway/pay-later-tab-settings.php
index 265fd6b0b..c40152ca6 100644
--- a/modules/ppcp-wc-gateway/pay-later-tab-settings.php
+++ b/modules/ppcp-wc-gateway/pay-later-tab-settings.php
@@ -26,39 +26,54 @@ return function ( ContainerInterface $container, array $fields ): array {
return $fields;
}
- $settings = $container->get( 'wcgateway.settings' );
- assert( $settings instanceof Settings );
+ $settings = $container->get( 'wcgateway.settings' );
+ assert( $settings instanceof Settings );
- $vault_enabled = $settings->has( 'vault_enabled' ) && $settings->get( 'vault_enabled' );
+ $vault_enabled = $settings->has( 'vault_enabled' ) && $settings->get( 'vault_enabled' );
- $pay_later_messaging_enabled_label = $vault_enabled
- ? __( "You have PayPal vaulting enabled, that's why Pay Later options are unavailable now. You cannot use both features at the same time.", 'woocommerce-paypal-payments' )
- : __( 'Enabled', 'woocommerce-paypal-payments' );
+ $pay_later_messaging_enabled_label = $vault_enabled
+ ? __( "You have PayPal vaulting enabled, that's why Pay Later options are unavailable now. You cannot use both features at the same time.", 'woocommerce-paypal-payments' )
+ : __( 'Enabled', 'woocommerce-paypal-payments' );
+
+ $render_preview_element = function ( string $id, string $type ): string {
+ return '
+
+
' . __( 'Preview', 'woocommerce-paypal-payments' ) . '
+
+
';
+ };
$pay_later_fields = array(
'pay_later_button_enabled' => array(
'title' => __( 'Enable/Disable', 'woocommerce-paypal-payments' ),
'type' => 'checkbox',
- 'label' => esc_html($pay_later_messaging_enabled_label),
+ 'label' => esc_html( $pay_later_messaging_enabled_label ),
'default' => true,
'screens' => array( State::STATE_ONBOARDED ),
'requirements' => array( 'messages' ),
'gateway' => Settings::PAY_LATER_TAB_ID,
- 'input_class' => $vault_enabled ? array( 'ppcp-disabled-checkbox' ) : array(),
+ 'input_class' => $vault_enabled ? array( 'ppcp-disabled-checkbox' ) : array(),
+ ),
+ 'pay_later_button_locations' => array(
+ 'title' => __( 'Pay Later Button Locations', 'woocommerce-paypal-payments' ),
+ 'type' => 'ppcp-multiselect',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => array(),
+ 'desc_tip' => false,
+ 'description' => __( 'Example description', 'woocommerce-paypal-payments' ),
+ 'options' => $container->get( 'wcgateway.settings.pay-later.button-locations' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_button_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpPayLaterButtonPreview', 'button' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
),
- 'pay_later_button_locations' => array(
- 'title' => __( 'Pay Later Button Locations', 'woocommerce-paypal-payments' ),
- 'type' => 'ppcp-multiselect',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => array(),
- 'desc_tip' => false,
- 'description' => __( 'Example description', 'woocommerce-paypal-payments' ),
- 'options' => $container->get( 'wcgateway.settings.pay-later.button-locations' ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
// Messaging.
'pay_later_messaging_heading' => array(
@@ -69,16 +84,16 @@ return function ( ContainerInterface $container, array $fields ): array {
'gateway' => Settings::PAY_LATER_TAB_ID,
'description' => __( 'Example description.', 'woocommerce-paypal-payments' ),
),
- 'pay_later_messaging_enabled' => array(
- 'title' => __( 'Enable/Disable', 'woocommerce-paypal-payments' ),
- 'type' => 'checkbox',
- 'label' => esc_html($pay_later_messaging_enabled_label),
- 'default' => true,
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- 'input_class' => $vault_enabled ? array( 'ppcp-disabled-checkbox' ) : array(),
- ),
+ 'pay_later_messaging_enabled' => array(
+ 'title' => __( 'Enable/Disable', 'woocommerce-paypal-payments' ),
+ 'type' => 'checkbox',
+ 'label' => esc_html( $pay_later_messaging_enabled_label ),
+ 'default' => true,
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ 'input_class' => $vault_enabled ? array( 'ppcp-disabled-checkbox' ) : array(),
+ ),
'pay_later_messaging_locations' => array(
'title' => __( 'Pay Later Messaging Locations', 'woocommerce-paypal-payments' ),
'type' => 'ppcp-multiselect',
@@ -209,357 +224,385 @@ return function ( ContainerInterface $container, array $fields ): array {
'requirements' => array( 'messages' ),
'gateway' => Settings::PAY_LATER_TAB_ID,
),
+ 'pay_later_general_message_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpGeneralMessagePreview', 'message' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
- //Single product
- 'pay_later_product_messaging_heading' => array(
- 'heading' => __( 'Pay Later Messaging on Single Product', 'woocommerce-paypal-payments' ),
- 'type' => 'ppcp-heading',
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array(),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_layout' => array(
- 'title' => __( 'Single Product Messaging Layout', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'text',
- 'desc_tip' => true,
- 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
- 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_logo' => array(
- 'title' => __( 'Single Product Messaging Logo', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'primary',
- 'desc_tip' => true,
- 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
- 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
- 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
- 'none' => __( 'None', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_position' => array(
- 'title' => __( 'Single Product Messaging Logo Position', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'left',
- 'desc_tip' => true,
- 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
- 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
- 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_color' => array(
- 'title' => __( 'Single Product Messaging Text Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'black',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_flex_color' => array(
- 'title' => __( 'Single Product Messaging Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'blue',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
- 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_product_message_flex_ratio' => array(
- 'title' => __( 'Single Product Messaging Ratio', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => '1x1',
- 'desc_tip' => true,
- 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
- '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
- '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
- '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
+ // Single product
+ 'pay_later_product_messaging_heading' => array(
+ 'heading' => __( 'Pay Later Messaging on Single Product', 'woocommerce-paypal-payments' ),
+ 'type' => 'ppcp-heading',
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array(),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_layout' => array(
+ 'title' => __( 'Single Product Messaging Layout', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'text',
+ 'desc_tip' => true,
+ 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
+ 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_logo' => array(
+ 'title' => __( 'Single Product Messaging Logo', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'primary',
+ 'desc_tip' => true,
+ 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
+ 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
+ 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
+ 'none' => __( 'None', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_position' => array(
+ 'title' => __( 'Single Product Messaging Logo Position', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'left',
+ 'desc_tip' => true,
+ 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
+ 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
+ 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_color' => array(
+ 'title' => __( 'Single Product Messaging Text Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'black',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_flex_color' => array(
+ 'title' => __( 'Single Product Messaging Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'blue',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
+ 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_flex_ratio' => array(
+ 'title' => __( 'Single Product Messaging Ratio', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => '1x1',
+ 'desc_tip' => true,
+ 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
+ '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
+ '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
+ '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_product_message_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpProductMessagePreview', 'message' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
- //Cart
- 'pay_later_cart_messaging_heading' => array(
- 'heading' => __( 'Pay Later Messaging on Cart', 'woocommerce-paypal-payments' ),
- 'type' => 'ppcp-heading',
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array(),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_layout' => array(
- 'title' => __( 'Cart Messaging Layout', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'text',
- 'desc_tip' => true,
- 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
- 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_logo' => array(
- 'title' => __( 'Cart Messaging Logo', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'primary',
- 'desc_tip' => true,
- 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
- 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
- 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
- 'none' => __( 'None', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_position' => array(
- 'title' => __( 'Cart Messaging Logo Position', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'left',
- 'desc_tip' => true,
- 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
- 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
- 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_color' => array(
- 'title' => __( 'Cart Messaging Text Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'black',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_flex_color' => array(
- 'title' => __( 'Cart Messaging Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'blue',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
- 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_cart_message_flex_ratio' => array(
- 'title' => __( 'Cart Messaging Ratio', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => '1x1',
- 'desc_tip' => true,
- 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
- '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
- '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
- '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
+ // Cart
+ 'pay_later_cart_messaging_heading' => array(
+ 'heading' => __( 'Pay Later Messaging on Cart', 'woocommerce-paypal-payments' ),
+ 'type' => 'ppcp-heading',
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array(),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_layout' => array(
+ 'title' => __( 'Cart Messaging Layout', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'text',
+ 'desc_tip' => true,
+ 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
+ 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_logo' => array(
+ 'title' => __( 'Cart Messaging Logo', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'primary',
+ 'desc_tip' => true,
+ 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
+ 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
+ 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
+ 'none' => __( 'None', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_position' => array(
+ 'title' => __( 'Cart Messaging Logo Position', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'left',
+ 'desc_tip' => true,
+ 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
+ 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
+ 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_color' => array(
+ 'title' => __( 'Cart Messaging Text Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'black',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_flex_color' => array(
+ 'title' => __( 'Cart Messaging Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'blue',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
+ 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_flex_ratio' => array(
+ 'title' => __( 'Cart Messaging Ratio', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => '1x1',
+ 'desc_tip' => true,
+ 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
+ '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
+ '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
+ '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_cart_message_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpCartMessagePreview', 'message' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
- //Checkout
- 'pay_later_checkout_messaging_heading' => array(
- 'heading' => __( 'Pay Later Messaging on Checkout', 'woocommerce-paypal-payments' ),
- 'type' => 'ppcp-heading',
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array(),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_layout' => array(
- 'title' => __( 'Checkout Messaging Layout', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'text',
- 'desc_tip' => true,
- 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
- 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_logo' => array(
- 'title' => __( 'Checkout Messaging Logo', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'primary',
- 'desc_tip' => true,
- 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
- 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
- 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
- 'none' => __( 'None', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_position' => array(
- 'title' => __( 'Checkout Messaging Logo Position', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'left',
- 'desc_tip' => true,
- 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
- 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
- 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_color' => array(
- 'title' => __( 'Checkout Messaging Text Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'black',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_flex_color' => array(
- 'title' => __( 'Checkout Messaging Color', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => 'blue',
- 'desc_tip' => true,
- 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
- 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
- 'white' => __( 'White', 'woocommerce-paypal-payments' ),
- 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
- 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
- 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
- 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
- 'pay_later_checkout_message_flex_ratio' => array(
- 'title' => __( 'Checkout Messaging Ratio', 'woocommerce-paypal-payments' ),
- 'type' => 'select',
- 'class' => array(),
- 'input_class' => array( 'wc-enhanced-select' ),
- 'default' => '1x1',
- 'desc_tip' => true,
- 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
- 'options' => array(
- '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
- '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
- '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
- '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
- ),
- 'screens' => array( State::STATE_ONBOARDED ),
- 'requirements' => array( 'messages' ),
- 'gateway' => Settings::PAY_LATER_TAB_ID,
- ),
+ // Checkout
+ 'pay_later_checkout_messaging_heading' => array(
+ 'heading' => __( 'Pay Later Messaging on Checkout', 'woocommerce-paypal-payments' ),
+ 'type' => 'ppcp-heading',
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array(),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_layout' => array(
+ 'title' => __( 'Checkout Messaging Layout', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'text',
+ 'desc_tip' => true,
+ 'description' => __( 'The layout of the message.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'text' => __( 'Text', 'woocommerce-paypal-payments' ),
+ 'flex' => __( 'Flex', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_logo' => array(
+ 'title' => __( 'Checkout Messaging Logo', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'primary',
+ 'desc_tip' => true,
+ 'description' => __( 'What logo the text message contains. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'primary' => __( 'Primary', 'woocommerce-paypal-payments' ),
+ 'alternative' => __( 'Alternative', 'woocommerce-paypal-payments' ),
+ 'inline' => __( 'Inline', 'woocommerce-paypal-payments' ),
+ 'none' => __( 'None', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_position' => array(
+ 'title' => __( 'Checkout Messaging Logo Position', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'left',
+ 'desc_tip' => true,
+ 'description' => __( 'The position of the logo. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'left' => __( 'Left', 'woocommerce-paypal-payments' ),
+ 'right' => __( 'Right', 'woocommerce-paypal-payments' ),
+ 'top' => __( 'Top', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_color' => array(
+ 'title' => __( 'Checkout Messaging Text Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'black',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Text is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_flex_color' => array(
+ 'title' => __( 'Checkout Messaging Color', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => 'blue',
+ 'desc_tip' => true,
+ 'description' => __( 'The color of the text. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ 'blue' => __( 'Blue', 'woocommerce-paypal-payments' ),
+ 'black' => __( 'Black', 'woocommerce-paypal-payments' ),
+ 'white' => __( 'White', 'woocommerce-paypal-payments' ),
+ 'white-no-border' => __( 'White no border', 'woocommerce-paypal-payments' ),
+ 'gray' => __( 'Gray', 'woocommerce-paypal-payments' ),
+ 'monochrome' => __( 'Monochrome', 'woocommerce-paypal-payments' ),
+ 'grayscale' => __( 'Grayscale', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_flex_ratio' => array(
+ 'title' => __( 'Checkout Messaging Ratio', 'woocommerce-paypal-payments' ),
+ 'type' => 'select',
+ 'class' => array(),
+ 'input_class' => array( 'wc-enhanced-select' ),
+ 'default' => '1x1',
+ 'desc_tip' => true,
+ 'description' => __( 'The width/height ratio of the banner. Only applicable, when the layout style Flex is used.', 'woocommerce-paypal-payments' ),
+ 'options' => array(
+ '1x1' => __( '1x1', 'woocommerce-paypal-payments' ),
+ '1x4' => __( '1x4', 'woocommerce-paypal-payments' ),
+ '8x1' => __( '8x1', 'woocommerce-paypal-payments' ),
+ '20x1' => __( '20x1', 'woocommerce-paypal-payments' ),
+ ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
+ 'pay_later_checkout_message_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpCheckoutMessagePreview', 'message' ),
+ 'screens' => array( State::STATE_ONBOARDED ),
+ 'requirements' => array( 'messages' ),
+ 'gateway' => Settings::PAY_LATER_TAB_ID,
+ ),
);
return array_merge( $fields, $pay_later_fields );
diff --git a/modules/ppcp-wc-gateway/services.php b/modules/ppcp-wc-gateway/services.php
index ce9f36cbf..8698077ae 100644
--- a/modules/ppcp-wc-gateway/services.php
+++ b/modules/ppcp-wc-gateway/services.php
@@ -988,6 +988,15 @@ return array(
'requirements' => array(),
'gateway' => 'paypal',
),
+ 'button_product_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpProductButtonPreview' ),
+ 'screens' => array(
+ State::STATE_ONBOARDED,
+ ),
+ 'requirements' => array(),
+ 'gateway' => 'paypal',
+ ),
// Cart settings.
'button_cart_heading' => array(
@@ -1130,6 +1139,15 @@ return array(
'requirements' => array(),
'gateway' => 'paypal',
),
+ 'button_cart_preview' => array(
+ 'type' => 'ppcp-text',
+ 'text' => $render_preview_element( 'ppcpCartButtonPreview' ),
+ 'screens' => array(
+ State::STATE_ONBOARDED,
+ ),
+ 'requirements' => array(),
+ 'gateway' => 'paypal',
+ ),
// Mini cart settings.
'button_mini-cart_heading' => array(