PluginProbe ʕ •ᴥ•ʔ
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping / 6.12.0
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping v6.12.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 / vendor_prefixed / wpdesk / wp-wpdesk-tracker / src / Tracker / Shop.php
flexible-shipping / vendor_prefixed / wpdesk / wp-wpdesk-tracker / src / Tracker Last commit date
views 1 week ago Assets.php 1 week ago OptInOptOut.php 1 week ago OptInPage.php 1 week ago OptOut.php 1 week ago PluginActionLinks.php 1 week ago Shop.php 1 week ago Tracker.php 1 week ago
Shop.php
93 lines
1 <?php
2
3 namespace FSVendor\WPDesk\Tracker;
4
5 /**
6 * Provides shop data.
7 */
8 class Shop
9 {
10 /**
11 * @var string
12 */
13 private $default_shop = 'wpdesk.pl';
14 /**
15 * @var string
16 */
17 private $default_shop_name = 'WP Desk';
18 /**
19 * @var string
20 */
21 private $default_logo = 'logo.png';
22 /**
23 * @var array<string, string>
24 */
25 private $shops_usage_tracking_pages = ['wpdesk.pl' => 'https://www.wpdesk.pl/sk/', 'wpdesk.net' => 'https://www.wpdesk.net/sk/', 'octolize.com' => 'https://octolize.com/usage-tracking/', 'shopmagic.app' => 'https://www.shopmagic.app/sk/', 'flexibleinvoices.com' => 'https://www.flexibleinvoices.com/sk/', 'flexiblecoupons.net' => 'https://www.flexiblecoupons.net/sk/'];
26 /**
27 * @var array<string, string>
28 */
29 private $shop_short_slug = ['wpdesk.pl' => 'pl', 'wpdesk.net' => 'net', 'shopmagic.app' => 'sm', 'flexibleinvoices.com' => 'fi', 'flexiblecoupons.net' => 'fc'];
30 /**
31 * @var array<string, string>
32 */
33 private $shops_usage_tracking_names = ['octolize.com' => 'Octolize'];
34 /**
35 * @var string
36 */
37 private $shop;
38 /**
39 * @var string
40 */
41 private $plugin_slug;
42 /**
43 * @param string $shop_url
44 * @param string $plugin_slug
45 */
46 public function __construct($shop_url, $plugin_slug)
47 {
48 $this->shop = $this->prepare_shop_from_shop_url($shop_url);
49 $this->plugin_slug = $plugin_slug;
50 }
51 /**
52 * @return string
53 */
54 public function get_usage_tracking_page()
55 {
56 $usage_tracking_page = isset($this->shops_usage_tracking_pages[$this->shop]) ? $this->shops_usage_tracking_pages[$this->shop] : $this->shops_usage_tracking_pages[$this->default_shop];
57 if ($this->shop !== 'octolize.com') {
58 $shop_shor_slug = isset($this->shop_short_slug[$this->shop]) ? $this->shop_short_slug[$this->default_shop] : 'pl';
59 $usage_tracking_page .= $this->plugin_slug . '-usage-tracking-' . $shop_shor_slug;
60 }
61 return apply_filters_ref_array('wpdesk/tracker/usage_tracking_page', [$usage_tracking_page, $this->shop]);
62 }
63 /**
64 * @return string
65 */
66 public function get_shop_name()
67 {
68 return apply_filters_ref_array('wpdesk/tracker/shop_name', [$this->shops_usage_tracking_names[$this->shop] ?? $this->default_shop_name, $this->shop]);
69 }
70 /**
71 * @return string
72 */
73 public function get_shop_logo_file()
74 {
75 $logo_file = isset($this->shops_usage_tracking_pages[$this->shop]) ? $this->shop : $this->default_shop;
76 $logo_file .= '.png';
77 $logo_file = apply_filters_ref_array('wpdesk/tracker/logo_file', [$logo_file, $this->shop]);
78 // Look for our assets folder from package root directory.
79 if (!file_exists(dirname(__DIR__) . '/assets/images/' . $logo_file)) {
80 $logo_file = $this->default_logo;
81 }
82 return $logo_file;
83 }
84 /**
85 * @param string $shop_url
86 */
87 private function prepare_shop_from_shop_url($shop_url)
88 {
89 $host = parse_url($shop_url, \PHP_URL_HOST);
90 return str_replace('www.', '', $host ?? '');
91 }
92 }
93