Flexible Shipping for WooCommerce - Version 2.1.8

Version Description

  • 2018-10-16 =
  • Added support for WooCommerce 3.5
  • Dropped support for WooCommerce below 3.0 (the plugin may still work with older versions but we do not declare official support)
  • Fixed multiple shipments in some cases
Download this release

Release Info

Developer jablonowski
Plugin Icon 128x128 Flexible Shipping for WooCommerce
Version 2.1.8
Comparing to
See all releases

Code changes from version 2.1.7 to 2.1.8

classes/flexible-shipping-plugin.php CHANGED
@@ -184,6 +184,8 @@ class WPDesk_Flexible_Shipping_Plugin extends WPDesk_Plugin_1_10 {
184
  */
185
  public function add_flexible_shipping_order_meta_on_checkout( WC_Order $order ) {
186
  if ( ! $this->is_order_processed_on_checkout ) {
 
 
187
  $this->is_order_processed_on_checkout = true;
188
  $order_shipping_methods = $order->get_shipping_methods();
189
  foreach ( $order_shipping_methods as $shipping_id => $shipping_method ) {
@@ -192,10 +194,14 @@ class WPDesk_Flexible_Shipping_Plugin extends WPDesk_Plugin_1_10 {
192
  ) {
193
  $fs_method = $shipping_method['item_meta']['_fs_method'];
194
  if ( ! empty( $fs_method['method_integration'] ) ) {
195
- $order->add_meta_data( '_flexible_shipping_integration', $fs_method['method_integration'] );
 
 
 
196
  }
197
  }
198
  }
 
199
  }
200
  }
201
 
184
  */
185
  public function add_flexible_shipping_order_meta_on_checkout( WC_Order $order ) {
186
  if ( ! $this->is_order_processed_on_checkout ) {
187
+ $mutex = \WPDesk\Mutex\WordpressPostMutex::fromOrder( $order );
188
+ $mutex->acquireLock();
189
  $this->is_order_processed_on_checkout = true;
190
  $order_shipping_methods = $order->get_shipping_methods();
191
  foreach ( $order_shipping_methods as $shipping_id => $shipping_method ) {
194
  ) {
195
  $fs_method = $shipping_method['item_meta']['_fs_method'];
196
  if ( ! empty( $fs_method['method_integration'] ) ) {
197
+ $order_meta = $order->get_meta( '_flexible_shipping_integration', false );
198
+ if ( ! in_array( $fs_method['method_integration'], $order_meta, true ) ) {
199
+ $order->add_meta_data( '_flexible_shipping_integration', $fs_method['method_integration'] );
200
+ }
201
  }
202
  }
203
  }
204
+ $mutex->releaseLock();
205
  }
206
  }
207
 
classes/shipment/cpt-shipment.php CHANGED
@@ -6,6 +6,13 @@ class WPDesk_Flexible_Shipping_Shipment_CPT {
6
 
7
  private $plugin = null;
8
 
 
 
 
 
 
 
 
9
  public function __construct( WPDesk_Flexible_Shipping_Plugin $plugin ) {
10
  $this->plugin = $plugin;
11
  $this->hooks();
@@ -17,7 +24,7 @@ class WPDesk_Flexible_Shipping_Shipment_CPT {
17
  add_action( 'init', array( $this, 'flexible_shipping_get_label' ), 9999999 );
18
  add_action( 'add_meta_boxes', array( $this, 'add_meta_boxes' ), 20, 2 );
19
 
20
- add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'woocommerce_checkout_update_order_meta' ) );
21
 
22
  add_action( 'woocommerce_order_details_after_order_table', array( $this, 'woocommerce_order_details_after_order_table' ) );
23
 
@@ -189,55 +196,107 @@ class WPDesk_Flexible_Shipping_Shipment_CPT {
189
  }
190
  }
191
 
192
- public function woocommerce_checkout_update_order_meta( $order_id ) {
193
- $order = wc_get_order( $order_id );
194
- $order_shipping_methods = $order->get_shipping_methods();
195
- $packages = WC()->shipping->get_packages();
196
- $package_id = -1;
197
- global $fs_package_id;
198
- foreach ( $order_shipping_methods as $shipping_id => $shipping_method ) {
199
- $package_id++;
200
- $fs_package_id = $package_id;
201
- $fs_method = array();
202
- if ( version_compare( WC_VERSION, '2.6', '<' ) ) {
203
- if (isset($shipping_method['item_meta'])
204
- && isset($shipping_method['item_meta']['method_id'])
205
- && isset($shipping_method['item_meta']['method_id'][0])
206
- ) {
207
- $all_shipping_methods = flexible_shipping_get_all_shipping_methods();
208
- $flexible_shipping = $all_shipping_methods['flexible_shipping'];
209
- $flexible_shipping_rates = $flexible_shipping->get_all_rates();
210
- $fs_method = $flexible_shipping_rates[$shipping_method['item_meta']['method_id'][0]];
211
- }
212
- }
213
- if ( version_compare( WC_VERSION, '2.7', '<' ) ) {
214
- if (isset($shipping_method['item_meta'])
215
- && isset($shipping_method['item_meta']['_fs_method'])
216
- && isset($shipping_method['item_meta']['_fs_method'][0])
217
- ) {
218
- $fs_method = unserialize($shipping_method['item_meta']['_fs_method'][0]);
219
- }
220
- }
221
- else {
222
- if ( isset( $shipping_method['item_meta'] )
223
- && isset( $shipping_method['item_meta']['_fs_method'] )
224
- ) {
225
- $fs_method = $shipping_method['item_meta']['_fs_method'];
226
- }
227
- }
228
- if ( !empty( $fs_method['method_integration'] ) ) {
229
- if ( fs_shipment_integration_exists( $fs_method['method_integration'] ) ) {
230
- $shipment = fs_create_shipment( $order, $fs_method );
231
- $shipment->set_meta( '_fs_method', $fs_method );
232
- $shipment->set_meta( '_shipping_id', $shipping_id );
233
- $shipment->set_meta( '_shipping_method', $shipping_method );
234
- $shipment->set_meta( '_package', $packages[$package_id] );
235
- $shipment->set_meta( '_packages', $packages );
236
- $shipment->checkout( $fs_method, $packages[$package_id] );
237
- $shipment->save();
238
- }
239
- }
240
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
241
  }
242
 
243
  public function woocommerce_order_details_after_order_table( WC_Order $order ) {
@@ -267,4 +326,4 @@ class WPDesk_Flexible_Shipping_Shipment_CPT {
267
  }
268
 
269
 
270
- }
6
 
7
  private $plugin = null;
8
 
9
+ /**
10
+ * Is order processed on checkout?
11
+ *
12
+ * @var bool
13
+ */
14
+ private $is_order_processed_on_checkout = false;
15
+
16
  public function __construct( WPDesk_Flexible_Shipping_Plugin $plugin ) {
17
  $this->plugin = $plugin;
18
  $this->hooks();
24
  add_action( 'init', array( $this, 'flexible_shipping_get_label' ), 9999999 );
25
  add_action( 'add_meta_boxes', array( $this, 'add_meta_boxes' ), 20, 2 );
26
 
27
+ add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'create_shipping_for_order' ) );
28
 
29
  add_action( 'woocommerce_order_details_after_order_table', array( $this, 'woocommerce_order_details_after_order_table' ) );
30
 
196
  }
197
  }
198
 
199
+ /**
200
+ * Get Flexible Shipping method from order shipping method meta data.
201
+ *
202
+ * @param WC_Order_Item_Shipping $shipping_method
203
+ *
204
+ * @return array
205
+ */
206
+ private function get_fs_method_from_order_shipping_method( WC_Order_Item_Shipping $shipping_method ) {
207
+ $fs_method = array();
208
+ if ( version_compare( WC_VERSION, '2.6', '<' ) ) {
209
+ if ( isset( $shipping_method['item_meta'] )
210
+ && isset( $shipping_method['item_meta']['method_id'] )
211
+ && isset( $shipping_method['item_meta']['method_id'][0] )
212
+ ) {
213
+ $all_shipping_methods = flexible_shipping_get_all_shipping_methods();
214
+ $flexible_shipping = $all_shipping_methods['flexible_shipping'];
215
+ $flexible_shipping_rates = $flexible_shipping->get_all_rates();
216
+ $fs_method = $flexible_shipping_rates[ $shipping_method['item_meta']['method_id'][0] ];
217
+ }
218
+ }
219
+ if ( version_compare( WC_VERSION, '2.7', '<' ) ) {
220
+ if ( isset( $shipping_method['item_meta'] )
221
+ && isset( $shipping_method['item_meta']['_fs_method'] )
222
+ && isset( $shipping_method['item_meta']['_fs_method'][0] )
223
+ ) {
224
+ $fs_method = unserialize( $shipping_method['item_meta']['_fs_method'][0] );
225
+ }
226
+ } else {
227
+ if ( isset( $shipping_method['item_meta'] )
228
+ && isset( $shipping_method['item_meta']['_fs_method'] )
229
+ ) {
230
+ $fs_method = $shipping_method['item_meta']['_fs_method'];
231
+ }
232
+ }
233
+ return $fs_method;
234
+ }
235
+
236
+ /**
237
+ * Create shipment for order and shipping method.
238
+ *
239
+ * @param WC_Order $order Order.
240
+ * @param array $fs_method Flexible Shipping shipping method.
241
+ * @param string $shipping_id Shipping Id.
242
+ * @param WC_Order_Item_Shipping $shipping_method Shipping method.
243
+ * @param array $packages Packages.
244
+ * @param int $package_id Package Id.
245
+ *
246
+ * @return WPDesk_Flexible_Shipping_Shipment
247
+ */
248
+ private function create_shipment_for_order_and_fs_shipping_method(
249
+ WC_Order $order,
250
+ array $fs_method,
251
+ $shipping_id,
252
+ WC_Order_Item_Shipping $shipping_method,
253
+ array $packages,
254
+ $package_id
255
+ ) {
256
+ $shipment = fs_create_shipment( $order, $fs_method );
257
+ $shipment->set_meta( '_fs_method', $fs_method );
258
+ $shipment->set_meta( '_shipping_id', $shipping_id );
259
+ $shipment->set_meta( '_shipping_method', $shipping_method );
260
+ $shipment->set_meta( '_package', $packages[ $package_id ] );
261
+ $shipment->set_meta( '_packages', $packages );
262
+ $shipment->checkout( $fs_method, $packages[ $package_id ] );
263
+ $shipment->save();
264
+ return $shipment;
265
+ }
266
+
267
+ /**
268
+ * Create shipping for order.
269
+ *
270
+ * @param $order_id
271
+ */
272
+ public function create_shipping_for_order( $order_id ) {
273
+ if ( ! $this->is_order_processed_on_checkout ) {
274
+ $order = wc_get_order( $order_id );
275
+ $mutex = \WPDesk\Mutex\WordpressPostMutex::fromOrder( $order );
276
+ $mutex->acquireLock();
277
+ $shipments = fs_get_order_shipments( $order_id );
278
+ if ( 0 === count( $shipments ) ) {
279
+ $this->is_order_processed_on_checkout = true;
280
+ $order_shipping_methods = $order->get_shipping_methods();
281
+ $packages = WC()->shipping->get_packages();
282
+ $package_id = - 1;
283
+ global $fs_package_id;
284
+ foreach ( $order_shipping_methods as $shipping_id => $shipping_method ) {
285
+ $package_id ++;
286
+ $fs_package_id = $package_id;
287
+ $fs_method = $this->get_fs_method_from_order_shipping_method( $shipping_method );
288
+
289
+ if ( ! empty( $fs_method['method_integration'] ) ) {
290
+ if ( fs_shipment_integration_exists( $fs_method['method_integration'] ) ) {
291
+ $shipment = $this->create_shipment_for_order_and_fs_shipping_method(
292
+ $order, $fs_method, $shipping_id, $shipping_method, $packages, $package_id
293
+ );
294
+ }
295
+ }
296
+ }
297
+ }
298
+ $mutex->releaseLock();
299
+ }
300
  }
301
 
302
  public function woocommerce_order_details_after_order_table( WC_Order $order ) {
326
  }
327
 
328
 
329
+ }
flexible-shipping.php CHANGED
@@ -3,15 +3,15 @@
3
  Plugin Name: Flexible Shipping
4
  Plugin URI: https://wordpress.org/plugins/flexible-shipping/
5
  Description: Create additional shipment methods in WooCommerce and enable pricing based on cart weight or total.
6
- Version: 2.1.7
7
  Author: WP Desk
8
  Author URI: https://www.wpdesk.net/
9
  Text Domain: flexible-shipping
10
  Domain Path: /languages/
11
  Requires at least: 4.5
12
  Tested up to: 4.9.8
13
- WC requires at least: 3.0.0
14
- WC tested up to: 3.4.5
15
 
16
  Copyright 2017 WP Desk Ltd.
17
 
@@ -36,7 +36,7 @@ if ( ! defined( 'ABSPATH' ) ) {
36
  exit;
37
  } // Exit if accessed directly
38
 
39
- $plugin_version = '2.1.7';
40
 
41
  define( 'FLEXIBLE_SHIPPING_VERSION', $plugin_version );
42
 
3
  Plugin Name: Flexible Shipping
4
  Plugin URI: https://wordpress.org/plugins/flexible-shipping/
5
  Description: Create additional shipment methods in WooCommerce and enable pricing based on cart weight or total.
6
+ Version: 2.1.8
7
  Author: WP Desk
8
  Author URI: https://www.wpdesk.net/
9
  Text Domain: flexible-shipping
10
  Domain Path: /languages/
11
  Requires at least: 4.5
12
  Tested up to: 4.9.8
13
+ WC requires at least: 3.1.0
14
+ WC tested up to: 3.5.0
15
 
16
  Copyright 2017 WP Desk Ltd.
17
 
36
  exit;
37
  } // Exit if accessed directly
38
 
39
+ $plugin_version = '2.1.8';
40
 
41
  define( 'FLEXIBLE_SHIPPING_VERSION', $plugin_version );
42
 
readme.txt CHANGED
@@ -4,8 +4,8 @@ Donate link: https://www.wpdesk.net/products/flexible-shipping-pro-woocommerce/
4
  Tags: table rate, table rate shipping, woocommerce shipping, flexible shipping, woocommerce table rate shipping, cart based shipping, weight shipping, weight based shipping, totals based shipping, order based shipping, shipping zones, shipping classes
5
  Requires at least: 4.5
6
  Tested up to: 4.9.8
7
- Stable tag: 2.1.7
8
- Requires PHP: 5.5
9
  License: GPLv3 or later
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
@@ -171,6 +171,14 @@ If you are upgrading from the old Flexible Shipping version (1.3.2, woo-flexible
171
 
172
  == Changelog ==
173
 
 
 
 
 
 
 
 
 
174
  = 2.1.7 - 2018-09-05 =
175
  * Fixed issue with the generation of many shipments for one order
176
 
4
  Tags: table rate, table rate shipping, woocommerce shipping, flexible shipping, woocommerce table rate shipping, cart based shipping, weight shipping, weight based shipping, totals based shipping, order based shipping, shipping zones, shipping classes
5
  Requires at least: 4.5
6
  Tested up to: 4.9.8
7
+ Stable tag: 2.1.8
8
+ Requires PHP: 5.6
9
  License: GPLv3 or later
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
171
 
172
  == Changelog ==
173
 
174
+
175
+ * Fixed multiple shipments in some cases
176
+
177
+ = 2.1.8 - 2018-10-16 =
178
+ * Added support for WooCommerce 3.5
179
+ * Dropped support for WooCommerce below 3.0 (the plugin may still work with older versions but we do not declare official support)
180
+ * Fixed multiple shipments in some cases
181
+
182
  = 2.1.7 - 2018-09-05 =
183
  * Fixed issue with the generation of many shipments for one order
184
 
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit34c55303a3308aed406e4ea4a74f7a52::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit6e9477a5f36cf8056d8cc614caae0f32::getLoader();
vendor/composer/autoload_classmap.php CHANGED
@@ -8,6 +8,8 @@ $baseDir = dirname($vendorDir);
8
  return array(
9
  'Browser' => $baseDir . '/classes/wpdesk/settings-api/modules/sysinfo/browser.php',
10
  'S214_Sysinfo' => $baseDir . '/classes/wpdesk/settings-api/modules/sysinfo/class.s214-sysinfo.php',
 
 
11
  'WPDesk_Flexible_Shipping' => $baseDir . '/classes/shipping-method.php',
12
  'WPDesk_Flexible_Shipping_Add_Shipping' => $baseDir . '/classes/order-add-shipping.php',
13
  'WPDesk_Flexible_Shipping_Admin_Notices' => $baseDir . '/classes/admin-notices.php',
8
  return array(
9
  'Browser' => $baseDir . '/classes/wpdesk/settings-api/modules/sysinfo/browser.php',
10
  'S214_Sysinfo' => $baseDir . '/classes/wpdesk/settings-api/modules/sysinfo/class.s214-sysinfo.php',
11
+ 'WPDesk\\Mutex\\Mutex' => $vendorDir . '/wpdesk/wp-mutex/src/WPDesk/Mutex/Mutex.php',
12
+ 'WPDesk\\Mutex\\WordpressPostMutex' => $vendorDir . '/wpdesk/wp-mutex/src/WPDesk/Mutex/WordpressPostMutex.php',
13
  'WPDesk_Flexible_Shipping' => $baseDir . '/classes/shipping-method.php',
14
  'WPDesk_Flexible_Shipping_Add_Shipping' => $baseDir . '/classes/order-add-shipping.php',
15
  'WPDesk_Flexible_Shipping_Admin_Notices' => $baseDir . '/classes/admin-notices.php',
vendor/composer/autoload_psr4.php CHANGED
@@ -6,4 +6,5 @@ $vendorDir = dirname(dirname(__FILE__));
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
 
9
  );
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
9
+ 'WPDesk\\Mutex\\' => array($vendorDir . '/wpdesk/wp-mutex/src/WPDesk/Mutex'),
10
  );
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit34c55303a3308aed406e4ea4a74f7a52
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit34c55303a3308aed406e4ea4a74f7a52
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit34c55303a3308aed406e4ea4a74f7a52', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit34c55303a3308aed406e4ea4a74f7a52', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInit34c55303a3308aed406e4ea4a74f7a52::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit6e9477a5f36cf8056d8cc614caae0f32
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit6e9477a5f36cf8056d8cc614caae0f32', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit6e9477a5f36cf8056d8cc614caae0f32', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit6e9477a5f36cf8056d8cc614caae0f32::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
vendor/composer/autoload_static.php CHANGED
@@ -4,11 +4,27 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit34c55303a3308aed406e4ea4a74f7a52
8
  {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  public static $classMap = array (
10
  'Browser' => __DIR__ . '/../..' . '/classes/wpdesk/settings-api/modules/sysinfo/browser.php',
11
  'S214_Sysinfo' => __DIR__ . '/../..' . '/classes/wpdesk/settings-api/modules/sysinfo/class.s214-sysinfo.php',
 
 
12
  'WPDesk_Flexible_Shipping' => __DIR__ . '/../..' . '/classes/shipping-method.php',
13
  'WPDesk_Flexible_Shipping_Add_Shipping' => __DIR__ . '/../..' . '/classes/order-add-shipping.php',
14
  'WPDesk_Flexible_Shipping_Admin_Notices' => __DIR__ . '/../..' . '/classes/admin-notices.php',
@@ -67,7 +83,9 @@ class ComposerStaticInit34c55303a3308aed406e4ea4a74f7a52
67
  public static function getInitializer(ClassLoader $loader)
68
  {
69
  return \Closure::bind(function () use ($loader) {
70
- $loader->classMap = ComposerStaticInit34c55303a3308aed406e4ea4a74f7a52::$classMap;
 
 
71
 
72
  }, null, ClassLoader::class);
73
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit6e9477a5f36cf8056d8cc614caae0f32
8
  {
9
+ public static $prefixLengthsPsr4 = array (
10
+ 'W' =>
11
+ array (
12
+ 'WPDesk\\Mutex\\' => 13,
13
+ ),
14
+ );
15
+
16
+ public static $prefixDirsPsr4 = array (
17
+ 'WPDesk\\Mutex\\' =>
18
+ array (
19
+ 0 => __DIR__ . '/..' . '/wpdesk/wp-mutex/src/WPDesk/Mutex',
20
+ ),
21
+ );
22
+
23
  public static $classMap = array (
24
  'Browser' => __DIR__ . '/../..' . '/classes/wpdesk/settings-api/modules/sysinfo/browser.php',
25
  'S214_Sysinfo' => __DIR__ . '/../..' . '/classes/wpdesk/settings-api/modules/sysinfo/class.s214-sysinfo.php',
26
+ 'WPDesk\\Mutex\\Mutex' => __DIR__ . '/..' . '/wpdesk/wp-mutex/src/WPDesk/Mutex/Mutex.php',
27
+ 'WPDesk\\Mutex\\WordpressPostMutex' => __DIR__ . '/..' . '/wpdesk/wp-mutex/src/WPDesk/Mutex/WordpressPostMutex.php',
28
  'WPDesk_Flexible_Shipping' => __DIR__ . '/../..' . '/classes/shipping-method.php',
29
  'WPDesk_Flexible_Shipping_Add_Shipping' => __DIR__ . '/../..' . '/classes/order-add-shipping.php',
30
  'WPDesk_Flexible_Shipping_Admin_Notices' => __DIR__ . '/../..' . '/classes/admin-notices.php',
83
  public static function getInitializer(ClassLoader $loader)
84
  {
85
  return \Closure::bind(function () use ($loader) {
86
+ $loader->prefixLengthsPsr4 = ComposerStaticInit6e9477a5f36cf8056d8cc614caae0f32::$prefixLengthsPsr4;
87
+ $loader->prefixDirsPsr4 = ComposerStaticInit6e9477a5f36cf8056d8cc614caae0f32::$prefixDirsPsr4;
88
+ $loader->classMap = ComposerStaticInit6e9477a5f36cf8056d8cc614caae0f32::$classMap;
89
 
90
  }, null, ClassLoader::class);
91
  }
vendor/composer/installed.json CHANGED
@@ -1 +1,58 @@
1
- []
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "name": "wpdesk/wp-mutex",
4
+ "version": "dev-feature/init-version",
5
+ "version_normalized": "dev-feature/init-version",
6
+ "source": {
7
+ "type": "git",
8
+ "url": "https://gitlab.com/wpdesk/wp-mutex.git",
9
+ "reference": "6b42402f26b6fb044680da0502b99db99fc4afaa"
10
+ },
11
+ "dist": {
12
+ "type": "zip",
13
+ "url": "https://gitlab.com/api/v4/projects/wpdesk%2Fwp-mutex/repository/archive.zip?sha=6b42402f26b6fb044680da0502b99db99fc4afaa",
14
+ "reference": "6b42402f26b6fb044680da0502b99db99fc4afaa",
15
+ "shasum": ""
16
+ },
17
+ "require": {
18
+ "php": ">=5.5"
19
+ },
20
+ "require-dev": {
21
+ "10up/wp_mock": "*",
22
+ "mockery/mockery": "*",
23
+ "phpunit/phpunit": "<7",
24
+ "squizlabs/php_codesniffer": "^3.0.2",
25
+ "wimg/php-compatibility": "^8",
26
+ "wp-coding-standards/wpcs": "^0.14.1"
27
+ },
28
+ "time": "2018-10-16T10:28:06+00:00",
29
+ "type": "library",
30
+ "installation-source": "source",
31
+ "autoload": {
32
+ "psr-4": {
33
+ "WPDesk\\Mutex\\": "src/WPDesk/Mutex/"
34
+ }
35
+ },
36
+ "notification-url": "https://packagist.org/downloads/",
37
+ "license": [
38
+ "MIT"
39
+ ],
40
+ "authors": [
41
+ {
42
+ "name": "grola",
43
+ "email": "grola@wpdesk.net"
44
+ },
45
+ {
46
+ "name": "dyszczo",
47
+ "email": "dyszczo@wpdesk.net"
48
+ }
49
+ ],
50
+ "description": "Library for locking in Wordpress.",
51
+ "homepage": "https://gitlab.com/wpdesk/wp-mutex",
52
+ "keywords": [
53
+ "lock",
54
+ "mutex",
55
+ "wordpress"
56
+ ]
57
+ }
58
+ ]
vendor/wpdesk/wp-mutex ADDED
@@ -0,0 +1 @@
 
1
+ Subproject commit 6b42402f26b6fb044680da0502b99db99fc4afaa