woocommerce/includes/gateways/class-wc-payment-gateway-ec...

72 lines
2.3 KiB
PHP
Raw Normal View History

<?php
/**
* Class WC_Payment_Gateway_eCheck file.
*
* @package WooCommerce\Gateways
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Class for eCheck Payment Gateway
*
* @since 2.6.0
2020-08-05 16:36:24 +00:00
* @package WooCommerce\Classes
*/
class WC_Payment_Gateway_ECheck extends WC_Payment_Gateway {
/**
2016-05-26 10:48:25 +00:00
* Builds our payment fields area - including tokenization fields for logged
* in users, and the actual payment fields.
2018-03-09 12:53:10 +00:00
*
* @since 2.6.0
*/
public function payment_fields() {
2016-06-24 11:39:13 +00:00
if ( $this->supports( 'tokenization' ) && is_checkout() ) {
$this->tokenization_script();
$this->saved_payment_methods();
2016-05-26 10:48:25 +00:00
$this->form();
$this->save_payment_method_checkbox();
2016-05-26 10:48:25 +00:00
} else {
$this->form();
}
}
/**
* Outputs fields for entering eCheck information.
2018-03-09 12:53:10 +00:00
*
* @since 2.6.0
*/
public function form() {
2016-05-17 20:37:10 +00:00
$fields = array();
$default_fields = array(
'routing-number' => '<p class="form-row form-row-first">
<label for="' . esc_attr( $this->id ) . '-routing-number">' . esc_html__( 'Routing number', 'woocommerce' ) . '&nbsp;<span class="required">*</span></label>
2016-05-17 19:24:11 +00:00
<input id="' . esc_attr( $this->id ) . '-routing-number" class="input-text wc-echeck-form-routing-number" type="text" maxlength="9" autocomplete="off" placeholder="&bull;&bull;&bull;&bull;&bull;&bull;&bull;&bull;&bull;" name="' . esc_attr( $this->id ) . '-routing-number" />
</p>',
'account-number' => '<p class="form-row form-row-wide">
<label for="' . esc_attr( $this->id ) . '-account-number">' . esc_html__( 'Account number', 'woocommerce' ) . '&nbsp;<span class="required">*</span></label>
<input id="' . esc_attr( $this->id ) . '-account-number" class="input-text wc-echeck-form-account-number" type="text" autocomplete="off" name="' . esc_attr( $this->id ) . '-account-number" maxlength="17" />
</p>',
);
$fields = wp_parse_args( $fields, apply_filters( 'woocommerce_echeck_form_fields', $default_fields, $this->id ) );
?>
<fieldset id="<?php echo esc_attr( $this->id ); ?>-cc-form" class='wc-echeck-form wc-payment-form'>
<?php do_action( 'woocommerce_echeck_form_start', $this->id ); ?>
<?php
2018-03-09 12:53:10 +00:00
foreach ( $fields as $field ) {
echo $field; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
2018-03-09 12:53:10 +00:00
}
?>
<?php do_action( 'woocommerce_echeck_form_end', $this->id ); ?>
<div class="clear"></div>
2018-03-09 12:53:10 +00:00
</fieldset>
<?php
}
}