PluginProbe ʕ •ᴥ•ʔ
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping / 6.12.1
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping v6.12.1
6.12.1 6.12.0 6.11.0 6.10.0 6.9.1 6.9.0 6.8.1 6.8.0 6.7.4 6.7.3 6.7.2 6.7.0 4.21.7 4.22.0 4.22.1 4.23.0 4.23.1 4.23.2 4.23.3 4.24.0 4.24.1 4.24.10 4.24.11 4.24.12 4.24.13 4.24.14 4.24.15 4.24.16 4.24.17 4.24.18 4.24.19 4.24.2 4.24.4 4.24.6 4.24.7 4.24.8 4.24.9 4.25.0 4.25.1 4.25.2 4.25.4 4.25.5 4.25.6 4.25.7 4.25.8 4.3.0 4.3.1 4.4.0 4.4.1 4.5.0 4.5.1 4.6.0 4.6.1 4.7.0 4.7.1 4.7.2 4.8.0 4.8.1 4.8.3 4.8.4 4.8.5 4.9.0 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.0.9 5.1.0 5.1.1 5.1.2 5.1.3 5.2.0 5.3.0 5.3.1 5.3.3 5.3.4 5.3.5 6.0.0 6.1.0 6.1.1 6.1.2 6.2.0 6.2.1 6.2.2 6.2.3 6.2.4 6.3.0 trunk 6.4.0 1.4 6.4.1 1.4.1 6.4.2 1.5 6.4.3 1.6 6.4.5 1.6.1 6.5.0 1.6.2 6.5.1 1.7 6.5.2 1.8 6.5.3 1.9 6.5.4 1.9.1 6.5.5 1.9.10 6.5.6 1.9.11 6.5.7 1.9.12 6.5.8 1.9.2 6.6.0 1.9.3 6.6.1 1.9.4 6.6.2 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0 2.0.1 2.1 2.1.1 2.1.10 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.6 3.0.7 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.10.0 3.11.0 3.11.1 3.11.2 3.11.3 3.11.4 3.12.0 3.13.0 3.14.0 3.14.1 3.14.2 3.14.3 3.14.4 3.15.0 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.2.0 3.3.1 3.3.10 3.3.11 3.3.12 3.3.13 3.3.14 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4.0 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.7.0 3.8.0 3.9.0 3.9.1 3.9.10 3.9.11 3.9.12 3.9.13 3.9.15 3.9.16 3.9.17 3.9.18 3.9.19 3.9.2 3.9.20 3.9.21 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.9 4.0.0 4.0.1 4.0.10 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.11.0 4.11.1 4.11.2 4.11.3 4.11.4 4.11.5 4.11.6 4.11.7 4.11.8 4.11.9 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.14.0 4.14.1 4.14.2 4.15.0 4.16.0 4.16.1 4.16.2 4.17.0 4.18.0 4.18.1 4.18.2 4.18.3 4.18.4 4.18.5 4.18.6 4.19.0 4.19.1 4.2.0 4.20.0 4.20.1 4.20.2 4.20.3 4.21.0 4.21.1 4.21.2 4.21.3 4.21.4 4.21.5
flexible-shipping / src / WPDesk / FS / Shipment / BulkAction / HandleActionLabels.php
flexible-shipping / src / WPDesk / FS / Shipment / BulkAction Last commit date
HandleAction.php 1 week ago HandleActionLabels.php 1 week ago HandleActionManifest.php 1 week ago HandleActionSend.php 1 week ago HandleActionStrategy.php 1 week ago HandleActionStrategyInterface.php 1 week ago
HandleActionLabels.php
76 lines
1 <?php
2 /**
3 * Class HandleActionLabels
4 */
5
6 namespace WPDesk\FS\Shipment\BulkAction;
7
8 use Exception;
9 use FSVendor\WPDesk\FS\Shipment\Exception\UnableToCreateTmpFileException;
10 use FSVendor\WPDesk\FS\Shipment\Exception\UnableToCreateTmpZipFileException;
11 use FSVendor\WPDesk\FS\Shipment\Label\LabelsBulkActionHandler;
12 use FSVendor\WPDesk\FS\Shipment\Label\LabelsFileCreator;
13 use FSVendor\WPDesk\Session\SessionFactory;
14
15 /**
16 * .
17 */
18 class HandleActionLabels implements HandleActionStrategyInterface {
19
20 /**
21 * @var SessionFactory
22 */
23 private $session_factory;
24
25 /**
26 * @param SessionFactory $session_factory .
27 */
28 public function __construct( SessionFactory $session_factory ) {
29 $this->session_factory = $session_factory;
30 }
31
32 /**
33 * @param string $redirect_to .
34 * @param array $post_ids .
35 *
36 * @return string
37 */
38 public function handle( string $redirect_to, array $post_ids ): string {
39 try {
40 $labels_bulk_actions_handler = LabelsBulkActionHandler::get_labels_bulk_actions_handler();
41 $labels_bulk_actions_handler->bulk_process_orders( $post_ids );
42
43 $labels = $labels_bulk_actions_handler->get_labels_for_shipments();
44 if ( 0 === count( $labels ) ) {
45 $redirect_to = add_query_arg( 'bulk_flexible_shipping_labels', count( $post_ids ), $redirect_to );
46
47 return add_query_arg( 'bulk_flexible_shipping_no_labels_created', 1, $redirect_to );
48 }
49
50 $labels_file_creator = new LabelsFileCreator( $labels );
51 $labels_file_creator->create_labels_file();
52 $labels['tmp_file'] = $labels_file_creator->get_tmp_file_name();
53 $labels['client_file'] = $labels_file_creator->get_file_name();
54 } catch ( UnableToCreateTmpZipFileException $zip_file_exception ) {
55 $labels['error'] = __( 'Unable to create temporary zip archive for labels. Check temporary folder configuration on server.', 'flexible-shipping' );
56 } catch ( UnableToCreateTmpFileException $tmp_file_exception ) {
57 $labels['error'] = __( 'Unable to create temporary file for labels. Check temporary folder configuration on server.', 'flexible-shipping' );
58 } catch ( \Exception $e ) {
59 $labels['error'] = $e->getMessage();
60 } catch ( \Throwable $e ) {
61 $labels['error'] = $e->getMessage();
62 }
63
64 foreach ( $labels as $key => $label ) {
65 if ( is_array( $labels[ $key ] ) && isset( $labels[ $key ]['content'] ) ) {
66 unset( $labels[ $key ]['content'] );
67 }
68 }
69
70 $this->session_factory->get_woocommerce_session_adapter()->set( 'flexible_shipping_bulk_labels', $labels );
71
72 return add_query_arg( 'bulk_flexible_shipping_labels', count( $post_ids ), $redirect_to );
73 }
74
75 }
76