PluginProbe ʕ •ᴥ•ʔ
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping / 6.10.0
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping v6.10.0
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 month ago HandleActionLabels.php 1 month ago HandleActionManifest.php 1 month ago HandleActionSend.php 1 month ago HandleActionStrategy.php 1 month ago HandleActionStrategyInterface.php 1 month 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