Changeset 3484800
- Timestamp:
- 03/17/2026 12:59:35 PM (13 days ago)
- Location:
- ecomail
- Files:
-
- 12 edited
- 1 copied
-
tags/2.4.3 (copied) (copied from ecomail/trunk)
-
tags/2.4.3/ecomail.php (modified) (1 diff)
-
tags/2.4.3/readme.txt (modified) (1 diff)
-
tags/2.4.3/src/Ecomail.php (modified) (4 diffs)
-
tags/2.4.3/src/WooCommerce.php (modified) (7 diffs)
-
tags/2.4.3/vendor/composer/installed.php (modified) (2 diffs)
-
tags/2.4.3/vendor/ecomail/composer/installed.php (modified) (1 diff)
-
trunk/ecomail.php (modified) (1 diff)
-
trunk/readme.txt (modified) (1 diff)
-
trunk/src/Ecomail.php (modified) (4 diffs)
-
trunk/src/WooCommerce.php (modified) (7 diffs)
-
trunk/vendor/composer/installed.php (modified) (2 diffs)
-
trunk/vendor/ecomail/composer/installed.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
ecomail/tags/2.4.3/ecomail.php
r3452122 r3484800 3 3 * Plugin Name: Ecomail 4 4 * Description: Official Ecomail integration for WordPress and WooCommerce 5 * Version: 2.4. 25 * Version: 2.4.3 6 6 * Requires PHP: 8.1.0 7 7 * Requires at least: 6.5 -
ecomail/tags/2.4.3/readme.txt
r3478170 r3484800 6 6 Tested up to: 6.8 7 7 Requires PHP: 8.1 8 Stable tag: 2.4. 28 Stable tag: 2.4.3 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html -
ecomail/tags/2.4.3/src/Ecomail.php
r3433536 r3484800 211 211 } 212 212 213 // First sync imported orders from Ecomail 213 // Flag to schedule users and orders upload after sync finishes 214 update_option( 'ecomail_sync_with_orders', true ); 215 216 // Sync imported orders first, users+orders will be scheduled after sync completes 214 217 $this->schedule_sync_imported_orders(); 215 216 // Then schedule users and orders upload217 $this->add_user_ids_to_list( 1, true );218 218 $this->log->info( 'Scheduled sync and users and orders bulk upload' ); 219 219 wp_safe_redirect( $this->settings->get_settings_url() ); … … 230 230 } 231 231 232 // First sync imported orders from Ecomail to get existing order IDs 232 // Flag to schedule order updates after sync finishes 233 update_option( 'ecomail_sync_with_update', true ); 234 235 // Sync imported orders first, update will be scheduled after sync completes 233 236 $this->schedule_sync_imported_orders(); 234 235 // Add all order IDs to update list (filtered by existing in Ecomail)236 $this->add_order_ids_to_update_list();237 238 237 $this->log->info( 'Scheduled bulk update orders' ); 239 238 wp_safe_redirect( $this->settings->get_settings_url() ); … … 507 506 */ 508 507 public function sync_imported_orders( $page = 1 ) { 508 // Reset imported order IDs on first page to prevent stale data from previous API key 509 if ( $page === 1 ) { 510 delete_option( self::OPTION_IMPORTED_ORDER_IDS ); 511 } 512 509 513 $data = array( 510 514 'page' => $page, … … 556 560 'total_synced' => count( $imported_order_ids ) 557 561 ] ); 562 563 // Schedule users and orders upload if requested 564 if ( get_option( 'ecomail_sync_with_orders' ) ) { 565 delete_option( 'ecomail_sync_with_orders' ); 566 $this->add_user_ids_to_list( 1, true ); 567 $this->log->info( 'Scheduled users and orders upload after sync' ); 568 } 569 570 // Schedule order updates if requested 571 if ( get_option( 'ecomail_sync_with_update' ) ) { 572 delete_option( 'ecomail_sync_with_update' ); 573 $this->add_order_ids_to_update_list(); 574 $this->log->info( 'Scheduled order updates after sync' ); 575 } 558 576 } 559 577 } -
ecomail/tags/2.4.3/src/WooCommerce.php
r3433536 r3484800 77 77 $disabled_by_cookie = $this->ecomail->is_disabled_by_cookie(); 78 78 $subscribe = false; 79 $not_subscribe_value = $this->get_not_subscribe_value( $order_id ); 79 80 80 81 if ( $checkout_subscribe ) { … … 82 83 ! $checkbox_enabled 83 84 || 84 ! filter_input( INPUT_POST, Ecomail::INPUT_NAME )85 ! $not_subscribe_value 85 86 ) { 86 87 $subscribe = true; … … 88 89 } elseif ( 89 90 $checkbox_enabled 90 && filter_input( INPUT_POST, Ecomail::INPUT_NAME )91 && $not_subscribe_value 91 92 ) { 92 $subscribe = true;93 $subscribe = false; 93 94 as_schedule_single_action( time(), 'ecomail_unsubscribe_contact', array( 'order_id' => $order_id ) ); 94 95 } … … 99 100 'subscribe_enabled' => $checkout_subscribe, 100 101 'show_checkbox' => $checkbox_enabled, 101 'input_value' => filter_input( INPUT_POST, Ecomail::INPUT_NAME ),102 'input_value' => $not_subscribe_value, 102 103 'subscribe' => $subscribe, 103 104 'order_tracking_enabled' => $order_tracking_enabled, … … 121 122 } 122 123 124 private function get_not_subscribe_value( int $order_id ): bool { 125 // Classic checkout - POST data 126 $post_value = filter_input( INPUT_POST, Ecomail::INPUT_NAME ); 127 if ( $post_value !== null ) { 128 return boolval( $post_value ); 129 } 130 131 // Block checkout - order meta (saved by WC additional fields) 132 $order = wc_get_order( $order_id ); 133 if ( $order ) { 134 $meta_value = $order->get_meta( '_wc_other/ecomail/not_subscribe' ); 135 if ( $meta_value !== '' ) { 136 return boolval( $meta_value ); 137 } 138 } 139 140 return false; 141 } 142 123 143 /** 124 144 * Handle order status change. … … 215 235 if ( $subscriber && ! is_wp_error( $subscriber ) && ! empty( $subscriber['subscriber'] ) ) { 216 236 $existing_tags = ! empty( $subscriber['subscriber']['tags'] ) ? $subscriber['subscriber']['tags'] : []; 217 $subscriber_data['tags'] = array_unique( array_merge( $existing_tags, $tags ) ); 237 $subscriber_data['tags'] = array_values( array_unique( array_merge( $existing_tags, $tags ) ) ); 238 if ( ! $subscribe ) { 239 $subscriber_data['tags'] = array_values( array_diff( $subscriber_data['tags'], array( 'wp_newsletter' ) ) ); 240 } 218 241 } 219 242 … … 227 250 'skip_confirmation' => boolval( $this->settings->get_option( 'woocommerce_checkout_skip_confirmation', false ) ), 228 251 'trigger_autoresponders' => boolval( $this->settings->get_option( 'woocommerce_checkout_trigger_autoresponders', false ) ), 229 'resubscribe' => boolval( $this->settings->get_option( 'woocommerce_checkout_resubscribe', false ) ),252 'resubscribe' => $subscribe && boolval( $this->settings->get_option( 'woocommerce_checkout_resubscribe', false ) ), 230 253 ); 231 254 -
ecomail/tags/2.4.3/vendor/composer/installed.php
r3452122 r3484800 2 2 'root' => array( 3 3 'name' => 'ecomailcz/ecomail-woocommerce', 4 'pretty_version' => '2.4. 2',5 'version' => '2.4. 2.0',6 'reference' => ' 1b21cbcab81646d4db1b8a963bae285040d88d28',4 'pretty_version' => '2.4.3', 5 'version' => '2.4.3.0', 6 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 7 7 'type' => 'project', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'ecomailcz/ecomail-woocommerce' => array( 14 'pretty_version' => '2.4. 2',15 'version' => '2.4. 2.0',16 'reference' => ' 1b21cbcab81646d4db1b8a963bae285040d88d28',14 'pretty_version' => '2.4.3', 15 'version' => '2.4.3.0', 16 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 17 17 'type' => 'project', 18 18 'install_path' => __DIR__ . '/../../', -
ecomail/tags/2.4.3/vendor/ecomail/composer/installed.php
r3452122 r3484800 3 3 namespace EcomailDeps; 4 4 5 return array('root' => array('name' => '__root__', 'pretty_version' => '2.4. 2', 'version' => '2.4.2.0', 'reference' => '1b21cbcab81646d4db1b8a963bae285040d88d28', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '2.4.2', 'version' => '2.4.2.0', 'reference' => '1b21cbcab81646d4db1b8a963bae285040d88d28', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'ecomailcz/ecomail' => array('pretty_version' => 'v1.2.8', 'version' => '1.2.8.0', 'reference' => 'e03e521f6b508fb184af95341aa0128ece1f1973', 'type' => 'library', 'install_path' => __DIR__ . '/../ecomailcz/ecomail', '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), 'php-di/invoker' => array('pretty_version' => '2.3.7', 'version' => '2.3.7.0', 'reference' => '3c1ddfdef181431fbc4be83378f6d036d59e81e1', '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/log' => array('pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => 'f16e1d5863e37f8d8c2a01719f5b34baa2b714d3', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', '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.72', 'version' => '4.0.72.0', 'reference' => '38b9b070dfac830a082d4bc7819ae787bdc28cfd', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '0fa14928f8191357966b77214fae9b3dd8e2ae69', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.27', 'version' => '4.1.27.0', 'reference' => 'e6c6a6421ade5498be4f5fd1580770bd8dbd2fd6', '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)));5 return array('root' => array('name' => '__root__', 'pretty_version' => '2.4.3', 'version' => '2.4.3.0', 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '2.4.3', 'version' => '2.4.3.0', 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'ecomailcz/ecomail' => array('pretty_version' => 'v1.2.8', 'version' => '1.2.8.0', 'reference' => 'e03e521f6b508fb184af95341aa0128ece1f1973', 'type' => 'library', 'install_path' => __DIR__ . '/../ecomailcz/ecomail', '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), 'php-di/invoker' => array('pretty_version' => '2.3.7', 'version' => '2.3.7.0', 'reference' => '3c1ddfdef181431fbc4be83378f6d036d59e81e1', '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/log' => array('pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => 'f16e1d5863e37f8d8c2a01719f5b34baa2b714d3', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', '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.72', 'version' => '4.0.72.0', 'reference' => '38b9b070dfac830a082d4bc7819ae787bdc28cfd', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '0fa14928f8191357966b77214fae9b3dd8e2ae69', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.27', 'version' => '4.1.27.0', 'reference' => 'e6c6a6421ade5498be4f5fd1580770bd8dbd2fd6', '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))); -
ecomail/trunk/ecomail.php
r3452122 r3484800 3 3 * Plugin Name: Ecomail 4 4 * Description: Official Ecomail integration for WordPress and WooCommerce 5 * Version: 2.4. 25 * Version: 2.4.3 6 6 * Requires PHP: 8.1.0 7 7 * Requires at least: 6.5 -
ecomail/trunk/readme.txt
r3478170 r3484800 6 6 Tested up to: 6.8 7 7 Requires PHP: 8.1 8 Stable tag: 2.4. 28 Stable tag: 2.4.3 9 9 License: GPLv2 or later 10 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html -
ecomail/trunk/src/Ecomail.php
r3433536 r3484800 211 211 } 212 212 213 // First sync imported orders from Ecomail 213 // Flag to schedule users and orders upload after sync finishes 214 update_option( 'ecomail_sync_with_orders', true ); 215 216 // Sync imported orders first, users+orders will be scheduled after sync completes 214 217 $this->schedule_sync_imported_orders(); 215 216 // Then schedule users and orders upload217 $this->add_user_ids_to_list( 1, true );218 218 $this->log->info( 'Scheduled sync and users and orders bulk upload' ); 219 219 wp_safe_redirect( $this->settings->get_settings_url() ); … … 230 230 } 231 231 232 // First sync imported orders from Ecomail to get existing order IDs 232 // Flag to schedule order updates after sync finishes 233 update_option( 'ecomail_sync_with_update', true ); 234 235 // Sync imported orders first, update will be scheduled after sync completes 233 236 $this->schedule_sync_imported_orders(); 234 235 // Add all order IDs to update list (filtered by existing in Ecomail)236 $this->add_order_ids_to_update_list();237 238 237 $this->log->info( 'Scheduled bulk update orders' ); 239 238 wp_safe_redirect( $this->settings->get_settings_url() ); … … 507 506 */ 508 507 public function sync_imported_orders( $page = 1 ) { 508 // Reset imported order IDs on first page to prevent stale data from previous API key 509 if ( $page === 1 ) { 510 delete_option( self::OPTION_IMPORTED_ORDER_IDS ); 511 } 512 509 513 $data = array( 510 514 'page' => $page, … … 556 560 'total_synced' => count( $imported_order_ids ) 557 561 ] ); 562 563 // Schedule users and orders upload if requested 564 if ( get_option( 'ecomail_sync_with_orders' ) ) { 565 delete_option( 'ecomail_sync_with_orders' ); 566 $this->add_user_ids_to_list( 1, true ); 567 $this->log->info( 'Scheduled users and orders upload after sync' ); 568 } 569 570 // Schedule order updates if requested 571 if ( get_option( 'ecomail_sync_with_update' ) ) { 572 delete_option( 'ecomail_sync_with_update' ); 573 $this->add_order_ids_to_update_list(); 574 $this->log->info( 'Scheduled order updates after sync' ); 575 } 558 576 } 559 577 } -
ecomail/trunk/src/WooCommerce.php
r3433536 r3484800 77 77 $disabled_by_cookie = $this->ecomail->is_disabled_by_cookie(); 78 78 $subscribe = false; 79 $not_subscribe_value = $this->get_not_subscribe_value( $order_id ); 79 80 80 81 if ( $checkout_subscribe ) { … … 82 83 ! $checkbox_enabled 83 84 || 84 ! filter_input( INPUT_POST, Ecomail::INPUT_NAME )85 ! $not_subscribe_value 85 86 ) { 86 87 $subscribe = true; … … 88 89 } elseif ( 89 90 $checkbox_enabled 90 && filter_input( INPUT_POST, Ecomail::INPUT_NAME )91 && $not_subscribe_value 91 92 ) { 92 $subscribe = true;93 $subscribe = false; 93 94 as_schedule_single_action( time(), 'ecomail_unsubscribe_contact', array( 'order_id' => $order_id ) ); 94 95 } … … 99 100 'subscribe_enabled' => $checkout_subscribe, 100 101 'show_checkbox' => $checkbox_enabled, 101 'input_value' => filter_input( INPUT_POST, Ecomail::INPUT_NAME ),102 'input_value' => $not_subscribe_value, 102 103 'subscribe' => $subscribe, 103 104 'order_tracking_enabled' => $order_tracking_enabled, … … 121 122 } 122 123 124 private function get_not_subscribe_value( int $order_id ): bool { 125 // Classic checkout - POST data 126 $post_value = filter_input( INPUT_POST, Ecomail::INPUT_NAME ); 127 if ( $post_value !== null ) { 128 return boolval( $post_value ); 129 } 130 131 // Block checkout - order meta (saved by WC additional fields) 132 $order = wc_get_order( $order_id ); 133 if ( $order ) { 134 $meta_value = $order->get_meta( '_wc_other/ecomail/not_subscribe' ); 135 if ( $meta_value !== '' ) { 136 return boolval( $meta_value ); 137 } 138 } 139 140 return false; 141 } 142 123 143 /** 124 144 * Handle order status change. … … 215 235 if ( $subscriber && ! is_wp_error( $subscriber ) && ! empty( $subscriber['subscriber'] ) ) { 216 236 $existing_tags = ! empty( $subscriber['subscriber']['tags'] ) ? $subscriber['subscriber']['tags'] : []; 217 $subscriber_data['tags'] = array_unique( array_merge( $existing_tags, $tags ) ); 237 $subscriber_data['tags'] = array_values( array_unique( array_merge( $existing_tags, $tags ) ) ); 238 if ( ! $subscribe ) { 239 $subscriber_data['tags'] = array_values( array_diff( $subscriber_data['tags'], array( 'wp_newsletter' ) ) ); 240 } 218 241 } 219 242 … … 227 250 'skip_confirmation' => boolval( $this->settings->get_option( 'woocommerce_checkout_skip_confirmation', false ) ), 228 251 'trigger_autoresponders' => boolval( $this->settings->get_option( 'woocommerce_checkout_trigger_autoresponders', false ) ), 229 'resubscribe' => boolval( $this->settings->get_option( 'woocommerce_checkout_resubscribe', false ) ),252 'resubscribe' => $subscribe && boolval( $this->settings->get_option( 'woocommerce_checkout_resubscribe', false ) ), 230 253 ); 231 254 -
ecomail/trunk/vendor/composer/installed.php
r3452122 r3484800 2 2 'root' => array( 3 3 'name' => 'ecomailcz/ecomail-woocommerce', 4 'pretty_version' => '2.4. 2',5 'version' => '2.4. 2.0',6 'reference' => ' 1b21cbcab81646d4db1b8a963bae285040d88d28',4 'pretty_version' => '2.4.3', 5 'version' => '2.4.3.0', 6 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 7 7 'type' => 'project', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'ecomailcz/ecomail-woocommerce' => array( 14 'pretty_version' => '2.4. 2',15 'version' => '2.4. 2.0',16 'reference' => ' 1b21cbcab81646d4db1b8a963bae285040d88d28',14 'pretty_version' => '2.4.3', 15 'version' => '2.4.3.0', 16 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 17 17 'type' => 'project', 18 18 'install_path' => __DIR__ . '/../../', -
ecomail/trunk/vendor/ecomail/composer/installed.php
r3452122 r3484800 3 3 namespace EcomailDeps; 4 4 5 return array('root' => array('name' => '__root__', 'pretty_version' => '2.4. 2', 'version' => '2.4.2.0', 'reference' => '1b21cbcab81646d4db1b8a963bae285040d88d28', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '2.4.2', 'version' => '2.4.2.0', 'reference' => '1b21cbcab81646d4db1b8a963bae285040d88d28', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'ecomailcz/ecomail' => array('pretty_version' => 'v1.2.8', 'version' => '1.2.8.0', 'reference' => 'e03e521f6b508fb184af95341aa0128ece1f1973', 'type' => 'library', 'install_path' => __DIR__ . '/../ecomailcz/ecomail', '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), 'php-di/invoker' => array('pretty_version' => '2.3.7', 'version' => '2.3.7.0', 'reference' => '3c1ddfdef181431fbc4be83378f6d036d59e81e1', '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/log' => array('pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => 'f16e1d5863e37f8d8c2a01719f5b34baa2b714d3', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', '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.72', 'version' => '4.0.72.0', 'reference' => '38b9b070dfac830a082d4bc7819ae787bdc28cfd', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '0fa14928f8191357966b77214fae9b3dd8e2ae69', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.27', 'version' => '4.1.27.0', 'reference' => 'e6c6a6421ade5498be4f5fd1580770bd8dbd2fd6', '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)));5 return array('root' => array('name' => '__root__', 'pretty_version' => '2.4.3', 'version' => '2.4.3.0', 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => '2.4.3', 'version' => '2.4.3.0', 'reference' => '5054fae9d6fac838c8a7dbdfe9770f7d0168cdcc', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'ecomailcz/ecomail' => array('pretty_version' => 'v1.2.8', 'version' => '1.2.8.0', 'reference' => 'e03e521f6b508fb184af95341aa0128ece1f1973', 'type' => 'library', 'install_path' => __DIR__ . '/../ecomailcz/ecomail', '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), 'php-di/invoker' => array('pretty_version' => '2.3.7', 'version' => '2.3.7.0', 'reference' => '3c1ddfdef181431fbc4be83378f6d036d59e81e1', '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/log' => array('pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => 'f16e1d5863e37f8d8c2a01719f5b34baa2b714d3', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', '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.72', 'version' => '4.0.72.0', 'reference' => '38b9b070dfac830a082d4bc7819ae787bdc28cfd', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/custom-fields', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/log' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '0fa14928f8191357966b77214fae9b3dd8e2ae69', 'type' => 'library', 'install_path' => __DIR__ . '/../wpify/log', 'aliases' => array(), 'dev_requirement' => \false), 'wpify/model' => array('pretty_version' => '4.1.27', 'version' => '4.1.27.0', 'reference' => 'e6c6a6421ade5498be4f5fd1580770bd8dbd2fd6', '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)));
Note: See TracChangeset
for help on using the changeset viewer.