File: //var/www/dinamo-shop/wp-content/plugins/flexible-shipping/src/WPDesk/FS/TableRate/UserFeedback.php
<?php
namespace WPDesk\FS\TableRate;
use FSVendor\WPDesk\PluginBuilder\Plugin\Hookable;
use FSVendor\WPDesk\Tracker\UserFeedback\AjaxUserFeedbackDataHandler;
use FSVendor\WPDesk\Tracker\UserFeedback\TrackerFactory;
use FSVendor\WPDesk\Tracker\UserFeedback\UserFeedbackData;
use FSVendor\WPDesk\Tracker\UserFeedback\UserFeedbackOption;
use WPDesk\FS\TableRate\NewRulesTablePointer\RulesPointerOption;
use WPDesk\FS\TableRate\NewRulesTablePointer\ShippingMethodNewRuleTableSetting;
class UserFeedback implements Hookable {
const THICKBOX_ID = 'new-rules-table';
const USER_FEEDBACK_OPTION = 'flexible_shipping_new_rules_feedback';
public function hooks() {
if ( get_option( RulesPointerOption::OPTION_NAME, '0' ) === '1' ) {
$user_feedback = $this->prepare_user_feedback();
$user_feedback->hooks();
}
add_action( 'wpdesk_tracker_user_feedback_data_handled', array( $this, 'save_user_feedback' ) );
}
/**
* @param array $payload .
*/
public function save_user_feedback( $payload ) {
if ( is_array( $payload ) && isset( $payload[ AjaxUserFeedbackDataHandler::FEEDBACK_ID ] ) && $payload[ AjaxUserFeedbackDataHandler::FEEDBACK_ID ] === self::THICKBOX_ID ) {
update_option( self::USER_FEEDBACK_OPTION, $payload );
}
}
private function prepare_user_feedback() {
$user_feedback_data = new UserFeedbackData(
self::THICKBOX_ID,
__( 'You are disabling new rules table', 'flexible-shipping' ),
'',
__( 'What should we do to improve your experience?', 'flexible-shipping' ),
'woocommerce_page_wc-settings'
);
$user_feedback_data->add_feedback_option( new UserFeedbackOption(
'have_comment',
'',
true,
__( 'Comment', 'flexible-shipping' )
));
return TrackerFactory::createCustomTrackerWithoutSender( $user_feedback_data );
}
}