Changeset 3266220
- Timestamp:
- 04/03/2025 10:09:27 AM (12 months ago)
- Location:
- wpify-woo
- Files:
-
- 16 edited
- 1 copied
-
tags/5.0.5 (copied) (copied from wpify-woo/trunk)
-
tags/5.0.5/readme.txt (modified) (2 diffs)
-
tags/5.0.5/src/Modules/DeliveryDates/DeliveryDatesModule.php (modified) (10 diffs)
-
tags/5.0.5/src/Modules/HeurekaOverenoZakazniky/HeurekaOverenoZakaznikyModule.php (modified) (2 diffs)
-
tags/5.0.5/src/Modules/QRPayment/QRPaymentModule.php (modified) (3 diffs)
-
tags/5.0.5/src/Plugin.php (modified) (1 diff)
-
tags/5.0.5/vendor/composer/installed.php (modified) (2 diffs)
-
tags/5.0.5/vendor/wpify-woo/composer/installed.php (modified) (1 diff)
-
tags/5.0.5/wpify-woo.php (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/src/Modules/DeliveryDates/DeliveryDatesModule.php (modified) (10 diffs)
-
trunk/src/Modules/HeurekaOverenoZakazniky/HeurekaOverenoZakaznikyModule.php (modified) (2 diffs)
-
trunk/src/Modules/QRPayment/QRPaymentModule.php (modified) (3 diffs)
-
trunk/src/Plugin.php (modified) (1 diff)
-
trunk/vendor/composer/installed.php (modified) (2 diffs)
-
trunk/vendor/wpify-woo/composer/installed.php (modified) (1 diff)
-
trunk/wpify-woo.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
wpify-woo/tags/5.0.5/readme.txt
r3264949 r3266220 5 5 Tested up to: 6.8 6 6 Requires PHP: 8.1 7 Stable tag: 5.0. 47 Stable tag: 5.0.5 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 219 219 220 220 == Changelog == 221 = 5.0.5 = 222 * Fix Delivery date display by zones 223 * Add option to Opt-In Heureka 224 * Better shortcode [wpify_woo_render_qr_code] for display QR payment 225 221 226 = 5.0.4 = 222 227 * Fix Delivery date location select -
wpify-woo/tags/5.0.5/src/Modules/DeliveryDates/DeliveryDatesModule.php
r3264949 r3266220 191 191 ), 192 192 array( 193 'id' => 'display_locations',194 'type' => 'multi_select',195 'label' => __( 'Display locations', 'wpify-woo' ),196 'options' => function () use ( $locations ) {193 'id' => 'display_locations', 194 'type' => 'multi_select', 195 'label' => __( 'Display locations', 'wpify-woo' ), 196 'options' => function () use ( $locations ) { 197 197 return array_map( function ( $item ) { 198 198 return [ … … 345 345 346 346 /** 347 * Get zone ID for a given country code. 348 * 349 * Supports zone locations by country, continent, or world. 350 * 351 * @param string $country_code Two-letter ISO country code (e.g. 'CZ') 352 * @param array $zones All shipping zones with locations 353 * 354 * @return int|null 355 */ 356 public function get_zone_id_for_country( string $country_code, array $zones ): ?int { 357 // First, get full info about country (from WC) 358 $wc_countries = new \WC_Countries(); 359 $continent_code = $wc_countries->get_continent_code_for_country( $country_code ); 360 361 foreach ( $zones as $zone ) { 362 if ( ! isset( $zone['zone_locations'] ) || ! is_array( $zone['zone_locations'] ) ) { 363 continue; 364 } 365 366 foreach ( $zone['zone_locations'] as $location ) { 367 // Match by exact country 368 if ( $location->type === 'country' && $location->code === $country_code ) { 369 return $zone['id']; 370 } 371 372 // Match by continent 373 if ( $location->type === 'continent' && $location->code === $continent_code ) { 374 return $zone['id']; 375 } 376 377 // Match "worldwide" 378 if ( $location->type === 'world' ) { 379 return $zone['id']; 380 } 381 } 382 } 383 384 return null; 385 } 386 387 /** 347 388 * Get formatted date or date name 348 389 * … … 391 432 * @throws \Exception 392 433 */ 393 public function display_delivery_methods( $methods_ids, $shipping_ countries, $shipping_zones, $actual_country) {434 public function display_delivery_methods( $methods_ids, $shipping_zones, $actual_zone_id ) { 394 435 // Get array of allowed countries names 395 436 $zone_countries = []; … … 413 454 414 455 // Get selected country 415 $selected = in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0';456 $selected = $actual_zone_id; 416 457 $show = $selected == $zone['id']; 417 458 … … 512 553 * @param string $actual_country code of actual country 513 554 */ 514 public function display_country_select( $shipping_countries, $shipping_zones, $ zone_countries, $actual_country) {555 public function display_country_select( $shipping_countries, $shipping_zones, $actual_zone_id ) { 515 556 /** 516 557 * Filter to disable country selector … … 549 590 } 550 591 551 $selected = in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0';592 $selected = $actual_zone_id === $zone['id']; 552 593 $country_code = array_search( $zone['formatted_zone_location'], $shipping_countries ); 553 echo '<option value="zone-' . esc_attr( $zone['id'] ) . '" data-country="' . esc_attr( $country_code ) . '" ' . selected( $selected, $zone['id'], false ) . '>' . esc_html( $zone['formatted_zone_location'] ) . '</option>';594 echo '<option value="zone-' . esc_attr( $zone['id'] ) . '" data-country="' . esc_attr( $country_code ) . '" ' . selected( $selected, true, false ) . '>' . esc_html( $zone['formatted_zone_location'] ) . '</option>'; 554 595 } 555 596 ?> … … 575 616 $actual_country = ! empty( WC()->customer ) && WC()->customer->get_shipping_country() ? WC()->customer->get_shipping_country() : WC()->countries->get_base_country(); 576 617 $shipping_zones = $this->get_all_zones(); 577 $zone_countries = []; 578 579 // Get array of allowed and enabled countries names and unset zones without enabled methods 580 foreach ( $shipping_zones as $key => $zone ) { 581 $enabled_count = 0; 582 if ( isset( $zone['shipping_methods'] ) ) { 583 foreach ( $zone['shipping_methods'] as $method ) { 584 if ( $method->enabled !== 'yes' ) { 585 continue; 586 } 587 588 $enabled_count += 1; 589 } 590 } 591 592 if ( $enabled_count < 1 ) { 593 unset( $shipping_zones[ $key ] ); 594 continue; 595 } 596 597 $zone_countries[ $key ] = $zone['formatted_zone_location']; 598 } 599 600 // Set first country from zones as actual country if default country isn't exist or not in zones 601 if ( ! isset( $shipping_countries[ $actual_country ] ) || ! in_array( $shipping_countries[ $actual_country ], $zone_countries ) ) { 602 $actual_country = array_search( reset( $zone_countries ), $shipping_countries ); 603 } 604 618 $actual_zone_id = $this->get_zone_id_for_country( $actual_country, $shipping_zones ); 619 620 if ( ! $actual_zone_id ) { 621 $actual_zone_id = array_key_first( $shipping_zones ); 622 } 605 623 ?> 606 624 <div class="wpify-woo-delivery-date"> … … 611 629 } 612 630 613 $this->display_country_select( $shipping_countries, $shipping_zones, $ zone_countries, $actual_country);631 $this->display_country_select( $shipping_countries, $shipping_zones, $actual_zone_id ); 614 632 615 633 $custom_dates = $product->get_meta( '_wpify_woo_delivery_dates' ); … … 700 718 701 719 // get selected zone 702 $selected = isset( $shipping_countries[ $actual_country ] ) && in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0'; 703 720 $selected = $actual_zone_id; 704 721 ?> 705 722 <div class="wpify-woo-delivery-date__line" … … 718 735 <?php 719 736 if ( $data['shipping_methods'] ) { 720 $this->display_delivery_methods( $data['shipping_methods'], $shipping_ countries, $shipping_zones, $actual_country);737 $this->display_delivery_methods( $data['shipping_methods'], $shipping_zones, $actual_zone_id ); 721 738 } ?> 722 739 </div> -
wpify-woo/tags/5.0.5/src/Modules/HeurekaOverenoZakazniky/HeurekaOverenoZakaznikyModule.php
r3262843 r3266220 96 96 ), 97 97 array( 98 'id' => 'optin_mode', 99 'type' => 'toggle', 100 'label' => __( 'Use Opt-In instead of Opt-Out', 'wpify-woo' ), 101 'title' => __( 'Switch the logic to require explicit customer consent (opt-in)', 'wpify-woo' ), 102 ), 103 array( 98 104 'id' => 'widget_enabled', 99 105 'type' => 'toggle', … … 153 159 } 154 160 155 // If customer don't agree with questionnaire 156 if ( isset( $_POST['wpify_woo_heureka_optout'] ) && ! empty( $_POST['wpify_woo_heureka_optout'] ) ) { 161 $use_optin = $this->get_setting( 'optin_mode' ); 162 163 // In OPT-IN mode: if checkbox is not checked → do not send 164 if ( $use_optin && empty( $_POST['wpify_woo_heureka_optout'] ) ) { 165 $order->add_order_note( sprintf( __( 'Heureka: Agree with the satisfaction questionnaire: %s', 'wpify-woo' ), __( 'No', 'wpify-woo' ) ) ); 166 $order->update_meta_data( '_wpify_woo_heureka_optout_agreement', 'no' ); 167 $order->save(); 168 169 return false; 170 } 171 172 // In OPT-OUT mode: if checkbox is checked → do not send 173 if ( ! $use_optin && ! empty( $_POST['wpify_woo_heureka_optout'] ) ) { 157 174 $order->add_order_note( sprintf( __( 'Heureka: Agree with the satisfaction questionnaire: %s', 'wpify-woo' ), __( 'No', 'wpify-woo' ) ) ); 158 175 $order->update_meta_data( '_wpify_woo_heureka_optout_agreement', 'no' ); -
wpify-woo/tags/5.0.5/src/Modules/QRPayment/QRPaymentModule.php
r3257809 r3266220 90 90 'label' => __( 'Enabled payment methods', 'wpify-woo' ), 91 91 'buttons' => array( 92 'add' => __( 'Add payment method', 'wpify-woo' ),92 'add' => __( 'Add payment method', 'wpify-woo' ), 93 93 ), 94 94 'items' => [ … … 126 126 'label' => __( 'Accounts', 'wpify-woo' ), 127 127 'buttons' => array( 128 'add' => __( 'Add account', 'wpify-woo' ),128 'add' => __( 'Add account', 'wpify-woo' ), 129 129 ), 130 130 'items' => [ … … 580 580 581 581 /** 582 * Render the [wpify_woo_render_qr_code] shortcode.582 * Render the [wpify_woo_render_qr_code] or [wpify_woo_render_qr_code order_id="123"] shortcode. 583 583 * 584 584 * @return string 585 */ 586 public function display_qr_code_shortcode() { 587 if ( ! isset( $_GET['key'] ) ) { 588 return; 589 } 590 591 $order_id = wc_get_order_id_by_order_key( $_GET['key'] ); 585 * @throws Exception 586 */ 587 public function display_qr_code_shortcode( $atts = [] ) { 588 $atts = shortcode_atts( [ 589 'order_id' => null, 590 ], $atts ); 591 592 $order_id = null; 593 594 // 1. If order_id is in the shortcode 595 if ( ! empty( $atts['order_id'] ) ) { 596 $order_id = absint( $atts['order_id'] ); 597 598 // 2. If there is a key in the URL 599 } elseif ( isset( $_GET['key'] ) ) { 600 $order_id = wc_get_order_id_by_order_key( sanitize_text_field( $_GET['key'] ) ); 601 602 // 3. If we run in an email context 603 } elseif ( did_action( 'woocommerce_email_header' ) ) { 604 global $email; 605 if ( isset( $email ) && is_object( $email ) && method_exists( $email, 'get_order' ) ) { 606 $order = $email->get_order(); 607 if ( $order instanceof WC_Order ) { 608 $order_id = $order->get_id(); 609 } 610 } 611 612 // 4. If global $order is available 613 } elseif ( isset( $GLOBALS['order'] ) && $GLOBALS['order'] instanceof WC_Order ) { 614 $order_id = $GLOBALS['order']->get_id(); 615 616 // 5. If the current order page is in "My Account" 617 } elseif ( function_exists( 'get_query_var' ) ) { 618 $order_id = absint( get_query_var( 'order-pay' ) ); // thankyou/order-pay 619 if ( ! $order_id ) { 620 $order_id = absint( get_query_var( 'view-order' ) ); // my-account/view-order 621 } 622 } 623 624 if ( empty( $order_id ) ) { 625 return ''; 626 } 592 627 593 628 ob_start(); -
wpify-woo/tags/5.0.5/src/Plugin.php
r3264949 r3266220 22 22 23 23 /** Plugin version */ 24 public const VERSION = '5.0. 4';24 public const VERSION = '5.0.5'; 25 25 26 26 /** Plugin slug name */ -
wpify-woo/tags/5.0.5/vendor/composer/installed.php
r3264949 r3266220 2 2 'root' => array( 3 3 'name' => 'wpify/woo', 4 'pretty_version' => '5.0. 4',5 'version' => '5.0. 4.0',6 'reference' => ' 8e0c69003a351d48fff115735966db24d8d4160f',4 'pretty_version' => '5.0.5', 5 'version' => '5.0.5.0', 6 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 7 7 'type' => 'project', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'wpify/woo' => array( 14 'pretty_version' => '5.0. 4',15 'version' => '5.0. 4.0',16 'reference' => ' 8e0c69003a351d48fff115735966db24d8d4160f',14 'pretty_version' => '5.0.5', 15 'version' => '5.0.5.0', 16 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 17 17 'type' => 'project', 18 18 'install_path' => __DIR__ . '/../../', -
wpify-woo/tags/5.0.5/vendor/wpify-woo/composer/installed.php
r3264949 r3266220 3 3 namespace WpifyWooDeps; 4 4 5 return array('root' => array('name' => '__root__', 'pretty_version' => '5.0. 4', 'version' => '5.0.4.0', 'reference' => '8e0c69003a351d48fff115735966db24d8d4160f', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '5.0.4', 'version' => '5.0.4.0', 'reference' => '8e0c69003a351d48fff115735966db24d8d4160f', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'bacon/bacon-qr-code' => array('pretty_version' => '2.0.8', 'version' => '2.0.8.0', 'reference' => '8674e51bb65af933a5ffaf1c308a660387c35c22', 'type' => 'library', 'install_path' => __DIR__ . '/../bacon/bacon-qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'dasprid/enum' => array('pretty_version' => '1.0.6', 'version' => '1.0.6.0', 'reference' => '8dfd07c6d2cf31c8da90c53b83c026c7696dda90', 'type' => 'library', 'install_path' => __DIR__ . '/../dasprid/enum', 'aliases' => array(), 'dev_requirement' => \false), 'dragonbe/vies' => array('pretty_version' => '2.3.2', 'version' => '2.3.2.0', 'reference' => 'd9193cbaba7e2faefbdc228fb1bf5670f20acf30', 'type' => 'tool', 'install_path' => __DIR__ . '/../dragonbe/vies', 'aliases' => array(), 'dev_requirement' => \false), 'endroid/qr-code' => array('pretty_version' => '4.5.0', 'version' => '4.5.0.0', 'reference' => '36681470bd10352b53bcb9731bdf2270e0d79b22', 'type' => 'library', 'install_path' => __DIR__ . '/../endroid/qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.9.3', 'version' => '7.9.3.0', 'reference' => '7b2f29fe81dc4da0ca0ea7d42107a0845946ea77', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '7c69f28996b0a6920945dd20b3857e499d9ca96c', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.7.1', 'version' => '2.7.1.0', 'reference' => 'c2270caaabe631b3b44c85f99e5a04bbb8060d16', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'h4kuna/ares' => array('pretty_version' => 'v3.0.10', 'version' => '3.0.10.0', 'reference' => 'f3dd2531dd32731366bd8dc1055e55ddc90c460e', 'type' => 'library', 'install_path' => __DIR__ . '/../h4kuna/ares', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/inflection' => array('pretty_version' => 'v3.0.4', 'version' => '3.0.4.0', 'reference' => '684ca578eee3ede920d5d3ca8d568fb70e7d9076', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/inflection', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/overeno-zakazniky' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => 'aa52add431bac32c67b1c00b1969a98709cd611b', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/overeno-zakazniky', 'aliases' => array(), 'dev_requirement' => \false), 'laravel/serializable-closure' => array('pretty_version' => 'v1.3.7', 'version' => '1.3.7.0', 'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d', 'type' => 'library', 'install_path' => __DIR__ . '/../laravel/serializable-closure', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.10.0', 'version' => '2.10.0.0', 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.6', 'version' => '4.0.6.0', 'reference' => 'ce708655043c7050eb050df361c5e313cf708309', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/invoker' => array('pretty_version' => '2.3.6', 'version' => '2.3.6.0', 'reference' => '59f15608528d8a8838d69b422a919fd6b16aa576', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/invoker', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/php-di' => array('pretty_version' => '6.4.0', 'version' => '6.4.0.0', 'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/php-di', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/phpdoc-reader' => array('pretty_version' => '2.2.1', 'version' => '2.2.1.0', 'reference' => '66daff34cbd2627740ffec9469ffbac9f8c8185c', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/phpdoc-reader', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '^1.0')), 'psr/http-client' => array('pretty_version' => '1.0.3', 'version' => '1.0.3.0', 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/czqrpayment' => array('pretty_version' => 'v5.3.1', 'version' => '5.3.1.0', 'reference' => 'f8e0ecbbdb6d30bafb50a833cc7cfe4f575b82a4', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/czqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/iban' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '7fe69bf9274792c37d5a8d9d38ef5cb000f8377a', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/iban', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-interface' => array('pretty_version' => 'v1.1.0', 'version' => '1.1.0.0', 'reference' => '752f7a6bf1190c7d65ead90b5989f61927436c89', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-interface', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-qr-code-provider' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd233c4bedeecf2ff7cd7e7d4ec7f4ad4a5eb4b64', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-qr-code-provider', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/skqrpayment' => array('pretty_version' => 'v4.2.2', 'version' => '4.2.2.0', 'reference' => '777fa98caaff3f10fb43f3cf67a8464c547e0550', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/skqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'spatie/array-to-xml' => array('pretty_version' => '2.17.1', 'version' => '2.17.1.0', 'reference' => '5cbec9c6ab17e320c58a259f0cebe88bde4a7c46', 'type' => 'library', 'install_path' => __DIR__ . '/../spatie/array-to-xml', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.1', 'version' => '3.5.1.0', 'reference' => '74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'woocommerce/action-scheduler' => array('pretty_version' => '3.9.2', 'version' => '3.9.2.0', 'reference' => 'efbb7953f72a433086335b249292f280dd43ddfe', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../woocommerce/action-scheduler', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/asset' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'faf957af650b441b49f03cb7ffa42abfe157b43b', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/asset', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/custom-fields' => array('pretty_version' => '4.0.44', 'version' => '4.0.44.0', 'reference' => '07090e9d39117db3126618f24b7b5c96f274d6e4', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/license' => array('pretty_version' => '2.0.5', 'version' => '2.0.5.0', 'reference' => '9d075a60f71a8fe6a86a8a02ed2551d2cbf392d5', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/license', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.0.10', 'version' => '1.0.10.0', 'reference' => '43bb35f12babe33b0343bb3d3f85239248c48701', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.22', 'version' => '4.1.22.0', 'reference' => 'f5c71ddb24d00496281664cdc3cac804b3394eb8', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/model', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/plugin-utils' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '0ace7f3a23bdfe3e2b2b05c72af79fa034c7e77a', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/plugin-utils', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/woo-core' => array('pretty_version' => '5.0.10', 'version' => '5.0.10.0', 'reference' => 'a2e369d22a3442863d0a3ccf3e87eb907bd73b47', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/woo-core', 'aliases' => array(), 'dev_requirement' => \false)));5 return array('root' => array('name' => '__root__', 'pretty_version' => '5.0.5', 'version' => '5.0.5.0', 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '5.0.5', 'version' => '5.0.5.0', 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'bacon/bacon-qr-code' => array('pretty_version' => '2.0.8', 'version' => '2.0.8.0', 'reference' => '8674e51bb65af933a5ffaf1c308a660387c35c22', 'type' => 'library', 'install_path' => __DIR__ . '/../bacon/bacon-qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'dasprid/enum' => array('pretty_version' => '1.0.6', 'version' => '1.0.6.0', 'reference' => '8dfd07c6d2cf31c8da90c53b83c026c7696dda90', 'type' => 'library', 'install_path' => __DIR__ . '/../dasprid/enum', 'aliases' => array(), 'dev_requirement' => \false), 'dragonbe/vies' => array('pretty_version' => '2.3.2', 'version' => '2.3.2.0', 'reference' => 'd9193cbaba7e2faefbdc228fb1bf5670f20acf30', 'type' => 'tool', 'install_path' => __DIR__ . '/../dragonbe/vies', 'aliases' => array(), 'dev_requirement' => \false), 'endroid/qr-code' => array('pretty_version' => '4.5.0', 'version' => '4.5.0.0', 'reference' => '36681470bd10352b53bcb9731bdf2270e0d79b22', 'type' => 'library', 'install_path' => __DIR__ . '/../endroid/qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.9.3', 'version' => '7.9.3.0', 'reference' => '7b2f29fe81dc4da0ca0ea7d42107a0845946ea77', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '7c69f28996b0a6920945dd20b3857e499d9ca96c', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.7.1', 'version' => '2.7.1.0', 'reference' => 'c2270caaabe631b3b44c85f99e5a04bbb8060d16', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'h4kuna/ares' => array('pretty_version' => 'v3.0.10', 'version' => '3.0.10.0', 'reference' => 'f3dd2531dd32731366bd8dc1055e55ddc90c460e', 'type' => 'library', 'install_path' => __DIR__ . '/../h4kuna/ares', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/inflection' => array('pretty_version' => 'v3.0.4', 'version' => '3.0.4.0', 'reference' => '684ca578eee3ede920d5d3ca8d568fb70e7d9076', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/inflection', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/overeno-zakazniky' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => 'aa52add431bac32c67b1c00b1969a98709cd611b', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/overeno-zakazniky', 'aliases' => array(), 'dev_requirement' => \false), 'laravel/serializable-closure' => array('pretty_version' => 'v1.3.7', 'version' => '1.3.7.0', 'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d', 'type' => 'library', 'install_path' => __DIR__ . '/../laravel/serializable-closure', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.10.0', 'version' => '2.10.0.0', 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.6', 'version' => '4.0.6.0', 'reference' => 'ce708655043c7050eb050df361c5e313cf708309', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/invoker' => array('pretty_version' => '2.3.6', 'version' => '2.3.6.0', 'reference' => '59f15608528d8a8838d69b422a919fd6b16aa576', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/invoker', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/php-di' => array('pretty_version' => '6.4.0', 'version' => '6.4.0.0', 'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/php-di', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/phpdoc-reader' => array('pretty_version' => '2.2.1', 'version' => '2.2.1.0', 'reference' => '66daff34cbd2627740ffec9469ffbac9f8c8185c', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/phpdoc-reader', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '^1.0')), 'psr/http-client' => array('pretty_version' => '1.0.3', 'version' => '1.0.3.0', 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/czqrpayment' => array('pretty_version' => 'v5.3.1', 'version' => '5.3.1.0', 'reference' => 'f8e0ecbbdb6d30bafb50a833cc7cfe4f575b82a4', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/czqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/iban' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '7fe69bf9274792c37d5a8d9d38ef5cb000f8377a', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/iban', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-interface' => array('pretty_version' => 'v1.1.0', 'version' => '1.1.0.0', 'reference' => '752f7a6bf1190c7d65ead90b5989f61927436c89', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-interface', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-qr-code-provider' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd233c4bedeecf2ff7cd7e7d4ec7f4ad4a5eb4b64', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-qr-code-provider', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/skqrpayment' => array('pretty_version' => 'v4.2.2', 'version' => '4.2.2.0', 'reference' => '777fa98caaff3f10fb43f3cf67a8464c547e0550', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/skqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'spatie/array-to-xml' => array('pretty_version' => '2.17.1', 'version' => '2.17.1.0', 'reference' => '5cbec9c6ab17e320c58a259f0cebe88bde4a7c46', 'type' => 'library', 'install_path' => __DIR__ . '/../spatie/array-to-xml', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.1', 'version' => '3.5.1.0', 'reference' => '74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'woocommerce/action-scheduler' => array('pretty_version' => '3.9.2', 'version' => '3.9.2.0', 'reference' => 'efbb7953f72a433086335b249292f280dd43ddfe', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../woocommerce/action-scheduler', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/asset' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'faf957af650b441b49f03cb7ffa42abfe157b43b', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/asset', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/custom-fields' => array('pretty_version' => '4.0.44', 'version' => '4.0.44.0', 'reference' => '07090e9d39117db3126618f24b7b5c96f274d6e4', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/license' => array('pretty_version' => '2.0.5', 'version' => '2.0.5.0', 'reference' => '9d075a60f71a8fe6a86a8a02ed2551d2cbf392d5', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/license', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.0.10', 'version' => '1.0.10.0', 'reference' => '43bb35f12babe33b0343bb3d3f85239248c48701', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.22', 'version' => '4.1.22.0', 'reference' => 'f5c71ddb24d00496281664cdc3cac804b3394eb8', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/model', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/plugin-utils' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '0ace7f3a23bdfe3e2b2b05c72af79fa034c7e77a', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/plugin-utils', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/woo-core' => array('pretty_version' => '5.0.10', 'version' => '5.0.10.0', 'reference' => 'a2e369d22a3442863d0a3ccf3e87eb907bd73b47', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/woo-core', 'aliases' => array(), 'dev_requirement' => \false))); -
wpify-woo/tags/5.0.5/wpify-woo.php
r3264949 r3266220 4 4 * Plugin Name: WPify Woo 5 5 * Description: Custom functionality for WooCommerce 6 * Version: 5.0. 46 * Version: 5.0.5 7 7 * Requires PHP: 8.1.0 8 8 * Requires at least: 6.2 -
wpify-woo/trunk/readme.txt
r3264949 r3266220 5 5 Tested up to: 6.8 6 6 Requires PHP: 8.1 7 Stable tag: 5.0. 47 Stable tag: 5.0.5 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 219 219 220 220 == Changelog == 221 = 5.0.5 = 222 * Fix Delivery date display by zones 223 * Add option to Opt-In Heureka 224 * Better shortcode [wpify_woo_render_qr_code] for display QR payment 225 221 226 = 5.0.4 = 222 227 * Fix Delivery date location select -
wpify-woo/trunk/src/Modules/DeliveryDates/DeliveryDatesModule.php
r3264949 r3266220 191 191 ), 192 192 array( 193 'id' => 'display_locations',194 'type' => 'multi_select',195 'label' => __( 'Display locations', 'wpify-woo' ),196 'options' => function () use ( $locations ) {193 'id' => 'display_locations', 194 'type' => 'multi_select', 195 'label' => __( 'Display locations', 'wpify-woo' ), 196 'options' => function () use ( $locations ) { 197 197 return array_map( function ( $item ) { 198 198 return [ … … 345 345 346 346 /** 347 * Get zone ID for a given country code. 348 * 349 * Supports zone locations by country, continent, or world. 350 * 351 * @param string $country_code Two-letter ISO country code (e.g. 'CZ') 352 * @param array $zones All shipping zones with locations 353 * 354 * @return int|null 355 */ 356 public function get_zone_id_for_country( string $country_code, array $zones ): ?int { 357 // First, get full info about country (from WC) 358 $wc_countries = new \WC_Countries(); 359 $continent_code = $wc_countries->get_continent_code_for_country( $country_code ); 360 361 foreach ( $zones as $zone ) { 362 if ( ! isset( $zone['zone_locations'] ) || ! is_array( $zone['zone_locations'] ) ) { 363 continue; 364 } 365 366 foreach ( $zone['zone_locations'] as $location ) { 367 // Match by exact country 368 if ( $location->type === 'country' && $location->code === $country_code ) { 369 return $zone['id']; 370 } 371 372 // Match by continent 373 if ( $location->type === 'continent' && $location->code === $continent_code ) { 374 return $zone['id']; 375 } 376 377 // Match "worldwide" 378 if ( $location->type === 'world' ) { 379 return $zone['id']; 380 } 381 } 382 } 383 384 return null; 385 } 386 387 /** 347 388 * Get formatted date or date name 348 389 * … … 391 432 * @throws \Exception 392 433 */ 393 public function display_delivery_methods( $methods_ids, $shipping_ countries, $shipping_zones, $actual_country) {434 public function display_delivery_methods( $methods_ids, $shipping_zones, $actual_zone_id ) { 394 435 // Get array of allowed countries names 395 436 $zone_countries = []; … … 413 454 414 455 // Get selected country 415 $selected = in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0';456 $selected = $actual_zone_id; 416 457 $show = $selected == $zone['id']; 417 458 … … 512 553 * @param string $actual_country code of actual country 513 554 */ 514 public function display_country_select( $shipping_countries, $shipping_zones, $ zone_countries, $actual_country) {555 public function display_country_select( $shipping_countries, $shipping_zones, $actual_zone_id ) { 515 556 /** 516 557 * Filter to disable country selector … … 549 590 } 550 591 551 $selected = in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0';592 $selected = $actual_zone_id === $zone['id']; 552 593 $country_code = array_search( $zone['formatted_zone_location'], $shipping_countries ); 553 echo '<option value="zone-' . esc_attr( $zone['id'] ) . '" data-country="' . esc_attr( $country_code ) . '" ' . selected( $selected, $zone['id'], false ) . '>' . esc_html( $zone['formatted_zone_location'] ) . '</option>';594 echo '<option value="zone-' . esc_attr( $zone['id'] ) . '" data-country="' . esc_attr( $country_code ) . '" ' . selected( $selected, true, false ) . '>' . esc_html( $zone['formatted_zone_location'] ) . '</option>'; 554 595 } 555 596 ?> … … 575 616 $actual_country = ! empty( WC()->customer ) && WC()->customer->get_shipping_country() ? WC()->customer->get_shipping_country() : WC()->countries->get_base_country(); 576 617 $shipping_zones = $this->get_all_zones(); 577 $zone_countries = []; 578 579 // Get array of allowed and enabled countries names and unset zones without enabled methods 580 foreach ( $shipping_zones as $key => $zone ) { 581 $enabled_count = 0; 582 if ( isset( $zone['shipping_methods'] ) ) { 583 foreach ( $zone['shipping_methods'] as $method ) { 584 if ( $method->enabled !== 'yes' ) { 585 continue; 586 } 587 588 $enabled_count += 1; 589 } 590 } 591 592 if ( $enabled_count < 1 ) { 593 unset( $shipping_zones[ $key ] ); 594 continue; 595 } 596 597 $zone_countries[ $key ] = $zone['formatted_zone_location']; 598 } 599 600 // Set first country from zones as actual country if default country isn't exist or not in zones 601 if ( ! isset( $shipping_countries[ $actual_country ] ) || ! in_array( $shipping_countries[ $actual_country ], $zone_countries ) ) { 602 $actual_country = array_search( reset( $zone_countries ), $shipping_countries ); 603 } 604 618 $actual_zone_id = $this->get_zone_id_for_country( $actual_country, $shipping_zones ); 619 620 if ( ! $actual_zone_id ) { 621 $actual_zone_id = array_key_first( $shipping_zones ); 622 } 605 623 ?> 606 624 <div class="wpify-woo-delivery-date"> … … 611 629 } 612 630 613 $this->display_country_select( $shipping_countries, $shipping_zones, $ zone_countries, $actual_country);631 $this->display_country_select( $shipping_countries, $shipping_zones, $actual_zone_id ); 614 632 615 633 $custom_dates = $product->get_meta( '_wpify_woo_delivery_dates' ); … … 700 718 701 719 // get selected zone 702 $selected = isset( $shipping_countries[ $actual_country ] ) && in_array( $shipping_countries[ $actual_country ], $zone_countries ) ? array_search( $shipping_countries[ $actual_country ], $zone_countries ) : '0'; 703 720 $selected = $actual_zone_id; 704 721 ?> 705 722 <div class="wpify-woo-delivery-date__line" … … 718 735 <?php 719 736 if ( $data['shipping_methods'] ) { 720 $this->display_delivery_methods( $data['shipping_methods'], $shipping_ countries, $shipping_zones, $actual_country);737 $this->display_delivery_methods( $data['shipping_methods'], $shipping_zones, $actual_zone_id ); 721 738 } ?> 722 739 </div> -
wpify-woo/trunk/src/Modules/HeurekaOverenoZakazniky/HeurekaOverenoZakaznikyModule.php
r3262843 r3266220 96 96 ), 97 97 array( 98 'id' => 'optin_mode', 99 'type' => 'toggle', 100 'label' => __( 'Use Opt-In instead of Opt-Out', 'wpify-woo' ), 101 'title' => __( 'Switch the logic to require explicit customer consent (opt-in)', 'wpify-woo' ), 102 ), 103 array( 98 104 'id' => 'widget_enabled', 99 105 'type' => 'toggle', … … 153 159 } 154 160 155 // If customer don't agree with questionnaire 156 if ( isset( $_POST['wpify_woo_heureka_optout'] ) && ! empty( $_POST['wpify_woo_heureka_optout'] ) ) { 161 $use_optin = $this->get_setting( 'optin_mode' ); 162 163 // In OPT-IN mode: if checkbox is not checked → do not send 164 if ( $use_optin && empty( $_POST['wpify_woo_heureka_optout'] ) ) { 165 $order->add_order_note( sprintf( __( 'Heureka: Agree with the satisfaction questionnaire: %s', 'wpify-woo' ), __( 'No', 'wpify-woo' ) ) ); 166 $order->update_meta_data( '_wpify_woo_heureka_optout_agreement', 'no' ); 167 $order->save(); 168 169 return false; 170 } 171 172 // In OPT-OUT mode: if checkbox is checked → do not send 173 if ( ! $use_optin && ! empty( $_POST['wpify_woo_heureka_optout'] ) ) { 157 174 $order->add_order_note( sprintf( __( 'Heureka: Agree with the satisfaction questionnaire: %s', 'wpify-woo' ), __( 'No', 'wpify-woo' ) ) ); 158 175 $order->update_meta_data( '_wpify_woo_heureka_optout_agreement', 'no' ); -
wpify-woo/trunk/src/Modules/QRPayment/QRPaymentModule.php
r3257809 r3266220 90 90 'label' => __( 'Enabled payment methods', 'wpify-woo' ), 91 91 'buttons' => array( 92 'add' => __( 'Add payment method', 'wpify-woo' ),92 'add' => __( 'Add payment method', 'wpify-woo' ), 93 93 ), 94 94 'items' => [ … … 126 126 'label' => __( 'Accounts', 'wpify-woo' ), 127 127 'buttons' => array( 128 'add' => __( 'Add account', 'wpify-woo' ),128 'add' => __( 'Add account', 'wpify-woo' ), 129 129 ), 130 130 'items' => [ … … 580 580 581 581 /** 582 * Render the [wpify_woo_render_qr_code] shortcode.582 * Render the [wpify_woo_render_qr_code] or [wpify_woo_render_qr_code order_id="123"] shortcode. 583 583 * 584 584 * @return string 585 */ 586 public function display_qr_code_shortcode() { 587 if ( ! isset( $_GET['key'] ) ) { 588 return; 589 } 590 591 $order_id = wc_get_order_id_by_order_key( $_GET['key'] ); 585 * @throws Exception 586 */ 587 public function display_qr_code_shortcode( $atts = [] ) { 588 $atts = shortcode_atts( [ 589 'order_id' => null, 590 ], $atts ); 591 592 $order_id = null; 593 594 // 1. If order_id is in the shortcode 595 if ( ! empty( $atts['order_id'] ) ) { 596 $order_id = absint( $atts['order_id'] ); 597 598 // 2. If there is a key in the URL 599 } elseif ( isset( $_GET['key'] ) ) { 600 $order_id = wc_get_order_id_by_order_key( sanitize_text_field( $_GET['key'] ) ); 601 602 // 3. If we run in an email context 603 } elseif ( did_action( 'woocommerce_email_header' ) ) { 604 global $email; 605 if ( isset( $email ) && is_object( $email ) && method_exists( $email, 'get_order' ) ) { 606 $order = $email->get_order(); 607 if ( $order instanceof WC_Order ) { 608 $order_id = $order->get_id(); 609 } 610 } 611 612 // 4. If global $order is available 613 } elseif ( isset( $GLOBALS['order'] ) && $GLOBALS['order'] instanceof WC_Order ) { 614 $order_id = $GLOBALS['order']->get_id(); 615 616 // 5. If the current order page is in "My Account" 617 } elseif ( function_exists( 'get_query_var' ) ) { 618 $order_id = absint( get_query_var( 'order-pay' ) ); // thankyou/order-pay 619 if ( ! $order_id ) { 620 $order_id = absint( get_query_var( 'view-order' ) ); // my-account/view-order 621 } 622 } 623 624 if ( empty( $order_id ) ) { 625 return ''; 626 } 592 627 593 628 ob_start(); -
wpify-woo/trunk/src/Plugin.php
r3264949 r3266220 22 22 23 23 /** Plugin version */ 24 public const VERSION = '5.0. 4';24 public const VERSION = '5.0.5'; 25 25 26 26 /** Plugin slug name */ -
wpify-woo/trunk/vendor/composer/installed.php
r3264949 r3266220 2 2 'root' => array( 3 3 'name' => 'wpify/woo', 4 'pretty_version' => '5.0. 4',5 'version' => '5.0. 4.0',6 'reference' => ' 8e0c69003a351d48fff115735966db24d8d4160f',4 'pretty_version' => '5.0.5', 5 'version' => '5.0.5.0', 6 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 7 7 'type' => 'project', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'wpify/woo' => array( 14 'pretty_version' => '5.0. 4',15 'version' => '5.0. 4.0',16 'reference' => ' 8e0c69003a351d48fff115735966db24d8d4160f',14 'pretty_version' => '5.0.5', 15 'version' => '5.0.5.0', 16 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 17 17 'type' => 'project', 18 18 'install_path' => __DIR__ . '/../../', -
wpify-woo/trunk/vendor/wpify-woo/composer/installed.php
r3264949 r3266220 3 3 namespace WpifyWooDeps; 4 4 5 return array('root' => array('name' => '__root__', 'pretty_version' => '5.0. 4', 'version' => '5.0.4.0', 'reference' => '8e0c69003a351d48fff115735966db24d8d4160f', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '5.0.4', 'version' => '5.0.4.0', 'reference' => '8e0c69003a351d48fff115735966db24d8d4160f', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'bacon/bacon-qr-code' => array('pretty_version' => '2.0.8', 'version' => '2.0.8.0', 'reference' => '8674e51bb65af933a5ffaf1c308a660387c35c22', 'type' => 'library', 'install_path' => __DIR__ . '/../bacon/bacon-qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'dasprid/enum' => array('pretty_version' => '1.0.6', 'version' => '1.0.6.0', 'reference' => '8dfd07c6d2cf31c8da90c53b83c026c7696dda90', 'type' => 'library', 'install_path' => __DIR__ . '/../dasprid/enum', 'aliases' => array(), 'dev_requirement' => \false), 'dragonbe/vies' => array('pretty_version' => '2.3.2', 'version' => '2.3.2.0', 'reference' => 'd9193cbaba7e2faefbdc228fb1bf5670f20acf30', 'type' => 'tool', 'install_path' => __DIR__ . '/../dragonbe/vies', 'aliases' => array(), 'dev_requirement' => \false), 'endroid/qr-code' => array('pretty_version' => '4.5.0', 'version' => '4.5.0.0', 'reference' => '36681470bd10352b53bcb9731bdf2270e0d79b22', 'type' => 'library', 'install_path' => __DIR__ . '/../endroid/qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.9.3', 'version' => '7.9.3.0', 'reference' => '7b2f29fe81dc4da0ca0ea7d42107a0845946ea77', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '7c69f28996b0a6920945dd20b3857e499d9ca96c', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.7.1', 'version' => '2.7.1.0', 'reference' => 'c2270caaabe631b3b44c85f99e5a04bbb8060d16', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'h4kuna/ares' => array('pretty_version' => 'v3.0.10', 'version' => '3.0.10.0', 'reference' => 'f3dd2531dd32731366bd8dc1055e55ddc90c460e', 'type' => 'library', 'install_path' => __DIR__ . '/../h4kuna/ares', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/inflection' => array('pretty_version' => 'v3.0.4', 'version' => '3.0.4.0', 'reference' => '684ca578eee3ede920d5d3ca8d568fb70e7d9076', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/inflection', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/overeno-zakazniky' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => 'aa52add431bac32c67b1c00b1969a98709cd611b', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/overeno-zakazniky', 'aliases' => array(), 'dev_requirement' => \false), 'laravel/serializable-closure' => array('pretty_version' => 'v1.3.7', 'version' => '1.3.7.0', 'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d', 'type' => 'library', 'install_path' => __DIR__ . '/../laravel/serializable-closure', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.10.0', 'version' => '2.10.0.0', 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.6', 'version' => '4.0.6.0', 'reference' => 'ce708655043c7050eb050df361c5e313cf708309', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/invoker' => array('pretty_version' => '2.3.6', 'version' => '2.3.6.0', 'reference' => '59f15608528d8a8838d69b422a919fd6b16aa576', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/invoker', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/php-di' => array('pretty_version' => '6.4.0', 'version' => '6.4.0.0', 'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/php-di', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/phpdoc-reader' => array('pretty_version' => '2.2.1', 'version' => '2.2.1.0', 'reference' => '66daff34cbd2627740ffec9469ffbac9f8c8185c', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/phpdoc-reader', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '^1.0')), 'psr/http-client' => array('pretty_version' => '1.0.3', 'version' => '1.0.3.0', 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/czqrpayment' => array('pretty_version' => 'v5.3.1', 'version' => '5.3.1.0', 'reference' => 'f8e0ecbbdb6d30bafb50a833cc7cfe4f575b82a4', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/czqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/iban' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '7fe69bf9274792c37d5a8d9d38ef5cb000f8377a', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/iban', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-interface' => array('pretty_version' => 'v1.1.0', 'version' => '1.1.0.0', 'reference' => '752f7a6bf1190c7d65ead90b5989f61927436c89', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-interface', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-qr-code-provider' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd233c4bedeecf2ff7cd7e7d4ec7f4ad4a5eb4b64', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-qr-code-provider', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/skqrpayment' => array('pretty_version' => 'v4.2.2', 'version' => '4.2.2.0', 'reference' => '777fa98caaff3f10fb43f3cf67a8464c547e0550', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/skqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'spatie/array-to-xml' => array('pretty_version' => '2.17.1', 'version' => '2.17.1.0', 'reference' => '5cbec9c6ab17e320c58a259f0cebe88bde4a7c46', 'type' => 'library', 'install_path' => __DIR__ . '/../spatie/array-to-xml', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.1', 'version' => '3.5.1.0', 'reference' => '74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'woocommerce/action-scheduler' => array('pretty_version' => '3.9.2', 'version' => '3.9.2.0', 'reference' => 'efbb7953f72a433086335b249292f280dd43ddfe', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../woocommerce/action-scheduler', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/asset' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'faf957af650b441b49f03cb7ffa42abfe157b43b', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/asset', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/custom-fields' => array('pretty_version' => '4.0.44', 'version' => '4.0.44.0', 'reference' => '07090e9d39117db3126618f24b7b5c96f274d6e4', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/license' => array('pretty_version' => '2.0.5', 'version' => '2.0.5.0', 'reference' => '9d075a60f71a8fe6a86a8a02ed2551d2cbf392d5', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/license', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.0.10', 'version' => '1.0.10.0', 'reference' => '43bb35f12babe33b0343bb3d3f85239248c48701', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.22', 'version' => '4.1.22.0', 'reference' => 'f5c71ddb24d00496281664cdc3cac804b3394eb8', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/model', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/plugin-utils' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '0ace7f3a23bdfe3e2b2b05c72af79fa034c7e77a', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/plugin-utils', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/woo-core' => array('pretty_version' => '5.0.10', 'version' => '5.0.10.0', 'reference' => 'a2e369d22a3442863d0a3ccf3e87eb907bd73b47', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/woo-core', 'aliases' => array(), 'dev_requirement' => \false)));5 return array('root' => array('name' => '__root__', 'pretty_version' => '5.0.5', 'version' => '5.0.5.0', 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '5.0.5', 'version' => '5.0.5.0', 'reference' => '5971ba92f46640ed90893d670e03e3b1df72231a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'bacon/bacon-qr-code' => array('pretty_version' => '2.0.8', 'version' => '2.0.8.0', 'reference' => '8674e51bb65af933a5ffaf1c308a660387c35c22', 'type' => 'library', 'install_path' => __DIR__ . '/../bacon/bacon-qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'dasprid/enum' => array('pretty_version' => '1.0.6', 'version' => '1.0.6.0', 'reference' => '8dfd07c6d2cf31c8da90c53b83c026c7696dda90', 'type' => 'library', 'install_path' => __DIR__ . '/../dasprid/enum', 'aliases' => array(), 'dev_requirement' => \false), 'dragonbe/vies' => array('pretty_version' => '2.3.2', 'version' => '2.3.2.0', 'reference' => 'd9193cbaba7e2faefbdc228fb1bf5670f20acf30', 'type' => 'tool', 'install_path' => __DIR__ . '/../dragonbe/vies', 'aliases' => array(), 'dev_requirement' => \false), 'endroid/qr-code' => array('pretty_version' => '4.5.0', 'version' => '4.5.0.0', 'reference' => '36681470bd10352b53bcb9731bdf2270e0d79b22', 'type' => 'library', 'install_path' => __DIR__ . '/../endroid/qr-code', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.9.3', 'version' => '7.9.3.0', 'reference' => '7b2f29fe81dc4da0ca0ea7d42107a0845946ea77', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '7c69f28996b0a6920945dd20b3857e499d9ca96c', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.7.1', 'version' => '2.7.1.0', 'reference' => 'c2270caaabe631b3b44c85f99e5a04bbb8060d16', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'h4kuna/ares' => array('pretty_version' => 'v3.0.10', 'version' => '3.0.10.0', 'reference' => 'f3dd2531dd32731366bd8dc1055e55ddc90c460e', 'type' => 'library', 'install_path' => __DIR__ . '/../h4kuna/ares', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/inflection' => array('pretty_version' => 'v3.0.4', 'version' => '3.0.4.0', 'reference' => '684ca578eee3ede920d5d3ca8d568fb70e7d9076', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/inflection', 'aliases' => array(), 'dev_requirement' => \false), 'heureka/overeno-zakazniky' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => 'aa52add431bac32c67b1c00b1969a98709cd611b', 'type' => 'library', 'install_path' => __DIR__ . '/../heureka/overeno-zakazniky', 'aliases' => array(), 'dev_requirement' => \false), 'laravel/serializable-closure' => array('pretty_version' => 'v1.3.7', 'version' => '1.3.7.0', 'reference' => '4f48ade902b94323ca3be7646db16209ec76be3d', 'type' => 'library', 'install_path' => __DIR__ . '/../laravel/serializable-closure', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.10.0', 'version' => '2.10.0.0', 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'nette/utils' => array('pretty_version' => 'v4.0.6', 'version' => '4.0.6.0', 'reference' => 'ce708655043c7050eb050df361c5e313cf708309', 'type' => 'library', 'install_path' => __DIR__ . '/../nette/utils', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/invoker' => array('pretty_version' => '2.3.6', 'version' => '2.3.6.0', 'reference' => '59f15608528d8a8838d69b422a919fd6b16aa576', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/invoker', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/php-di' => array('pretty_version' => '6.4.0', 'version' => '6.4.0.0', 'reference' => 'ae0f1b3b03d8b29dff81747063cbfd6276246cc4', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/php-di', 'aliases' => array(), 'dev_requirement' => \false), 'php-di/phpdoc-reader' => array('pretty_version' => '2.2.1', 'version' => '2.2.1.0', 'reference' => '66daff34cbd2627740ffec9469ffbac9f8c8185c', 'type' => 'library', 'install_path' => __DIR__ . '/../php-di/phpdoc-reader', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '^1.0')), 'psr/http-client' => array('pretty_version' => '1.0.3', 'version' => '1.0.3.0', 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/czqrpayment' => array('pretty_version' => 'v5.3.1', 'version' => '5.3.1.0', 'reference' => 'f8e0ecbbdb6d30bafb50a833cc7cfe4f575b82a4', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/czqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/iban' => array('pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '7fe69bf9274792c37d5a8d9d38ef5cb000f8377a', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/iban', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-interface' => array('pretty_version' => 'v1.1.0', 'version' => '1.1.0.0', 'reference' => '752f7a6bf1190c7d65ead90b5989f61927436c89', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-interface', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/qr-payment-qr-code-provider' => array('pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd233c4bedeecf2ff7cd7e7d4ec7f4ad4a5eb4b64', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/qr-payment-qr-code-provider', 'aliases' => array(), 'dev_requirement' => \false), 'rikudou/skqrpayment' => array('pretty_version' => 'v4.2.2', 'version' => '4.2.2.0', 'reference' => '777fa98caaff3f10fb43f3cf67a8464c547e0550', 'type' => 'library', 'install_path' => __DIR__ . '/../rikudou/skqrpayment', 'aliases' => array(), 'dev_requirement' => \false), 'spatie/array-to-xml' => array('pretty_version' => '2.17.1', 'version' => '2.17.1.0', 'reference' => '5cbec9c6ab17e320c58a259f0cebe88bde4a7c46', 'type' => 'library', 'install_path' => __DIR__ . '/../spatie/array-to-xml', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v3.5.1', 'version' => '3.5.1.0', 'reference' => '74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'woocommerce/action-scheduler' => array('pretty_version' => '3.9.2', 'version' => '3.9.2.0', 'reference' => 'efbb7953f72a433086335b249292f280dd43ddfe', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../woocommerce/action-scheduler', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/asset' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'faf957af650b441b49f03cb7ffa42abfe157b43b', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/asset', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/custom-fields' => array('pretty_version' => '4.0.44', 'version' => '4.0.44.0', 'reference' => '07090e9d39117db3126618f24b7b5c96f274d6e4', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/license' => array('pretty_version' => '2.0.5', 'version' => '2.0.5.0', 'reference' => '9d075a60f71a8fe6a86a8a02ed2551d2cbf392d5', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/license', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.0.10', 'version' => '1.0.10.0', 'reference' => '43bb35f12babe33b0343bb3d3f85239248c48701', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.22', 'version' => '4.1.22.0', 'reference' => 'f5c71ddb24d00496281664cdc3cac804b3394eb8', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/model', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/plugin-utils' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '0ace7f3a23bdfe3e2b2b05c72af79fa034c7e77a', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/plugin-utils', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/woo-core' => array('pretty_version' => '5.0.10', 'version' => '5.0.10.0', 'reference' => 'a2e369d22a3442863d0a3ccf3e87eb907bd73b47', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/woo-core', 'aliases' => array(), 'dev_requirement' => \false))); -
wpify-woo/trunk/wpify-woo.php
r3264949 r3266220 4 4 * Plugin Name: WPify Woo 5 5 * Description: Custom functionality for WooCommerce 6 * Version: 5.0. 46 * Version: 5.0.5 7 7 * Requires PHP: 8.1.0 8 8 * Requires at least: 6.2
Note: See TracChangeset
for help on using the changeset viewer.