all_settings = get_option( 'wf_address_autocomplete_validation_settings' ); $this->enable_address_validation = isset( $this->all_settings['xa_address_validation'] ) ? $this->all_settings['xa_address_validation'] : 'none'; add_action( 'wp_footer', array( $this, 'wf_address_validation_scripts' ) ); add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'wf_order_note' ) ); /** * Exclude validation. * * @since 1.0.0 */ apply_filters( 'xa_exclude_validation', false ); } /** Order Note. * * @param number $order_id Order ID. */ public function wf_order_note( $order_id ) { $validated = get_option( 'addr_val' ); if ( $validated ) { $order = new WC_order( $order_id ); $order->add_order_note( 'This order address is Validated' ); } update_option( 'addr_val', false ); delete_option( 'addr_val' ); } /** Order note. */ public function wf_order_note_update() { update_option( 'addr_val', true ); } /** Function. */ public function wf_address_validation() { // Create address. if ( ! ( isset( $_POST['nonce'] ) || ! wp_verify_nonce( sanitize_key( $_POST['nonce'] ) ) ) ) { return false; } $posted_address = isset( $_POST ) ? array_map( 'sanitize_text_field', wp_unslash( $_POST ) ) : array( '' ); $address_params = array( 'verify' => array( 'delivery' ), 'street1' => $posted_address['street1_post'], 'street2' => $posted_address['street2_post'], 'city' => $posted_address['city_post'], 'state' => $posted_address['state_post'], 'zip' => $posted_address['zip_post'], 'country' => $posted_address['country_post'], ); include_once 'api/easypost-api.php'; } /** Scripts. */ public function wf_address_validation_scripts() { if ( is_checkout() && ! is_order_received_page() ) { wp_enqueue_script( 'wf-address-validate-country-specific-script', plugins_url( '../assests/js/address_validate.js', __FILE__ ), array( 'jquery' ), '1.4.6', true ); wp_enqueue_style( 'wf-modal-style-manadatory', plugins_url( '../assests/css/address-verification-popup-manadatory.css', __FILE__ ), false, true ); $html = ''; if ( ! empty( $this->all_settings['wf_address_autocomplete_validation_enable_address_popup_css_edit'] ) ) { $popup_css = $this->all_settings['wf_address_autocomplete_validation_enable_address_popup_css_edit']; ?>