enabled = self::OPTION_VALUE_ENABLED === $option_value; $this->saas_settings = $saas_settings; } /** * Get logger channel name. * * @return string */ public function get_logger_channel_name() { return self::LOGGER_CHANNEL_NAME; } /** * Is enabled. * * @return bool */ public function is_enabled() { return $this->enabled; } /** * Update option from saas settings. */ public function update_option_from_saas_settings() { $saas_settings_value = $this->saas_settings->get_option( self::DEBUG_LOG_OPTION ); if ( ! empty( $saas_settings_value ) && 'yes' === $saas_settings_value ) { $option_value = self::OPTION_VALUE_ENABLED; } else { $option_value = self::OPTION_VALUE_DISABLED; } update_option( self::OPTION_NAME, $option_value ); $this->enabled = self::OPTION_VALUE_ENABLED === $option_value; } /** * Add fields to settings. * * @param array $settings Settings. * * @return array */ public function add_fields_to_settings( array $settings ) { $settings[ self::DEBUG_LOG_OPTION ] = array( 'type' => 'checkbox', 'label' => __( 'Enable Debug Mode', 'flexible-shipping' ), 'title' => __( 'Debug mode', 'flexible-shipping' ), ); if ( 'yes' === $this->saas_settings->get_option( self::DEBUG_LOG_OPTION ) ) { $settings[ self::DEBUG_LOG_OPTION ]['description'] = sprintf( // Translators: URL. __( '%1$sDownload debug.log file%2$s', 'flexible-shipping' ), sprintf( '', admin_url( 'admin.php?page=wc-status&tab=logs&source=flexible-shipping&paged=1' ) ), '' ); } return $settings; } }