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