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.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 / Onboarding / TableRate / Onboarding.php
flexible-shipping / src / WPDesk / FS / Onboarding / TableRate Last commit date
views 2 weeks ago FinishOption.php 2 weeks ago Onboarding.php 2 weeks ago OptionAjaxUpdater.php 2 weeks ago PopupData.php 2 weeks ago Tracker.php 2 weeks ago
Onboarding.php
125 lines
1 <?php
2 /**
3 * Assets.
4 *
5 * @package WPDesk\FS\Onboarding
6 */
7
8 namespace WPDesk\FS\Onboarding\TableRate;
9
10 use FSVendor\WPDesk\PluginBuilder\Plugin\Hookable;
11 use WPDesk\FS\Helpers\FlexibleShippingMethodsChecker;
12 use WPDesk\FS\Helpers\WooSettingsPageChecker;
13
14 /**
15 * Onboarding hooks.
16 */
17 class Onboarding implements Hookable {
18
19 /**
20 * @var FinishOption .
21 */
22 private $finish_option;
23
24 /**
25 * @var string .
26 */
27 private $scripts_version;
28
29 /**
30 * @var string .
31 */
32 private $plugin_assets_url;
33
34 /**
35 * @var WooSettingsPageChecker
36 */
37 private $setting_page_checker;
38
39 /**
40 * @var FlexibleShippingMethodsChecker
41 */
42 private $fs_methods_checker;
43
44 /**
45 * @param FinishOption $finish_option .
46 * @param string $scripts_version .
47 * @param string $plugin_assets_url .
48 * @param WooSettingsPageChecker $setting_page_checker .
49 */
50 public function __construct(
51 FinishOption $finish_option,
52 string $scripts_version,
53 string $plugin_assets_url,
54 WooSettingsPageChecker $setting_page_checker,
55 FlexibleShippingMethodsChecker $fs_methods_checker
56 ) {
57 $this->finish_option = $finish_option;
58 $this->scripts_version = $scripts_version;
59 $this->plugin_assets_url = $plugin_assets_url;
60 $this->setting_page_checker = $setting_page_checker;
61 $this->fs_methods_checker = $fs_methods_checker;
62 }
63
64 /**
65 * Hooks.
66 */
67 public function hooks() {
68 add_action( 'flexible-shipping/admin/enqueue_scripts', [ $this, 'register_scripts' ] );
69 add_action( 'flexible-shipping/method-rules-settings/table/before', [ $this, 'add_onboarding_container' ] );
70 }
71
72 /**
73 * Add onboarding container.
74 */
75 public function add_onboarding_container() {
76 include wp_normalize_path( __DIR__ . '/views/before-table-method-rules-settings.php' );
77 }
78
79 public function register_scripts() {
80 if ( ! $this->setting_page_checker->is_fs_instance_method_edit() ) {
81 return;
82 }
83
84 wp_enqueue_style( 'wpdesk_onboarding', sprintf( '%scss/onboarding.css', $this->plugin_assets_url ), [], $this->scripts_version );
85
86 wp_enqueue_script(
87 'wpdesk_onboarding',
88 sprintf( '%sjs/onboarding.js', $this->plugin_assets_url ),
89 [ 'jquery' ],
90 $this->scripts_version,
91 true
92 );
93
94 wp_localize_script(
95 'wpdesk_onboarding',
96 'fs_onboarding_details',
97 [
98 'ajax' => [
99 'url' => admin_url( 'admin-ajax.php' ),
100 'nonce' => wp_create_nonce( OptionAjaxUpdater::NONCE_ACTION ),
101 'action' => [
102 'event' => OptionAjaxUpdater::AJAX_ACTION_EVENT,
103 'click' => OptionAjaxUpdater::AJAX_ACTION_CLICK,
104 'auto_show_popup' => OptionAjaxUpdater::AJAX_ACTION_AUTO_SHOP_POPUP,
105 ],
106 ],
107 'assets_url' => untrailingslashit( $this->plugin_assets_url ),
108 'label_step' => __( 'Step #', 'flexible-shipping' ),
109 'logo_img' => 'logo-fs.svg',
110 'steps' => 4,
111 'locale' => get_user_locale(),
112 'open_auto' => $this->should_auto_load(),
113 'popups' => ( new PopupData() )->get_popups(),
114 ]
115 );
116 }
117
118 /**
119 * @return bool
120 */
121 private function should_auto_load(): bool {
122 return ! $this->finish_option->is_option_set() && $this->fs_methods_checker->is_new_shipping_method();
123 }
124 }
125