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 / classes / table-rate / flexible-shipping-settings.php
flexible-shipping / classes / table-rate Last commit date
logger 1 week ago settings 1 week ago views 1 week ago class-shortcode-unit-dimension.php 1 week ago class-shortcode-unit-weight.php 1 week ago class-wpdesk-flexible-shipping-multilingual.php 1 week ago flexible-shipping-settings.php 1 week ago order-item-meta.php 1 week ago shipping-method.php 1 week ago
flexible-shipping-settings.php
150 lines
1 <?php
2 /**
3 * WPDesk_Flexible_Shipping_Settings
4 *
5 * @package Flexible Shipping
6 */
7
8 use FSVendor\WPDesk\Beacon\Beacon\WooCommerceSettingsFieldsModifier;
9 use WPDesk\FS\Info\Dashboard;
10
11 /**
12 * Mainly read only info about FS + debug mode.
13 */
14 class WPDesk_Flexible_Shipping_Settings extends WC_Shipping_Method {
15
16 const METHOD_ID = 'flexible_shipping_info';
17
18 const WOOCOMMERCE_PAGE_WC_SETTINGS = 'wc-settings';
19
20 const WOOCOMMERCE_SETTINGS_SHIPPING_URL = 'admin.php?page=wc-settings&tab=shipping';
21
22 /**
23 * Logger settings.
24 *
25 * @var WPDesk_Flexible_Shipping_Logger_Settings
26 */
27 private $logger_settings;
28
29 /**
30 * WPDesk_Flexible_Shipping_Connect constructor.
31 *
32 * @param int $instance_id Instance id.
33 */
34 public function __construct( $instance_id = 0 ) {
35 parent::__construct( $instance_id );
36
37 $this->id = self::METHOD_ID;
38 $this->enabled = 'no';
39 $this->method_title = __( 'Flexible Shipping', 'flexible-shipping' );
40
41 $this->supports = [
42 'settings',
43 ];
44
45 $this->logger_settings = new WPDesk_Flexible_Shipping_Logger_Settings( $this );
46
47 $this->init_form_fields();
48
49 add_action( 'woocommerce_update_options_shipping_' . $this->id, [ $this, 'process_admin_options' ] );
50 }
51
52 /**
53 * Update debug mode.
54 */
55 private function update_debug_mode() {
56 $this->logger_settings->update_option_from_saas_settings( $this );
57 }
58
59 /**
60 * Process admin options.
61 */
62 public function process_admin_options() {
63 parent::process_admin_options();
64 $this->update_debug_mode();
65
66 $url = admin_url( self::WOOCOMMERCE_SETTINGS_SHIPPING_URL );
67 $url = add_query_arg( 'section', $this->id, $url );
68 wp_safe_redirect( $url );
69 exit;
70 }
71
72 /**
73 * In settings screen?
74 *
75 * @return bool
76 */
77 public function is_in_settings() {
78 if ( is_admin() && isset( $_GET['page'] ) && isset( $_GET['section'] ) ) {
79 $page = sanitize_key( $_GET['page'] );
80 $section = sanitize_key( $_GET['section'] );
81 if ( self::WOOCOMMERCE_PAGE_WC_SETTINGS === $page && self::METHOD_ID === $section ) {
82 return true;
83 }
84 }
85
86 return false;
87 }
88
89 /**
90 * Initialise Settings Form Fields.
91 */
92 public function init_form_fields() {
93 $this->form_fields = [
94 'flexible_shipping' => [
95 'type' => 'flexible_shipping',
96 ],
97 ];
98 $this->form_fields[] = [
99 'type' => 'title',
100 'title' => __( 'Advanced settings', 'flexible-shipping' ),
101 'class' => 'fs-dashboard-native-advanced-title',
102 'default' => '',
103 ];
104
105 $this->form_fields = $this->logger_settings->add_fields_to_settings( $this->form_fields );
106 $this->form_fields = $this->add_beacon_search_data_to_fields( $this->form_fields );
107 $this->form_fields[] = [
108 'type' => 'title',
109 'default' => '',
110 ];
111
112 }
113
114 /**
115 * Add beacon search data to fields.
116 *
117 * @param array $form_fields .
118 *
119 * @return array
120 */
121 private function add_beacon_search_data_to_fields( array $form_fields ) {
122 $modifier = new WooCommerceSettingsFieldsModifier();
123
124 return $modifier->append_beacon_search_data_to_fields( $form_fields );
125 }
126
127 /**
128 * Generate FC connect box
129 *
130 * @param string $key Key.
131 * @param array $data Data.
132 *
133 * @return string
134 */
135 public function generate_flexible_shipping_html( $key, $data ) {
136 $dashboard = new Dashboard(
137 wpdesk_is_plugin_active( 'flexible-shipping-pro/flexible-shipping-pro.php' ),
138 get_user_locale()
139 );
140
141 ob_start();
142 include 'views/html-shipping-settings-info-description.php';
143 $notice_content = ob_get_contents();
144 ob_end_clean();
145
146 return $notice_content;
147 }
148
149 }
150