/**
  * Constructor
  *
  * @access public
  * @since 1.0.0
  */
 public function __construct()
 {
     // populate default fields for the comparison table
     $this->default_fields = YITH_Woocompare_Helper::standard_fields();
     // add image size
     YITH_Woocompare_Helper::set_image_size();
     //Actions
     add_action('init', array($this, 'init'));
     add_action('admin_enqueue_scripts', array($this, 'enqueue_styles_scripts'));
     add_action('woocommerce_settings_tabs_yith_woocompare', array($this, 'print_plugin_options'));
     add_action('woocommerce_update_options_yith_woocompare', array($this, 'update_options'));
     if (!has_action('woocommerce_admin_field_slider')) {
         add_action('woocommerce_admin_field_slider', array($this, 'admin_fields_slider'));
     }
     if (!has_action('woocommerce_admin_field_picker')) {
         add_action('woocommerce_admin_field_picker', array($this, 'admin_fields_picker'));
     }
     if (!has_action('woocommerce_admin_field_attributes')) {
         add_action('woocommerce_admin_field_attributes', array($this, 'admin_fields_attributes'));
     }
     add_action('admin_print_footer_scripts', array($this, 'admin_fields_image_deps'));
     add_action('woocommerce_update_option_slider', array($this, 'admin_update_option'));
     add_action('woocommerce_update_option_picker', array($this, 'admin_update_option'));
     add_action('woocommerce_update_option_attributes', array($this, 'admin_update_option'));
     //Filters
     add_filter('woocommerce_settings_tabs_array', array($this, 'add_tab_woocommerce'));
     // YITH WCWL Loaded
     do_action('yith_woocompare_loaded');
 }
 /**
  * Constructor
  *
  * @access public
  * @since 1.0.0
  */
 public function __construct()
 {
     add_action('admin_menu', array($this, 'register_panel'), 5);
     //Add action links
     add_filter('plugin_action_links_' . plugin_basename(YITH_WOOCOMPARE_DIR . '/' . basename(YITH_WOOCOMPARE_FILE)), array($this, 'action_links'));
     add_filter('plugin_row_meta', array($this, 'plugin_row_meta'), 10, 4);
     add_action('yith_woocompare_premium', array($this, 'premium_tab'));
     add_action('admin_init', array($this, 'register_pointer'));
     add_action('admin_init', array($this, 'default_options'), 99);
     // add image size
     YITH_Woocompare_Helper::set_image_size();
     add_action('admin_enqueue_scripts', array($this, 'enqueue_styles_scripts'), 20);
     add_action('woocommerce_admin_field_woocompare_image_width', array($this, 'admin_fields_woocompare_image_width'));
     add_action('woocommerce_admin_field_woocompare_attributes', array($this, 'admin_fields_attributes'), 10, 1);
     add_filter('woocommerce_admin_settings_sanitize_option_yith_woocompare_fields_attrs', array($this, 'admin_update_custom_option'), 10, 3);
     // YITH WCWL Loaded
     do_action('yith_woocompare_loaded');
 }
 /**
  * Constructor
  *
  * @return YITH_Woocompare_Frontend
  * @since 1.0.0
  */
 public function __construct()
 {
     // set coookiename
     if (is_multisite()) {
         $this->cookie_name .= '_' . get_current_blog_id();
     }
     // populate the list of products
     $this->products_list = isset($_COOKIE[$this->cookie_name]) ? unserialize($_COOKIE[$this->cookie_name]) : array();
     // populate default fields for the comparison table
     $this->default_fields = YITH_Woocompare_Helper::standard_fields();
     // add image size
     YITH_Woocompare_Helper::set_image_size();
     // Add link or button in the products list or
     if (get_option('yith_woocompare_compare_button_in_product_page') == 'yes') {
         add_action('woocommerce_single_product_summary', array($this, 'add_compare_link'), 35);
     }
     if (get_option('yith_woocompare_compare_button_in_products_list') == 'yes') {
         add_action('woocommerce_after_shop_loop_item', array($this, 'add_compare_link'), 20);
     }
     add_action('init', array($this, 'add_product_to_compare_action'));
     add_action('init', array($this, 'remove_product_from_compare_action'));
     add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'));
     add_action('template_redirect', array($this, 'compare_table_html'));
     // add the shortcode
     add_shortcode('yith_compare_button', array($this, 'compare_button_sc'));
     // AJAX
     add_action('wp_ajax_' . $this->action_add, array($this, 'add_product_to_compare_ajax'));
     add_action('wp_ajax_nopriv_' . $this->action_add, array($this, 'add_product_to_compare_ajax'));
     add_action('wp_ajax_' . $this->action_remove, array($this, 'remove_product_from_compare_ajax'));
     add_action('wp_ajax_nopriv_' . $this->action_remove, array($this, 'remove_product_from_compare_ajax'));
     add_action('wp_ajax_' . $this->action_view, array($this, 'refresh_widget_list_ajax'));
     add_action('wp_ajax_nopriv_' . $this->action_view, array($this, 'refresh_widget_list_ajax'));
     return $this;
 }