diff --git a/modules.local/ppcp-wc-gateway/services.php b/modules.local/ppcp-wc-gateway/services.php index 6bc28c3ea..a5339fe65 100644 --- a/modules.local/ppcp-wc-gateway/services.php +++ b/modules.local/ppcp-wc-gateway/services.php @@ -193,7 +193,7 @@ return [ ], 'client_id' => [ 'title' => __('Client Id', 'woocommerce-paypal-commerce-gateway'), - 'type' => 'text', + 'type' => 'ppcp-text-input', 'desc_tip' => true, 'description' => __('The client id of your api ', 'woocommerce-paypal-commerce-gateway'), 'default' => false, diff --git a/modules.local/ppcp-wc-gateway/src/Settings/SettingsRenderer.php b/modules.local/ppcp-wc-gateway/src/Settings/SettingsRenderer.php index e902ad3e0..411b59d75 100644 --- a/modules.local/ppcp-wc-gateway/src/Settings/SettingsRenderer.php +++ b/modules.local/ppcp-wc-gateway/src/Settings/SettingsRenderer.php @@ -81,6 +81,29 @@ class SettingsRenderer return $html; } + + public function renderTextInput($field, $key, $config, $value): string + { + + if ($config['type'] !== 'ppcp-text-input') { + return $field; + } + + $html = sprintf( + '', + esc_attr(implode(' ', $config['class'])), + esc_attr($key), + esc_attr($value) + ); + + return $html; + } //phpcs:enable Inpsyde.CodeQuality.ArgumentTypeDeclaration.NoArgumentType public function render() diff --git a/modules.local/ppcp-wc-gateway/src/WcGatewayModule.php b/modules.local/ppcp-wc-gateway/src/WcGatewayModule.php index f7e1b1d91..2a93f195b 100644 --- a/modules.local/ppcp-wc-gateway/src/WcGatewayModule.php +++ b/modules.local/ppcp-wc-gateway/src/WcGatewayModule.php @@ -118,8 +118,13 @@ class WcGatewayModule implements ModuleInterface * @var SettingsRenderer $renderer */ return $renderer->renderPassword( - $renderer->renderMultiSelect( - $field, + $renderer->renderTextInput( + $renderer->renderMultiSelect( + $field, + $key, + $args, + $value + ), $key, $args, $value