payu_sdk_url = $this->sandbox ? 'https://secure.snd.payu.com/javascript/sdk' : 'https://secure.payu.com/javascript/sdk'; if ( $this->is_enabled() ) { $this->icon = apply_filters( 'woocommerce_payu_icon', plugins_url( '/assets/images/card-visa-mc.svg', PAYU_PLUGIN_FILE ) ); add_action( 'wp_enqueue_scripts', [ $this, 'include_payu_sf_scripts' ] ); //refresh card iframe after checkout change if ( ! is_admin() ) { add_action( 'wp_footer', [ $this, 'minicart_checkout_refresh_script' ] ); } } } public function is_available(): bool { if ( ! $this->try_retrieve_banks() ) { return false; } return parent::is_available(); } // Additional data for Blocks public function get_additional_data(): array { return [ 'posId' => $this->pos_id, 'sdkUrl' => $this->payu_sdk_url, 'lang' => explode( '_', get_locale() )[0] ]; } function minicart_checkout_refresh_script(): void { if ( is_checkout() || is_wc_endpoint_url() ) : ?> payu_get_paymethods(); if ( isset( $response ) && $response->getStatus() === 'SUCCESS' ) { $this->retrieve_methods( $response ); $this->agreements_field(); echo ''; } } private function retrieve_methods( OpenPayU_Result $response ): void { $payMethods = $response->getResponse(); if ( $payMethods->payByLinks ) { $payByLinks = $this->process_pay_methods( $payMethods->payByLinks ); if ( $payByLinks ) { ?>
get_payu_pay_method_array( 'CARD_TOKEN', $token ); } public function include_payu_sf_scripts(): void { $payu_sdk_url = $this->sandbox ? 'https://secure.snd.payu.com/javascript/sdk' : 'https://secure.payu.com/javascript/sdk'; wp_enqueue_script( 'payu-sfsdk', $payu_sdk_url, [], null ); wp_enqueue_script( 'payu-promise-polyfill', plugins_url( '/assets/js/es6-promise.auto.min.js', PAYU_PLUGIN_FILE ), [], null ); wp_enqueue_script( 'payu-sf-init', plugins_url( '/assets/js/sf-init.js', PAYU_PLUGIN_FILE ), [], PAYU_PLUGIN_VERSION ); } }