PluginProbe ʕ •ᴥ•ʔ
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping / trunk
Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping vtrunk
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 / logger / class-logger-settings.php
flexible-shipping / classes / table-rate / logger Last commit date
class-logger-settings.php 1 week ago
class-logger-settings.php
99 lines
1 <?php
2
3 /**
4 * Class WPDesk_Flexible_Shipping_SaaS_Settings
5 */
6 class WPDesk_Flexible_Shipping_Logger_Settings {
7
8 const LOGGER_CHANNEL_NAME = 'flexible-shipping';
9
10 const DEBUG_LOG_OPTION = 'debug_log';
11
12 const OPTION_NAME = 'fs_logger_enabled';
13
14 const OPTION_VALUE_DISABLED = '0';
15 const OPTION_VALUE_ENABLED = '1';
16 /**
17 * Enabled.
18 *
19 * @var bool
20 */
21 private $enabled = false;
22
23 /**
24 * SaaS settings.
25 *
26 * @var WPDesk_Flexible_Shipping_Settings
27 */
28 private $saas_settings;
29
30 /**
31 * WPDesk_Flexible_Shipping_SaaS_Logger_Settings constructor.
32 *
33 * @param WPDesk_Flexible_Shipping_Settings $saas_settings SaaS settings.
34 */
35 public function __construct( WPDesk_Flexible_Shipping_Settings $saas_settings = null ) {
36 $option_value = get_option( self::OPTION_NAME, self::OPTION_VALUE_DISABLED );
37 $this->enabled = self::OPTION_VALUE_ENABLED === $option_value;
38
39 $this->saas_settings = $saas_settings;
40 }
41
42 /**
43 * Get logger channel name.
44 *
45 * @return string
46 */
47 public function get_logger_channel_name() {
48 return self::LOGGER_CHANNEL_NAME;
49 }
50
51 /**
52 * Is enabled.
53 *
54 * @return bool
55 */
56 public function is_enabled() {
57 return $this->enabled;
58 }
59
60 /**
61 * Update option from saas settings.
62 */
63 public function update_option_from_saas_settings() {
64 $saas_settings_value = $this->saas_settings->get_option( self::DEBUG_LOG_OPTION );
65 if ( ! empty( $saas_settings_value ) && 'yes' === $saas_settings_value ) {
66 $option_value = self::OPTION_VALUE_ENABLED;
67 } else {
68 $option_value = self::OPTION_VALUE_DISABLED;
69 }
70 update_option( self::OPTION_NAME, $option_value );
71 $this->enabled = self::OPTION_VALUE_ENABLED === $option_value;
72 }
73
74 /**
75 * Add fields to settings.
76 *
77 * @param array $settings Settings.
78 *
79 * @return array
80 */
81 public function add_fields_to_settings( array $settings ) {
82 $settings[ self::DEBUG_LOG_OPTION ] = array(
83 'type' => 'checkbox',
84 'label' => __( 'Enable Debug Mode', 'flexible-shipping' ),
85 'title' => __( 'Debug mode', 'flexible-shipping' ),
86 );
87 if ( 'yes' === $this->saas_settings->get_option( self::DEBUG_LOG_OPTION ) ) {
88 $settings[ self::DEBUG_LOG_OPTION ]['description'] = sprintf(
89 // Translators: URL.
90 __( '%1$sDownload debug.log file%2$s', 'flexible-shipping' ),
91 sprintf( '<a href="%1$s" target="_blank">', admin_url( 'admin.php?page=wc-status&tab=logs&source=flexible-shipping&paged=1' ) ),
92 '</a>'
93 );
94 }
95 return $settings;
96 }
97
98 }
99